Merge tag 'f2fs-fix-5.18' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk...
[linux-2.6-microblaze.git] / kernel / fork.c
index 834af51..9796897 100644 (file)
@@ -286,11 +286,13 @@ static int alloc_thread_stack_node(struct task_struct *tsk, int node)
                if (!s)
                        continue;
 
-               /* Mark stack accessible for KASAN. */
+               /* Reset stack metadata. */
                kasan_unpoison_range(s->addr, THREAD_SIZE);
 
+               stack = kasan_reset_tag(s->addr);
+
                /* Clear stale pointers from reused stack. */
-               memset(s->addr, 0, THREAD_SIZE);
+               memset(stack, 0, THREAD_SIZE);
 
                if (memcg_charge_kernel_stack(s)) {
                        vfree(s->addr);
@@ -298,7 +300,7 @@ static int alloc_thread_stack_node(struct task_struct *tsk, int node)
                }
 
                tsk->stack_vm_area = s;
-               tsk->stack = s->addr;
+               tsk->stack = stack;
                return 0;
        }
 
@@ -326,6 +328,7 @@ static int alloc_thread_stack_node(struct task_struct *tsk, int node)
         * so cache the vm_struct.
         */
        tsk->stack_vm_area = vm;
+       stack = kasan_reset_tag(stack);
        tsk->stack = stack;
        return 0;
 }