Re: [RFC] asm-generic/tlb: stub out pmd_free_tlb() if __PAGETABLE_PMD_FOLDED

2019-10-14 Thread Matthew Wilcox
On Mon, Oct 14, 2019 at 01:38:34PM -0700, Linus Torvalds wrote: > And now I've said pgd/pud/p4d/pmd so many times that I've confused > myself and think I'm wrong again, and I think that historically - > originally - we always had a pgd, and then the pmd didn't exist > because it was folded into it.

Re: [RFC] asm-generic/tlb: stub out pmd_free_tlb() if __PAGETABLE_PMD_FOLDED

2019-10-14 Thread Linus Torvalds
On Mon, Oct 14, 2019 at 12:08 PM Vineet Gupta wrote: > > > And yes, pmd_clear_bad() should just go away. We have > > > > static inline int pmd_none_or_clear_bad(pmd_t *pmd) > > { > > if (pmd_none(*pmd)) > > return 1; > > if (unlikely(pmd_bad(*pmd))) { > >

Re: [RFC] asm-generic/tlb: stub out pmd_free_tlb() if __PAGETABLE_PMD_FOLDED

2019-10-14 Thread Vineet Gupta
On 10/14/19 11:25 AM, Linus Torvalds wrote: > On Mon, Oct 14, 2019 at 11:02 AM Vineet Gupta wrote: >> >> I suppose we could but >> >> (a) It would be asymmetric with the __p{u,4}d_free_tlb() changes in [1] and >> [2]. > > Your patch is already assymmetric wrt those anyway - you had to add that >

Re: [RFC] asm-generic/tlb: stub out pmd_free_tlb() if __PAGETABLE_PMD_FOLDED

2019-10-14 Thread Linus Torvalds
On Mon, Oct 14, 2019 at 11:02 AM Vineet Gupta wrote: > > I suppose we could but > > (a) It would be asymmetric with the __p{u,4}d_free_tlb() changes in [1] and > [2]. Your patch is already assymmetric wrt those anyway - you had to add that +#else +#define pmd_free_tlb(tlb, pmdp, address)

Re: [RFC] asm-generic/tlb: stub out pmd_free_tlb() if __PAGETABLE_PMD_FOLDED

2019-10-14 Thread Vineet Gupta
On 10/14/19 10:41 AM, Linus Torvalds wrote: > On Fri, Oct 11, 2019 at 3:38 PM Vineet Gupta > wrote: >> >> This is inine with similar patches for nopud [1] and nop4d [2] cases. > > I don't think your patch is wrong, but wouldn't it be easier and > cleaner to just do this instead > > --- a/in

Re: [RFC] asm-generic/tlb: stub out pmd_free_tlb() if __PAGETABLE_PMD_FOLDED

2019-10-14 Thread Linus Torvalds
On Fri, Oct 11, 2019 at 3:38 PM Vineet Gupta wrote: > > This is inine with similar patches for nopud [1] and nop4d [2] cases. I don't think your patch is wrong, but wouldn't it be easier and cleaner to just do this instead --- a/include/asm-generic/pgtable-nopmd.h +++ b/include/asm-gener

[RFC] asm-generic/tlb: stub out pmd_free_tlb() if __PAGETABLE_PMD_FOLDED

2019-10-11 Thread Vineet Gupta
This is inine with similar patches for nopud [1] and nop4d [2] cases. However I'm not really sure I understand clearly how the nopmd code is supposed to work (for a 2 tier paging system) - hence the RFC. Consider free_pmd_range() simplified/annotated below free_pmd_range ... pmd