Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\umh.c Create Date:2022-07-28 09:22:50
Last Modify:2020-03-12 14:18:49 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:all_usermodehelper_exec - start a usermode application*@sub_info: information about the subprocessa*@wait: wait for the application to finish and return status.* when UMH_NO_WAIT don't wait at all, but you get no useful error back

Proto:int call_usermodehelper_exec(struct subprocess_info *sub_info, int wait)

Type:int

Parameter:

TypeParameterName
struct subprocess_info *sub_info
intwait
550  Lockdep needs to run a non-constant initializer for on-stack* completions - so we use the _ONSTACK() variant for those that* are on the kernel stack:(done)
551  retval = 0
553  If Not path Then
554  call_usermodehelper_freeinfo(sub_info)
555  Return -EINVAL
557  helper_lock()
558  If If set, call_usermodehelper_exec() will exit immediately returning -EBUSY* (used for preventing user land processes from being created after the user* land has been frozen during a system-wide hibernation or suspend operation). Then
559  retval = -EBUSY
560  Go to out
568  If strlen - Find the length of a string*@s: The string to be sized == 0 Then Go to out
576  complete = If wait == don't wait at all Then NULL Else done
577  wait = wait
579  queue_work - queue work on a workqueue*@wq: workqueue to use*@work: work to queue* Returns %false if @work was already on a queue, %true otherwise.* We queue the work to the CPU on which it was submitted, but if the CPU dies
580  If wait == don't wait at all Then Go to unlock
583  If wait & wait for EXEC/PROC killable Then
584  retval = wait_for_completion_killable( & done)
585  If Not retval Then Go to wait_done
589  If xchg( & complete, NULL) Then Go to unlock
594  wait_for_completion( & done)
595  wait_done :
596  retval = retval
597  out :
598  call_usermodehelper_freeinfo(sub_info)
599  unlock :
600  helper_unlock()
601  Return retval
Caller
NameDescribe
fork_usermode_blobrk_usermode_blob - fork a blob of bytes as a usermode process*@data: a blob of bytes that can be do_execv-ed as a file*@len: length of the blob*@info: information about usermode process (shouldn't be NULL)* If info->cmdline is set it will be used as
call_usermodehelperall_usermodehelper() - prepare and start a usermode application*@path: path to usermode executable*@argv: arg vector for process*@envp: environment for process*@wait: wait for the application to finish and return status
call_modprobe