Re: [PATCH] next-20090730 lguest build breaks with pfn_pmd()

From: Randy Dunlap
Date: Fri Jul 31 2009 - 14:04:42 EST


On Thu, 30 Jul 2009 17:35:33 +0530 Kamalesh Babulal wrote:

> Hi Rusty,
>
> next-20090729 allmodconfig build breaks at
>
> drivers/lguest/page_tables.c: In function 'setup_pagetables':
> drivers/lguest/page_tables.c:987: error: incompatible type for argument 2 of 'pfn_pmd'
> drivers/lguest/page_tables.c:994: error: expected ';' before ')' token
> drivers/lguest/page_tables.c:994: error: expected statement before ')' token
> make[2]: *** [drivers/lguest/page_tables.o] Error 1
>
> build failure is introduced by commit e07dd6220a4bf81a2549e7e37523a2557547d9d7
> I have tested the patch for the build failure only.
>
> Signed-off-by: Kamalesh Babulal <kamalesh@xxxxxxxxxxxxxxxxxx>
> --
> drivers/lguest/page_tables.c | 4 ++--
> 1 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/lguest/page_tables.c b/drivers/lguest/page_tables.c
> index 8c86446..c610b82 100644
> --- a/drivers/lguest/page_tables.c
> +++ b/drivers/lguest/page_tables.c
> @@ -984,14 +984,14 @@ static unsigned long setup_pagetables(struct lguest *lg,
> for (i = j = 0; i < mapped_pages && j < PTRS_PER_PMD;
> i += PTRS_PER_PTE, j++) {
> pmd = pfn_pmd(((unsigned long)&linear[i] - mem_base)/PAGE_SIZE,
> - _PAGE_PRESENT | _PAGE_RW | _PAGE_USER);
> + __pgrot(_PAGE_PRESENT | _PAGE_RW | _PAGE_USER));

s/__pgrot/__pgprot/


>
> if (copy_to_user(&pmds[j], &pmd, sizeof(pmd)) != 0)
> return -EFAULT;
> }
>
> /* One PGD entry, pointing to that PMD page. */
> - pgd = __pgd(((unsigned long)pmds - mem_base) | _PAGE_PRESENT));
> + pgd = __pgd(((unsigned long)pmds - mem_base) | _PAGE_PRESENT);
> /* Copy it in as the first PGD entry (ie. addresses 0-1G). */
> if (copy_to_user(&pgdir[0], &pgd, sizeof(pgd)) != 0)
> return -EFAULT;


---
~Randy
LPC 2009, Sept. 23-25, Portland, Oregon
http://linuxplumbersconf.org/2009/
--
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/