函数逻辑报告

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

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

函数名称:是互斥锁

函数原型:bool mutex_is_locked(struct mutex *lock)

返回类型:bool

参数:

类型参数名称
struct mutex *lock
85  返回:Internal helper function; C doesn't allow us to hide it :/* DO NOT USE (outside of mutex code). != NULL
调用者
名称描述
kgdb_arch_remove_breakpoint
mutex_destroymutex_destroy - mark a mutex unusable*@lock: the mutex to be destroyed* This function marks the mutex uninitialized, and any subsequent* use of the mutex is forbidden. The mutex must not be locked when* this function is called.
audit_add_to_parentAssociate the given rule with an existing parent.* Caller must hold audit_filter_mutex.
trace_buffered_event_enablerace_buffered_event_enable - enable buffering events* When events are being filtered, it is quicker to use a temporary* buffer to write the event data into if there's a likely chance* that it will not be committed
trace_buffered_event_disablerace_buffered_event_disable - disable buffering events* When a filter is removed, it is faster to not use the buffered* events, and to commit directly into the ring buffer. Free up* the temp buffers when there are no more users. This requires
ignore_task_cpu
uprobe_buffer_enable
uprobe_buffer_disable
ignore_task_cpu
prog_array_map_poke_run
bpf_trampoline_put
dbg_reserve_bp_slotAllow the kernel debugger to reserve breakpoint slots without* taking a lock using the dbg_* variant of for the reserve and* release breakpoint slots.
dbg_release_bp_slot
__aa_fs_create_rawdata
__aafs_profile_migrate_dentsRequires: @old->ns->lock held
__aafs_profile_mkdirRequires: @profile->ns->lock held
__aa_fs_list_remove_rawdata
__aafs_ns_rmdirRequires: @ns->lock held
__aafs_ns_mkdirRequires: @ns->lock held
__next_ns__next_ns - find the next namespace to list*@root: root namespace to stop search at (NOT NULL)*@ns: current ns position (NOT NULL)* Find the next namespace from @ns under @root and handle all locking needed* while switching current namespace
__first_profile__first_profile - find the first profile in a namespace*@root: namespace that is root of profiles being displayed (NOT NULL)*@ns: namespace to start in (NOT NULL)* Returns: unrefcounted profile or NULL if no profile* Requires: profile->ns.lock to be held
__next_profile__next_profile - step to the next profile in a profile tree*@profile: current profile in tree (NOT NULL)* Perform a depth first traversal on the profile tree in a namespace* Returns: next profile or NULL if done* Requires: profile->ns.lock to be held
__add_profile__add_profile - add a profiles to list and label tree*@list: list to add it to (NOT NULL)*@profile: the profile to add (NOT NULL)* refcount @profile, should be put by __list_remove_profile* Requires: namespace lock be held, or list not be shared
__list_remove_profile__list_remove_profile - remove a profile from the list it is on*@profile: the profile to remove (NOT NULL)* remove a profile from the list, warning generally removal should* be done with __replace_profile as most profile removals are
__remove_profile__remove_profile - remove old profile, and children*@profile: profile to be replaced (NOT NULL)* Requires: namespace list lock be held, or list not be shared
update_to_newest_parentUpdate to newest version of parent after previous replacements* Returns: unrefcount newest version of parent
__aa_loaddata_update
__aa_create_ns
__aa_find_or_create_nsaa_create_ns - create an ns, fail if it already exists*@parent: the parent of the namespace being created*@name: the name of the namespace*@dir: if not null the dir to put the ns entries in* Returns: the a refcounted ns that has been add or an ERR_PTR
__label_update__label_update - insert updated version of @label into labelset*@label - the label to update/replace* Returns: new label that is up to date* else NULL on failure* Requires: @ns lock be held* Note: worst case is the stale @label does not get updated and has
__labelset_update__labelset_update - update labels in @ns*@ns: namespace to update labels in (NOT NULL)* Requires: @ns lock be held* Walk the labelset ensuring that all labels are up to date and valid* Any label that has a stale component is marked stale and replaced and
__aa_labelset_update_subtree__aa_labelset_udate_subtree - update all labels with a stale component*@ns: ns to start update at (NOT NULL)* Requires: @ns lock be held* Invalidates labels based on @p in @ns and any children namespaces.
fsnotify_add_mark_lockedAttach an initialized mark to a given group and fs object.* These marks may be used for the fsnotify backend to determine which* event types should be delivered to which group.
kgdb_arch_set_breakpoint
mm_drop_all_locksThe mmap_sem cannot be released by the caller until* mm_drop_all_locks() returns.
aa_deref_parent
__aa_fs_remove_rawdata
fsnotify_detach_markMark mark as detached, remove it from group list