| Submitter | Saul Wold |
|---|---|
| Date | Sept. 11, 2012, 3:07 p.m. |
| Message ID | <1347376071-29566-1-git-send-email-sgw@linux.intel.com> |
| Download | mbox | patch |
| Permalink | /patch/36305/ |
| State | New |
| Headers | show |
Comments
On Tue, 2012-09-11 at 08:07 -0700, Saul Wold wrote: > This will allow the KERNEL_FEATURES to trigger the x32 ABI via overrides > > Signed-off-by: Saul Wold <sgw@linux.intel.com> > --- > meta/conf/machine/include/ia32/arch-ia32.inc | 1 + > 1 files changed, 1 insertions(+), 0 deletions(-) > > diff --git a/meta/conf/machine/include/ia32/arch-ia32.inc b/meta/conf/machine/include/ia32/arch-ia32.inc > index 15f67d7..fa70e57 100644 > --- a/meta/conf/machine/include/ia32/arch-ia32.inc > +++ b/meta/conf/machine/include/ia32/arch-ia32.inc > @@ -24,6 +24,7 @@ ABIEXTENSION .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", "x32", "" ,d)}" > TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-mx32", "", d)}" > TUNE_LDARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-m elf32_x86_64", "", d)}" > TUNE_ASARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-x32", "", d)}" > +MACHINEOVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", ":x32", "" ,d)}" > > # ELF64 ABI > TUNEVALID[m64] = "IA32e (x86_64) ELF64 standard ABI" This is just for the kernel issue, right? In that case, just use ${@bb.utils.contains("TUNE_FEATURES", "mx32", "xxxx", "" ,d)} in the kernel recipe code... Cheers, Richard
On 09/11/2012 08:13 AM, Richard Purdie wrote: > On Tue, 2012-09-11 at 08:07 -0700, Saul Wold wrote: >> This will allow the KERNEL_FEATURES to trigger the x32 ABI via overrides >> >> Signed-off-by: Saul Wold <sgw@linux.intel.com> >> --- >> meta/conf/machine/include/ia32/arch-ia32.inc | 1 + >> 1 files changed, 1 insertions(+), 0 deletions(-) >> >> diff --git a/meta/conf/machine/include/ia32/arch-ia32.inc b/meta/conf/machine/include/ia32/arch-ia32.inc >> index 15f67d7..fa70e57 100644 >> --- a/meta/conf/machine/include/ia32/arch-ia32.inc >> +++ b/meta/conf/machine/include/ia32/arch-ia32.inc >> @@ -24,6 +24,7 @@ ABIEXTENSION .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", "x32", "" ,d)}" >> TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-mx32", "", d)}" >> TUNE_LDARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-m elf32_x86_64", "", d)}" >> TUNE_ASARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-x32", "", d)}" >> +MACHINEOVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", ":x32", "" ,d)}" >> >> # ELF64 ABI >> TUNEVALID[m64] = "IA32e (x86_64) ELF64 standard ABI" > > This is just for the kernel issue, right? > > In that case, just use ${@bb.utils.contains("TUNE_FEATURES", "mx32", > "xxxx", "" ,d)} in the kernel recipe code... > It's possible that there will be other recipes that need patches or other changes in the future, but I guess we can cross that bridge when we come to it. I think I will actually use the features update that Bruce just added from here instead. Since multiple BSP could take advantage of x32 we should not have to edit each of there kernel recipes. It should just be enabled based on the x32 DEFAULTTUNE. Thanks Sau! > Cheers, > > Richard > > >
On 9/11/12 10:36 AM, Saul Wold wrote: > On 09/11/2012 08:13 AM, Richard Purdie wrote: >> On Tue, 2012-09-11 at 08:07 -0700, Saul Wold wrote: >>> This will allow the KERNEL_FEATURES to trigger the x32 ABI via overrides >>> >>> Signed-off-by: Saul Wold <sgw@linux.intel.com> >>> --- >>> meta/conf/machine/include/ia32/arch-ia32.inc | 1 + >>> 1 files changed, 1 insertions(+), 0 deletions(-) >>> >>> diff --git a/meta/conf/machine/include/ia32/arch-ia32.inc b/meta/conf/machine/include/ia32/arch-ia32.inc >>> index 15f67d7..fa70e57 100644 >>> --- a/meta/conf/machine/include/ia32/arch-ia32.inc >>> +++ b/meta/conf/machine/include/ia32/arch-ia32.inc >>> @@ -24,6 +24,7 @@ ABIEXTENSION .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", "x32", "" ,d)}" >>> TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-mx32", "", d)}" >>> TUNE_LDARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-m elf32_x86_64", "", d)}" >>> TUNE_ASARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-x32", "", d)}" >>> +MACHINEOVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", ":x32", "" ,d)}" >>> >>> # ELF64 ABI >>> TUNEVALID[m64] = "IA32e (x86_64) ELF64 standard ABI" >> >> This is just for the kernel issue, right? >> >> In that case, just use ${@bb.utils.contains("TUNE_FEATURES", "mx32", >> "xxxx", "" ,d)} in the kernel recipe code... >> > It's possible that there will be other recipes that need patches or > other changes in the future, but I guess we can cross that bridge when > we come to it. > > I think I will actually use the features update that Bruce just added > from here instead. Since multiple BSP could take advantage of x32 we > should not have to edit each of there kernel recipes. It should just be > enabled based on the x32 DEFAULTTUNE. I know there are a few other things that can (and should) change behavior based on the x32 flag.. but flag or override, it just changes slightly the implementation mechanism -- either should work as long as we consistently use it. --Mark > Thanks > Sau! > > > >> Cheers, >> >> Richard >> >> >> > > _______________________________________________ > Openembedded-core mailing list > Openembedded-core@lists.openembedded.org > http://lists.linuxtogo.org/cgi-bin/mailman/listinfo/openembedded-core >
On Tue, 2012-09-11 at 08:36 -0700, Saul Wold wrote: > On 09/11/2012 08:13 AM, Richard Purdie wrote: > > On Tue, 2012-09-11 at 08:07 -0700, Saul Wold wrote: > >> This will allow the KERNEL_FEATURES to trigger the x32 ABI via overrides > >> > >> Signed-off-by: Saul Wold <sgw@linux.intel.com> > >> --- > >> meta/conf/machine/include/ia32/arch-ia32.inc | 1 + > >> 1 files changed, 1 insertions(+), 0 deletions(-) > >> > >> diff --git a/meta/conf/machine/include/ia32/arch-ia32.inc b/meta/conf/machine/include/ia32/arch-ia32.inc > >> index 15f67d7..fa70e57 100644 > >> --- a/meta/conf/machine/include/ia32/arch-ia32.inc > >> +++ b/meta/conf/machine/include/ia32/arch-ia32.inc > >> @@ -24,6 +24,7 @@ ABIEXTENSION .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", "x32", "" ,d)}" > >> TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-mx32", "", d)}" > >> TUNE_LDARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-m elf32_x86_64", "", d)}" > >> TUNE_ASARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-x32", "", d)}" > >> +MACHINEOVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", ":x32", "" ,d)}" > >> > >> # ELF64 ABI > >> TUNEVALID[m64] = "IA32e (x86_64) ELF64 standard ABI" > > > > This is just for the kernel issue, right? > > > > In that case, just use ${@bb.utils.contains("TUNE_FEATURES", "mx32", > > "xxxx", "" ,d)} in the kernel recipe code... > > > It's possible that there will be other recipes that need patches or > other changes in the future, but I guess we can cross that bridge when > we come to it. > > I think I will actually use the features update that Bruce just added > from here instead. Since multiple BSP could take advantage of x32 we > should not have to edit each of there kernel recipes. It should just be > enabled based on the x32 DEFAULTTUNE. No, no, no. DEFAULTTUNE is a really bad idea for these kind of decisions, what if x32 is one of the other tunes enabled? You're not the first person to use DEFAULTTUNE like this recently and its not what its intended for at all :/. Also, the kernel features are specific to linux-yocto so you can't use them from a core ABI file. Cheers, Richard
Patch
diff --git a/meta/conf/machine/include/ia32/arch-ia32.inc b/meta/conf/machine/include/ia32/arch-ia32.inc index 15f67d7..fa70e57 100644 --- a/meta/conf/machine/include/ia32/arch-ia32.inc +++ b/meta/conf/machine/include/ia32/arch-ia32.inc @@ -24,6 +24,7 @@ ABIEXTENSION .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", "x32", "" ,d)}" TUNE_CCARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-mx32", "", d)}" TUNE_LDARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-m elf32_x86_64", "", d)}" TUNE_ASARGS += "${@bb.utils.contains("TUNE_FEATURES", "mx32", "-x32", "", d)}" +MACHINEOVERRIDES .= "${@bb.utils.contains("TUNE_FEATURES", "mx32", ":x32", "" ,d)}" # ELF64 ABI TUNEVALID[m64] = "IA32e (x86_64) ELF64 standard ABI"
This will allow the KERNEL_FEATURES to trigger the x32 ABI via overrides Signed-off-by: Saul Wold <sgw@linux.intel.com> --- meta/conf/machine/include/ia32/arch-ia32.inc | 1 + 1 files changed, 1 insertions(+), 0 deletions(-)