All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] x86: Don't clare __force_order in kaslr_64.c
@ 2020-01-24 18:18 H.J. Lu
  2020-01-24 18:24 ` Andy Lutomirski
                   ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: H.J. Lu @ 2020-01-24 18:18 UTC (permalink / raw)
  To: linux-kernel
  Cc: Thomas Gleixner, Ingo Molnar, Borislav Petkov, H . Peter Anvin,
	x86, Yu-cheng Yu

GCC 10 changed the default to -fno-common, which leads to

  LD      arch/x86/boot/compressed/vmlinux
ld: arch/x86/boot/compressed/pgtable_64.o:(.bss+0x0): multiple definition of `__force_order'; arch/x86/boot/compressed/kaslr_64.o:(.bss+0x0): first defined here
make[2]: *** [arch/x86/boot/compressed/Makefile:119: arch/x86/boot/compressed/vmlinux] Error 1

Since __force_order is already provided in pgtable_64.c, there is no
need to declare __force_order in kaslr_64.c.

Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
Signed-off-by: Yu-cheng Yu <yu-cheng.yu@intel.com>
---
 arch/x86/boot/compressed/kaslr_64.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/arch/x86/boot/compressed/kaslr_64.c b/arch/x86/boot/compressed/kaslr_64.c
index 748456c365f4..9557c5a15b91 100644
--- a/arch/x86/boot/compressed/kaslr_64.c
+++ b/arch/x86/boot/compressed/kaslr_64.c
@@ -29,9 +29,6 @@
 #define __PAGE_OFFSET __PAGE_OFFSET_BASE
 #include "../../mm/ident_map.c"
 
-/* Used by pgtable.h asm code to force instruction serialization. */
-unsigned long __force_order;
-
 /* Used to track our page table allocation area. */
 struct alloc_pgt_data {
 	unsigned char *pgt_buf;
-- 
2.24.1


^ permalink raw reply related	[flat|nested] 10+ messages in thread

* Re: [PATCH] x86: Don't clare __force_order in kaslr_64.c
  2020-01-24 18:18 [PATCH] x86: Don't clare __force_order in kaslr_64.c H.J. Lu
@ 2020-01-24 18:24 ` Andy Lutomirski
  2020-01-24 18:39   ` H.J. Lu
  2020-02-17 22:27   ` [PATCH] x86: Don't clare " Borislav Petkov
  2020-02-18 15:07 ` [tip: x86/boot] x86/boot/compressed: Don't declare " tip-bot2 for H.J. Lu
  2020-02-19 16:32 ` [tip: x86/urgent] " tip-bot2 for H.J. Lu
  2 siblings, 2 replies; 10+ messages in thread
From: Andy Lutomirski @ 2020-01-24 18:24 UTC (permalink / raw)
  To: H.J. Lu
  Cc: linux-kernel, Thomas Gleixner, Ingo Molnar, Borislav Petkov,
	H . Peter Anvin, x86, Yu-cheng Yu



> On Jan 24, 2020, at 10:18 AM, H.J. Lu <hjl.tools@gmail.com> wrote:
> 
> GCC 10 changed the default to -fno-common, which leads to
> 
>  LD      arch/x86/boot/compressed/vmlinux
> ld: arch/x86/boot/compressed/pgtable_64.o:(.bss+0x0): multiple definition of `__force_order'; arch/x86/boot/compressed/kaslr_64.o:(.bss+0x0): first defined here
> make[2]: *** [arch/x86/boot/compressed/Makefile:119: arch/x86/boot/compressed/vmlinux] Error 1
> 
> Since __force_order is already provided in pgtable_64.c, there is no
> need to declare __force_order in kaslr_64.c.

Why does anything actually define that variable?  Surely any actual references are just an outright bug.  Is it needed for LTO?

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH] x86: Don't clare __force_order in kaslr_64.c
  2020-01-24 18:24 ` Andy Lutomirski
@ 2020-01-24 18:39   ` H.J. Lu
  2020-01-24 18:44     ` [PATCH] x86: Don't declare " H.J. Lu
  2020-02-17 22:27   ` [PATCH] x86: Don't clare " Borislav Petkov
  1 sibling, 1 reply; 10+ messages in thread
