Re: linux-next: Tree for Feb 20
On Thu, 21 Feb 2019 at 09:04, Geert Uytterhoeven wrote: > > Hi Shaokun, > > On Thu, Feb 21, 2019 at 1:45 AM Zhangshaokun > wrote: > > On 2019/2/20 18:05, Ard Biesheuvel wrote: > > > On Wed, 20 Feb 2019 at 10:58, Jarkko Sakkinen > > > wrote: > > >> > > >> On Wed, Feb 20, 2019 at 11:52:52AM +0200, Jarkko Sakkinen wrote: > > >>> On Wed, Feb 20, 2019 at 05:11:15PM +0800, Zhangshaokun wrote: > > There is a compiler failure on arm64 platform, as follow: > > > > AS arch/arm64/kvm/hyp.o > > CC kernel/trace/ring_buffer.o > > In file included from security/integrity/ima/ima_fs.c:30:0: > > security/integrity/ima/ima.h:176:7: error: redeclaration of enumerator > > ‘NONE’ > > hook(NONE) \ > > ^ > > security/integrity/ima/ima.h:188:34: note: in definition of macro > > ‘__ima_hook_enumify’ > > #define __ima_hook_enumify(ENUM) ENUM, > > ^ > > security/integrity/ima/ima.h:191:2: note: in expansion of macro > > ‘__ima_hooks’ > > __ima_hooks(__ima_hook_enumify) > > ^ > > In file included from ./arch/arm64/include/asm/acpi.h:15:0, > > from ./include/acpi/acpi_io.h:7, > > from ./include/linux/acpi.h:47, > > from ./include/linux/tpm.h:26, > > from security/integrity/ima/ima.h:25, > > from security/integrity/ima/ima_fs.c:30: > > ./include/linux/efi.h:1716:2: note: previous definition of ‘NONE’ was > > here > > NONE, > > ^ > > scripts/Makefile.build:276: recipe for target > > 'security/integrity/ima/ima_fs.o' failed > > make[3]: *** [security/integrity/ima/ima_fs.o] Error 1 > > > > I dug it and it is the commit 901615cb916d ("tpm: move tpm_chip > > definition to include/linux/tpm.h") > > >>> > > >>> This results from a new include in tpm.h: > > >>> > > >>> #include > > >>> > > >>> Must be fixed either in include/linux/efi.h or security/integrity/ima.h > > >>> as > > >>> those files have a name collision. Makes me wonder why neither has taken > > >>> care of prefixing the constants properly. > > >> > > >> Preferably both subsystems should be fixed with proper 'EFI_' and 'IMA_' > > >> prefixes. Defining a constant named as NONE in a non-generic subsystem > > >> (e.g. not part of the core data structures of Linux) and especially > > >> exporting it to include/linux is not too well considered act. > > >> > > > > > > Fixes for this have already been proposed, and should appear in -next > > > shortly > > > > > > The EFI one is here > > > https://mail.google.com/mail/u/0/#label/linux-efi/FMfcgxwBVgrQRjglPkWRqRqVclGgVDnB > > > > > > > Because of no privilege, the website is denied for me. Anyway, it's nice to > > have been fixed. > > Looks like Ard posted a link to a label in his personal gmail mailbox? > Silly me. https://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git/commit/?h=efi/core=5c418dc789a3898717ebf2caa5716ba91a7150b2
Re: linux-next: Tree for Feb 20
Hi Geert, On 2019/2/21 16:03, Geert Uytterhoeven wrote: > Hi Shaokun, > > On Thu, Feb 21, 2019 at 1:45 AM Zhangshaokun > wrote: >> On 2019/2/20 18:05, Ard Biesheuvel wrote: >>> On Wed, 20 Feb 2019 at 10:58, Jarkko Sakkinen >>> wrote: On Wed, Feb 20, 2019 at 11:52:52AM +0200, Jarkko Sakkinen wrote: > On Wed, Feb 20, 2019 at 05:11:15PM +0800, Zhangshaokun wrote: >> There is a compiler failure on arm64 platform, as follow: >> >> AS arch/arm64/kvm/hyp.o >> CC kernel/trace/ring_buffer.o >> In file included from security/integrity/ima/ima_fs.c:30:0: >> security/integrity/ima/ima.h:176:7: error: redeclaration of enumerator >> ‘NONE’ >> hook(NONE) \ >>^ >> security/integrity/ima/ima.h:188:34: note: in definition of macro >> ‘__ima_hook_enumify’ >> #define __ima_hook_enumify(ENUM) ENUM, >> ^ >> security/integrity/ima/ima.h:191:2: note: in expansion of macro >> ‘__ima_hooks’ >> __ima_hooks(__ima_hook_enumify) >> ^ >> In file included from ./arch/arm64/include/asm/acpi.h:15:0, >> from ./include/acpi/acpi_io.h:7, >> from ./include/linux/acpi.h:47, >> from ./include/linux/tpm.h:26, >> from security/integrity/ima/ima.h:25, >> from security/integrity/ima/ima_fs.c:30: >> ./include/linux/efi.h:1716:2: note: previous definition of ‘NONE’ was >> here >> NONE, >> ^ >> scripts/Makefile.build:276: recipe for target >> 'security/integrity/ima/ima_fs.o' failed >> make[3]: *** [security/integrity/ima/ima_fs.o] Error 1 >> >> I dug it and it is the commit 901615cb916d ("tpm: move tpm_chip >> definition to include/linux/tpm.h") > > This results from a new include in tpm.h: > > #include > > Must be fixed either in include/linux/efi.h or security/integrity/ima.h as > those files have a name collision. Makes me wonder why neither has taken > care of prefixing the constants properly. Preferably both subsystems should be fixed with proper 'EFI_' and 'IMA_' prefixes. Defining a constant named as NONE in a non-generic subsystem (e.g. not part of the core data structures of Linux) and especially exporting it to include/linux is not too well considered act. >>> >>> Fixes for this have already been proposed, and should appear in -next >>> shortly >>> >>> The EFI one is here >>> https://mail.google.com/mail/u/0/#label/linux-efi/FMfcgxwBVgrQRjglPkWRqRqVclGgVDnB >>> >> >> Because of no privilege, the website is denied for me. Anyway, it's nice to >> have been fixed. > > Looks like Ard posted a link to a label in his personal gmail mailbox? > Hmm, it seems that, my bad understanding. Thanks your reply. > Gr{oetje,eeting}s, > > Geert >
Re: linux-next: Tree for Feb 20
Hi Shaokun, On Thu, Feb 21, 2019 at 1:45 AM Zhangshaokun wrote: > On 2019/2/20 18:05, Ard Biesheuvel wrote: > > On Wed, 20 Feb 2019 at 10:58, Jarkko Sakkinen > > wrote: > >> > >> On Wed, Feb 20, 2019 at 11:52:52AM +0200, Jarkko Sakkinen wrote: > >>> On Wed, Feb 20, 2019 at 05:11:15PM +0800, Zhangshaokun wrote: > There is a compiler failure on arm64 platform, as follow: > > AS arch/arm64/kvm/hyp.o > CC kernel/trace/ring_buffer.o > In file included from security/integrity/ima/ima_fs.c:30:0: > security/integrity/ima/ima.h:176:7: error: redeclaration of enumerator > ‘NONE’ > hook(NONE) \ > ^ > security/integrity/ima/ima.h:188:34: note: in definition of macro > ‘__ima_hook_enumify’ > #define __ima_hook_enumify(ENUM) ENUM, > ^ > security/integrity/ima/ima.h:191:2: note: in expansion of macro > ‘__ima_hooks’ > __ima_hooks(__ima_hook_enumify) > ^ > In file included from ./arch/arm64/include/asm/acpi.h:15:0, > from ./include/acpi/acpi_io.h:7, > from ./include/linux/acpi.h:47, > from ./include/linux/tpm.h:26, > from security/integrity/ima/ima.h:25, > from security/integrity/ima/ima_fs.c:30: > ./include/linux/efi.h:1716:2: note: previous definition of ‘NONE’ was > here > NONE, > ^ > scripts/Makefile.build:276: recipe for target > 'security/integrity/ima/ima_fs.o' failed > make[3]: *** [security/integrity/ima/ima_fs.o] Error 1 > > I dug it and it is the commit 901615cb916d ("tpm: move tpm_chip > definition to include/linux/tpm.h") > >>> > >>> This results from a new include in tpm.h: > >>> > >>> #include > >>> > >>> Must be fixed either in include/linux/efi.h or security/integrity/ima.h as > >>> those files have a name collision. Makes me wonder why neither has taken > >>> care of prefixing the constants properly. > >> > >> Preferably both subsystems should be fixed with proper 'EFI_' and 'IMA_' > >> prefixes. Defining a constant named as NONE in a non-generic subsystem > >> (e.g. not part of the core data structures of Linux) and especially > >> exporting it to include/linux is not too well considered act. > >> > > > > Fixes for this have already been proposed, and should appear in -next > > shortly > > > > The EFI one is here > > https://mail.google.com/mail/u/0/#label/linux-efi/FMfcgxwBVgrQRjglPkWRqRqVclGgVDnB > > > > Because of no privilege, the website is denied for me. Anyway, it's nice to > have been fixed. Looks like Ard posted a link to a label in his personal gmail mailbox? Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- ge...@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds
Re: linux-next: Tree for Feb 20
Hi Ard, On 2019/2/20 18:05, Ard Biesheuvel wrote: > On Wed, 20 Feb 2019 at 10:58, Jarkko Sakkinen > wrote: >> >> On Wed, Feb 20, 2019 at 11:52:52AM +0200, Jarkko Sakkinen wrote: >>> On Wed, Feb 20, 2019 at 05:11:15PM +0800, Zhangshaokun wrote: There is a compiler failure on arm64 platform, as follow: AS arch/arm64/kvm/hyp.o CC kernel/trace/ring_buffer.o In file included from security/integrity/ima/ima_fs.c:30:0: security/integrity/ima/ima.h:176:7: error: redeclaration of enumerator ‘NONE’ hook(NONE) \ ^ security/integrity/ima/ima.h:188:34: note: in definition of macro ‘__ima_hook_enumify’ #define __ima_hook_enumify(ENUM) ENUM, ^ security/integrity/ima/ima.h:191:2: note: in expansion of macro ‘__ima_hooks’ __ima_hooks(__ima_hook_enumify) ^ In file included from ./arch/arm64/include/asm/acpi.h:15:0, from ./include/acpi/acpi_io.h:7, from ./include/linux/acpi.h:47, from ./include/linux/tpm.h:26, from security/integrity/ima/ima.h:25, from security/integrity/ima/ima_fs.c:30: ./include/linux/efi.h:1716:2: note: previous definition of ‘NONE’ was here NONE, ^ scripts/Makefile.build:276: recipe for target 'security/integrity/ima/ima_fs.o' failed make[3]: *** [security/integrity/ima/ima_fs.o] Error 1 I dug it and it is the commit 901615cb916d ("tpm: move tpm_chip definition to include/linux/tpm.h") >>> >>> This results from a new include in tpm.h: >>> >>> #include >>> >>> Must be fixed either in include/linux/efi.h or security/integrity/ima.h as >>> those files have a name collision. Makes me wonder why neither has taken >>> care of prefixing the constants properly. >> >> Preferably both subsystems should be fixed with proper 'EFI_' and 'IMA_' >> prefixes. Defining a constant named as NONE in a non-generic subsystem >> (e.g. not part of the core data structures of Linux) and especially >> exporting it to include/linux is not too well considered act. >> > > Fixes for this have already been proposed, and should appear in -next shortly > > The EFI one is here > https://mail.google.com/mail/u/0/#label/linux-efi/FMfcgxwBVgrQRjglPkWRqRqVclGgVDnB > Because of no privilege, the website is denied for me. Anyway, it's nice to have been fixed. Thanks, Shaokun > Not sure about the IMA one, Mimi should be able to comment ... > > . >
Re: linux-next: Tree for Feb 20
> Fixes for this have already been proposed, and should appear in -next shortly > > The EFI one is here > https://mail.google.com/mail/u/0/#label/linux-efi/FMfcgxwBVgrQRjglPkWRqRqVclGgVDnB > > Not sure about the IMA one, Mimi should be able to comment ... I've already commented on the other patch and was expecting to see a revised patch. Mimi
Re: linux-next: Tree for Feb 20
On Wed, 20 Feb 2019 at 10:58, Jarkko Sakkinen wrote: > > On Wed, Feb 20, 2019 at 11:52:52AM +0200, Jarkko Sakkinen wrote: > > On Wed, Feb 20, 2019 at 05:11:15PM +0800, Zhangshaokun wrote: > > > There is a compiler failure on arm64 platform, as follow: > > > > > > AS arch/arm64/kvm/hyp.o > > > CC kernel/trace/ring_buffer.o > > > In file included from security/integrity/ima/ima_fs.c:30:0: > > > security/integrity/ima/ima.h:176:7: error: redeclaration of enumerator > > > ‘NONE’ > > > hook(NONE) \ > > >^ > > > security/integrity/ima/ima.h:188:34: note: in definition of macro > > > ‘__ima_hook_enumify’ > > > #define __ima_hook_enumify(ENUM) ENUM, > > > ^ > > > security/integrity/ima/ima.h:191:2: note: in expansion of macro > > > ‘__ima_hooks’ > > > __ima_hooks(__ima_hook_enumify) > > > ^ > > > In file included from ./arch/arm64/include/asm/acpi.h:15:0, > > > from ./include/acpi/acpi_io.h:7, > > > from ./include/linux/acpi.h:47, > > > from ./include/linux/tpm.h:26, > > > from security/integrity/ima/ima.h:25, > > > from security/integrity/ima/ima_fs.c:30: > > > ./include/linux/efi.h:1716:2: note: previous definition of ‘NONE’ was here > > > NONE, > > > ^ > > > scripts/Makefile.build:276: recipe for target > > > 'security/integrity/ima/ima_fs.o' failed > > > make[3]: *** [security/integrity/ima/ima_fs.o] Error 1 > > > > > > I dug it and it is the commit 901615cb916d ("tpm: move tpm_chip > > > definition to include/linux/tpm.h") > > > > This results from a new include in tpm.h: > > > > #include > > > > Must be fixed either in include/linux/efi.h or security/integrity/ima.h as > > those files have a name collision. Makes me wonder why neither has taken > > care of prefixing the constants properly. > > Preferably both subsystems should be fixed with proper 'EFI_' and 'IMA_' > prefixes. Defining a constant named as NONE in a non-generic subsystem > (e.g. not part of the core data structures of Linux) and especially > exporting it to include/linux is not too well considered act. > Fixes for this have already been proposed, and should appear in -next shortly The EFI one is here https://mail.google.com/mail/u/0/#label/linux-efi/FMfcgxwBVgrQRjglPkWRqRqVclGgVDnB Not sure about the IMA one, Mimi should be able to comment ...
Re: linux-next: Tree for Feb 20
On Wed, Feb 20, 2019 at 11:52:52AM +0200, Jarkko Sakkinen wrote: > On Wed, Feb 20, 2019 at 05:11:15PM +0800, Zhangshaokun wrote: > > There is a compiler failure on arm64 platform, as follow: > > > > AS arch/arm64/kvm/hyp.o > > CC kernel/trace/ring_buffer.o > > In file included from security/integrity/ima/ima_fs.c:30:0: > > security/integrity/ima/ima.h:176:7: error: redeclaration of enumerator > > ‘NONE’ > > hook(NONE) \ > >^ > > security/integrity/ima/ima.h:188:34: note: in definition of macro > > ‘__ima_hook_enumify’ > > #define __ima_hook_enumify(ENUM) ENUM, > > ^ > > security/integrity/ima/ima.h:191:2: note: in expansion of macro > > ‘__ima_hooks’ > > __ima_hooks(__ima_hook_enumify) > > ^ > > In file included from ./arch/arm64/include/asm/acpi.h:15:0, > > from ./include/acpi/acpi_io.h:7, > > from ./include/linux/acpi.h:47, > > from ./include/linux/tpm.h:26, > > from security/integrity/ima/ima.h:25, > > from security/integrity/ima/ima_fs.c:30: > > ./include/linux/efi.h:1716:2: note: previous definition of ‘NONE’ was here > > NONE, > > ^ > > scripts/Makefile.build:276: recipe for target > > 'security/integrity/ima/ima_fs.o' failed > > make[3]: *** [security/integrity/ima/ima_fs.o] Error 1 > > > > I dug it and it is the commit 901615cb916d ("tpm: move tpm_chip definition > > to include/linux/tpm.h") > > This results from a new include in tpm.h: > > #include > > Must be fixed either in include/linux/efi.h or security/integrity/ima.h as > those files have a name collision. Makes me wonder why neither has taken > care of prefixing the constants properly. Preferably both subsystems should be fixed with proper 'EFI_' and 'IMA_' prefixes. Defining a constant named as NONE in a non-generic subsystem (e.g. not part of the core data structures of Linux) and especially exporting it to include/linux is not too well considered act. /Jarkko