direct_IO: use iov_iter_rw() instead of rw everywhere
[firefly-linux-kernel-4.4.55.git] / fs / hfsplus / inode.c
index 2a98dc07c22c5110cb87896018d5b11c48efc385..afcde36b506b6f3541964c222a3cece629086c46 100644 (file)
@@ -137,7 +137,7 @@ static ssize_t hfsplus_direct_IO(int rw, struct kiocb *iocb,
         * In case of error extending write may have instantiated a few
         * blocks outside i_size. Trim these off again.
         */
-       if (unlikely((rw & WRITE) && ret < 0)) {
+       if (unlikely(iov_iter_rw(iter) == WRITE && ret < 0)) {
                loff_t isize = i_size_read(inode);
                loff_t end = offset + count;