Jan Kara
70fe2f4815
aio: fix freeze protection of aio writes
...
Currently we dropped freeze protection of aio writes just after IO was
submitted. Thus aio write could be in flight while the filesystem was
frozen and that could result in unexpected situation like aio completion
wanting to convert extent type on frozen filesystem. Testcase from
Dmitry triggering this is like:
for ((i=0;i<60;i++));do fsfreeze -f /mnt ;sleep 1;fsfreeze -u /mnt;done &
fio --bs=4k --ioengine=libaio --iodepth=128 --size=1g --direct=1 \
--runtime=60 --filename=/mnt/file --name=rand-write --rw=randwrite
Fix the problem by dropping freeze protection only once IO is completed
in aio_complete().
Reported-by: Dmitry Monakhov <dmonakhov@openvz.org >
Signed-off-by: Jan Kara <jack@suse.cz >
[hch: forward ported on top of various VFS and aio changes]
Signed-off-by: Christoph Hellwig <hch@lst.de >
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk >
2016-10-30 13:09:42 -04:00
..
2016-10-12 11:01:37 -07:00
2016-10-05 10:11:24 -07:00
2014-08-06 18:01:23 -07:00
2016-09-22 10:01:21 +02:00
2016-10-03 16:13:50 +02:00
2016-09-15 21:15:40 +05:30
2016-08-08 10:58:35 +09:00
2016-09-01 14:23:39 -07:00
2016-10-11 15:06:33 -07:00
2016-09-14 20:42:03 +02:00
2016-07-15 14:50:53 -07:00
2016-10-17 16:26:29 +01:00
2016-01-07 10:10:50 -05:00
2016-10-07 08:35:35 -07:00
2016-10-09 17:04:33 -07:00
2016-10-13 10:13:24 -04:00
2016-10-05 11:34:53 -07:00
2016-10-08 20:56:54 -07:00
2016-09-12 19:59:39 +02:00
2016-10-03 19:43:08 -07:00
2016-09-10 17:31:39 +05:30
2016-10-11 13:22:22 -07:00
2016-09-21 02:08:04 +02:00
2016-10-03 23:22:47 -04:00
2016-10-07 09:45:43 -07:00
2016-09-30 09:13:58 -07:00
2016-07-08 16:23:11 +02:00
2016-08-23 15:46:33 -05:00
2016-09-30 09:14:10 -07:00
2016-10-13 21:28:20 -07:00
2016-09-14 20:37:50 +02:00
2016-08-31 10:06:03 +03:00
2016-09-12 20:32:40 +01:00
2016-10-24 14:18:14 +02:00
2016-09-20 14:35:59 -05:00
2016-09-05 12:41:46 +02:00
2005-04-16 15:20:36 -07:00
2015-03-27 13:44:43 +00:00
2013-09-24 10:35:17 +01:00
2013-12-02 11:24:18 +00:00
2016-08-25 11:26:48 -04:00
2012-12-02 00:05:12 +00:00
2016-09-27 12:54:03 +02:00
2012-03-16 10:38:24 -04:00
2016-10-11 15:06:31 -07:00
2016-10-11 15:06:31 -07:00
2015-08-20 14:10:23 -07:00
2016-08-04 14:19:16 -06:00
2016-08-04 14:19:16 -06:00
2016-05-04 23:41:14 +02:00
2016-09-22 07:48:03 -06:00
2016-09-09 12:09:24 +03:00
2016-08-18 10:44:20 +02:00
2016-10-07 18:46:26 -07:00
2016-09-14 09:18:06 -06:00
2016-10-14 12:18:50 -07:00
2016-09-15 08:42:03 -06:00
2016-10-09 17:32:20 -07:00
2016-09-14 11:48:34 -06:00
2016-09-15 18:29:06 -04:00
2016-10-07 18:46:28 -07:00
2016-09-29 01:35:35 -04:00
2016-09-29 01:35:35 -04:00
2016-07-26 15:03:07 -07:00
2016-09-09 12:09:24 +03:00
2016-08-11 09:41:35 -06:00
2012-03-16 10:38:24 -04:00
2016-02-22 08:51:38 +01:00
2016-08-02 17:31:41 -04:00
2016-08-09 18:47:16 +08:00
2015-01-20 14:02:58 -07:00
2016-08-22 14:05:49 -03:00
2016-08-22 14:00:51 -03:00
2016-10-14 12:18:50 -07:00
2010-03-24 16:31:22 -07:00
2016-10-17 15:27:27 -07:00
2016-04-19 16:54:26 -07:00
2014-01-21 20:18:26 -08:00
2016-10-07 18:46:29 -07:00
2016-09-27 21:20:53 -04:00
2016-10-10 14:51:45 -07:00
2015-06-25 17:00:38 -07:00
2016-10-15 10:03:15 -07:00
2013-11-15 09:32:21 +09:00
2015-12-07 00:02:05 +00:00
2016-06-25 09:04:48 -07:00
2016-10-07 18:46:30 -07:00
2008-06-04 14:56:12 +01:00
2015-11-24 09:56:43 +01:00
2016-08-02 16:11:27 -04:00
2016-08-31 13:05:43 +02:00
2016-10-07 18:46:30 -07:00
2016-10-20 16:35:50 +02:00
2016-10-20 20:10:17 +02:00
2016-08-02 19:35:24 -04:00
2016-05-19 19:12:14 -07:00
2014-03-13 15:56:44 +01:00
2016-10-07 18:46:30 -07:00
2016-10-11 15:06:30 -07:00
2016-09-19 11:24:50 +10:00
2016-09-16 12:44:20 +02:00
2011-01-10 08:51:44 -08:00
2013-05-12 14:16:21 +02:00
2016-09-21 12:13:31 +02:00
2016-07-26 16:19:19 -07:00
2010-08-04 11:00:45 +02:00
2016-09-06 13:08:40 +09:00
2016-05-03 11:20:07 +09:00
2016-09-14 13:56:38 -04:00
2016-09-16 09:34:15 +01:00
2016-09-26 22:16:41 +05:30
2016-09-16 09:34:22 +01:00
2016-10-11 15:06:32 -07:00
2016-08-08 08:11:42 +05:30
2015-09-08 15:35:28 -07:00
2016-08-04 08:50:07 -04:00
2014-09-29 00:04:55 -04:00
2013-03-03 23:59:59 -08:00
2016-09-13 20:21:55 +02:00
2009-06-15 21:30:26 -07:00
2016-07-20 21:35:12 -06:00
2012-10-16 18:49:15 -07:00
2008-01-28 23:21:18 +01:00
2016-05-27 16:03:22 -07:00
2012-10-13 10:46:48 +01:00
2016-07-01 16:37:06 +02:00
2013-09-07 19:54:57 -04:00
2016-10-14 14:26:58 -07:00
2016-10-06 09:07:44 -04:00
2016-08-04 10:16:56 +09:30
2016-09-16 08:53:41 +02:00
2016-09-30 10:05:46 -07:00
2016-10-03 09:11:14 -07:00
2013-09-26 15:06:58 -07:00
2016-10-15 10:03:15 -07:00
2014-12-31 13:06:50 -05:00
2016-08-11 15:33:23 +05:30
2016-08-21 17:43:32 +02:00
2016-09-09 19:36:04 -07:00
2009-06-18 19:50:21 +08:00
2016-08-02 19:35:10 -04:00
2012-10-13 10:46:48 +01:00
2014-01-21 23:17:20 -08:00
2015-04-09 11:39:55 -05:00
2009-12-17 10:58:17 -05:00
2013-09-12 10:12:47 -07:00
2016-10-30 13:09:42 -04:00
2013-09-27 18:40:25 +01:00
2016-10-07 15:15:33 -07:00
2014-10-15 21:31:27 +05:30
2016-10-07 18:46:26 -07:00
2016-09-16 12:44:20 +02:00
2016-09-02 12:47:55 -04:00
2016-10-06 11:48:41 -07:00
2015-12-22 17:10:17 -06:00
2016-10-10 14:51:45 -07:00
2016-05-10 15:43:09 -04:00
2006-09-30 01:47:55 +02:00
2014-11-04 21:58:23 +01:00
2010-10-25 14:11:37 -07:00
2015-11-18 16:17:42 -05:00
2013-04-30 10:09:06 +02:00
2016-08-21 20:12:32 +01:00
2016-09-29 10:40:13 +02:00
2016-08-24 15:58:57 +02:00
2016-07-15 10:41:37 +02:00
2016-10-07 18:46:28 -07:00
2016-10-07 18:46:29 -07:00
2012-11-19 22:21:03 +00:00
2016-08-24 21:04:48 +08:00
2012-03-16 10:38:24 -04:00
2016-09-08 21:34:15 -07:00
2016-10-05 10:11:24 -07:00
2016-09-05 13:52:38 +02:00
2012-10-13 10:46:48 +01:00
2016-08-25 22:11:02 +02:00
2016-09-24 10:48:18 +02:00
2011-07-01 10:37:15 +02:00
2013-03-26 12:32:13 -04:00
2016-09-01 22:48:33 -07:00
2016-09-24 08:01:26 -04:00
2016-10-07 23:50:39 -04:00
2016-09-08 17:10:28 -07:00
2016-09-08 16:13:09 -07:00
2015-10-09 07:49:05 -07:00
2016-09-16 09:18:54 +02:00
2016-10-15 10:03:15 -07:00
2014-05-14 16:40:04 -07:00
2016-07-13 17:27:24 -07:00
2016-09-14 22:11:09 +02:00
2012-10-09 16:22:40 +09:00
2016-08-24 09:43:49 +02:00
2016-10-26 15:45:38 +10:00
2016-10-20 15:51:28 +11:00
2016-09-16 09:34:15 +01:00
2016-09-14 09:18:09 -06:00
2012-12-09 00:20:28 -05:00
2016-08-08 14:42:03 -05:00
2016-09-30 01:54:28 -04:00
2016-09-20 23:20:32 +02:00
2016-09-14 15:28:15 +02:00
2016-10-07 18:46:26 -07:00
2016-10-03 13:22:39 -07:00
2016-10-16 11:02:31 +02:00
2016-10-27 18:43:43 -07:00
2016-03-22 15:36:02 -07:00
2007-07-31 15:39:40 -07:00
2016-10-09 12:23:38 -07:00
2016-07-06 10:34:48 +01:00
2016-10-07 18:46:30 -07:00
2014-10-14 15:05:34 -04:00
2016-08-10 11:23:44 -04:00
2016-10-11 15:06:33 -07:00
2016-04-11 22:44:15 +01:00
2016-10-11 15:06:33 -07:00
2012-07-21 10:34:00 -07:00
2010-03-15 15:29:39 +01:00
2016-10-11 15:06:33 -07:00
2016-10-05 10:11:24 -07:00
2016-09-16 16:57:47 +02:00
2015-11-25 17:24:23 +01:00
2013-07-03 16:07:43 -07:00
2016-09-15 16:49:39 +02:00
2016-09-22 11:50:29 -04:00
2012-10-06 02:48:09 +09:00
2016-09-30 19:13:42 -07:00
2016-09-21 07:57:31 -06:00
2016-09-14 12:57:43 -07:00
2016-08-18 23:41:55 +02:00
2012-10-13 10:46:48 +01:00
2016-09-24 10:48:32 +02:00
2011-12-12 22:06:55 -08:00
2016-09-19 13:42:38 -04:00
2016-09-19 12:27:10 +10:00
2016-01-20 17:09:18 -08:00
2015-08-10 14:29:27 +05:30
2016-02-22 22:44:04 -05:00
2016-09-15 21:13:50 +05:30
2016-09-27 12:33:47 +02:00
2016-10-07 18:46:28 -07:00
2016-10-07 18:46:29 -07:00
2016-07-26 16:19:19 -07:00
2016-03-17 13:47:50 -07:00
2016-09-01 17:52:01 -07:00
2016-05-19 19:12:14 -07:00
2016-08-31 14:12:35 +02:00
2016-10-07 18:46:27 -07:00
2016-10-24 19:13:20 -07:00
2016-08-02 19:35:02 -04:00
2016-07-26 16:19:19 -07:00
2016-10-27 09:27:57 -07:00
2016-06-26 17:14:03 -07:00
2016-08-04 10:16:55 +09:30
2015-03-12 18:46:08 -07:00
2015-11-06 17:50:42 -08:00
2016-09-30 12:46:48 -05:00
2009-04-01 07:38:54 -04:00
2016-09-25 23:41:39 -04:00
2016-09-25 23:41:39 -04:00
2014-01-27 21:02:39 -08:00
2016-09-14 22:11:08 +02:00
2013-06-26 12:10:56 +02:00
2015-02-14 11:32:59 -08:00
2011-05-09 11:40:38 +10:00
2016-10-07 09:20:53 -07:00
2016-08-28 23:32:41 -04:00
2016-06-03 19:37:21 -04:00
2016-09-25 23:34:19 +02:00
2016-09-25 14:38:48 +02:00
2016-09-25 23:34:19 +02:00
2016-09-27 14:34:01 -04:00
2016-09-22 15:54:27 -04:00
2016-09-19 13:11:13 -04:00
2012-10-13 10:46:48 +01:00
2016-04-25 15:09:11 -04:00
2016-10-07 18:46:30 -07:00
2012-12-11 17:22:27 -08:00
2016-02-16 13:04:58 -05:00
2016-03-21 19:30:06 -04:00
2016-10-19 11:36:22 -06:00
2012-10-13 10:46:48 +01:00
2016-09-28 17:43:15 +02:00
2016-10-03 23:38:11 +02:00
2016-05-02 09:00:56 -05:00
2015-12-09 09:23:28 -06:00
2015-03-09 23:50:20 -04:00
2016-09-16 09:34:14 +01:00
2016-09-15 08:33:01 -05:00
2016-09-28 08:53:14 +05:30
2016-08-29 11:00:23 +03:00
2016-04-26 10:19:38 +05:30
2016-10-07 18:46:28 -07:00
2013-03-29 17:54:33 -07:00
2016-09-19 21:44:30 +02:00
2016-10-07 18:46:27 -07:00
2016-10-07 18:46:27 -07:00
2016-10-11 15:06:34 -07:00
2009-04-07 08:44:06 -07:00
2014-01-23 16:36:55 -08:00
2012-10-13 10:46:48 +01:00
2013-03-01 23:51:07 -05:00
2016-04-08 11:08:12 -05:00
2016-10-07 11:46:37 -07:00
2014-01-23 20:17:18 +00:00
2016-06-03 12:06:11 +02:00
2016-09-22 15:25:54 +02:00
2016-05-20 17:58:30 -07:00
2016-10-28 11:06:25 +02:00
2016-09-22 08:21:21 -04:00
2016-08-08 14:42:01 -05:00
2016-10-05 18:24:00 -04:00
2016-10-14 11:36:59 -07:00
2014-11-20 14:45:15 +01:00
2016-09-13 02:49:34 +02:00
2016-04-22 01:32:37 +02:00
2016-05-19 19:12:14 -07:00
2016-09-27 21:52:00 -04:00
2016-10-08 11:06:08 -04:00
2016-01-02 00:29:35 +01:00
2016-03-02 17:13:02 -08:00
2011-03-31 11:26:23 -03:00
2016-10-09 12:23:38 -07:00
2016-09-22 19:59:41 -05:00
2016-09-30 15:26:52 -07:00
2016-09-08 15:01:10 -07:00
2016-09-08 15:01:10 -07:00
2016-09-22 02:18:33 -04:00
2016-09-05 16:45:39 +02:00
2016-09-12 20:01:43 +01:00
2016-02-09 13:05:23 +01:00
2016-10-11 15:06:30 -07:00
2010-02-08 18:19:41 -06:00
2014-01-23 16:36:58 -08:00
2016-10-15 10:03:15 -07:00
2010-02-10 17:47:17 -08:00
2016-08-02 19:35:06 -04:00
2016-07-06 10:51:14 +01:00
2016-08-18 15:36:59 +02:00
2016-08-22 09:36:57 -07:00
2015-04-15 16:35:23 -07:00
2016-09-16 12:06:24 +01:00
2016-10-11 15:06:32 -07:00
2016-10-02 22:50:21 -07:00
2016-05-30 09:37:47 +02:00
2012-10-13 10:46:48 +01:00
2016-02-24 09:12:45 +01:00
2016-09-20 04:43:36 -04:00
2015-11-02 14:23:38 -05:00
2016-08-02 19:35:38 -04:00
2016-08-02 19:35:37 -04:00
2016-08-02 19:35:37 -04:00
2006-07-13 13:21:35 -07:00
2016-09-08 22:15:25 -07:00
2016-03-14 17:08:15 +01:00
2014-06-21 22:05:30 +02:00
2016-09-01 16:56:15 -07:00
2016-09-17 08:39:12 -06:00
2012-10-13 10:46:48 +01:00
2016-10-07 18:46:28 -07:00
2016-08-08 12:51:58 -07:00
2012-10-13 10:46:48 +01:00
2016-09-19 12:27:10 +10:00
2016-04-30 09:26:55 -07:00
2016-10-11 15:06:33 -07:00
2015-02-13 21:21:39 -08:00
2016-10-07 18:46:30 -07:00
2016-06-03 08:37:25 +02:00
2016-08-31 15:36:01 +02:00
2014-11-06 14:57:24 -08:00
2016-09-28 17:46:46 +02:00
2015-01-09 14:25:39 -08:00
2012-10-13 10:46:48 +01:00
2016-07-27 14:20:09 -07:00
2015-08-05 08:48:00 +05:30
2015-02-12 18:54:09 -08:00
2016-07-01 05:32:17 -04:00
2016-10-07 15:36:58 -07:00
2016-09-06 18:30:20 +02:00
2016-08-28 23:44:55 -04:00
2016-09-05 13:52:39 +02:00
2016-05-08 23:46:14 -04:00
2015-01-03 14:32:57 -05:00
2016-10-05 18:23:36 -04:00
2016-02-23 19:59:55 -08:00
2016-03-25 16:37:42 -07:00
2008-05-26 16:15:32 +02:00
2015-04-14 09:50:27 -07:00
2006-12-07 02:14:08 +01:00
2012-10-13 10:46:48 +01:00
2016-05-19 19:12:14 -07:00
2016-06-11 14:57:56 -07:00
2009-04-10 15:48:52 +02:00
2011-08-16 00:16:49 -07:00
2016-09-13 02:17:19 +02:00
2011-03-22 15:47:22 +09:00
2016-02-25 11:27:16 +01:00
2016-10-07 18:46:27 -07:00
2016-08-04 08:50:07 -04:00
2014-03-26 16:49:31 -04:00
2016-08-11 15:39:38 +05:30
2016-10-17 09:50:56 -07:00
2016-10-06 09:52:23 -07:00
2010-08-11 08:59:22 -07:00
2016-09-15 09:51:14 -04:00
2012-09-13 16:47:34 +02:00
2013-12-07 01:03:14 +01:00
2016-09-21 00:23:00 -04:00
2016-09-27 14:35:21 +08:00
2013-10-17 14:38:44 +02:00
2016-10-20 13:27:47 +02:00
2010-05-27 09:12:51 -07:00
2016-08-31 14:43:35 -07:00
2016-09-22 17:02:55 +02:00
2016-07-15 10:41:42 +02:00
2014-07-18 11:49:57 +02:00
2015-04-22 17:06:49 +02:00
2016-08-22 10:10:12 -07:00
2010-11-29 08:55:25 +11:00
2014-11-19 22:01:15 -05:00
2016-09-30 11:46:40 +02:00
2016-08-08 13:02:01 -07:00
2016-02-10 13:19:03 +00:00
2015-12-18 17:48:50 -08:00
2016-10-10 13:38:49 -07:00
2016-09-13 08:08:24 +02:00
2016-09-22 20:00:36 -05:00
2016-08-08 14:42:02 -05:00
2016-08-16 18:49:56 +02:00
2016-08-02 02:57:29 +03:00
2016-05-23 11:48:48 -07:00
2016-08-31 13:20:15 +02:00
2016-07-28 16:07:41 -07:00
2015-02-02 10:09:54 -08:00
2016-06-25 09:04:48 -07:00
2016-09-30 10:54:03 +02:00
2013-01-31 19:56:35 -05:00
2016-10-08 10:27:10 +02:00
2016-09-21 00:22:59 -04:00
2016-08-29 08:13:21 -06:00
2016-10-07 18:46:27 -07:00
2016-08-04 08:50:07 -04:00
2016-10-07 21:48:36 -04:00
2011-01-13 08:03:24 -08:00