• Coly Li's avatar
    bcache: fix input integer overflow of congested threshold · f54478c6
    Coly Li authored
    Cache set congested threshold values congested_read_threshold_us and
    congested_write_threshold_us can be set via sysfs interface. These
    two values are 'unsigned int' type, but sysfs interface uses strtoul
    to convert input string. So if people input a large number like
    9999999999, the value indeed set is 1410065407, which is not expected
    behavior.
    
    This patch replaces sysfs_strtoul() by sysfs_strtoul_clamp() when
    convert input string to unsigned int value, and set value range in
    [0, UINT_MAX], to avoid the above integer overflow errors.
    Signed-off-by: default avatarColy Li <colyli@suse.de>
    Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
    f54478c6
sysfs.c 26.5 KB