[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <b26ac5ae-a90c-7db5-a26c-3ace2f1530c7@roeck-us.net>
Date: Sun, 1 Sep 2019 13:35:16 -0700
From: Guenter Roeck <linux@...ck-us.net>
To: Jason Gunthorpe <jgg@...lanox.com>
Cc: Christoph Hellwig <hch@....de>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Andrew Morton <akpm@...ux-foundation.org>,
Thomas Hellström <thomas@...pmail.org>,
Jerome Glisse <jglisse@...hat.com>,
Steven Price <steven.price@....com>,
"linux-mm@...ck.org" <linux-mm@...ck.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Thomas Hellstrom <thellstrom@...are.com>
Subject: Re: [PATCH 2/3] pagewalk: separate function pointers from iterator
data
On 9/1/19 12:36 PM, Jason Gunthorpe wrote:
> On Sun, Sep 01, 2019 at 11:45:30AM -0700, Guenter Roeck wrote:
>> On Wed, Aug 28, 2019 at 04:19:54PM +0200, Christoph Hellwig wrote:
>>> The mm_walk structure currently mixed data and code. Split out the
>>> operations vectors into a new mm_walk_ops structure, and while we
>>> are changing the API also declare the mm_walk structure inside the
>>> walk_page_range and walk_page_vma functions.
>>>
>>> Based on patch from Linus Torvalds.
>>>
>>> Signed-off-by: Christoph Hellwig <hch@....de>
>>> Reviewed-by: Thomas Hellstrom <thellstrom@...are.com>
>>> Reviewed-by: Steven Price <steven.price@....com>
>>> Reviewed-by: Jason Gunthorpe <jgg@...lanox.com>
>>
>> When building csky:defconfig:
>>
>> In file included from mm/madvise.c:30:
>> mm/madvise.c: In function 'madvise_free_single_vma':
>> arch/csky/include/asm/tlb.h:11:11: error:
>> invalid type argument of '->' (have 'struct mmu_gather')
>
> I belive the macros above are missing brackets.. Can you confirm the
> below takes care of things? I'll add a patch if so
>
Good catch. Yes, that fixes the build problem.
Guenter
> diff --git a/arch/csky/include/asm/tlb.h b/arch/csky/include/asm/tlb.h
> index 8c7cc097666f04..fdff9b8d70c811 100644
> --- a/arch/csky/include/asm/tlb.h
> +++ b/arch/csky/include/asm/tlb.h
> @@ -8,14 +8,14 @@
>
> #define tlb_start_vma(tlb, vma) \
> do { \
> - if (!tlb->fullmm) \
> - flush_cache_range(vma, vma->vm_start, vma->vm_end); \
> + if (!(tlb)->fullmm) \
> + flush_cache_range(vma, (vma)->vm_start, (vma)->vm_end); \
> } while (0)
>
> #define tlb_end_vma(tlb, vma) \
> do { \
> - if (!tlb->fullmm) \
> - flush_tlb_range(vma, vma->vm_start, vma->vm_end); \
> + if (!(tlb)->fullmm) \
> + flush_tlb_range(vma, (vma)->vm_start, (vma)->vm_end); \
> } while (0)
>
> #define tlb_flush(tlb) flush_tlb_mm((tlb)->mm)
>
> Thanks,
> Jason
>
Powered by blists - more mailing lists