From: H.J. Lu @ 2020-01-24 18:39 UTC (permalink / raw)
  To: Andy Lutomirski
  Cc: LKML, Thomas Gleixner, Ingo Molnar, Borislav Petkov,
	H . Peter Anvin, the arch/x86 maintainers, Yu-cheng Yu

On Fri, Jan 24, 2020 at 10:24 AM Andy Lutomirski <luto@amacapital.net> wrote:
>
>
>
> > On Jan 24, 2020, at 10:18 AM, H.J. Lu <hjl.tools@gmail.com> wrote:
> >
> > GCC 10 changed the default to -fno-common, which leads to
> >
> >  LD      arch/x86/boot/compressed/vmlinux
> > ld: arch/x86/boot/compressed/pgtable_64.o:(.bss+0x0): multiple definition of `__force_order'; arch/x86/boot/compressed/kaslr_64.o:(.bss+0x0): first defined here
> > make[2]: *** [arch/x86/boot/compressed/Makefile:119: arch/x86/boot/compressed/vmlinux] Error 1
> >
> > Since __force_order is already provided in pgtable_64.c, there is no
> > need to declare __force_order in kaslr_64.c.
>
> Why does anything actually define that variable?  Surely any actual references are just an outright bug.  Is it needed for LTO?

It is needed by GCC 10 without LTO.

-- 
H.J.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [PATCH] x86: Don't declare __force_order in kaslr_64.c
  2020-01-24 18:39   ` H.J. Lu
@ 2020-01-24 18:44     ` H.J. Lu
  2020-02-18 10:45       ` Borislav Petkov
  0 siblings, 1 reply; 10+ messages in thread
From: H.J. Lu @ 2020-01-24 18:44 UTC (permalink / raw)
  To: Andy Lutomirski
  Cc: LKML, Thomas Gleixner, Ingo Molnar, Borislav Petkov,
	H . Peter Anvin, the arch/x86 maintainers, Yu-cheng Yu

[-- Attachment #1: Type: text/plain, Size: 1046 bytes --]

On Fri, Jan 24, 2020 at 10:39 AM H.J. Lu <hjl.tools@gmail.com> wrote:
>
> On Fri, Jan 24, 2020 at 10:24 AM Andy Lutomirski <luto@amacapital.net> wrote:
> >
> >
> >
> > > On Jan 24, 2020, at 10:18 AM, H.J. Lu <hjl.tools@gmail.com> wrote:
> > >
> > > GCC 10 changed the default to -fno-common, which leads to
> > >
> > >  LD      arch/x86/boot/compressed/vmlinux
> > > ld: arch/x86/boot/compressed/pgtable_64.o:(.bss+0x0): multiple definition of `__force_order'; arch/x86/boot/compressed/kaslr_64.o:(.bss+0x0): first defined here
> > > make[2]: *** [arch/x86/boot/compressed/Makefile:119: arch/x86/boot/compressed/vmlinux] Error 1
> > >
> > > Since __force_order is already provided in pgtable_64.c, there is no
> > > need to declare __force_order in kaslr_64.c.
> >
> > Why does anything actually define that variable?  Surely any actual references are just an outright bug.  Is it needed for LTO?
>
> It is needed by GCC 10 without LTO.
>

This updated patch fixed a typo in Subject: "care" -> "declare".


-- 
H.J.

[-- Attachment #2: 0001-x86-Don-t-declare-__force_order-in-kaslr_64.c.patch --]
[-- Type: application/x-patch, Size: 1388 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH] x86: Don't clare __force_order in kaslr_64.c
  2020-01-24 18:24 ` Andy Lutomirski
  2020-01-24 18:39   ` H.J. Lu
@ 2020-02-17 22:27   ` Borislav Petkov
  1 sibling, 0 replies; 10+ messages in thread
From: Borislav Petkov @ 2020-02-17 22:27 UTC (permalink / raw)
  To: Andy Lutomirski
  Cc: H.J. Lu, linux-kernel, Thomas Gleixner, Ingo Molnar,
	H . Peter Anvin, x86, Yu-cheng Yu

On Fri, Jan 24, 2020 at 10:24:19AM -0800, Andy Lutomirski wrote:
> Why does anything actually define that variable? Surely any actual
> references are just an outright bug. Is it needed for LTO?

I think the answer to your question is at the top of
arch/x86/include/asm/special_insns.h


-- 
Regards/Gruss,
    Boris.

https://people.kernel.org/tglx/notes-about-netiquette

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH] x86: Don't declare __force_order in kaslr_64.c
  2020-01-24 18:44     ` [PATCH] x86: Don't declare " H.J. Lu
@ 2020-02-18 10:45       ` Borislav Petkov
  2020-02-18 11:38         ` H.J. Lu
  0 siblings, 1 reply; 10+ messages in thread
From: Borislav Petkov @ 2020-02-18 10:45 UTC (permalink / raw)
  To: H.J. Lu
  Cc: Andy Lutomirski, LKML, Thomas Gleixner, Ingo Molnar,
	H . Peter Anvin, the arch/x86 maintainers, Yu-cheng Yu

On Fri, Jan 24, 2020 at 10:44:30AM -0800, H.J. Lu wrote:
> This updated patch fixed a typo in Subject: "care" -> "declare".
>
> From c8c26194cf5a344cd53763eaaf16c3ab609736f4 Mon Sep 17 00:00:00 2001
> From: "H.J. Lu" <hjl.tools@gmail.com>
> Date: Thu, 16 Jan 2020 12:46:51 -0800
> Subject: [PATCH] x86: Don't declare __force_order in kaslr_64.c
> 
> GCC 10 changed the default to -fno-common, which leads to
> 
>   LD      arch/x86/boot/compressed/vmlinux
> ld: arch/x86/boot/compressed/pgtable_64.o:(.bss+0x0): multiple definition of `__force_order'; arch/x86/boot/compressed/kaslr_64.o:(.bss+0x0): first defined here
> make[2]: *** [arch/x86/boot/compressed/Makefile:119: arch/x86/boot/compressed/vmlinux] Error 1
> 
> Since __force_order is already provided in pgtable_64.c, there is no
> need to declare __force_order in kaslr_64.c.
> 
> Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
> Signed-off-by: Yu-cheng Yu <yu-cheng.yu@intel.com>

