lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Tue, 27 Jan 2009 05:03:29 +0000
From:	James Bottomley <James.Bottomley@...senPartnership.com>
To:	Tejun Heo <htejun@...il.com>
Cc:	Ingo Molnar <mingo@...e.hu>, Brian Gerst <brgerst@...il.com>,
	linux-kernel@...r.kernel.org
Subject: Re: [PATCH] x86-32: Fix __per_cpu_load relocation

On Tue, 2009-01-27 at 13:03 +0900, Tejun Heo wrote:
> (cc'ing James Bottomley.)
> 
> Tejun Heo wrote:
> > Ingo Molnar wrote:
> >> * Brian Gerst <brgerst@...il.com> wrote:
> >>
> >>> This patch fixes this error:
> >>> WARNING: Absolute relocations present
> >>> Offset     Info     Type     Sym.Value Sym.Name
> >>> c0a4e07d 00e78001   R_386_32 c0ab0000  __per_cpu_load
> >>>
> >>> Now, __per_cpu_load is a section-relative symbol:
> >>> c0aa4000 D __per_cpu_load
> >>> c0aa4000 A __per_cpu_load_abs
> >>>
> >>> Signed-off-by: Brian Gerst <brgerst@...il.com>
> >> Applied to tip/core/percpu, thanks Brian!
> > 
> > Heh.. Thanks.  Sorry about lack of response.  It's lunar new year's
> > day here and I'm off till tomorrow.  I'll start reviewing and
> > integrating posted patches from tomorrow.
> 
> Well, I just had time to do it.  All the patches look fine to me.
> Very nice cleanup.  The git tree is at the following URL.
> 
>   http://git.kernel.org/?p=linux/kernel/git/tj/misc.git;a=shortlog;h=tj-percpu
>   git://git.kernel.org/pub/scm/linux/kernel/git/tj/misc.git tj-percpu
> 
> The head commit is 2697fbd5faf19c84c17441b1752bdcbdcfd1248c.  James,
> this patchset converts voyager to share generic x86 percpu code.  Can
> you please review whether the change looks good for voyager?

Erm ... it's a bit difficult to tell from the tree what is specific to
voyager and what isn't.

I ran across a simple build failure:

  LD      .tmp_vmlinux1
arch/x86/kernel/built-in.o: In function `setup_per_cpu_areas':
/home/jejb/git/BUILD-voyager/arch/x86/kernel/setup_percpu.c:128: undefined reference to `x86_cpu_to_apicid_early_ptr'
/home/jejb/git/BUILD-voyager/arch/x86/kernel/setup_percpu.c:129: undefined reference to `x86_bios_cpu_apicid_early_ptr'
make: *** [.tmp_vmlinux1] Error 1

which is easily fixed below.

Not sure about the GDT changes, but will boot test them tomorrow.

James

---

diff --git a/arch/x86/kernel/setup_percpu.c b/arch/x86/kernel/setup_percpu.c
index 4caa78d..42b3b35 100644
--- a/arch/x86/kernel/setup_percpu.c
+++ b/arch/x86/kernel/setup_percpu.c
@@ -125,8 +125,10 @@ void __init setup_per_cpu_areas(void)
 	}
 
 	/* indicate the early static arrays will soon be gone */
+#ifdef X86_LOCAL_APIC
 	early_per_cpu_ptr(x86_cpu_to_apicid) = NULL;
 	early_per_cpu_ptr(x86_bios_cpu_apicid) = NULL;
+#endif
 #if defined(CONFIG_X86_64) && defined(CONFIG_NUMA)
 	early_per_cpu_ptr(x86_cpu_to_node_map) = NULL;
 #endif


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