On Wed 22-11-23 16:11:54, Gregory Price wrote:
[...]
+
+ /*
+ * Behavior when task == current allows a task modifying itself
+ * to bypass the check in get_task_mm and acquire the mm directly
+ */
+ if (task == current) {
+ mm = task->mm;
+ mmget(mm);
+ } else
+ mm = get_task_mm(task);
Similar question as in the previous patch. When is a kthread legit to do
manipulate borrowed mm memory policy?
+
+ if (!mm)
+ return -ENODEV;
Is this an expected error? No mm means task dying and mm has been
already released. Should we simply return ESRCH wouldbe a better error
code IMO. This should never happen for the current task so it sould be
safe to add.
--
Michal Hocko
SUSE Labs