What is Yu-cheng's SOB supposed to mean here?

The only case where it would make sense is if he's sending this patch
but he isn't. So what's up?

-- 
Regards/Gruss,
    Boris.

https://people.kernel.org/tglx/notes-about-netiquette

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH] x86: Don't declare __force_order in kaslr_64.c
  2020-02-18 10:45       ` Borislav Petkov
@ 2020-02-18 11:38         ` H.J. Lu
  2020-02-18 13:37           ` Borislav Petkov
  0 siblings, 1 reply; 10+ messages in thread
From: H.J. Lu @ 2020-02-18 11:38 UTC (permalink / raw)
  To: Borislav Petkov
  Cc: Andy Lutomirski, LKML, Thomas Gleixner, Ingo Molnar,
	H . Peter Anvin, the arch/x86 maintainers, Yu-cheng Yu

On Tue, Feb 18, 2020 at 2:45 AM Borislav Petkov <bp@alien8.de> wrote:
>
> On Fri, Jan 24, 2020 at 10:44:30AM -0800, H.J. Lu wrote:
> > This updated patch fixed a typo in Subject: "care" -> "declare".
> >
> > From c8c26194cf5a344cd53763eaaf16c3ab609736f4 Mon Sep 17 00:00:00 2001
> > From: "H.J. Lu" <hjl.tools@gmail.com>
> > Date: Thu, 16 Jan 2020 12:46:51 -0800
> > Subject: [PATCH] x86: Don't declare __force_order in kaslr_64.c
> >
> > GCC 10 changed the default to -fno-common, which leads to
> >
> >   LD      arch/x86/boot/compressed/vmlinux
> > ld: arch/x86/boot/compressed/pgtable_64.o:(.bss+0x0): multiple definition of `__force_order'; arch/x86/boot/compressed/kaslr_64.o:(.bss+0x0): first defined here
> > make[2]: *** [arch/x86/boot/compressed/Makefile:119: arch/x86/boot/compressed/vmlinux] Error 1
> >
> > Since __force_order is already provided in pgtable_64.c, there is no
> > need to declare __force_order in kaslr_64.c.
> >
> > Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
> > Signed-off-by: Yu-cheng Yu <yu-cheng.yu@intel.com>
>
> What is Yu-cheng's SOB supposed to mean here?
>
> The only case where it would make sense is if he's sending this patch
> but he isn't. So what's up?
>

