Sachin Prabhu
466bd31bbd
cifs: Avoid calling unlock_page() twice in cifs_readpage() when using fscache
...
When reading a single page with cifs_readpage(), we make a call to
fscache_read_or_alloc_page() which once done, asynchronously calls
the completion function cifs_readpage_from_fscache_complete(). This
completion function unlocks the page once it has been populated from
cache. The module then attempts to unlock the page a second time in
cifs_readpage() which leads to warning messages.
In case of a successful call to fscache_read_or_alloc_page() we should skip
the second unlock_page() since this will be called by the
cifs_readpage_from_fscache_complete() once the page has been populated by
fscache.
With the modifications to cifs_readpage_worker(), we will need to re-grab the
page lock in cifs_write_begin().
The problem was first noticed when testing new fscache patches for cifs.
https://bugzilla.redhat.com/show_bug.cgi?id=1005737
Signed-off-by: Sachin Prabhu <sprabhu@redhat.com>
Reviewed-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <smfrench@gmail.com>
2013-09-13 16:24:49 -05:00
..
2013-08-26 10:28:46 -05:00
2013-09-12 15:38:02 -07:00
2013-09-12 15:38:02 -07:00
2013-09-07 19:54:55 -04:00
2013-09-08 22:07:47 -04:00
2013-06-29 12:56:55 +04:00
2013-09-12 15:38:02 -07:00
2013-09-12 15:44:27 -07:00
2013-09-06 09:17:30 +01:00
2013-09-06 12:55:29 -07:00
2013-09-13 16:24:49 -05:00
2013-07-05 18:59:33 +04:00
2013-07-14 11:42:26 -07:00
2013-06-29 12:56:46 +04:00
2013-07-31 12:16:31 -04:00
2013-03-07 01:08:55 -08:00
2013-08-12 15:22:43 -05:00
2013-09-06 16:58:18 -07:00
2013-07-14 17:48:35 +04:00
2013-08-24 12:10:22 -04:00
2013-09-12 15:38:02 -07:00
2013-09-07 19:54:55 -04:00
2013-09-12 15:38:02 -07:00
2013-09-06 09:06:02 -07:00
2013-09-12 15:44:27 -07:00
2013-09-05 13:50:32 +09:00
2013-09-12 15:38:02 -07:00
2013-06-29 12:56:53 +04:00
2013-09-11 15:59:36 -07:00
2013-09-12 15:38:02 -07:00
2013-09-12 15:44:27 -07:00
2013-09-12 15:38:02 -07:00
2013-09-12 15:38:02 -07:00
2013-09-07 10:38:29 +02:00
2013-09-12 15:38:02 -07:00
2013-07-03 16:07:41 -07:00
2013-08-24 12:10:17 -04:00
2013-07-31 22:14:50 +02:00
2013-08-09 10:49:00 +02:00
2013-08-28 14:59:58 -04:00
2013-06-29 12:56:47 +04:00
2013-09-12 15:38:02 -07:00
2013-08-05 15:03:46 -04:00
2013-07-02 09:39:34 -07:00
2013-09-12 15:38:02 -07:00
2013-07-09 10:33:25 -07:00
2013-09-13 10:55:58 -07:00
2013-02-13 06:15:14 -08:00
2013-09-12 15:01:38 -07:00
2013-09-12 15:38:02 -07:00
2013-07-09 10:33:20 -07:00
2013-09-12 15:38:02 -07:00
2013-09-13 10:55:58 -07:00
2013-09-12 15:38:02 -07:00
2013-06-29 12:56:32 +04:00
2013-09-12 15:38:03 -07:00
2013-08-30 15:57:01 -07:00
2013-06-29 12:56:38 +04:00
2013-06-29 12:56:39 +04:00
2013-09-10 18:56:31 -04:00
2013-09-11 15:59:37 -07:00
2013-09-06 09:06:02 -07:00
2013-06-29 12:56:29 +04:00
2013-09-06 04:57:54 +01:00
2013-09-07 14:36:57 -07:00
2013-09-12 15:38:02 -07:00
2013-09-10 18:56:31 -04:00
2013-09-13 10:55:58 -07:00
2013-09-12 15:38:02 -07:00
2013-09-12 16:13:41 -07:00
2013-09-09 12:29:35 -04:00
2013-07-16 09:32:17 -04:00
2012-11-20 04:17:24 -08:00
2013-06-29 12:57:04 +04:00
2013-07-10 18:11:34 -07:00
2013-05-02 10:16:16 -07:00
2013-07-10 18:11:34 -07:00
2012-12-17 17:15:23 -08:00
2013-04-29 15:40:23 -04:00
2013-04-30 17:04:03 -07:00
2012-12-20 17:40:19 -08:00
2012-11-28 21:53:38 -05:00
2013-09-11 15:58:21 -07:00
2013-09-03 18:25:03 -07:00
2013-09-13 10:55:58 -07:00
2013-07-03 16:07:29 -07:00
2012-10-22 08:50:37 +03:00
2012-10-06 03:05:17 +09:00
2013-06-29 12:46:44 +04:00
2013-06-29 12:57:05 +04:00
2013-09-11 15:59:01 -07:00
2012-10-06 03:05:15 +09:00
2013-09-12 15:01:38 -07:00
2013-03-03 23:00:23 -05:00
2013-09-09 10:47:42 -07:00
2013-09-10 18:56:31 -04:00
2012-12-17 17:15:27 -08:00
2013-09-11 15:58:50 -07:00
2013-09-11 15:59:09 -07:00
2013-08-05 18:25:32 +04:00
2012-12-20 14:04:11 -08:00
2013-09-11 15:59:01 -07:00
2013-05-01 17:31:42 -04:00
2013-03-03 19:36:31 -08:00
2013-03-01 23:51:07 -05:00
2013-09-11 15:58:13 -07:00
2012-09-18 01:01:35 -07:00
2013-09-10 18:56:31 -04:00
2013-09-10 18:56:31 -04:00
2013-02-22 23:31:31 -05:00
2013-04-17 13:25:09 +01:00
2013-04-30 17:04:04 -07:00
2013-07-14 17:43:25 +04:00
2013-07-08 13:36:42 +04:00
2013-05-01 17:51:54 -07:00
2013-09-10 18:56:31 -04:00
2013-04-09 14:12:52 -04:00
2013-09-10 18:56:29 -04:00
2013-09-11 15:59:37 -07:00
2013-09-07 14:35:32 -07:00
2013-05-07 20:16:25 -07:00
2013-05-31 15:16:33 -04:00
2013-08-26 18:42:15 -07:00
2012-09-18 01:01:35 -07:00
2013-07-30 11:53:12 -04:00
2013-06-29 12:57:05 +04:00
2013-07-10 17:08:27 -07:00
2013-07-08 13:36:41 +04:00
2013-03-03 22:58:46 -05:00
2013-07-03 09:10:19 -07:00
2013-08-17 09:32:32 -04:00
2012-12-20 18:50:07 -05:00
2013-09-10 18:56:32 -04:00
2013-03-03 22:46:22 -05:00
2013-05-29 12:57:34 -07:00
2012-12-20 18:50:08 -05:00
2012-10-12 13:16:48 -07:00
2012-12-20 18:50:11 -05:00