函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:lib\rhashtable.c Create Date:2022-07-27 07:22:19
Last Modify:2020-03-12 14:18:49 Copyright©Brick
首页 函数Tree
注解内核,赢得工具下载SCCTEnglish

函数名称:rhashtable_insert_one

函数原型:static struct bucket_table *rhashtable_insert_one(struct rhashtable *ht, struct rhash_lock_head **bkt, struct bucket_table *tbl, unsigned int hash, struct rhash_head *obj, void *data)

返回类型:struct bucket_table

参数:

类型参数名称
struct rhashtable *ht
struct rhash_lock_head **bkt
struct bucket_table *tbl
unsigned inthash
struct rhash_head *obj
void *data
539  如果非是错误或空则返回:错误号
542  如果错误不等于负EAGAIN错误不等于负ENOENT则返回:错误指示
545  new_tbl等于rht_dereference_rcu(future_tbl, ht)
546  如果new_tbl则返回:new_tbl
549  如果错误不等于负ENOENT则返回:错误指示
552  如果此条件成立可能性小(为编译器优化)(表溢出)则返回:错误号
555  如果此条件成立可能性小(为编译器优化)(ht_grow_above_100 - returns true if nelems > table-size*@ht: hash table*@tbl: current table)则返回:错误号
558  head等于rht_ptr(bkt, tbl, hash)
560  RCU_INIT_POINTER() - initialize an RCU protected pointer*@p: The pointer to be initialized.*@v: The value to initialized the pointer to.* Initialize an RCU-protected pointer in special cases where readers(next, head)
561  如果rhlist
564  list等于container_of - cast a member of a structure out to the containing structure*@ptr: the pointer to the member.*@type: the type of the container struct this is embedded in.*@member: the name of the member within the struct.(obj, structrhlist_head, rhead)
565  RCU_INIT_POINTER() - initialize an RCU protected pointer*@p: The pointer to be initialized.*@v: The value to initialized the pointer to.* Initialize an RCU-protected pointer in special cases where readers(next, NULL)
571  rht_assign_locked(bkt, obj)
573  atomic_inc( & nelems)
574  如果ht_grow_above_75 - returns true if nelems > 0.75 * table-size*@ht: hash table*@tbl: current tableschedule_work - put work task in global workqueue*@work: job to be done* Returns %false if @work was already on the kernel-global workqueue and* %true otherwise
577  返回:NULL
调用者
名称描述
rhashtable_try_insert