I wrote this patch as the part of the previous CET patch set Yu-cheng submitted.
Since this is a standalone patch, he asked me to send it separately.  I didn't
remove Yu-cheng's SOB when I submitted this patch.

-- 
H.J.

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: [PATCH] x86: Don't declare __force_order in kaslr_64.c
  2020-02-18 11:38         ` H.J. Lu
@ 2020-02-18 13:37           ` Borislav Petkov
  0 siblings, 0 replies; 10+ messages in thread
From: Borislav Petkov @ 2020-02-18 13:37 UTC (permalink / raw)
  To: H.J. Lu
  Cc: Andy Lutomirski, LKML, Thomas Gleixner, Ingo Molnar,
	H . Peter Anvin, the arch/x86 maintainers, Yu-cheng Yu

On Tue, Feb 18, 2020 at 03:38:54AM -0800, H.J. Lu wrote:
> I wrote this patch as the part of the previous CET patch set Yu-cheng submitted.
> Since this is a standalone patch, he asked me to send it separately.  I didn't
> remove Yu-cheng's SOB when I submitted this patch.

Ok, dropping it.

Thx.

-- 
Regards/Gruss,
    Boris.

https://people.kernel.org/tglx/notes-about-netiquette

^ permalink raw reply	[flat|nested] 10+ messages in thread

* [tip: x86/boot] x86/boot/compressed: Don't declare __force_order in kaslr_64.c
  2020-01-24 18:18 [PATCH] x86: Don't clare __force_order in kaslr_64.c H.J. Lu
  2020-01-24 18:24 ` Andy Lutomirski
@ 2020-02-18 15:07 ` tip-bot2 for H.J. Lu
  2020-02-19 16:32 ` [tip: x86/urgent] " tip-bot2 for H.J. Lu
  2 siblings, 0 replies; 10+ messages in thread
From: tip-bot2 for H.J. Lu @ 2020-02-18 15:07 UTC (permalink / raw)
  To: linux-tip-commits; +Cc: H.J. Lu, Borislav Petkov, x86, LKML

The following commit has been merged into the x86/boot branch of tip:

Commit-ID:     970b41399925e34fdf5783a53fe8cc73f04fec37
Gitweb:        https://git.kernel.org/tip/970b41399925e34fdf5783a53fe8cc73f04fec37
Author:        H.J. Lu <hjl.tools@gmail.com>
AuthorDate:    Thu, 16 Jan 2020 12:46:51 -08:00
Committer:     Borislav Petkov <bp@suse.de>
CommitterDate: Tue, 18 Feb 2020 14:40:53 +01:00

x86/boot/compressed: Don't declare __force_order in kaslr_64.c

GCC 10 changed the default to -fno-common, which leads to

    LD      arch/x86/boot/compressed/vmlinux
  ld: arch/x86/boot/compressed/pgtable_64.o:(.bss+0x0): multiple definition of `__force_order'; \
    arch/x86/boot/compressed/kaslr_64.o:(.bss+0x0): first defined here
  make[2]: *** [arch/x86/boot/compressed/Makefile:119: arch/x86/boot/compressed/vmlinux] Error 1

Since __force_order is already provided in pgtable_64.c, there is no
need to declare __force_order in kaslr_64.c.

Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
Signed-off-by: Borislav Petkov <bp@suse.de>
Link: https://lkml.kernel.org/r/20200124181811.4780-1-hjl.tools@gmail.com
---
 arch/x86/boot/compressed/kaslr_64.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/arch/x86/boot/compressed/kaslr_64.c b/arch/x86/boot/compressed/kaslr_64.c
index 748456c..9557c5a 100644
--- a/arch/x86/boot/compressed/kaslr_64.c
+++ b/arch/x86/boot/compressed/kaslr_64.c
@@ -29,9 +29,6 @@
 #define __PAGE_OFFSET __PAGE_OFFSET_BASE
 #include "../../mm/ident_map.c"
 
