Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

fs/f2fs/segment.c __queue_discard_cmd() -> f2fs_bdev_support_discard()

Type Parameter Key Value
DATA_SOURCE 0 bdev $1
RX_PATH
TASK_NOT_RUNNING
UNITS 0 bdev unit_byte
HALF_LOCKED2 &sbi->cp_global_sem.internal_rwsem
HALF_LOCKED2 &sbi->gc_lock.internal_rwsem
HALF_LOCKED2 &sbi->pin_sem.internal_rwsem
HALF_LOCKED2 &sbi->umount_mutex

fs/f2fs/segment.c f2fs_hw_support_discard() -> f2fs_bdev_support_discard()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
UNITS 0 bdev unit_byte
HALF_LOCKED2 &sbi->cp_global_sem.internal_rwsem
HALF_LOCKED2 &sbi->gc_lock.internal_rwsem
HALF_LOCKED2 &sbi->pin_sem.internal_rwsem
HALF_LOCKED2 &sbi->umount_mutex

fs/f2fs/segment.c f2fs_hw_support_discard() -> f2fs_bdev_support_discard()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
UNITS 0 bdev unit_byte
HALF_LOCKED2 &sbi->cp_global_sem.internal_rwsem
HALF_LOCKED2 &sbi->gc_lock.internal_rwsem
HALF_LOCKED2 &sbi->pin_sem.internal_rwsem
HALF_LOCKED2 &sbi->umount_mutex

fs/f2fs/sysfs.c f2fs_hw_support_discard() -> f2fs_bdev_support_discard()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
UNITS 0 bdev unit_byte
LOCK2 &seq->lock
TYPE_LOCK (struct seq_file)->lock

fs/f2fs/sysfs.c f2fs_hw_support_discard() -> f2fs_bdev_support_discard()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
LOCK2 &seq->lock
TYPE_LOCK (struct seq_file)->lock

fs/f2fs/file.c f2fs_hw_support_discard() -> f2fs_bdev_support_discard()

Type Parameter Key Value
UNITS 0 bdev unit_byte

fs/f2fs/file.c f2fs_hw_support_discard() -> f2fs_bdev_support_discard()

Type Parameter Key Value

fs/f2fs/super.c f2fs_hw_support_discard() -> f2fs_bdev_support_discard()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
UNITS 0 bdev unit_byte
HALF_LOCKED2 &sbi->umount_mutex

fs/f2fs/super.c f2fs_hw_support_discard() -> f2fs_bdev_support_discard()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &sbi->umount_mutex