fs: direct-io: convert rw from READ to KERNEL_READ
authorShawn Lin <shawn.lin@rock-chips.com>
Fri, 10 Jul 2015 01:20:11 +0000 (09:20 +0800)
committerShawn Lin <shawn.lin@rock-chips.com>
Fri, 10 Jul 2015 04:53:16 +0000 (12:53 +0800)
KERNEL_READ equal READ puls REQ_KERNEL, which indicates
this brq comes from direct-io. Any block-layer devices who
care this req type can get it now.

Signed-off-by: Shawn Lin <shawn.lin@rock-chips.com>
fs/direct-io.c

index 7ab90f5081eebc4ab8b0de88bef8d0b6310ed113..6e5dd6f5df1a096b9dd55ab486b080314e9114da 100644 (file)
@@ -370,6 +370,7 @@ static inline void dio_bio_submit(struct dio *dio, struct dio_submit *sdio)
 {
        struct bio *bio = sdio->bio;
        unsigned long flags;
+       int rw;
 
        bio->bi_private = dio;
 
@@ -380,6 +381,9 @@ static inline void dio_bio_submit(struct dio *dio, struct dio_submit *sdio)
        if (dio->is_async && dio->rw == READ)
                bio_set_pages_dirty(bio);
 
+       rw = dio->rw;
+       dio->rw |= (dio->rw == READ) ? KERNEL_READ : KERNEL_WRITE;
+
        if (sdio->submit_io)
                sdio->submit_io(dio->rw, bio, dio->inode,
                               sdio->logical_offset_in_bio);