You need to sign in or sign up before continuing.
  • J
    jbd2: Reserve space for revoke descriptor blocks · 38d8c053
    Jan Kara 提交于
    mainline inclusion
    from mainline-5.5-rc1
    commit fdc3ef882a5d59c1709a13b5486ae2b1632e12b6
    category: bugfix
    bugzilla: 25031
    CVE: NA
    ---------------------------
    
    Extend functions for starting, extending, and restarting transaction
    handles to take number of revoke records handle must be able to
    accommodate. These functions then make sure transaction has enough
    credits to be able to store resulting revoke descriptor blocks. Also
    revoke code tracks number of revoke records created by a handle to catch
    situation where some place didn't reserve enough space for revoke
    records. Similarly to standard transaction credits, space for unused
    reserved revoke records is released when the handle is stopped.
    
    On the ext4 side we currently take a simplistic approach of reserving
    space for 1024 revoke records for any transaction. This grows amount of
    credits reserved for each handle only by a few and is enough for any
    normal workload so that we don't hit warnings in jbd2. We will refine
    the logic in following commits.
    Signed-off-by: NJan Kara <jack@suse.cz>
    Link: https://lore.kernel.org/r/20191105164437.32602-20-jack@suse.czSigned-off-by: NTheodore Ts'o <tytso@mit.edu>
    
    Conflict:
      include/linux/jbd2.h
    Signed-off-by: Nzhangyi (F) <yi.zhang@huawei.com>
    Reviewed-by: NYang Erkun <yangerkun@huawei.com>
    Signed-off-by: NYang Yingliang <yangyingliang@huawei.com>
    38d8c053
ext4_jbd2.h 16.7 KB