• Q
    btrfs: scrub: move logical/physical/dev/mirror_num from scrub_sector to scrub_block · 8686c40e
    Qu Wenruo 提交于
    Currently we store the following members in scrub_sector:
    
    - logical
    - physical
    - physical_for_dev_replace
    - dev
    - mirror_num
    
    However the current scrub code has ensured that scrub_blocks never cross
    stripe boundary.
    This is caused by the entry functions (scrub_simple_mirror,
    scrub_simple_stripe), thus every scrub_block will not cross stripe
    boundary.
    
    Thus this makes it possible to move those members into scrub_block other
    than putting them into scrub_sector.
    
    This should save quite some memory, as a scrub_block can be as large as 64
    sectors, even for metadata it's 16 sectors byte default.
    Signed-off-by: NQu Wenruo <wqu@suse.com>
    Signed-off-by: NDavid Sterba <dsterba@suse.com>
    8686c40e
scrub.c 124.0 KB