Boaz Harrosh
24488113f0
exofs: simple_write_end does not mark_inode_dirty
...
commit efd124b999 upstream.
exofs uses simple_write_end() for it's .write_end handler. But
it is not enough because simple_write_end() does not call
mark_inode_dirty() when it extends i_size. So even if we do
call mark_inode_dirty at beginning of write out, with a very
long IO and a saturated system we might get the .write_inode()
called while still extend-writing to file and miss out on the last
i_size updates.
So override .write_end, call simple_write_end(), and afterwords if
i_size was changed call mark_inode_dirty().
It stands to logic that since simple_write_end() was the one extending
i_size it should also call mark_inode_dirty(). But it looks like all
users of simple_write_end() are memory-bound pseudo filesystems, who
could careless about mark_inode_dirty(). I might submit a
warning-comment patch to simple_write_end() in future.
Signed-off-by: Boaz Harrosh <bharrosh@panasas.com >
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de >
2010-01-18 10:19:15 -08:00
..
2009-12-01 07:35:11 -08:00
2009-09-24 07:21:05 -07:00
2009-06-11 21:36:14 -04:00
2009-11-19 18:11:35 +00:00
2009-09-21 15:14:58 +02:00
2009-08-31 17:44:05 -10:00
2009-09-24 07:47:42 -04:00
2009-07-12 12:22:34 -07:00
2009-11-11 13:38:59 -08:00
2009-12-01 07:35:11 -08:00
2010-01-06 15:03:53 -08:00
2009-10-04 15:05:10 -07:00
2009-09-11 09:20:26 +02:00
2009-12-18 14:04:16 -08:00
2009-12-18 14:04:15 -08:00
2009-09-30 12:19:44 -05:00
2009-10-08 11:31:38 -05:00
2009-06-17 00:36:36 -04:00
2010-01-18 10:19:15 -08:00
2009-09-24 07:53:22 -07:00
2009-12-18 14:05:39 -08:00
2010-01-06 15:05:06 -08:00
2009-09-30 09:31:14 -07:00
2009-07-12 12:22:34 -07:00
2009-11-20 21:50:44 +00:00
2009-11-27 16:37:13 +01:00
2009-11-20 21:50:40 +00:00
2009-12-18 14:04:08 -08:00
2009-10-29 07:39:27 -07:00
2009-06-30 18:56:03 -07:00
2009-07-12 12:22:34 -07:00
2009-09-24 08:32:11 -07:00
2009-09-24 07:47:42 -04:00
2009-11-12 10:24:12 +01:00
2009-12-18 14:03:56 -08:00
2009-12-18 14:05:52 -08:00
2009-09-24 07:47:42 -04:00
2009-09-23 18:13:10 -07:00
2009-09-23 07:39:57 -07:00
2009-09-27 11:39:25 -07:00
2009-12-18 14:04:09 -08:00
2009-11-14 12:55:55 -08:00
2009-11-15 17:17:46 +09:00
2009-09-30 09:31:14 -07:00
2009-10-20 18:02:33 -04:00
2009-09-24 08:32:11 -07:00
2009-11-13 15:45:05 -08:00
2009-10-01 16:11:11 -07:00
2009-10-06 20:16:55 +02:00
2009-11-17 17:40:33 -08:00
2009-09-23 07:39:30 -07:00
2010-01-06 15:05:03 -08:00
2009-09-24 08:41:47 -04:00
2009-09-22 07:17:24 -07:00
2009-10-11 11:33:56 -07:00
2009-09-24 07:47:42 -04:00
2009-09-22 07:17:24 -07:00
2009-11-05 08:19:18 +11:00
2009-06-17 00:36:37 -04:00
2009-09-27 11:39:25 -07:00
2010-01-06 15:05:00 -08:00
2009-06-18 13:03:46 -07:00
2009-11-17 10:26:49 -06:00
2009-09-23 07:39:29 -07:00
2009-10-04 15:05:10 -07:00
2009-09-24 08:41:47 -04:00
2009-09-24 07:21:02 -07:00
2009-09-24 07:21:01 -07:00
2009-09-24 07:21:03 -07:00
2009-07-01 10:56:25 +02:00
2009-11-02 11:41:13 +01:00
2009-10-26 15:27:11 +01:00
2009-09-25 09:27:30 -07:00
2009-09-24 07:21:03 -07:00
2009-11-12 07:25:57 -08:00
2009-11-04 13:25:03 +01:00
2009-07-18 15:51:44 +02:00
2009-05-22 23:22:54 +02:00
2009-09-24 07:21:04 -07:00
2009-09-23 07:39:29 -07:00
2009-06-18 13:03:41 -07:00
2009-11-12 07:25:58 -08:00
2010-01-18 10:19:11 -08:00
2009-09-24 07:21:04 -07:00
2009-10-11 11:20:58 -07:00
2009-09-26 00:10:40 +02:00
2009-09-24 07:47:27 -04:00
2009-09-24 08:40:15 -04:00
2009-11-12 07:26:01 -08:00
2009-10-30 15:03:54 +11:00
2009-09-24 07:47:30 -04:00
2009-09-22 07:17:25 -07:00
2010-01-06 15:05:26 -08:00
2009-09-24 08:40:15 -04:00
2009-09-23 09:21:05 -07:00
2009-10-22 08:11:44 +09:00
2009-09-24 07:47:34 -04:00
2009-10-04 15:05:10 -07:00
2009-09-24 07:47:35 -04:00
2009-09-14 17:55:15 -07:00
2010-01-06 15:05:01 -08:00
2009-09-24 07:47:41 -04:00
2009-09-23 07:39:29 -07:00
2009-09-10 10:11:22 +10:00