• Gao Xiang's avatar
    erofs: convert workstn to XArray · 64094a04
    Gao Xiang authored
    XArray has friendly APIs and it will replace the old radix
    tree in the near future.
    
    This convert makes use of __xa_cmpxchg when inserting on
    a just inserted item by other thread. In detail, instead
    of totally looking up again as what we did for the old
    radix tree, it will try to legitimize the current in-tree
    item in the XArray therefore more effective.
    
    In addition, naming is rather a challenge for non-English
    speaker like me. The basic idea of workstn is to provide
    a runtime sparse array with items arranged in the physical
    block number order. Such items (was called workgroup) can be
    used to record compress clusters or for later new features.
    
    However, both workgroup and workstn seem not good names from
    whatever point of view, so I'd like to rename them as pslot
    and managed_pslots to stand for physical slots. This patch
    handles the second as a part of the radix tree convert.
    
    Cc: Matthew Wilcox <willy@infradead.org>
    Link: https://lore.kernel.org/r/20200220024642.91529-1-gaoxiang25@huawei.comReviewed-by: default avatarChao Yu <yuchao0@huawei.com>
    Signed-off-by: default avatarGao Xiang <gaoxiang25@huawei.com>
    64094a04
zdata.c 35.2 KB