login
Header Space

 
 

Re: [PATCH] add check do_direct_IO() return val

Score:
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
To: Joe Jin <joe.jin@...>
Cc: Andrew Morton <akpm@...>, <torvalds@...>, <jens.axboe@...>, <linux-kernel@...>, <wen.gang.wang@...>, Badari Pulavarty <pbadari@...>, Zach Brown <zach.brown@...>
Date: Friday, July 27, 2007 - 8:37 am

Joe Jin wrote:
I tested Andrew's patch and panic was gone but got few ENOTBLK.
So I tried with Joe's patch , both panic and ENOTBLK are gone now.
But in Joe's patch if (ret == -ENOTBLK && (rw & WRITE)), dio_cleanup(dio)
was not getting called because of break. So I moved dio_cleanup just 
after if (ret).
I tested with this patch, both panic and ENOTBLK are gone now.


Here is the modified patch:

--- linux-2.6.22/fs/direct-io.c.orig 2007-07-27 03:06:39.000000000 -0700
+++ linux-2.6.22/fs/direct-io.c 2007-07-27 03:24:55.000000000 -0700
@@ -1033,17 +1033,18 @@

if (ret) {
dio_cleanup(dio);
- break;
+ if (ret == -ENOTBLK && (rw & WRITE)) {
+ /*
+ * The remaining part of the request will be
+ * be handled by buffered I/O when we return
+ */
+ ret = 0;
+ break;
+ }
+ goto out;
}
} /* end iovec loop */

- if (ret == -ENOTBLK && (rw & WRITE)) {
- /*
- * The remaining part of the request will be
- * be handled by buffered I/O when we return
- */
- ret = 0;
- }
/*
* There may be some unwritten disk at the end of a part-written
* fs-block-sized block. Go zero that now.
@@ -1112,7 +1113,7 @@
kfree(dio);
} else
BUG_ON(ret != -EIOCBQUEUED);
-
+out:
return ret;
}


-
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
[PATCH] add check do_direct_IO() return val, Joe Jin, (Thu Jul 26, 5:04 am)
Re: [PATCH] add check do_direct_IO() return val, wengang wang, (Fri Jul 27, 1:13 am)
Re: [PATCH] add check do_direct_IO() return val, Andrew Morton, (Fri Jul 27, 1:13 am)
Re: [PATCH] add check do_direct_IO() return val, gurudas pai, (Fri Jul 27, 4:09 am)
Re: [PATCH] add check do_direct_IO() return val, Joe Jin, (Fri Jul 27, 3:15 am)
Re: [PATCH] add check do_direct_IO() return val, gurudas pai, (Fri Jul 27, 8:37 am)
Re: [PATCH] add check do_direct_IO() return val, Joe Jin, (Fri Jul 27, 11:47 pm)
Re: [PATCH] add check do_direct_IO() return val, Andrew Morton, (Mon Jul 30, 4:53 pm)
Re: [PATCH] add check do_direct_IO() return val, Badari Pulavarty, (Mon Jul 30, 5:24 pm)
Re: [PATCH] add check do_direct_IO() return val, Zach Brown, (Mon Jul 30, 5:45 pm)
Re: [PATCH] add check do_direct_IO() return val, Badari Pulavarty, (Mon Jul 30, 5:58 pm)
Re: [PATCH] add check do_direct_IO() return val, Zach Brown, (Mon Jul 30, 7:38 pm)
Re: [PATCH] add check do_direct_IO() return val, Joe Jin, (Mon Jul 30, 8:53 pm)
Re: [PATCH] add check do_direct_IO() return val, Badari, (Mon Jul 30, 11:45 pm)
Re: [PATCH] add check do_direct_IO() return val, Joe Jin, (Tue Jul 31, 12:35 am)
Re: [PATCH] add check do_direct_IO() return val, Badari Pulavarty, (Tue Jul 31, 6:25 pm)
Re: [PATCH] add check do_direct_IO() return val, Joe Jin, (Tue Jul 31, 9:11 pm)
Re: [PATCH] add check do_direct_IO() return val, Zach Brown, (Tue Jul 31, 7:14 pm)
Re: [PATCH] add check do_direct_IO() return val, Andrew Morton, (Tue Jul 31, 6:34 pm)
Re: [PATCH] add check do_direct_IO() return val, Linus Torvalds, (Tue Jul 31, 6:59 pm)
Re: [PATCH] add check do_direct_IO() return val, Joe Jin, (Tue Jul 31, 9:36 pm)
Re: [PATCH] add check do_direct_IO() return val, gurudas pai, (Wed Aug 1, 7:40 am)
Re: [PATCH] add check do_direct_IO() return val, Zach Brown, (Tue Jul 31, 7:16 pm)
Re: [PATCH] add check do_direct_IO() return val, Badari Pulavarty, (Tue Jul 31, 7:04 pm)
Re: [PATCH] add check do_direct_IO() return val, Badari Pulavarty, (Mon Jul 30, 8:15 pm)
Re: [PATCH] add check do_direct_IO() return val, Badari Pulavarty, (Mon Jul 30, 8:17 pm)
Re: [PATCH] add check do_direct_IO() return val, Zach Brown, (Mon Jul 30, 5:58 pm)
Re: [PATCH] add check do_direct_IO() return val, Zach Brown, (Mon Jul 30, 5:09 pm)
Re: [PATCH] add check do_direct_IO() return val, Dave Young, (Fri Jul 27, 3:31 am)
Re: [PATCH] add check do_direct_IO() return val, Joe Jin, (Fri Jul 27, 3:44 am)
speck-geostationary