On Wed, Oct 23, 2019 at 12:20:29PM +0200, Rolf Eike Beer wrote:
diff --git a/arch/parisc/include/asm/page.h
b/arch/parisc/include/asm/page.h
index 93caf17..1d339ee 100644
--- a/arch/parisc/include/asm/page.h
+++ b/arch/parisc/include/asm/page.h
@@ -42,48 +42,54 @@ typedef struct { unsigned long pte; } pte_t; /*
either 32 or 64bit */
/* NOTE: even on 64 bits, these entries are __u32 because we allocate
* the pmd and pgd in ZONE_DMA (i.e. under 4GB) */
-typedef struct { __u32 pmd; } pmd_t;
typedef struct { __u32 pgd; } pgd_t;
typedef struct { unsigned long pgprot; } pgprot_t;
-#define pte_val(x) ((x).pte)
-/* These do not work lvalues, so make sure we don't use them as such. */
+#if CONFIG_PGTABLE_LEVELS == 3
+typedef struct { __u32 pmd; } pmd_t;
+#define __pmd(x) ((pmd_t) { (x) } )
+/* pXd_val() do not work lvalues, so make sure we don't use them as such.
*/
For me it sounds like there is something missing, maybe an "as" before
lvalues?
Right, "as lvalues" makes sense.
And it was "These", so plural, and now it is singular, so do -> does?
There's also pgd_val() a few lines below, it's just not visible in the
patch.
Eike
--
Sincerely yours,
Mike.