Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

fs/ntfs/mft.c ntfs_mft_bitmap_extend_allocation_nolock() -> ntfs_attr_record_resize()

Type Parameter Key Value
PARAM_VALUE 1 a 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 m unit_byte
UNITS 1 a unit_byte
LOCK2 &mft_ni->mrec_lock
LOCK2 &mftbmp_ni->runlist.lock
LOCK2 &vol->mftbmp_lock
TYPE_LOCK (struct ntfs_inode)->mrec_lock
TYPE_LOCK (struct ntfs_volume)->mftbmp_lock
TYPE_LOCK (struct runlist)->lock

fs/ntfs/mft.c ntfs_mft_bitmap_extend_allocation_nolock() -> ntfs_attr_record_resize()

Type Parameter Key Value
PARAM_VALUE 1 a 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 m unit_byte
UNITS 1 a unit_byte
UNITS 2 new_size unit_byte
LOCK2 &mft_ni->mrec_lock
LOCK2 &mftbmp_ni->runlist.lock
LOCK2 &vol->mftbmp_lock
TYPE_LOCK (struct ntfs_inode)->mrec_lock
TYPE_LOCK (struct ntfs_volume)->mftbmp_lock
TYPE_LOCK (struct runlist)->lock

fs/ntfs/mft.c ntfs_mft_data_extend_allocation_nolock() -> ntfs_attr_record_resize()

Type Parameter Key Value
PARAM_VALUE 1 a 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 m unit_byte
UNITS 1 a unit_byte
LOCK2 &mft_ni->mrec_lock
LOCK2 &vol->mftbmp_lock
TYPE_LOCK (struct ntfs_inode)->mrec_lock
TYPE_LOCK (struct ntfs_volume)->mftbmp_lock

fs/ntfs/mft.c ntfs_mft_data_extend_allocation_nolock() -> ntfs_attr_record_resize()

Type Parameter Key Value
PARAM_VALUE 0 m 0-ptr_max
PARAM_VALUE 1 a 4096-ptr_max
PARAM_VALUE 1 a->data.non_resident.lowest_vcn 1-u64max
RX_PATH
TASK_NOT_RUNNING
UNITS 0 m unit_byte
UNITS 1 a unit_byte
UNITS 2 new_size unit_byte
LOCK2 &mft_ni->mrec_lock
LOCK2 &vol->mftbmp_lock
TYPE_LOCK (struct ntfs_inode)->mrec_lock
TYPE_LOCK (struct ntfs_volume)->mftbmp_lock

fs/ntfs/attrib.c ntfs_attr_add() -> ntfs_attr_record_resize()

Type Parameter Key Value
PARAM_VALUE 0 m 0-ptr_max
PARAM_VALUE 1 a 4096-ptr_max
PARAM_VALUE 2 new_size 0
BUF_SIZE 0 m 0-s32max
BUF_SIZE 0 m 0-s32max
DATA_SOURCE 0 m r map_mft_record
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &dir_ni->mrec_lock
HALF_LOCKED2 &ni->mrec_lock

fs/ntfs/attrib.c ntfs_attr_make_non_resident() -> ntfs_attr_record_resize()

Type Parameter Key Value
PARAM_VALUE 1 a 4096-ptr_max
PARAM_VALUE 1 a->non_resident 0
BIT_INFO 2 new_size 0x0,0x7ffffff8
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 m->bytes_in_use 0-s32max[c]
USER_DATA 1 a->data.non_resident.data_size 0[c]
USER_DATA 1 a->data.non_resident.initialized_size 0-9223372036854775806[c]
USER_DATA 1 a->length 1-u32max[c]
UNITS 0 m unit_byte
UNITS 1 a unit_byte
LOCK2 &ni->runlist.lock
HALF_LOCKED2 &ni->mrec_lock
TYPE_LOCK (struct runlist)->lock

fs/ntfs/attrib.c ntfs_attr_make_non_resident() -> ntfs_attr_record_resize()

