On 2013-09-20 10:37, Max Reitz wrote:
This series changes the way of selecting what metadata overlap checks to
perform from (currently) using a macro to using a variable contained in
BDRVQcowState which can be configured at runtime through several command
line options.

Although this does not seem necessary anymore regarding performance
(because I could not find any performance hits using cached overlap
checks), it seems cleaner to me this way.

This series depends on:
  - qcow2: Correct snapshots size for overlap check

Max Reitz (6):
   qcow2: Use negated overflow check mask
   qcow2: Make overlap check mask variable
   qcow2: Add overlap-check options
   qcow2: Array assigning options to OL check bits
   qcow2: Add more overlap check bitmask macros
   qcow2: Evaluate overlap check options

  block/qcow2-cache.c    |  8 ++---
  block/qcow2-cluster.c  | 16 ++++-----
  block/qcow2-refcount.c | 22 ++++++------
  block/qcow2-snapshot.c | 12 +++----
  block/qcow2.c          | 93 +++++++++++++++++++++++++++++++++++++++++++++++---
  block/qcow2.h          | 30 ++++++++++++----
  6 files changed, 137 insertions(+), 44 deletions(-)

Ping – does anyone have comments on this series?

It doesn't really seem to be required, since the current default setting is fast enough (although I still have to do a performance test regarding the host CPU usage). However, this series introduces a cleaner interface to the overlap checks besides the option to change the overlap checks at startup (which isn't just useful to users, but also a requirement for I/O tests on overlap checks on inactive L1 tables).

Max

Reply via email to