Nov. 15, 2013
4:31 p.m.
On Fri, Nov 15, 2013 at 6:24 PM, Paul Davies C <pauldaviesc@gmail.com> wrote:
Hi, I happen to find this code snippet in the kernel source :
struct mm_struct *mm=current->mm;
/* some other code */
if(mm){ /*<==Why is this here? */ /*read the contents by locking*/ }
The if checks whether the mm_struct of the current process is NULL or not. That means the mm_struct of a process can become NULL. How can that happen?
mm_struct points to a process address space. It is NULL for kernel threads. Daniel.