• Luis Chamberlain's avatar
    block: create the request_queue debugfs_dir on registration · 85e0cbbb
    Luis Chamberlain authored
    We were only creating the request_queue debugfs_dir only
    for make_request block drivers (multiqueue), but never for
    request-based block drivers. We did this as we were only
    creating non-blktrace additional debugfs files on that directory
    for make_request drivers. However, since blktrace *always* creates
    that directory anyway, we special-case the use of that directory
    on blktrace. Other than this being an eye-sore, this exposes
    request-based block drivers to the same debugfs fragile
    race that used to exist with make_request block drivers
    where if we start adding files onto that directory we can later
    run a race with a double removal of dentries on the directory
    if we don't deal with this carefully on blktrace.
    
    Instead, just simplify things by always creating the request_queue
    debugfs_dir on request_queue registration. Rename the mutex also to
    reflect the fact that this is used outside of the blktrace context.
    Signed-off-by: default avatarLuis Chamberlain <mcgrof@kernel.org>
    Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
    Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
    85e0cbbb
blk-core.c 51.1 KB