qemu-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-commits] [qemu/qemu] a3e150: qcow2: Don't strand clusters near 2G


From: GitHub
Subject: [Qemu-commits] [qemu/qemu] a3e150: qcow2: Don't strand clusters near 2G intervals dur...
Date: Tue, 06 Dec 2016 15:30:04 -0800

  Branch: refs/heads/master
  Home:   https://github.com/qemu/qemu
  Commit: a3e1505daec31ef56f0489f8c8fff1b8e4ca92bd
      
https://github.com/qemu/qemu/commit/a3e1505daec31ef56f0489f8c8fff1b8e4ca92bd
  Author: Eric Blake <address@hidden>
  Date:   2016-12-06 (Tue, 06 Dec 2016)

  Changed paths:
    M block/qcow2.c
    M tests/qemu-iotests/097
    M tests/qemu-iotests/097.out

  Log Message:
  -----------
  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 <address@hidden>
Reviewed-by: John Snow <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Signed-off-by: Kevin Wolf <address@hidden>


  Commit: 68701de1362b29fd6941a2021e9393ddbe60edd8
      
https://github.com/qemu/qemu/commit/68701de1362b29fd6941a2021e9393ddbe60edd8
  Author: Stefan Hajnoczi <address@hidden>
  Date:   2016-12-06 (Tue, 06 Dec 2016)

  Changed paths:
    M block/qcow2.c
    M tests/qemu-iotests/097
    M tests/qemu-iotests/097.out

  Log Message:
  -----------
  Merge remote-tracking branch 'kwolf/tags/for-upstream' into staging

Block layer patches for 2.8.0-rc3

# gpg: Signature made Tue 06 Dec 2016 02:44:39 PM GMT
# gpg:                using RSA key 0x7F09B272C88F2FD6
# gpg: Good signature from "Kevin Wolf <address@hidden>"
# Primary key fingerprint: DC3D EB15 9A9A F95D 3D74  56FE 7F09 B272 C88F 2FD6

* kwolf/tags/for-upstream:
  qcow2: Don't strand clusters near 2G intervals during commit

Message-id: address@hidden
Signed-off-by: Stefan Hajnoczi <address@hidden>


  Commit: b5b7b5deb41f50ce1903ec26c0132862f34da63d
      
https://github.com/qemu/qemu/commit/b5b7b5deb41f50ce1903ec26c0132862f34da63d
  Author: Changlong Xie <address@hidden>
  Date:   2016-12-06 (Tue, 06 Dec 2016)

  Changed paths:
    M tests/.gitignore

  Log Message:
  -----------
  tests/.gitignore: Ignore test-char

[Lin Ma <address@hidden> notes that commit ea3af47d added test for chardev
unit tests, but didn't add the name of generated binary in .gitignore.
--Stefan]

Signed-off-by: Changlong Xie <address@hidden>
Reviewed-by: Marc-André Lureau <address@hidden>
Message-id: address@hidden
Signed-off-by: Stefan Hajnoczi <address@hidden>


  Commit: d750c3a966d6409356739e97fa4d4a6446754e1e
      
https://github.com/qemu/qemu/commit/d750c3a966d6409356739e97fa4d4a6446754e1e
  Author: Eric Blake <address@hidden>
  Date:   2016-12-06 (Tue, 06 Dec 2016)

  Changed paths:
    M qapi/block.json

  Log Message:
  -----------
  qapi: Document DEVICE_TRAY_MOVED addition

Commit 2d76e72 failed to add a versioning tag to 'id'.

I audited all qapi*.json files from v2.7.0 to the current
state of the tree, and didn't find any other additions where
we failed to use a version tag.

Signed-off-by: Eric Blake <address@hidden>
Reviewed-by: Marc-André Lureau <address@hidden>
Message-id: address@hidden
Signed-off-by: Stefan Hajnoczi <address@hidden>


  Commit: a9353fe897ca2687e5b3385ed39e3db3927a90e0
      
https://github.com/qemu/qemu/commit/a9353fe897ca2687e5b3385ed39e3db3927a90e0
  Author: Peter Maydell <address@hidden>
  Date:   2016-12-06 (Tue, 06 Dec 2016)

  Changed paths:
    M exec.c

  Log Message:
  -----------
  exec.c: Fix breakpoint invalidation race

A bug (1647683) was reported showing a crash when removing
breakpoints.  The reproducer was bisected to 3359baad when tb_flush
was finally made thread safe.  While in MTTCG the locking in
breakpoint_invalidate would have prevented any problems, but
currently tb_lock() is a NOP for system emulation.

The race is between a tb_flush from the gdbstub and the
tb_invalidate_phys_addr() in breakpoint_invalidate().

Ideally we'd have actual locking here; for the moment the
simple fix is to do a full tb_flush() for a bp invalidate,
since that is thread-safe even if no lock is taken.

Reported-by: Julian Brown <address@hidden>
Signed-off-by: Peter Maydell <address@hidden>
Message-id: address@hidden
Signed-off-by: Stefan Hajnoczi <address@hidden>


  Commit: 4230e5d128174c1f5abedd7ff6c9e035456e665e
      
https://github.com/qemu/qemu/commit/4230e5d128174c1f5abedd7ff6c9e035456e665e
  Author: Eric Blake <address@hidden>
  Date:   2016-12-06 (Tue, 06 Dec 2016)

  Changed paths:
    M qapi/block-core.json

  Log Message:
  -----------
  qapi: Document introduction of gluster's 'debug' option

We intentionally renamed 'debug-level' to 'debug' in the QMP
schema for 'blockdev-add' related to gluster, in order to
match the command line (commit 1a417e46).  However, since
'debug-level' was visible in 2.7, that means that we should
document that 'debug' was not available until 2.8.

The change was intentional because 'blockdev-add' itself
underwent incompatible changes (such as commit 0153d2f) for
the same release; our intent is that after 2.8, these
interfaces will now be stable.  [In hindsight, we should have
used the name x-blockdev-add when we first introduced it]

Signed-off-by: Eric Blake <address@hidden>
Message-id: address@hidden
Signed-off-by: Stefan Hajnoczi <address@hidden>


  Commit: a92f7fe5a82ac9e8d127e92c5dce1a84064126da
      
https://github.com/qemu/qemu/commit/a92f7fe5a82ac9e8d127e92c5dce1a84064126da
  Author: Stefan Hajnoczi <address@hidden>
  Date:   2016-12-06 (Tue, 06 Dec 2016)

  Changed paths:
    M VERSION

  Log Message:
  -----------
  Update version for v2.8.0-rc3 release

Signed-off-by: Stefan Hajnoczi <address@hidden>


Compare: https://github.com/qemu/qemu/compare/ce1f3e88f833...a92f7fe5a82a

reply via email to

[Prev in Thread] Current Thread [Next in Thread]