Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

fs/btrfs/qgroup.c __del_qgroup_relation() -> squota_check_parent_usage()

Type Parameter Key Value
PARAM_VALUE 0 fs_info 4096-ptr_max
PARAM_VALUE 0 fs_info->qgroup_ioctl_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 fs_info->qgroup_ioctl_lock.wait_lock.owner (-1)
PARAM_VALUE 0 fs_info->qgroup_ioctl_lock.wait_lock.owner_cpu u32max
PARAM_VALUE 0 fs_info->qgroup_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 fs_info->quota_root 1-u64max
PARAM_VALUE 1 parent 4096-ptr_max
CAPPED_DATA 1 parent 1
DATA_SOURCE 1 parent r find_qgroup_rb
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
UNITS 0 fs_info unit_byte
LOCK2 &fs_info->qgroup_ioctl_lock
LOCK2 0 &fs_info->qgroup_lock
TYPE_LOCK (struct btrfs_fs_info)->qgroup_ioctl_lock
TYPE_LOCK (struct btrfs_fs_info)->qgroup_lock

fs/btrfs/qgroup.c btrfs_add_qgroup_relation() -> squota_check_parent_usage()

Type Parameter Key Value
PARAM_VALUE 0 fs_info 4096-ptr_max
PARAM_VALUE 0 fs_info->qgroup_ioctl_lock.dep_map->name 0-255
PARAM_VALUE 0 fs_info->qgroup_ioctl_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 fs_info->qgroup_ioctl_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 fs_info->qgroup_ioctl_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 fs_info->qgroup_ioctl_lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 fs_info->qgroup_ioctl_lock.wait_lock.owner (-1)
PARAM_VALUE 0 fs_info->qgroup_ioctl_lock.wait_lock.owner_cpu u32max
PARAM_VALUE 0 fs_info->qgroup_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 fs_info->quota_root 1-u64max
PARAM_VALUE 1 parent->members.prev 4096-ptr_max
PARAM_VALUE 1 parent->members.prev->next 4096-ptr_max
PARAM_VALUE 1 parent->members.prev->next->next 4096-ptr_max
CAPPED_DATA 0 &fs_info->qgroup_ioctl_lock 1
DATA_SOURCE 1 parent r find_qgroup_rb
CAPABLE 0 21
PREEMPT_ADD <- disables preempt
NOCHECK_CALL
UNITS 0 fs_info unit_byte
LOCK2 0 &fs_info->qgroup_ioctl_lock
LOCK2 0 &fs_info->qgroup_lock
TYPE_LOCK (struct btrfs_fs_info)->qgroup_ioctl_lock
TYPE_LOCK (struct btrfs_fs_info)->qgroup_lock

fs/btrfs/qgroup.c can_delete_parent_qgroup() -> squota_check_parent_usage()

Type Parameter Key Value
PARAM_VALUE 0 fs_info 4096-ptr_max
PARAM_VALUE 0 fs_info->qgroup_ioctl_lock.dep_map->name 0-255
PARAM_VALUE 0 fs_info->qgroup_ioctl_lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 fs_info->qgroup_ioctl_lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 fs_info->qgroup_ioctl_lock.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 fs_info->qgroup_ioctl_lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 fs_info->qgroup_ioctl_lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 fs_info->qgroup_ioctl_lock.wait_lock.owner (-1)
PARAM_VALUE 0 fs_info->qgroup_ioctl_lock.wait_lock.owner_cpu u32max
PARAM_VALUE 0 fs_info->quota_root 1-u64max
PARAM_VALUE 1 parent 4096-ptr_max
DATA_SOURCE 0 fs_info $0
DATA_SOURCE 1 parent $1
NOCHECK_CALL
UNITS 0 fs_info unit_byte
LOCK2 0 &fs_info->qgroup_ioctl_lock
TYPE_LOCK (struct btrfs_fs_info)->qgroup_ioctl_lock