All of lore.kernel.org
 help / color / mirror / Atom feed
From: Christophe Leroy <christophe.leroy@csgroup.eu>
To: Will Deacon <will@kernel.org>
Cc: linux-arm-kernel@lists.infradead.org, ardb@kernel.org,
	Catalin Marinas <catalin.marinas@arm.com>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	Andy Lutomirski <luto@kernel.org>,
	Peter Zijlstra <peterz@infradead.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>,
	Jonathan Marek <jonathan@marek.ca>
Subject: Re: [PATCH] Revert "mm/pgtable: add stubs for {pmd/pub}_{set/clear}_huge"
Date: Mon, 19 Jul 2021 17:06:15 +0200	[thread overview]
Message-ID: <20210719170615.Horde.Qio1wp3k5ebLo-d9xXHdOg1@messagerie.c-s.fr> (raw)
In-Reply-To: <20210719104918.GA6440@willie-the-truck>

Will Deacon <will@kernel.org> a écrit :

> On Sat, Jul 17, 2021 at 06:31:08PM +0200, Christophe Leroy wrote:
>> Jonathan Marek <jonathan@marek.ca> a écrit :
>>
>> > c742199a breaks arm64 for some configs because it stubs out  
>> functions which
>> > should not have been stubbed out.
>> >
>> > With 4K pages and ARM64_VA_BITS_39=y, the kernel crashes early on unmapped
>> > 1G pages in the linear map caused by pud_set_huge() in alloc_init_pud()
>> > being stubbed out. Reverting c742199a fixes the crash.
>>
>> This patch is there for a reason. Reverting it will break some other config.
>
> Which config? Not reverting it breaks arm64.

Build will fail at least on powerpc 8xx without the stubs in linux/pgtable.h
That's the reason why I say that we need to find a common fix that  
works for both arm64 and powerpc

>
>> The fix needs to allow it work with all platforms.
>
> Hmm, there was already a report that selftests were failing with this
> change:
>
> https://lore.kernel.org/linux-arm-kernel/CAMuHMdXShORDox-xxaeUfDW3wx2PeggFSqhVSHVZNKCGK-y_vQ@mail.gmail.com/
>
> That was a week ago and doesn't seem to have progressed, so I'm inclined to
> revert this if it's not resolved this week as we usually use -rc3 as a base
> for queuing patches for the next release.

I have been on hollydays for 10 days and for another 2 weeks, with  
only my phone to play with. I pplan to look at it  first week of august.


>
>> I don't understand, why does arm64 needs these PUD helpers when it defines
>> __PAGETABLE_PUD_FOLDED ?
>
> Probably for the huge vmap code; see arch_vmap_pXd_supported(). That also
> lines up with the failing selftests afaict.
>
> For 4k pages with 3 levels of walk, we want to be able to use 1GB mappings
> at level 1 (pgd), 2MB mappings at level 2 (pmd) as well as the usual 4k
> page mappings at level 3 (pte).

The initial issue was a conflict between pud_clear_huge in arm64 and  
the generic stub I had introduced for configs having no PUD . We  
thought that it was a left over from config with 4 levels that was  
left unused for 3 levels config. It seems not. That's strange that the  
problem pops up only now, the change have been in the mm tree for one  
cycle.

Christophe

>
> Will



_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

  parent reply	other threads:[~2021-07-19 15:02 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-07-17 16:01 [PATCH] Revert "mm/pgtable: add stubs for {pmd/pub}_{set/clear}_huge" Jonathan Marek
2021-07-17 16:01 ` Jonathan Marek
2021-07-17 16:31 ` Christophe Leroy
2021-07-19 10:49   ` Will Deacon
2021-07-19 13:58     ` Ard Biesheuvel
2021-07-19 14:17       ` Ard Biesheuvel
2021-07-19 15:51         ` Christophe Leroy
2021-07-19 16:08           ` Ard Biesheuvel
2021-07-19 16:58             ` Christophe Leroy
2021-07-20 11:27               ` Will Deacon
2021-07-20 15:14                 ` Christophe Leroy
2021-08-02 11:39                 ` LEROY Christophe
2021-07-19 15:06     ` Christophe Leroy [this message]
2021-07-20 12:33 ` Ard Biesheuvel
2021-07-20 12:33   ` Ard Biesheuvel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210719170615.Horde.Qio1wp3k5ebLo-d9xXHdOg1@messagerie.c-s.fr \
    --to=christophe.leroy@csgroup.eu \
    --cc=ardb@kernel.org \
    --cc=bp@alien8.de \
    --cc=catalin.marinas@arm.com \
    --cc=dave.hansen@linux.intel.com \
    --cc=jonathan@marek.ca \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=luto@kernel.org \
    --cc=mingo@redhat.com \
    --cc=peterz@infradead.org \
    --cc=tglx@linutronix.de \
    --cc=will@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.