Type Parameter Key Value
PARAM_VALUE 0 m 4096-ptr_max
PARAM_VALUE 1 a 4096-ptr_max
PARAM_VALUE 1 a->data.non_resident.compression_unit 0,4
PARAM_VALUE 1 a->data.non_resident.highest_vcn 0-9223372036854775807
PARAM_VALUE 1 a->data.non_resident.lowest_vcn 0
PARAM_VALUE 1 a->length 8-u32max
PARAM_VALUE 1 a->name_offset 24
PARAM_VALUE 1 a->non_resident 0
PARAM_VALUE 2 new_size 0,8-u32max
CAPPED_DATA 1 a->length 1
FUZZY_MAX 1 a->data.non_resident.compression_unit 4
BIT_INFO 1 a->data.non_resident.compression_unit 0x0,0x4
BIT_INFO 1 a->data.non_resident.mapping_pairs_offset 0x0,0xfff8
BIT_INFO 2 new_size 0x0,0x7ffffff8
HARD_MAX 1 a->data.non_resident.compression_unit 4
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 m->bytes_in_use 0-s32max[c]
USER_DATA 1 a->length 8-u32max[c]
UNITS 0 m unit_byte
UNITS 1 a unit_byte
LOCK2 &ni->runlist.lock
HALF_LOCKED2 &ni->mrec_lock
TYPE_LOCK (struct runlist)->lock

fs/ntfs/attrib.c ntfs_attr_make_resident() -> ntfs_attr_record_resize()

Type Parameter Key Value
PARAM_VALUE 0 m 4096-ptr_max
PARAM_VALUE 1 a 4096-ptr_max
PARAM_VALUE 1 a->data.non_resident.lowest_vcn 0
PARAM_VALUE 1 a->name_offset 24
BIT_INFO 2 new_size 0x0,0x7ffffffffffffff8
NOSPEC 1 a->data.non_resident.data_size
NOSPEC 1 a->data.non_resident.initialized_size
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 m->bytes_in_use 0-s32max[c]
USER_DATA 1 a->data.non_resident.data_size 0[c]
USER_DATA 1 a->data.non_resident.initialized_size 0-9223372036854775806[c]
USER_DATA 1 a->length 0-u32max[c]
USER_DATA 2 new_size 0,24-536[c]
UNITS 0 m unit_byte
UNITS 1 a unit_byte
UNITS 2 new_size unit_byte
HALF_LOCKED2 &ni->mrec_lock
HALF_LOCKED2 &vi->i_rwsem

fs/ntfs/attrib.c ntfs_attr_record_move_to() -> ntfs_attr_record_resize()

Type Parameter Key Value
PARAM_VALUE 1 a 4096-ptr_max
PARAM_VALUE 2 new_size 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 m->bytes_in_use 0-s32max[c]
USER_DATA 1 a->data.non_resident.data_size 0[c]
USER_DATA 1 a->data.non_resident.initialized_size 0-9223372036854775806[c]
USER_DATA 1 a->length 0-u32max[c]
UNITS 0 m unit_byte
UNITS 1 a unit_byte
HALF_LOCKED2 &base_ni->extent_lock

fs/ntfs/attrib.c ntfs_attr_record_rm() -> ntfs_attr_record_resize()

Type Parameter Key Value
PARAM_VALUE 0 m 1-u64max
PARAM_VALUE 1 a 4096-ptr_max
PARAM_VALUE 2 new_size 0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 m->bytes_in_use 0-s32max[c]
USER_DATA 1 a->data.non_resident.data_size 0[c]
USER_DATA 1 a->data.non_resident.initialized_size 0-9223372036854775806[c]
USER_DATA 1 a->length 0-u32max[c]
NO_OVERFLOW_SIMPLE 1 a->data.non_resident.mapping_pairs_offset
UNITS 0 m unit_byte
UNITS 1 a unit_byte
HALF_LOCKED2 &ni->mrec_lock
HALF_LOCKED2 &vol_ni->mrec_lock

fs/ntfs/attrib.c ntfs_attr_update_mapping_pairs() -> ntfs_attr_record_resize()

Type Parameter Key Value
PARAM_VALUE 0 m 4096-ptr_max
PARAM_VALUE 1 a 4096-ptr_max
NOSPEC 0 m->bytes_in_use
NOSPEC 1 a->data.non_resident.allocated_size
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 m->bytes_in_use 0-s32max[c]
USER_DATA 1 a->data.non_resident.allocated_size 0-4294967296
USER_DATA 1 a->data.non_resident.data_size 0[c]
USER_DATA 1 a->data.non_resident.initialized_size 0-9223372036854775806[c]
USER_DATA 1 a->length 0-u32max[c]
UNITS 0 m unit_byte
UNITS 1 a unit_byte
UNITS 2 new_size unit_byte
HALF_LOCKED2 &mft_ni->mrec_lock
HALF_LOCKED2 &ni->mrec_lock
HALF_LOCKED2 &ni->runlist.lock
HALF_LOCKED2 &vi->i_rwsem
HALF_LOCKED2 &vol->mftbmp_lock

