All of lore.kernel.org
 help / color / mirror / Atom feed
From: Catalin Marinas <catalin.marinas@arm.com>
To: Vincenzo Frascino <vincenzo.frascino@arm.com>
Cc: Mark Rutland <mark.rutland@arm.com>,
	linux-kernel@vger.kernel.org, stable@vger.kernel.org,
	kasan-dev@googlegroups.com, Will Deacon <will@kernel.org>,
	linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH] arm64: Fix kernel address detection of __is_lm_address()
Date: Tue, 26 Jan 2021 16:36:39 +0000	[thread overview]
Message-ID: <20210126163638.GA3509@gaia> (raw)
In-Reply-To: <20210126134056.45747-1-vincenzo.frascino@arm.com>

On Tue, Jan 26, 2021 at 01:40:56PM +0000, Vincenzo Frascino wrote:
> Currently, the __is_lm_address() check just masks out the top 12 bits
> of the address, but if they are 0, it still yields a true result.
> This has as a side effect that virt_addr_valid() returns true even for
> invalid virtual addresses (e.g. 0x0).
> 
> Fix the detection checking that it's actually a kernel address starting
> at PAGE_OFFSET.
> 
> Fixes: f4693c2716b35 ("arm64: mm: extend linear region for 52-bit VA configurations")
> Cc: <stable@vger.kernel.org> # 5.4.x

Not sure what happened with the Fixes tag but that's definitely not what
it fixes. The above is a 5.11 commit that preserves the semantics of an
older commit. So it should be:

Fixes: 68dd8ef32162 ("arm64: memory: Fix virt_addr_valid() using __is_lm_address()")

The above also had a fix for another commit but no need to add two
entries, we just fix the original fix: 14c127c957c1 ("arm64: mm: Flip
kernel VA space").

Anyway, no need to repost, I can update the fixes tag myself.

In terms of stable backports, it may be cleaner to backport 7bc1a0f9e176
("arm64: mm: use single quantity to represent the PA to VA translation")
which has a Fixes tag already but never made it to -stable. On top of
this, we can backport Ard's latest f4693c2716b35 ("arm64: mm: extend
linear region for 52-bit VA configurations"). I just tried these locally
and the conflicts were fairly trivial.

-- 
Catalin

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

WARNING: multiple messages have this Message-ID (diff)
From: Catalin Marinas <catalin.marinas@arm.com>
To: Vincenzo Frascino <vincenzo.frascino@arm.com>
Cc: linux-arm-kernel@lists.infradead.org,
	linux-kernel@vger.kernel.org, kasan-dev@googlegroups.com,
	stable@vger.kernel.org, Will Deacon <will@kernel.org>,
	Mark Rutland <mark.rutland@arm.com>
Subject: Re: [PATCH] arm64: Fix kernel address detection of __is_lm_address()
Date: Tue, 26 Jan 2021 16:36:39 +0000	[thread overview]
Message-ID: <20210126163638.GA3509@gaia> (raw)
In-Reply-To: <20210126134056.45747-1-vincenzo.frascino@arm.com>

On Tue, Jan 26, 2021 at 01:40:56PM +0000, Vincenzo Frascino wrote:
> Currently, the __is_lm_address() check just masks out the top 12 bits
> of the address, but if they are 0, it still yields a true result.
> This has as a side effect that virt_addr_valid() returns true even for
> invalid virtual addresses (e.g. 0x0).
> 
> Fix the detection checking that it's actually a kernel address starting
> at PAGE_OFFSET.
> 
> Fixes: f4693c2716b35 ("arm64: mm: extend linear region for 52-bit VA configurations")
> Cc: <stable@vger.kernel.org> # 5.4.x

Not sure what happened with the Fixes tag but that's definitely not what
it fixes. The above is a 5.11 commit that preserves the semantics of an
older commit. So it should be:

Fixes: 68dd8ef32162 ("arm64: memory: Fix virt_addr_valid() using __is_lm_address()")

The above also had a fix for another commit but no need to add two
entries, we just fix the original fix: 14c127c957c1 ("arm64: mm: Flip
kernel VA space").

Anyway, no need to repost, I can update the fixes tag myself.

In terms of stable backports, it may be cleaner to backport 7bc1a0f9e176
("arm64: mm: use single quantity to represent the PA to VA translation")
which has a Fixes tag already but never made it to -stable. On top of
this, we can backport Ard's latest f4693c2716b35 ("arm64: mm: extend
linear region for 52-bit VA configurations"). I just tried these locally
and the conflicts were fairly trivial.

-- 
Catalin

  reply	other threads:[~2021-01-26 16:38 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-26 13:40 [PATCH] arm64: Fix kernel address detection of __is_lm_address() Vincenzo Frascino
2021-01-26 13:40 ` Vincenzo Frascino
2021-01-26 16:36 ` Catalin Marinas [this message]
2021-01-26 16:36   ` Catalin Marinas
2021-01-26 18:37   ` Vincenzo Frascino
2021-01-26 18:37     ` Vincenzo Frascino
2021-01-27 13:09 ` Catalin Marinas
2021-01-27 13:09   ` Catalin Marinas

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=20210126163638.GA3509@gaia \
    --to=catalin.marinas@arm.com \
    --cc=kasan-dev@googlegroups.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=stable@vger.kernel.org \
    --cc=vincenzo.frascino@arm.com \
    --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.