-/* Used by pgtable.h asm code to force instruction serialization. */
-unsigned long __force_order;
-
 /* Used to track our page table allocation area. */
 struct alloc_pgt_data {
 	unsigned char *pgt_buf;

^ permalink raw reply related	[flat|nested] 10+ messages in thread

* [tip: x86/urgent] x86/boot/compressed: Don't declare __force_order in kaslr_64.c
  2020-01-24 18:18 [PATCH] x86: Don't clare __force_order in kaslr_64.c H.J. Lu
  2020-01-24 18:24 ` Andy Lutomirski
  2020-02-18 15:07 ` [tip: x86/boot] x86/boot/compressed: Don't declare " tip-bot2 for H.J. Lu
@ 2020-02-19 16:32 ` tip-bot2 for H.J. Lu
  2 siblings, 0 replies; 10+ messages in thread
From: tip-bot2 for H.J. Lu @ 2020-02-19 16:32 UTC (permalink / raw)
  To: linux-tip-commits; +Cc: H.J. Lu, Borislav Petkov, x86, LKML

The following commit has been merged into the x86/urgent branch of tip:

Commit-ID:     df6d4f9db79c1a5d6f48b59db35ccd1e9ff9adfc
Gitweb:        https://git.kernel.org/tip/df6d4f9db79c1a5d6f48b59db35ccd1e9ff9adfc
Author:        H.J. Lu <hjl.tools@gmail.com>
AuthorDate:    Thu, 16 Jan 2020 12:46:51 -08:00
Committer:     Borislav Petkov <bp@suse.de>
CommitterDate: Wed, 19 Feb 2020 17:23:59 +01:00

x86/boot/compressed: Don't declare __force_order in kaslr_64.c

GCC 10 changed the default to -fno-common, which leads to

    LD      arch/x86/boot/compressed/vmlinux
  ld: arch/x86/boot/compressed/pgtable_64.o:(.bss+0x0): multiple definition of `__force_order'; \
    arch/x86/boot/compressed/kaslr_64.o:(.bss+0x0): first defined here
  make[2]: *** [arch/x86/boot/compressed/Makefile:119: arch/x86/boot/compressed/vmlinux] Error 1

Since __force_order is already provided in pgtable_64.c, there is no
need to declare __force_order in kaslr_64.c.

Signed-off-by: H.J. Lu <hjl.tools@gmail.com>
Signed-off-by: Borislav Petkov <bp@suse.de>
Link: https://lkml.kernel.org/r/20200124181811.4780-1-hjl.tools@gmail.com
---
 arch/x86/boot/compressed/kaslr_64.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/arch/x86/boot/compressed/kaslr_64.c b/arch/x86/boot/compressed/kaslr_64.c
index 748456c..9557c5a 100644
--- a/arch/x86/boot/compressed/kaslr_64.c
+++ b/arch/x86/boot/compressed/kaslr_64.c
@@ -29,9 +29,6 @@
 #define __PAGE_OFFSET __PAGE_OFFSET_BASE
 #include "../../mm/ident_map.c"
 
-/* Used by pgtable.h asm code to force instruction serialization. */
-unsigned long __force_order;
-
 /* Used to track our page table allocation area. */
 struct alloc_pgt_data {
 	unsigned char *pgt_buf;

^ permalink raw reply related	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2020-02-19 16:32 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-01-24 18:18 [PATCH] x86: Don't clare __force_order in kaslr_64.c H.J. Lu
2020-01-24 18:24 ` Andy Lutomirski
2020-01-24 18:39   ` H.J. Lu
2020-01-24 18:44     ` [PATCH] x86: Don't declare " H.J. Lu
2020-02-18 10:45       ` Borislav Petkov
2020-02-18 11:38         ` H.J. Lu
2020-02-18 13:37           ` Borislav Petkov
2020-02-17 22:27   ` [PATCH] x86: Don't clare " Borislav Petkov
2020-02-18 15:07 ` [tip: x86/boot] x86/boot/compressed: Don't declare " tip-bot2 for H.J. Lu
2020-02-19 16:32 ` [tip: x86/urgent] " tip-bot2 for H.J. Lu

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.