From: catalin.marinas@arm.com (Catalin Marinas)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] arm64: mm: Fix operands of clz in __flush_dcache_all
Date: Tue, 14 May 2013 11:25:36 +0100 [thread overview]
Message-ID: <20130514102536.GD15129@arm.com> (raw)
In-Reply-To: <1368523614-22484-1-git-send-email-anup.patel@linaro.org>
On Tue, May 14, 2013 at 10:26:54AM +0100, Anup Patel wrote:
> From: Sukanto Ghosh <sghosh@apm.com>
>
> The format of the lower 32-bits of the 64-bit operand to 'dc cisw' is
> unchanged from ARMv7 architecture and the upper bits are RES0. This
> implies that the 'way' field of the operand of 'dc cisw' occupies the
> bit-positions [31 .. (32-A)]. Due to the use of 64-bit extended operands
> to 'clz', the existing implementation of __flush_dcache_all is incorrectly
> placing the 'way' field in the bit-positions [63 .. (64-A)].
>
> Signed-off-by: Sukanto Ghosh <sghosh@apm.com>
> Tested-by: Anup Patel <anup.patel@linaro.org>
> ---
> arch/arm64/mm/cache.S | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/arm64/mm/cache.S b/arch/arm64/mm/cache.S
> index abe69b8..48a3860 100644
> --- a/arch/arm64/mm/cache.S
> +++ b/arch/arm64/mm/cache.S
> @@ -52,7 +52,7 @@ loop1:
> add x2, x2, #4 // add 4 (line length offset)
> mov x4, #0x3ff
> and x4, x4, x1, lsr #3 // find maximum number on the way size
> - clz x5, x4 // find bit position of way size increment
> + clz w5, w4 // find bit position of way size increment
> mov x7, #0x7fff
> and x7, x7, x1, lsr #13 // extract max number of the index size
> loop2:
Good catch. I'll queue it for 3.10-rc2.
Thanks.
--
Catalin
prev parent reply other threads:[~2013-05-14 10:25 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-05-14 9:26 [PATCH] arm64: mm: Fix operands of clz in __flush_dcache_all Anup Patel
2013-05-14 10:25 ` Catalin Marinas [this message]
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=20130514102536.GD15129@arm.com \
--to=catalin.marinas@arm.com \
--cc=linux-arm-kernel@lists.infradead.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).