badblocks: add more helper structure and routines in badblocks.h
authorColy Li <colyli@suse.de>
Fri, 11 Aug 2023 17:05:07 +0000 (01:05 +0800)
committerJens Axboe <axboe@kernel.dk>
Tue, 26 Sep 2023 06:44:33 +0000 (00:44 -0600)
commite850d9a52f4cd31521c80a7ea9718b69129af4d5
treec878270558ea1bb56adfb22b77eeae13ca717166
parentd78bfa1346ab1fe04d20aa45a0678d1fc866f37c
badblocks: add more helper structure and routines in badblocks.h

This patch adds the following helper structure and routines into
badblocks.h,
- struct badblocks_context
  This structure is used in improved badblocks code for bad table
  iteration.
- BB_END()
  The macro to calculate end LBA of a bad range record from bad
  table.
- badblocks_full() and badblocks_empty()
  The inline routines to check whether bad table is full or empty.
- set_changed() and clear_changed()
  The inline routines to set and clear 'changed' tag from struct
  badblocks.

These new helper structure and routines can help to make the code more
clear, they will be used in the improved badblocks code in following
patches.

Signed-off-by: Coly Li <colyli@suse.de>
Reviewed-by: Xiao Ni <xni@redhat.com>
Cc: Dan Williams <dan.j.williams@intel.com>
Cc: Geliang Tang <geliang.tang@suse.com>
Cc: Hannes Reinecke <hare@suse.de>
Cc: Jens Axboe <axboe@kernel.dk>
Cc: NeilBrown <neilb@suse.de>
Cc: Vishal L Verma <vishal.l.verma@intel.com>
Acked-by: Geliang Tang <geliang.tang@suse.com>
Link: https://lore.kernel.org/r/20230811170513.2300-2-colyli@suse.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
include/linux/badblocks.h