Function report |
Source Code:kernel\locking\rwsem.c |
Create Date:2022-07-28 09:48:29 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
home page | Tree |
Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:lock for reading
Proto:void __sched down_read(struct rw_semaphore *sem)
Type:void
Parameter:
Type | Parameter | Name |
---|---|---|
struct rw_semaphore * | sem |
1494 | might_sleep() |
1495 | rwsem_acquire_read( & dep_map, 0, 0, _RET_IP_) |
Name | Describe |
---|---|
digsig_verify_rsa | RSA Signature verification with public key |
exit_mm | Turn us into a lazy TLB process if we* aren't already.. |
SYSCALL_DEFINE1 | |
SYSCALL_DEFINE1 | Old cruft |
SYSCALL_DEFINE1 | |
SYSCALL_DEFINE2 | |
prctl_set_mm_exe_file | |
prctl_set_mm | |
usermodehelper_read_trylock | |
usermodehelper_read_lock_wait | |
__blocking_notifier_call_chain | __blocking_notifier_call_chain - Call functions in a blocking notifier chain*@nh: Pointer to head of the blocking notifier chain*@val: Value passed unmodified to notifier function*@v: Pointer passed unmodified to notifier function |
proc_sched_autogroup_show_task | |
torture_rwsem_down_read | |
get_posix_clock | Returns NULL if the posix_clock instance attached to 'fp' is old and stale. |
posix_clock_open | |
fault_in_user_writeable | ault_in_user_writeable() - Fault in user address and verify RW access*@uaddr: pointer to faulting user space address* Slow path to fixup the fault we just took in the atomic write* access to @uaddr |
acct_collect | acct_collect - collect accounting information into pacct_struct*@exitcode: task exit code*@group_dead: not 0, if this thread is the last one in the process. |
clone_uts_ns | Clone a new ns copying an original utsname, setting refcount to 1*@old_ns: namespace to clone* Return ERR_PTR(-ENOMEM) on error (failure to allocate), new ns otherwise |
proc_do_uts_string | Special case of dostring for the UTS structure. This has locks* to observe. Should this be in kernel/sys.c ???? |
send_cpu_listeners | Send taskstats data in @skb to listeners registered for @cpu's exit data |
seq_print_user_ip | |
trace_event_read_lock | |
bpf_prog_offload_verifier_prep | |
bpf_prog_offload_verify_insn | |
bpf_prog_offload_finalize | |
bpf_prog_offload_replace_insn | |
bpf_prog_offload_remove_insns | |
bpf_prog_offload_translate | |
bpf_prog_offload_info_fill_ns | |
bpf_prog_offload_info_fill | |
bpf_map_offload_lookup_elem | |
bpf_map_offload_update_elem | |
bpf_map_offload_delete_elem | |
bpf_map_offload_get_next_key | |
bpf_map_offload_info_fill_ns | |
bpf_offload_dev_match | |
bpf_offload_prog_map_match | |
perf_event_addr_filters_apply | Update event's address range filters based on the* task's existing mappings, if any. |
filter_chain | |
unapply_uprobe | |
find_active_uprobe | |
handler_chain | |
handle_uretprobe_chain | |
__get_user_pages_locked | |
__mm_populate | __mm_populate - populate and/or mlock pages within a range of address space.* This is used to implement mlock() and the MAP_POPULATE / MAP_LOCKED mmap* flags. VMAs must be already marked with the desired vm_flags, and* mmap_sem must not be held. |
get_user_pages_unlocked | get_user_pages_unlocked() is suitable to replace the form:* down_read(&mm->mmap_sem);* get_user_pages(tsk, mm, |
__gup_longterm_unlocked | |
SYSCALL_DEFINE3 | The mincore(2) system call |
SYSCALL_DEFINE3 | MS_SYNC syncs the entire file - including mappings |
process_vm_rw_single_vec | process_vm_rw_single_vec - read/write pages from task specified*@addr: start memory address of target process*@len: size of area to copy to/from*@iter: where to copy to/from locally*@process_pages: struct pages area that can store at least* |
madvise_willneed | Schedule all required I/O operations. Do not wait for completion. |
madvise_dontneed_free | |
madvise_remove | Application wants to free up the pages and associated backing store.* This is effectively punching a hole into the middle of a file. |
SYSCALL_DEFINE3 | The madvise(2) system call |
unuse_mm | |
do_get_mempolicy | Retrieve NUMA policy |
do_migrate_pages | Move pages between the two nodesets so as to preserve the physical* layout as much as possible.* Returns the number of page that could not be moved. |
break_cow | |
get_mergeable_page | |
try_to_merge_with_ksm_page | ry_to_merge_with_ksm_page - like try_to_merge_two_pages,* but no new kernel page is allocated: kpage must already be a ksm page.* This function returns 0 if the pages were merged, -EFAULT otherwise. |
cmp_and_merge_page | mp_and_merge_page - first see if page can be merged into the stable tree;* if not, compare checksum to previous and if it's the same, see if page can* be inserted into the unstable tree, or merged with a page already there and |
scan_get_next_rmap_item | |
add_page_for_migration | Resolves the given address to a struct page, isolates it from the LRU and* puts it to the given pagelist |
do_pages_stat_array | Determine the nodes of an array of pages and store it in an array of status. |
__collapse_huge_page_swapin | Bring missing pages in from swap, to complete THP collapse.* Only done if khugepaged_scan_pmd believes it is worthwhile.* Called and returns without pte mapped or spinlocks held,* but with mmap_sem held to protect against vma changes. |
collapse_huge_page | |
mem_cgroup_count_precharge | |
__mcopy_atomic_hugetlb | __mcopy_atomic processing for HUGETLB vmas. Note that this routine is* called with mmap_sem held, it will release mmap_sem before returning. |
__mcopy_atomic | |
get_vaddr_frames | get_vaddr_frames() - map virtual addresses to pfns*@start: starting user address*@nr_frames: number of pages / pfns from start to map*@gup_flags: flags modifying lookup behaviour*@vec: structure which receives pages / pfns of the addresses mapped. |
msgctl_info | |
semctl_info | |
exit_shm | Locking assumes this will only be called with task == current |
shmctl_ipc_info | |
shmctl_shm_info | |
keyctl_read_key | Read a key's payload |
lookup_user_key | Look up a key ID given us by userspace with a given permissions mask to get* the key it refers to.* Flags can be passed to request that special keyrings be created if referred* to directly, to permit partially constructed keys to be found and to skip |
construct_get_dest_keyring | Get the appropriate destination keyring for the request.* The keyring selected is returned with an extra reference upon it which the* caller must release. |
request_key_auth_new | Create an authorisation token for /sbin/request-key or whoever to gain* access to the caller's security data. |
key_get_persistent | Get the persistent keyring for a specific UID and link it to the nominated* keyring. |
dh_data_from_key | |
request_user_key | quest_user_key - request the user key* Use a user provided key to encrypt/decrypt an encrypted-key. |
request_trusted_key | quest_trusted_key - request the trusted key* Trusted keys are sealed to PCRs and other metadata. Although userspace* manages both trusted/encrypted key-types, like the encrypted key type* data, trusted key type data is not visible decrypted from userspace. |
evm_init_key | Get the key from the TPM for the SHA1-HMAC |
iterate_supers_type | rate_supers_type - call function for superblocks of given type*@type: fs type*@f: function to call*@arg: argument to pass to it* Scans the superblock list and calls given function, passing it* locked superblock and given argument. |
__get_super | |
user_get_super | |
exec_mmap | |
__is_local_mountpoint | __is_local_mountpoint - Test to see if dentry is a mountpoint in the* current mount namespace |
m_start | rator; we want it to have access to namespace_sem, thus here... |
may_umount | may_umount - check if a mount point is busy*@mnt: root of mount* This is called to check if a mount point has any* open files, pwds, chroots or sub mounts. If the* mount has sub mounts this will return busy* regardless of whether the sub mounts are busy. |
mnt_already_visible | |
SYSCALL_DEFINE1 | sync a single super |
handle_userfault | The locking rules involved in returning VM_FAULT_RETRY depending on* FAULT_FLAG_ALLOW_RETRY, FAULT_FLAG_RETRY_NOWAIT and* FAULT_FLAG_KILLABLE are not straightforward |
io_sqe_buffer_register | |
try_to_lock_encrypted_files | |
fscrypt_ioctl_get_key_status | Retrieve the status of an fscrypt master encryption key |
setup_file_encryption_key | Find the master key, then set up the inode's actual encryption key.* If the master key is found in the filesystem-level keyring, then the* corresponding 'struct key' is returned in *master_key_ret with* ->mk_secret_sem read-locked |
find_and_lock_process_key | Search the current task's subscribed keyrings for a "logon" key with* description prefix:descriptor, and if found acquire a read lock on it and* return a pointer to its validated payload in *payload_ret. |
format_corename | rmat_corename will inspect the pattern parameter, and output a* name into corename, which must have space for at least* CORENAME_MAX_SIZE bytes plus one byte for the zero terminator. |
v1_read_file_info | |
v2_read_file_info | Read information header from quota file |
v2_read_dquot | |
v2_write_dquot | |
v2_get_next_id |
Source code conversion tool public plug-in interface | X |
---|---|
Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion |