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]
Message-ID: <20080325161957.GA1884@sgi.com>
Date:	Tue, 25 Mar 2008 11:19:57 -0500
From:	Jack Steiner <steiner@....com>
To:	Andi Kleen <andi@...stfloor.org>
Cc:	mingo@...e.hu, tglx@...utronix.de, linux-mm@...ck.org,
	linux-kernel@...r.kernel.org
Subject: Re: [RFC 6/8] x86_64: Define the macros and tables for the basic UV infrastructure.

On Tue, Mar 25, 2008 at 11:11:11AM +0100, Andi Kleen wrote:
> Jack Steiner <steiner@....com> writes:
> 
> > Define the macros and tables for the basic UV infrastructure.
> > 
> > 
> > (NOTE: a work-in-progress. Pieces missing....)
> 
> Does the kernel really need all this information? You just want
> to address the UV-APIC right? I suspect you could use a much stripped
> down file.

Most of the macros will never be used by generic kernel code, but we
have UV-specific drivers that will use the information (GRU, XPC and
XPMEM drivers). All of these are getting very close to being ready to
be pushed upstream.

> 
> > +DECLARE_PER_CPU(struct uv_hub_info_s, __uv_hub_info);
> > +#define uv_hub_info 		(&__get_cpu_var(__uv_hub_info))
> > +#define uv_cpu_hub_info(cpu)	(&per_cpu(__uv_hub_info, cpu))
> > +
> > +/* This header file is used in BIOS code that runs in physical mode */
> 
> Not sure what physical mode is.

Me either :-)    I fixed the comment
	"... BIOS code that runs with virtual == physical"

However, then I read the rest of your comments & will take the approach
of defining __va() in the BIOS code. That eliminates the need for
the macro.

> 
> > +#ifdef __BIOS__
> > +#define UV_ADDR(x)		((unsigned long *)(x))
> > +#else
> > +#define UV_ADDR(x)		((unsigned long *)__va(x))
> > +#endif
> 
> But it it would be cleaner if your BIOS just supplied a suitable __va()
> and then you remove these macros.
> 
> -Andi

--- jack
--
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