Defined in 1 files as a prototype:
Defined in 1 files as a function:
Referenced in 5 files:
- fs/ntfs/attrib.c
- fs/ntfs/compress.c, line 1440
- fs/ntfs/iomap.c, line 485
- fs/ntfs/mft.c
- fs/ntfs/runlist.c, line 999
Smatch caller information:
fs/ntfs/compress.c ntfs_write_cb() -> ntfs_runlists_merge()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | d_runlist | 4096-ptr_max |
| PARAM_VALUE | 0 | d_runlist->lock.wait_lock.owner | (-1) |
| PARAM_VALUE | 0 | d_runlist->lock.wait_lock.owner_cpu | u32max |
| PARAM_VALUE | 1 | srl | 4096-ptr_max |
| PARAM_VALUE | 2 | s_rl_count | 0 |
| PARAM_VALUE | 3 | new_rl_count | 1595729448752799744 |
| DATA_SOURCE | 1 | srl | r ntfs_cluster_alloc |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &ni->runlist.lock | ||
| LOCK2 | &vi->i_rwsem | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct inode)->i_rwsem | ||
| TYPE_LOCK | (struct runlist)->lock |
fs/ntfs/runlist.c ntfs_mapping_pairs_decompress() -> ntfs_runlists_merge()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | d_runlist | 4096-ptr_max |
| PARAM_VALUE | 0 | d_runlist->rl | 1-u64max |
| PARAM_VALUE | 1 | srl | 4096-ptr_max |
| PARAM_VALUE | 2 | s_rl_count | 0-s32max,18446744071562067968-u64max |
| PARAM_VALUE | 3 | new_rl_count | 1492306802697621504,3952448462030852096,6284815103542083584,7436603081523924992,8873909673392902144 |
| BUF_SIZE | 1 | srl | 0-2147487743,18446744071562067968-u64max |
| BUF_SIZE | 1 | srl | 0-2147487743,18446744071562067968-u64max |
| DATA_SOURCE | 0 | d_runlist | $2 |
| DATA_SOURCE | 3 | new_rl_count | $3 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NO_OVERFLOW_SIMPLE | 0 | d_runlist->count | |
| NO_OVERFLOW_SIMPLE | 1 | srl->length |
fs/ntfs/iomap.c ntfs_write_simple_iomap_begin_non_resident() -> ntfs_runlists_merge()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | d_runlist | 4096-ptr_max |
| PARAM_VALUE | 1 | srl | 4096-ptr_max |
| PARAM_VALUE | 1 | srl->lcn | (-1) |
| PARAM_VALUE | 1 | srl->length | 1-s64max |
| PARAM_VALUE | 1 | srl->vcn | 0-9223372036854775806 |
| PARAM_VALUE | 2 | s_rl_count | 0 |
| PARAM_VALUE | 3 | new_rl_count | 6195518517188591616 |
| BUF_SIZE | 1 | srl | 48 |
| BUF_SIZE | 1 | srl | 48 |
| CAPPED_DATA | 1 | srl->length | 1 |
| CAPPED_DATA | 1 | srl->vcn | 1 |
| DATA_SOURCE | 1 | srl | r _kmalloc_noprof |
| NOSPEC | 1 | srl->vcn | |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 1 | srl->vcn | 0-9223372036854775806[c] |
| LOCK2 | &ni->runlist.lock | ||
| TYPE_LOCK | (struct runlist)->lock |
fs/ntfs/mft.c ntfs_mft_bitmap_extend_allocation_nolock() -> ntfs_runlists_merge()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | d_runlist | 4096-ptr_max |
| PARAM_VALUE | 0 | d_runlist->count | 2-u64max |
| PARAM_VALUE | 0 | d_runlist->lock.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | d_runlist->lock.wait_lock.owner | (-1) |
| PARAM_VALUE | 0 | d_runlist->lock.wait_lock.owner_cpu | u32max |
| PARAM_VALUE | 0 | d_runlist->rl | 4096-ptr_max |
| PARAM_VALUE | 1 | srl | 0-ptr_max |
| PARAM_VALUE | 2 | s_rl_count | 0 |
| PARAM_VALUE | 3 | new_rl_count | 1403557814792642560 |
| DATA_SOURCE | 1 | srl | r ntfs_cluster_alloc |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| 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_runlists_merge()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | d_runlist | 4096-ptr_max |
| PARAM_VALUE | 0 | d_runlist->count | 2-u64max |
| PARAM_VALUE | 0 | d_runlist->lock.osq.tail.counter | 0-s32max |
| PARAM_VALUE | 0 | d_runlist->rl | 4096-ptr_max |
| PARAM_VALUE | 1 | srl | 0-ptr_max |
| PARAM_VALUE | 2 | s_rl_count | 0 |
| PARAM_VALUE | 3 | new_rl_count | 1085494470601179136 |
| DATA_SOURCE | 1 | srl | r ntfs_cluster_alloc |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &mft_ni->mrec_lock | ||
| LOCK2 | &mft_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/attrib.c ntfs_attr_map_cluster() -> ntfs_runlists_merge()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | d_runlist | 4096-ptr_max |
| PARAM_VALUE | 0 | d_runlist->count | 2-u64max |
| PARAM_VALUE | 0 | d_runlist->rl | 4096-ptr_max |
| PARAM_VALUE | 1 | srl | 4096-ptr_max |
| PARAM_VALUE | 2 | s_rl_count | 0 |
| PARAM_VALUE | 3 | new_rl_count | 3372671267956502528 |
| DATA_SOURCE | 1 | srl | r ntfs_cluster_alloc |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| NO_OVERFLOW_SIMPLE | 1 | srl->length | |
| LOCK2 | &ni->runlist.lock | ||
| HALF_LOCKED2 | &ni->mrec_lock | ||
| HALF_LOCKED2 | &vi->i_rwsem | ||
| TYPE_LOCK | (struct runlist)->lock |
fs/ntfs/attrib.c ntfs_non_resident_attr_expand() -> ntfs_runlists_merge()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | d_runlist | 4096-ptr_max |
| PARAM_VALUE | 0 | d_runlist->rl | 1-u64max |
| PARAM_VALUE | 1 | srl | 0-ptr_max |
| PARAM_VALUE | 2 | s_rl_count | 0 |
| PARAM_VALUE | 3 | new_rl_count | 691876149743788032 |
| BUF_SIZE | 1 | srl | 0-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| USER_DATA | 1 | srl->vcn | 0-9223372036854775806[c] |
| NO_OVERFLOW_SIMPLE | 0 | d_runlist->count | |
| NO_OVERFLOW_SIMPLE | 1 | srl->length | |
| HALF_LOCKED2 | &ni->mrec_lock | ||
| HALF_LOCKED2 | &ni->mrec_lock | ||
| HALF_LOCKED2 | &ni->runlist.lock | ||
| HALF_LOCKED2 | &ni->runlist.lock | ||
| HALF_LOCKED2 | &vi->i_rwsem |