Eric Blake
a3e1505dae
qcow2: Don't strand clusters near 2G intervals during commit
...
The qcow2_make_empty() function is reached during 'qemu-img commit',
in order to clear out ALL clusters of an image. However, if the
image cannot use the fast code path (true if the image is format
0.10, or if the image contains a snapshot), the cluster size is
larger than 512, and the image is larger than 2G in size, then our
choice of sector_step causes problems. Since it is not cluster
aligned, but qcow2_discard_clusters() silently ignores an unaligned
head or tail, we are leaving clusters allocated.
Enhance the testsuite to expose the flaw, and patch the problem by
ensuring our step size is aligned.
Signed-off-by: Eric Blake <eblake@redhat.com>
Reviewed-by: John Snow <jsnow@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2016-12-06 15:37:02 +01:00
..
2016-03-14 16:46:42 +01:00
2015-03-10 08:15:34 +03:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-05-12 15:33:24 +02:00
2014-12-12 16:52:33 +00:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-05-12 15:33:24 +02:00
2014-12-12 16:52:33 +00:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-04-15 17:56:56 +02:00
2015-09-11 10:21:38 +03:00
2016-04-15 17:56:56 +02:00
2016-01-07 21:30:17 +01:00
2016-04-15 17:56:56 +02:00
2016-01-07 21:30:17 +01:00
2016-04-15 17:56:56 +02:00
2016-01-07 21:30:17 +01:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-04-15 17:56:56 +02:00
2016-05-12 15:33:24 +02:00
2016-04-15 17:56:56 +02:00
2016-01-07 21:30:17 +01:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-04-15 17:56:56 +02:00
2016-11-08 16:06:35 +00:00
2016-11-08 16:06:35 +00:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-04-15 17:56:56 +02:00
2016-01-20 13:36:23 +01:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-10-31 16:52:39 +01:00
2016-10-31 16:52:39 +01:00
2016-04-15 17:56:56 +02:00
2016-01-20 13:36:23 +01:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-04-15 17:56:56 +02:00
2016-04-15 17:22:11 +02:00
2016-06-08 10:21:08 +02:00
2016-01-07 21:30:17 +01:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-04-15 17:56:56 +02:00
2016-03-17 15:47:56 +01:00
2016-04-15 17:56:56 +02:00
2016-01-07 21:30:17 +01:00
2016-04-15 17:56:56 +02:00
2016-01-07 21:30:17 +01:00
2016-04-15 17:56:56 +02:00
2016-05-12 15:33:24 +02:00
2015-11-11 16:25:47 +01:00
2015-11-11 16:25:47 +01:00
2016-10-31 16:52:39 +01:00
2016-06-28 22:53:03 -04:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-04-15 17:56:56 +02:00
2015-12-18 14:36:17 +01:00
2012-11-14 18:19:21 +01:00
2014-04-01 15:21:03 +02:00
2013-09-12 10:12:47 +02:00
2013-09-12 10:12:47 +02:00
2016-04-15 17:56:56 +02:00
2015-09-11 10:21:38 +03:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-05-12 15:33:24 +02:00
2016-05-12 15:33:24 +02:00
2016-04-15 17:56:56 +02:00
2016-03-30 12:12:15 +02:00
2016-04-15 17:56:56 +02:00
2016-01-07 21:30:17 +01:00
2016-04-15 17:56:56 +02:00
2016-10-27 19:05:23 +02:00
2016-10-27 19:05:23 +02:00
2016-05-12 15:33:24 +02:00
2016-05-12 15:33:24 +02:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-09-20 22:12:57 +02:00
2016-09-05 19:06:48 +02:00
2015-12-03 11:08:07 +08:00
2015-12-03 11:08:07 +08:00
2016-09-05 19:06:47 +02:00
2013-09-12 10:12:47 +02:00
2016-04-15 17:56:56 +02:00
2013-12-04 15:19:00 +01:00
2016-04-15 17:56:56 +02:00
2016-02-02 17:50:48 +01:00
2016-04-15 17:56:56 +02:00
2016-01-13 15:16:18 +01:00
2016-04-15 17:56:56 +02:00
2016-05-12 15:33:24 +02:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-04-15 17:56:56 +02:00
2013-09-06 15:25:07 +02:00
2016-04-15 17:56:56 +02:00
2015-01-23 12:41:32 -05:00
2015-03-10 14:02:20 +01:00
2013-10-11 16:49:50 +02:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-10-24 17:54:03 +02:00
2016-09-23 13:45:36 +02:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-04-15 17:56:56 +02:00
2016-01-13 15:16:18 +01:00
2016-04-15 17:56:56 +02:00
2016-01-13 15:16:18 +01:00
2016-10-24 17:54:03 +02:00
2016-11-08 16:06:35 +00:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-04-15 17:56:56 +02:00
2015-09-11 10:21:38 +03:00
2013-12-04 14:31:39 +01:00
2013-12-04 14:31:39 +01:00
2016-04-15 17:56:56 +02:00
2016-01-13 15:16:18 +01:00
2016-04-15 17:56:56 +02:00
2016-01-13 15:16:18 +01:00
2016-06-07 14:40:51 +01:00
2016-06-07 14:40:51 +01:00
2016-04-15 17:56:56 +02:00
2016-01-13 15:16:18 +01:00
2016-04-15 17:56:56 +02:00
2015-09-11 10:21:38 +03:00
2016-04-15 17:56:56 +02:00
2016-01-13 15:16:18 +01:00
2016-10-24 17:54:03 +02:00
2016-03-14 17:35:06 +01:00
2016-04-15 17:56:56 +02:00
2015-09-11 10:21:38 +03:00
2016-05-12 15:33:23 +02:00
2016-02-02 17:49:42 +01:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-10-24 17:54:03 +02:00
2016-09-23 13:45:36 +02:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-10-24 17:54:03 +02:00
2016-10-07 19:22:11 +02:00
2016-04-15 17:56:56 +02:00
2016-01-13 15:16:18 +01:00
2016-04-15 17:56:56 +02:00
2016-07-18 18:19:01 -04:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2014-05-28 14:22:25 +02:00
2014-12-12 16:52:33 +00:00
2016-04-15 17:56:56 +02:00
2016-01-13 15:16:18 +01:00
2016-10-24 17:54:03 +02:00
2016-10-24 17:54:03 +02:00
2016-04-15 17:56:56 +02:00
2015-02-16 14:36:03 +00:00
2016-06-16 15:20:37 +02:00
2016-01-07 21:30:17 +01:00
2016-05-19 16:45:31 +02:00
2015-10-16 15:34:29 +02:00
2016-12-06 15:37:02 +01:00
2016-12-06 15:37:02 +01:00
2016-04-15 17:56:56 +02:00
2015-09-11 10:21:38 +03:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-04-15 17:56:56 +02:00
2014-08-22 11:01:12 +02:00
2016-04-15 17:56:56 +02:00
2014-11-03 11:41:47 +00:00
2016-04-15 17:56:56 +02:00
2016-01-13 15:16:18 +01:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-04-15 17:56:56 +02:00
2014-10-03 10:30:33 +01:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-04-15 17:56:56 +02:00
2014-12-12 16:52:33 +00:00
2016-11-14 22:47:34 -05:00
2016-08-08 13:05:43 +02:00
2016-04-15 17:56:56 +02:00
2015-12-18 14:36:17 +01:00
2016-04-15 17:56:56 +02:00
2014-11-06 12:45:47 +01:00
2016-04-15 17:56:56 +02:00
2015-12-18 14:34:43 +01:00
2016-04-15 17:56:56 +02:00
2014-12-10 10:31:20 +01:00
2016-04-15 17:56:56 +02:00
2016-01-13 15:16:18 +01:00
2016-04-15 17:56:56 +02:00
2015-09-11 10:21:38 +03:00
2016-04-15 17:56:56 +02:00
2016-01-13 15:16:18 +01:00
2016-10-24 17:54:03 +02:00
2016-02-02 17:50:46 +01:00
2016-10-24 17:54:03 +02:00
2015-11-11 16:25:47 +01:00
2016-04-15 17:56:56 +02:00
2015-06-12 15:54:08 +02:00
2016-04-15 17:56:56 +02:00
2015-06-12 15:54:08 +02:00
2016-04-15 17:56:56 +02:00
2015-09-11 10:21:38 +03:00
2016-04-15 17:56:56 +02:00
2016-03-30 12:16:03 +02:00
2016-04-15 17:56:56 +02:00
2015-02-16 15:07:18 +00:00
2016-11-14 22:47:34 -05:00
2016-11-14 22:47:34 -05:00
2016-04-15 17:56:56 +02:00
2015-03-10 14:02:24 +01:00
2015-04-28 15:36:09 +02:00
2015-04-28 15:36:09 +02:00
2016-04-15 17:56:56 +02:00
2015-09-11 10:21:38 +03:00
2016-04-15 17:56:56 +02:00
2016-01-13 15:16:18 +01:00
2015-07-02 10:06:23 +01:00
2015-07-02 10:06:23 +01:00
2016-04-15 17:56:56 +02:00
2015-12-18 14:34:43 +01:00
2016-04-15 17:56:56 +02:00
2016-03-30 12:12:15 +02:00
2016-04-15 17:56:56 +02:00
2015-07-27 17:19:07 +02:00
2016-05-19 16:56:58 +02:00
2016-05-19 16:45:31 +02:00
2016-04-15 17:56:56 +02:00
2016-05-12 15:33:24 +02:00
2016-04-15 17:56:56 +02:00
2015-09-14 16:51:37 +02:00
2016-10-31 16:52:39 +01:00
2016-09-23 13:45:36 +02:00
2016-04-15 17:56:56 +02:00
2016-02-22 16:54:14 +01:00
2016-10-24 17:54:03 +02:00
2016-09-23 13:45:36 +02:00
2016-04-15 17:56:56 +02:00
2016-03-30 12:16:03 +02:00
2016-04-15 17:56:56 +02:00
2016-02-16 17:16:11 +01:00
2016-02-02 18:07:27 +01:00
2016-07-18 18:19:01 -04:00
2016-04-15 17:56:56 +02:00
2016-02-22 09:49:46 +01:00
2016-03-14 16:46:42 +01:00
2016-03-14 16:46:42 +01:00
2016-10-27 19:05:23 +02:00
2016-10-27 19:05:23 +02:00
2016-04-12 18:07:39 +02:00
2016-03-17 16:43:30 +01:00
2016-07-04 10:46:59 +01:00
2016-07-04 10:46:59 +01:00
2016-04-15 17:56:56 +02:00
2016-04-12 18:06:51 +02:00
2016-04-20 16:52:55 +02:00
2016-04-20 16:52:55 +02:00
2016-06-08 10:21:08 +02:00
2016-06-08 10:21:08 +02:00
2016-10-24 17:54:03 +02:00
2016-06-16 15:20:37 +02:00
2016-06-16 15:20:37 +02:00
2016-06-16 15:20:37 +02:00
2016-07-13 13:41:39 +02:00
2016-07-13 13:41:39 +02:00
2016-09-23 13:36:09 +02:00
2016-09-23 13:36:09 +02:00
2016-09-20 22:10:57 +02:00
2016-09-20 22:10:57 +02:00
2016-09-20 22:10:57 +02:00
2016-09-20 22:10:57 +02:00
2016-11-11 15:56:22 +01:00
2016-10-24 17:54:03 +02:00
2016-09-20 22:10:57 +02:00
2016-09-20 22:10:57 +02:00
2016-10-31 16:52:39 +01:00
2016-10-31 16:52:39 +01:00
2016-10-27 16:29:14 -04:00
2016-10-27 16:29:14 -04:00
2016-04-12 18:07:39 +02:00
2016-11-11 15:56:22 +01:00
2016-05-12 15:33:24 +02:00
2016-09-20 22:10:57 +02:00
2013-11-07 13:53:31 +01:00
2016-11-11 15:56:22 +01:00
2016-10-27 19:05:23 +02:00
2012-02-22 16:15:22 +01:00
2016-10-31 16:52:39 +01:00
2016-10-31 16:52:39 +01:00
2012-02-22 16:15:22 +01:00
2014-03-14 16:28:28 +01:00
2014-12-10 10:31:13 +01:00
2016-02-08 17:29:54 +01:00
2016-06-16 15:19:55 +02:00
2016-10-27 19:05:23 +02:00