• T
    ext4: make the extent_status code more robust against ENOMEM failures · e15f742c
    Theodore Ts'o 提交于
    Some callers of ext4_es_remove_extent() and ext4_es_insert_extent()
    may not be completely robust against ENOMEM failures (or the
    consequences of reflecting ENOMEM back up to userspace may lead to
    xfstest or user application failure).
    
    To mitigate against this, when trying to insert an entry in the extent
    status tree, try to shrink the inode's extent status tree before
    returning ENOMEM.  If there are entries which don't record information
    about extents under delayed allocations, freeing one of them is
    preferable to returning ENOMEM.
    Signed-off-by: N"Theodore Ts'o" <tytso@mit.edu>
    Reviewed-by: NZheng Liu <wenqing.lz@taobao.com>
    e15f742c
extents_status.c 28.1 KB