From: Toshi Kani <toshi.kani@hp.com>
To: Thomas Gleixner <tglx@linutronix.de>
Cc: hpa@zytor.com, mingo@redhat.com, akpm@linux-foundation.org,
bp@alien8.de, linux-mm@kvack.org, linux-kernel@vger.kernel.org,
x86@kernel.org, jgross@suse.com, konrad.wilk@oracle.com,
elliott@hp.com
Subject: Re: [PATCH v3 1/10] x86/vdso32: Define PGTABLE_LEVELS to 32bit VDSO
Date: Thu, 20 Aug 2015 17:04:23 -0600 [thread overview]
Message-ID: <55D65CF7.1020903@hp.com> (raw)
In-Reply-To: <alpine.DEB.2.11.1508202145540.3873@nanos>
On 8/20/2015 1:46 PM, Thomas Gleixner wrote:
> On Wed, 5 Aug 2015, Toshi Kani wrote:
>
>> In case of CONFIG_X86_64, vdso32/vclock_gettime.c fakes a 32bit
>> kernel configuration by re-defining it to CONFIG_X86_32. However,
>> it does not re-define CONFIG_PGTABLE_LEVELS leaving it as 4 levels.
>> Fix it by re-defining CONFIG_PGTABLE_LEVELS to 2 as X86_PAE is not
>> set.
> You fail to explain WHY this is required. I have not yet spotted any
> code in vclock_gettime.c which is affected by this.
Sorry about that. Without this patch 01, applying patch 02 & 03 causes
the following compile errors in vclock_gettime.c. This is because it
includes pgtable_type.h (see blow), which now requires PUD_SHIFT and
PMD_SHIFT defined properly. In case of X86_32, pgtable_type.h includes
pgtable_nopud.h and pgtable-nopmd.h, which define these SHIFTs when
CONFIG_PGTABLE_LEVEL is set to 2 (or 3 if PAE is also defined).
In file included from ./arch/x86/include/asm/paravirt_types.h:44:0,
from ./arch/x86/include/asm/ptrace.h:71,
from ./arch/x86/include/asm/alternative.h:8,
from ./arch/x86/include/asm/bitops.h:16,
from include/linux/bitops.h:36,
from include/linux/kernel.h:10,
from include/linux/list.h:8,
from include/linux/preempt.h:10,
from include/linux/spinlock.h:50,
from include/linux/seqlock.h:35,
from include/linux/time.h:5,
from include/uapi/linux/timex.h:56,
from include/linux/timex.h:56,
from include/linux/clocksource.h:12,
from ./arch/x86/include/asm/vgtod.h:5,
from arch/x86/entry/vdso/vdso32/../vclock_gettime.c:15,
from arch/x86/entry/vdso/vdso32/vclock_gettime.c:30:
./arch/x86/include/asm/pgtable_types.h: In function pud_pfn_maska?>>
./arch/x86/include/asm/pgtable_types.h:282:23: error: PUD_SHIFTa?>>
undeclared (first use in this function)
return PUD_PAGE_MASK & PHYSICAL_PAGE_MASK;
^
./arch/x86/include/asm/pgtable_types.h:282:23: note: each undeclared
identifier is reported only once for each function it appears in
./arch/x86/include/asm/pgtable_types.h: In function pud_flags_maska?>>
./arch/x86/include/asm/pgtable_types.h:290:25: error: PUD_SHIFTa?>>
undeclared (first use in this function)
return ~(PUD_PAGE_MASK & (pudval_t)PHYSICAL_PAGE_MASK);
^
./arch/x86/include/asm/pgtable_types.h: In function pmd_pfn_maska?>>
./arch/x86/include/asm/pgtable_types.h:303:23: error: PMD_SHIFTa?>>
undeclared (first use in this function)
return PMD_PAGE_MASK & PHYSICAL_PAGE_MASK;
^
./arch/x86/include/asm/pgtable_types.h: In function pmd_flags_maska?>>
./arch/x86/include/asm/pgtable_types.h:311:25: error: PMD_SHIFTa?>>
undeclared (first use in this function)
return ~(PMD_PAGE_MASK & (pmdval_t)PHYSICAL_PAGE_MASK);
^
scripts/Makefile.build:258: recipe for target
'arch/x86/entry/vdso/vdso32/vclock_gettime.o' failed
make[3]: *** [arch/x86/entry/vdso/vdso32/vclock_gettime.o] Error 1
make[3]: *** Waiting for unfinished jobs....
Thanks,
-Toshi
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
WARNING: multiple messages have this Message-ID (diff)
From: Toshi Kani <toshi.kani@hp.com>
To: Thomas Gleixner <tglx@linutronix.de>
Cc: hpa@zytor.com, mingo@redhat.com, akpm@linux-foundation.org,
bp@alien8.de, linux-mm@kvack.org, linux-kernel@vger.kernel.org,
x86@kernel.org, jgross@suse.com, konrad.wilk@oracle.com,
elliott@hp.com
Subject: Re: [PATCH v3 1/10] x86/vdso32: Define PGTABLE_LEVELS to 32bit VDSO
Date: Thu, 20 Aug 2015 17:04:23 -0600 [thread overview]
Message-ID: <55D65CF7.1020903@hp.com> (raw)
In-Reply-To: <alpine.DEB.2.11.1508202145540.3873@nanos>
On 8/20/2015 1:46 PM, Thomas Gleixner wrote:
> On Wed, 5 Aug 2015, Toshi Kani wrote:
>
>> In case of CONFIG_X86_64, vdso32/vclock_gettime.c fakes a 32bit
>> kernel configuration by re-defining it to CONFIG_X86_32. However,
>> it does not re-define CONFIG_PGTABLE_LEVELS leaving it as 4 levels.
>> Fix it by re-defining CONFIG_PGTABLE_LEVELS to 2 as X86_PAE is not
>> set.
> You fail to explain WHY this is required. I have not yet spotted any
> code in vclock_gettime.c which is affected by this.
Sorry about that. Without this patch 01, applying patch 02 & 03 causes
the following compile errors in vclock_gettime.c. This is because it
includes pgtable_type.h (see blow), which now requires PUD_SHIFT and
PMD_SHIFT defined properly. In case of X86_32, pgtable_type.h includes
pgtable_nopud.h and pgtable-nopmd.h, which define these SHIFTs when
CONFIG_PGTABLE_LEVEL is set to 2 (or 3 if PAE is also defined).
In file included from ./arch/x86/include/asm/paravirt_types.h:44:0,
from ./arch/x86/include/asm/ptrace.h:71,
from ./arch/x86/include/asm/alternative.h:8,
from ./arch/x86/include/asm/bitops.h:16,
from include/linux/bitops.h:36,
from include/linux/kernel.h:10,
from include/linux/list.h:8,
from include/linux/preempt.h:10,
from include/linux/spinlock.h:50,
from include/linux/seqlock.h:35,
from include/linux/time.h:5,
from include/uapi/linux/timex.h:56,
from include/linux/timex.h:56,
from include/linux/clocksource.h:12,
from ./arch/x86/include/asm/vgtod.h:5,
from arch/x86/entry/vdso/vdso32/../vclock_gettime.c:15,
from arch/x86/entry/vdso/vdso32/vclock_gettime.c:30:
./arch/x86/include/asm/pgtable_types.h: In function pud_pfn_mask・
./arch/x86/include/asm/pgtable_types.h:282:23: error: PUD_SHIFT・
undeclared (first use in this function)
return PUD_PAGE_MASK & PHYSICAL_PAGE_MASK;
^
./arch/x86/include/asm/pgtable_types.h:282:23: note: each undeclared
identifier is reported only once for each function it appears in
./arch/x86/include/asm/pgtable_types.h: In function pud_flags_mask・
./arch/x86/include/asm/pgtable_types.h:290:25: error: PUD_SHIFT・
undeclared (first use in this function)
return ~(PUD_PAGE_MASK & (pudval_t)PHYSICAL_PAGE_MASK);
^
./arch/x86/include/asm/pgtable_types.h: In function pmd_pfn_mask・
./arch/x86/include/asm/pgtable_types.h:303:23: error: PMD_SHIFT・
undeclared (first use in this function)
return PMD_PAGE_MASK & PHYSICAL_PAGE_MASK;
^
./arch/x86/include/asm/pgtable_types.h: In function pmd_flags_mask・
./arch/x86/include/asm/pgtable_types.h:311:25: error: PMD_SHIFT・
undeclared (first use in this function)
return ~(PMD_PAGE_MASK & (pmdval_t)PHYSICAL_PAGE_MASK);
^
scripts/Makefile.build:258: recipe for target
'arch/x86/entry/vdso/vdso32/vclock_gettime.o' failed
make[3]: *** [arch/x86/entry/vdso/vdso32/vclock_gettime.o] Error 1
make[3]: *** Waiting for unfinished jobs....
Thanks,
-Toshi
next prev parent reply other threads:[~2015-08-20 23:04 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-08-05 21:43 [PATCH v3 0/10] x86/mm: Handle large PAT bit in pud/pmd interfaces Toshi Kani
2015-08-05 21:43 ` Toshi Kani
2015-08-05 21:43 ` [PATCH v3 1/10] x86/vdso32: Define PGTABLE_LEVELS to 32bit VDSO Toshi Kani
2015-08-05 21:43 ` Toshi Kani
2015-08-20 19:46 ` Thomas Gleixner
2015-08-20 19:46 ` Thomas Gleixner
2015-08-20 23:04 ` Toshi Kani [this message]
2015-08-20 23:04 ` Toshi Kani
2015-08-24 21:48 ` Toshi Kani
2015-08-24 21:48 ` Toshi Kani
2015-08-05 21:43 ` [PATCH v3 2/10] x86/asm: Move PUD_PAGE macros to page_types.h Toshi Kani
2015-08-05 21:43 ` Toshi Kani
2015-08-05 21:43 ` [PATCH v3 3/10] x86/asm: Fix pud/pmd interfaces to handle large PAT bit Toshi Kani
2015-08-05 21:43 ` Toshi Kani
2015-08-25 8:16 ` Thomas Gleixner
2015-08-25 8:16 ` Thomas Gleixner
2015-08-25 14:15 ` Toshi Kani
2015-08-25 14:15 ` Toshi Kani
2015-08-05 21:43 ` [PATCH v3 4/10] x86/asm: Add pud_pgprot() and pmd_pgprot() Toshi Kani
2015-08-05 21:43 ` Toshi Kani
2015-08-05 21:43 ` [PATCH v3 5/10] x86/mm: Fix page table dump to show PAT bit Toshi Kani
2015-08-05 21:43 ` Toshi Kani
2015-08-05 21:43 ` [PATCH v3 6/10] x86/mm: Fix slow_virt_to_phys() to handle large " Toshi Kani
2015-08-05 21:43 ` Toshi Kani
2015-08-05 21:43 ` [PATCH v3 7/10] x86/mm: Fix gup_huge_p?d() " Toshi Kani
2015-08-05 21:43 ` Toshi Kani
2015-08-05 21:43 ` [PATCH v3 8/10] x86/mm: Fix try_preserve_large_page() " Toshi Kani
2015-08-05 21:43 ` Toshi Kani
2015-08-05 21:43 ` [PATCH v3 9/10] x86/mm: Fix __split_large_page() " Toshi Kani
2015-08-05 21:43 ` Toshi Kani
2015-08-05 21:43 ` [PATCH v3 10/10] x86/mm: Fix the same pgprot handling in try_preserve_large_page() Toshi Kani
2015-08-05 21:43 ` Toshi Kani
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=55D65CF7.1020903@hp.com \
--to=toshi.kani@hp.com \
--cc=akpm@linux-foundation.org \
--cc=bp@alien8.de \
--cc=elliott@hp.com \
--cc=hpa@zytor.com \
--cc=jgross@suse.com \
--cc=konrad.wilk@oracle.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mingo@redhat.com \
--cc=tglx@linutronix.de \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.