• Gao Xiang's avatar
    staging: erofs: introduce workstation for decompression · e7e9a307
    Gao Xiang authored
    This patch introduces another concept used by the unzip
    subsystem called 'workstation'. It can be seen as a sparse
    array that stores pointers pointed to data structures
    related to the corresponding physical blocks.
    
    All lookup cases are protected by RCU read lock. Besides,
    reference count and spin_lock are also introduced to
    manage its lifetime and serialize all update operations.
    
    'workstation' is currently implemented on the in-kernel
    radix tree approach for backward compatibility.
    With the evolution of linux kernel, it could be migrated
    into XArray implementation in the future.
    Signed-off-by: default avatarGao Xiang <gaoxiang25@huawei.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    e7e9a307
internal.h 13.3 KB