Function report

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source Code:kernel\exit.c Create Date:2022-07-28 09:03:07
Last Modify:2020-03-17 11:17:32 Copyright©Brick
home page Tree
Annotation kernel can get tool activityDownload SCCTChinese

Name:Turn us into a lazy TLB process if we* aren't already..

Proto:static void exit_mm(void)

Type:void

Parameter:Nothing

437  mm = mm
440  exit_mm_release(current process, mm)
441  If Not mm Then Return
443  sync_mm_rss(mm)
451  lock for reading
452  core_state = coredumping support
453  If core_state Then
456  lease a read lock
458  task = current process
459  next = xchg( & next, & self)
464  If atomic_dec_and_test( & nr_threads) Then complete( & startup)
467  cycle
469  If Not task Then Break
473  set_current_state() includes a barrier so that the write of current->state* is correctly serialised wrt the caller's subsequent test of whether to* actually sleep:* for (;;) {* set_current_state(TASK_UNINTERRUPTIBLE);* if (!need_sleep)* break;* (Used in tsk->state: )
474  lock for reading
476  mmgrab() - Pin a &struct mm_struct
477  BUG_ON(mm != active_mm)
479  Protects ->fs, ->files, ->mm, ->group_info, ->comm, keyring* subscriptions and synchronises with wait4(). Also used in procfs. Also* pins the final release of task.io_context. Also protects ->cpuset and* ->cgroup.subsys[]. And ->vfork_done.
480  mm = NULL
481  lease a read lock
482  enter_lazy_tlb(mm, current process)
483  task_unlock(current process)
484  A task is exiting. If it owned this mm, find a new owner for the mm.
485  Decrement the use count and release all resources for an mm.
486  If test_thread_flag(s terminating due to OOM killer ) Then exit_oom_victim()
Caller
NameDescribe
do_exit