Re: [PATCH V3] KSM: allow dedup all tasks memory

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 13.11.2018 18:10, Timofey Titovets wrote:
You mean try do something, like that right?

read_lock(&tasklist_lock);
  <get reference to task>
  task_lock(task);
read_unlock(&tasklist_lock);
    last_pid = task_pid_nr(task);
    ksm_import_task_vma(task);
  task_unlock(task);

No, task_lock() uses spin_lock() under the bonnet, so this will be the same.

Since the sole reason you have to lock/acquire/get a reference to task_struct here is to prevent it from disappearing, I was thinking about using get_task_struct(), which just increases atomic task_struct.usage value (IOW, takes a reference). I *hope* this will be enough to prevent task_struct from disappearing in the meantime.

Someone, correct me if I'm wrong.

--
  Oleksandr Natalenko (post-factum)



[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux FS]     [Yosemite Forum]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux