• A
    Use `fallocate` even if hole-punching unsupported (#5023) · 186b3afa
    Andrew Kryczka 提交于
    Summary:
    The compiler flag `-DROCKSDB_FALLOCATE_PRESENT` was only set when
    `fallocate`, `FALLOC_FL_KEEP_SIZE`, and `FALLOC_FL_PUNCH_HOLE` were all
    present. However, the last of the three is not really necessary for the
    primary `fallocate` use case; furthermore, it was introduced only in later
    Linux kernel versions (2.6.38+).
    
    This PR changes the flag `-DROCKSDB_FALLOCATE_PRESENT` to only require
    `fallocate` and `FALLOC_FL_KEEP_SIZE` to be present. There is a separate
    check for `FALLOC_FL_PUNCH_HOLE` only in the place where it is used.
    Pull Request resolved: https://github.com/facebook/rocksdb/pull/5023
    
    Differential Revision: D14248487
    
    Pulled By: siying
    
    fbshipit-source-id: a10ed0b902fa755988e957bd2dcec9081ec0502e
    186b3afa
io_posix.cc 29.7 KB