fs/ntfs/attrib.c ntfs_non_resident_attr_record_add() -> ntfs_attr_record_resize()

Type Parameter Key Value
PARAM_VALUE 0 m 4096-ptr_max
PARAM_VALUE 1 a 4096-ptr_max
PARAM_VALUE 1 a->data.non_resident.compression_unit 0
PARAM_VALUE 1 a->data.non_resident.lowest_vcn 0
PARAM_VALUE 1 a->data.non_resident.mapping_pairs_offset 64,72-576
PARAM_VALUE 1 a->flags 0
PARAM_VALUE 1 a->length 72,80-584
PARAM_VALUE 1 a->name_offset 64
PARAM_VALUE 1 a->non_resident 1
PARAM_VALUE 1 a->type 16,48,80,128,144,160,176,192,208,224
PARAM_VALUE 2 new_size 0
CAPPED_DATA 1 a->type 1
FUZZY_MAX 1 a->data.non_resident.mapping_pairs_offset 576
HARD_MAX 1 a->data.non_resident.mapping_pairs_offset 576
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 m unit_byte
UNITS 1 a unit_byte
HALF_LOCKED2 &dir_ni->mrec_lock
HALF_LOCKED2 &ni->mrec_lock

fs/ntfs/attrib.c ntfs_resident_attr_record_add() -> ntfs_attr_record_resize()

Type Parameter Key Value
PARAM_VALUE 0 m 4096-ptr_max
PARAM_VALUE 1 a 4096-ptr_max
PARAM_VALUE 1 a->data.resident.flags 0-1
PARAM_VALUE 1 a->flags 0
PARAM_VALUE 1 a->name_offset 0,24
PARAM_VALUE 1 a->non_resident 0
PARAM_VALUE 1 a->type 16,48,80,96,128,144,176,192,208,224
PARAM_VALUE 2 new_size 0
CAPPED_DATA 1 a->type 1
FUZZY_MAX 1 a->data.resident.flags 1
FUZZY_MAX 1 a->name_offset 24
BIT_INFO 1 a->name_offset 0x0,0x18
HARD_MAX 1 a->data.resident.flags 1
HARD_MAX 1 a->name_offset 24
HARD_MAX 1 a->type 224
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 m->bytes_in_use 0-s32max[c]
USER_DATA 1 a->data.non_resident.data_size 0[c]
USER_DATA 1 a->data.non_resident.initialized_size 0-9223372036854775806[c]
NO_OVERFLOW_SIMPLE 1 a->data.resident.value_length
UNITS 0 m unit_byte
UNITS 1 a unit_byte
HALF_LOCKED2 &ni->mrec_lock

fs/ntfs/attrib.c ntfs_resident_attr_value_resize() -> ntfs_attr_record_resize()

Type Parameter Key Value
PARAM_VALUE 1 a 4096-ptr_max
DATA_SOURCE 0 m $0
DATA_SOURCE 1 a $1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 m->bytes_in_use 0-s32max[c]
USER_DATA 1 a->data.non_resident.data_size 0[c]
USER_DATA 1 a->data.non_resident.initialized_size 0-9223372036854775806[c]
USER_DATA 1 a->length 0-u32max[c]
UNITS 0 m unit_byte
UNITS 1 a unit_byte
UNITS 2 new_size unit_byte
HALF_LOCKED2 &ni->mrec_lock

fs/ntfs/ea.c ntfs_new_attr_flags() -> ntfs_attr_record_resize()

Type Parameter Key Value
PARAM_VALUE 0 m 0-ptr_max
PARAM_VALUE 1 a 4096-ptr_max
PARAM_VALUE 1 a->data.non_resident.data_size 0
BUF_SIZE 0 m 0-s32max
BUF_SIZE 0 m 0-s32max
DATA_SOURCE 0 m r map_mft_record
BIT_INFO 2 new_size 0x0,0x7ffffff8
RX_PATH
TASK_NOT_RUNNING
UNITS 1 a unit_byte
UNITS 2 new_size unit_byte
LOCK2 &ni->mrec_lock
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &unused->d_inode->i_rwsem
TYPE_LOCK (struct ntfs_inode)->mrec_lock