Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

fs/jffs2/xattr.c create_xattr_datum() -> jffs2_free_xattr_datum()

Type Parameter Key Value
PARAM_VALUE 0 xd 4096-ptr_max
PARAM_VALUE 0 xd->class 1
PARAM_VALUE 0 xd->node 4096-ptr_max
PARAM_VALUE 0 xd->xindex.next 4096-ptr_max
PARAM_VALUE 0 xd->xindex.next->next 4096-ptr_max
PARAM_VALUE 0 xd->xindex.prev 4096-ptr_max
PARAM_VALUE 0 xd->xindex.prev->next 4096-ptr_max
PARAM_VALUE 0 xd->xindex.prev->prev 4096-ptr_max
DATA_SOURCE 0 xd r jffs2_alloc_xattr_datum
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &c->alloc_sem
LOCK2 &c->xattr_sem
TYPE_LOCK (struct jffs2_sb_info)->alloc_sem
TYPE_LOCK (struct jffs2_sb_info)->xattr_sem

fs/jffs2/xattr.c create_xattr_datum() -> jffs2_free_xattr_datum()

Type Parameter Key Value
PARAM_VALUE 0 xd 4096-ptr_max
PARAM_VALUE 0 xd->class 1
PARAM_VALUE 0 xd->name_len 0-1010101
PARAM_VALUE 0 xd->node 4096-ptr_max
PARAM_VALUE 0 xd->refcnt.counter 1
PARAM_VALUE 0 xd->xindex.next 4096-ptr_max
PARAM_VALUE 0 xd->xindex.next->next 4096-ptr_max
PARAM_VALUE 0 xd->xindex.prev 4096-ptr_max
PARAM_VALUE 0 xd->xindex.prev->next 4096-ptr_max
PARAM_VALUE 0 xd->xindex.prev->prev 4096-ptr_max
PARAM_VALUE 0 xd->xname 16,4096-ptr_max
PARAM_VALUE 0 xd->xprefix 1-5
BUF_SIZE 0 xd->xname 0-u32max
CAPPED_DATA 0 xd->name_len 1
CAPPED_DATA 0 xd->xname 1
CAPPED_DATA 0 xd->xprefix 1
DATA_SOURCE 0 xd r jffs2_alloc_xattr_datum
STR_LEN 0 xd->xname 0-1010101
BIT_INFO 0 xd->flags 0x1,0xff
BIT_INFO 0 xd->value_len 0x0,0x7fffffff
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 xd->value_len 0-65536
LOCK2 &c->alloc_sem
LOCK2 &c->xattr_sem
TYPE_LOCK (struct jffs2_sb_info)->alloc_sem
TYPE_LOCK (struct jffs2_sb_info)->xattr_sem

fs/jffs2/xattr.c jffs2_clear_xattr_subsystem() -> jffs2_free_xattr_datum()

Type Parameter Key Value
PARAM_VALUE 0 xd 4096-ptr_max
CAPPED_DATA 0 &xd->xindex 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/jffs2/xattr.c jffs2_clear_xattr_subsystem() -> jffs2_free_xattr_datum()

Type Parameter Key Value
PARAM_VALUE 0 xd 4096-ptr_max
CAPPED_DATA 0 &xd->xindex 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/jffs2/xattr.c jffs2_clear_xattr_subsystem() -> jffs2_free_xattr_datum()

Type Parameter Key Value
PARAM_VALUE 0 xd 4096-ptr_max
CAPPED_DATA 0 &xd->xindex 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/jffs2/xattr.c jffs2_release_xattr_datum() -> jffs2_free_xattr_datum()

Type Parameter Key Value
PARAM_VALUE 0 xd 4096-ptr_max
PARAM_VALUE 0 xd->node 4096-ptr_max
PARAM_VALUE 0 xd->refcnt.counter 0
BUF_SIZE 0 xd 0
CAPPED_DATA 0 xd 1
CAPPED_DATA 0 xd->node 1
DATA_SOURCE 0 xd $1
PARAM_COMPARE 0 xd == $0->node
PARAM_COMPARE 0 xd == $0->node
BIT_INFO 0 xd 0x0,0x0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &c->alloc_sem
HALF_LOCKED2 &c->erase_completion_lock
HALF_LOCKED2 &c->erase_free_sem
HALF_LOCKED2 &c->wbuf_sem
HALF_LOCKED2 &c->xattr_sem

fs/jffs2/xattr.c jffs2_xattr_free_inode() -> jffs2_free_xattr_datum()

Type Parameter Key Value
PARAM_VALUE 0 xd 4096-ptr_max
PARAM_VALUE 0 xd->hashkey 0
PARAM_VALUE 0 xd->xindex.next 4096-ptr_max
PARAM_VALUE 0 xd->xindex.next->next 4096-ptr_max
PARAM_VALUE 0 xd->xindex.next->prev 4096-ptr_max
PARAM_VALUE 0 xd->xindex.prev 4096-ptr_max
PARAM_VALUE 0 xd->xindex.prev->next 4096-ptr_max
PARAM_VALUE 0 xd->xindex.prev->prev 4096-ptr_max
PARAM_VALUE 0 xd->xname 0
PARAM_VALUE 0 xd->xvalue 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &c->xattr_sem
TYPE_LOCK (struct jffs2_sb_info)->xattr_sem

fs/jffs2/xattr.c unrefer_xattr_datum() -> jffs2_free_xattr_datum()

Type Parameter Key Value
PARAM_VALUE 0 xd 4096-ptr_max
PARAM_VALUE 0 xd->flags 128-255
PARAM_VALUE 0 xd->hashkey 0
PARAM_VALUE 0 xd->node 4096-ptr_max
PARAM_VALUE 0 xd->xindex.next 4096-ptr_max
PARAM_VALUE 0 xd->xindex.next->next 4096-ptr_max
PARAM_VALUE 0 xd->xindex.next->prev 4096-ptr_max
PARAM_VALUE 0 xd->xindex.prev 4096-ptr_max
PARAM_VALUE 0 xd->xindex.prev->next 4096-ptr_max
PARAM_VALUE 0 xd->xindex.prev->prev 4096-ptr_max
PARAM_VALUE 0 xd->xname 0
PARAM_VALUE 0 xd->xvalue 0
CAPPED_DATA 0 xd 1
CAPPED_DATA 0 xd->node 1
DATA_SOURCE 0 xd $1
PARAM_COMPARE 0 xd == $0->node
PARAM_COMPARE 0 xd == $0->node
BIT_INFO 0 xd->flags 0xc0,0xff
PREEMPT_ADD <- disables preempt
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
USER_DATA 0 xd->value_len 0-65536
LOCK2 &c->erase_completion_lock
LOCK2 &c->xattr_sem
HALF_LOCKED2 &c->alloc_sem
TYPE_LOCK (struct jffs2_sb_info)->erase_completion_lock
TYPE_LOCK (struct jffs2_sb_info)->xattr_sem