From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([209.51.188.92]:55574) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gxKqF-0008TR-KI for qemu-devel@nongnu.org; Fri, 22 Feb 2019 19:06:56 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gxKq9-0001Ny-V9 for qemu-devel@nongnu.org; Fri, 22 Feb 2019 19:06:51 -0500 From: John Snow Date: Fri, 22 Feb 2019 19:06:04 -0500 Message-Id: <20190223000614.13894-1-jsnow@redhat.com> Subject: [Qemu-devel] [PATCH v3 00/10] dirty-bitmaps: deprecate @status field List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org, qemu-block@nongnu.org Cc: Markus Armbruster , Kevin Wolf , vsementsov@virtuozzo.com, Juan Quintela , eblake@redhat.com, Max Reitz , libvir-list@redhat.com, "Dr. David Alan Gilbert" , John Snow , Stefan Hajnoczi , Fam Zheng The current internal meanings of "locked", "user_locked", "qmp_locked", "frozen", "enabled", and "disabled" are all a little muddled. Deprecate the @status field in favor of two new booleans that carry very specific meanings. Then, rename and rework some of the internal semantics to help make the API a bit more clear and easier to read. Well, in my opinion. Based on my current bitmaps branch. V3: [----] : patches are identical [####] : number of functional differences between upstream/downstream patch [down] : patch is downstream-only The flags [FC] indicate (F)unctional and (C)ontextual differences, respectively 001/10:[0002] [FC] 'block/dirty-bitmap: add recording and busy properties' 002/10:[0002] [FC] 'block/dirty-bitmaps: rename frozen predicate helper' 003/10:[down] 'block/dirty-bitmap: remove set/reset assertions against enabled bit' 004/10:[0006] [FC] 'block/dirty-bitmap: change semantics of enabled predicate' 005/10:[down] 'nbd: change error checking order for bitmaps' 006/10:[0002] [FC] 'block/dirty-bitmap: explicitly lock bitmaps with successors' 007/10:[0011] [FC] 'block/dirty-bitmaps: unify qmp_locked and user_locked calls' 008/10:[0002] [FC] 'block/dirty-bitmaps: move comment block' 009/10:[down] 'blockdev: remove unused paio parameter documentation' 010/10:[down] 'iotests: add busy/recording bit test to 124' V3: (Following Vladimir's feedback) 001: Changed texi phrasing, parameter --> field 002: Commit message adjustment comment edit: "not locked" --> "not user_locked" 003: pulled forward out of patch 004 004: Commit message rewrite create_successor and abdicate doc adjustments 005: New. 006: Change successor doc comment Commit message adjustment 007: BdrvDirtyBitmap struct comment adjustments Comment change to create_successor (lock --> busy) Incidental changes from 004's changes 008: Grammar fix (Eric) 009: New, trivial, unrelated fix tagging along. 010: iotest 124 added. John Snow (10): block/dirty-bitmap: add recording and busy properties block/dirty-bitmaps: rename frozen predicate helper block/dirty-bitmap: remove set/reset assertions against enabled bit block/dirty-bitmap: change semantics of enabled predicate nbd: change error checking order for bitmaps block/dirty-bitmap: explicitly lock bitmaps with successors block/dirty-bitmaps: unify qmp_locked and user_locked calls block/dirty-bitmaps: move comment block blockdev: remove unused paio parameter documentation iotests: add busy/recording bit test to 124 block/dirty-bitmap.c | 111 ++++++++++++++++++--------------- blockdev.c | 19 +++--- include/block/dirty-bitmap.h | 7 +-- migration/block-dirty-bitmap.c | 8 +-- nbd/server.c | 14 ++--- qapi/block-core.json | 10 ++- qemu-deprecated.texi | 6 ++ tests/qemu-iotests/124 | 110 ++++++++++++++++++++++++++++++++ tests/qemu-iotests/124.out | 4 +- tests/qemu-iotests/236.out | 28 +++++++++ 10 files changed, 239 insertions(+), 78 deletions(-) -- 2.17.2