[PATCH v3 10/31] powerpc/mm: Don't use pmd_val, pud_val and pgd_val as lvalue

Aneesh Kumar K.V aneesh.kumar at linux.vnet.ibm.com
Tue Oct 13 16:17:40 AEDT 2015


Michael Ellerman <mpe at ellerman.id.au> writes:

> On Tue, 2015-10-13 at 00:09 +0530, Aneesh Kumar K.V wrote:
>> We convert them static inline function here as we did with pte_val in
>> the previous patch
>
> This breaks ppc40x_defconfig & 40x/ep405_defconfig with:
>
>   arch/powerpc/mm/40x_mmu.c: In function 'mmu_mapin_ram':
>   arch/powerpc/mm/40x_mmu.c:113:20: error: lvalue required as left operand of assignment
>   arch/powerpc/mm/40x_mmu.c:114:20: error: lvalue required as left operand of assignment
>   arch/powerpc/mm/40x_mmu.c:115:20: error: lvalue required as left operand of assignment
>   arch/powerpc/mm/40x_mmu.c:116:20: error: lvalue required as left operand of assignment
>   arch/powerpc/mm/40x_mmu.c:128:18: error: lvalue required as left operand of assignment
>
> Which is mainly:
>
> 	pmd_val(*pmdp++) = val;
>
>
> The obvious patch to use pmd_set() doesn't work, I think because there's no
> pmd_set() defined for 32-bit nohash?
>

That should be

     *pmdp++ = __pmd(val);

-aneesh



More information about the Linuxppc-dev mailing list