Messages in this thread | | | From | "Justin He (Arm Technology China)" <> | Subject | RE: [PATCH v11 1/4] arm64: cpufeature: introduce helper cpu_has_hw_af() | Date | Fri, 11 Oct 2019 13:51:01 +0000 |
| |
Hi Catanlin Thanks for the detailed explanation. Will send out v12 soon after testing
-- Cheers, Justin (Jia He)
> -----Original Message----- > From: Catalin Marinas <catalin.marinas@arm.com> > Sent: Friday, October 11, 2019 6:39 PM > To: Justin He (Arm Technology China) <Justin.He@arm.com> > Cc: Will Deacon <will@kernel.org>; Mark Rutland > <Mark.Rutland@arm.com>; James Morse <James.Morse@arm.com>; Marc > Zyngier <maz@kernel.org>; Matthew Wilcox <willy@infradead.org>; Kirill A. > Shutemov <kirill.shutemov@linux.intel.com>; linux-arm- > kernel@lists.infradead.org; linux-kernel@vger.kernel.org; linux- > mm@kvack.org; Suzuki Poulose <Suzuki.Poulose@arm.com>; Borislav > Petkov <bp@alien8.de>; H. Peter Anvin <hpa@zytor.com>; x86@kernel.org; > Thomas Gleixner <tglx@linutronix.de>; Andrew Morton <akpm@linux- > foundation.org>; hejianet@gmail.com; Kaly Xin (Arm Technology China) > <Kaly.Xin@arm.com>; nd <nd@arm.com> > Subject: Re: [PATCH v11 1/4] arm64: cpufeature: introduce helper > cpu_has_hw_af() > > On Fri, Oct 11, 2019 at 01:16:36AM +0000, Justin He (Arm Technology China) > wrote: > > From: Catalin Marinas <catalin.marinas@arm.com> > > > On Wed, Oct 09, 2019 at 04:42:43PM +0800, Jia He wrote: > > > > + u64 mmfr1 = read_cpuid(ID_AA64MMFR1_EL1); > > > > + > > > > + return !!cpuid_feature_extract_unsigned_field(mmfr1, > > > > + > > > ID_AA64MMFR1_HADBS_SHIFT); > > > > > > No need for !!, the return type is a bool already. > > > > But cpuid_feature_extract_unsigned_field has the return type "unsigned > int" [1] > > > > [1] > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/arch > /arm64/include/asm/cpufeature.h#n444 > > And the C language gives you the automatic conversion from unsigned int > to bool without the need for !!. The reason we use !! in some places is > for converting long to int (not bool) and losing the top 32-bit. See > commit 84fe6826c28f ("arm64: mm: Add double logical invert to pte > accessors") for an explanation. > > -- > Catalin
| |