Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1697945 > unrolled thread

[mmots] build error: mm: prevent racy access to tlb_flush_pending

Started bySergey Senozhatsky <sergey.senozhatsky@gmail.com>
First post2017-07-27 14:40 +0200
Last post2017-07-27 17:20 +0200
Articles 2 — 2 participants

Back to article view | Back to linux.kernel


Contents

  [mmots] build error: mm: prevent racy access to tlb_flush_pending Sergey Senozhatsky <sergey.senozhatsky@gmail.com> - 2017-07-27 14:40 +0200
    Re: [mmots] build error: mm: prevent racy access to tlb_flush_pending Nadav Amit <namit@vmware.com> - 2017-07-27 17:20 +0200

#1697945 — [mmots] build error: mm: prevent racy access to tlb_flush_pending

FromSergey Senozhatsky <sergey.senozhatsky@gmail.com>
Date2017-07-27 14:40 +0200
Subject[mmots] build error: mm: prevent racy access to tlb_flush_pending
Message-ID<u7Qf7-65e-13@gated-at.bofh.it>
Hello,

8c636138f497b36ae95f ("mm: prevent racy access to tlb_flush_pending") kills
the build

kernel/fork.c: In function ‘mm_init’:
kernel/fork.c:810:18: error: ‘struct mm_struct’ has no member named ‘tlb_flush_pending’; did you mean ‘tlb_flush_batched’?
  atomic_set(&mm->tlb_flush_pending, 0);
                  ^~~~~~~~~~~~~~~~~
                  tlb_flush_batched



replacing clear_tlb_flush_pending() with a direct ->tlb_flush_pending
access

@@ -807,7 +807,7 @@ static struct mm_struct *mm_init(struct mm_struct *mm, struct task_struct *p,
        mm_init_aio(mm);
        mm_init_owner(mm, p);
        mmu_notifier_mm_init(mm);
-       clear_tlb_flush_pending(mm);
+       atomic_set(&mm->tlb_flush_pending, 0);


doesn't work on on !CONFIG_NUMA_BALANCING && !CONFIG_COMPACTION systems.

	-ss

[toc] | [next] | [standalone]


#1698087

FromNadav Amit <namit@vmware.com>
Date2017-07-27 17:20 +0200
Message-ID<u7SJY-7Iw-21@gated-at.bofh.it>
In reply to#1697945
Sergey Senozhatsky <sergey.senozhatsky@gmail.com> wrote:

> Hello,
> 
> 8c636138f497b36ae95f ("mm: prevent racy access to tlb_flush_pending") kills
> the build
> 
> kernel/fork.c: In function ‘mm_init’:
> kernel/fork.c:810:18: error: ‘struct mm_struct’ has no member named ‘tlb_flush_pending’; did you mean ‘tlb_flush_batched’?
>  atomic_set(&mm->tlb_flush_pending, 0);
>                  ^~~~~~~~~~~~~~~~~
>                  tlb_flush_batched
> 
> 
> 
> replacing clear_tlb_flush_pending() with a direct ->tlb_flush_pending
> access
> 
> @@ -807,7 +807,7 @@ static struct mm_struct *mm_init(struct mm_struct *mm, struct task_struct *p,
>        mm_init_aio(mm);
>        mm_init_owner(mm, p);
>        mmu_notifier_mm_init(mm);
> -       clear_tlb_flush_pending(mm);
> +       atomic_set(&mm->tlb_flush_pending, 0);
> 
> 
> doesn't work on on !CONFIG_NUMA_BALANCING && !CONFIG_COMPACTION systems.
> 
> 	-ss

Missed this one. Thanks, I will fix it for v3.

When Minchan repurpose this field, he should remove all of these defines
(including those in mm_types.h).

Minchan, do you want me to do it?

Nadav

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web