Re: [PATCH -mmotm] mm: unify some pmd_*() functions

From: David Howells
Date: Mon Feb 09 2009 - 12:07:29 EST


Andrea Righi <righi.andrea@xxxxxxxxx> wrote:

> Unify all the identical implementations of pmd_free(), __pmd_free_tlb(),
> pmd_alloc_one(), pmd_addr_end() in include/asm-generic/pgtable-nopmd.h

NAK for FRV on two fronts:

(1) The definition of pud_t in pgtable-nopud.h:

typedef struct { pgd_t pgd; } pud_t;

is not consistent with the one in FRV's page.h:

typedef struct { unsigned long ste[64];} pmd_t;
typedef struct { pmd_t pue[1]; } pud_t;
typedef struct { pud_t pge[1]; } pgd_t;

The upper intermediate page table is contained within the page directory
entry, not the other way around. Having a pgd_t inside a pud_t is
upside-down, illogical and makes things harder to follow IMNSHO.

(2) It produces the following errors:

mm/memory.c: In function 'free_pmd_range':
mm/memory.c:176: error: implicit declaration of function '__pmd_free_tlb'
CC fs/seq_file.o
mm/memory.c: In function '__pmd_alloc':
mm/memory.c:2896: error: implicit declaration of function 'pmd_alloc_one_bug'
mm/memory.c:2896: warning: initialization makes pointer from integer without a cast
mm/memory.c:2905: error: implicit declaration of function 'pmd_free'

David
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/