x86, mtrr: Use explicit sizing and padding for the 64-bit ioctls
authorH. Peter Anvin <hpa@linux.intel.com>
Mon, 27 Feb 2012 23:15:25 +0000 (15:15 -0800)
committerH. Peter Anvin <hpa@zytor.com>
Thu, 1 Mar 2012 20:48:52 +0000 (12:48 -0800)
commitb263b31e8ad65cdbfa5a7f739460f350554a2dc1
tree90f7e9c56deec3228d1811e7a6a46a69317860c3
parent8bd69c2d5f9c0b5237c632d1b21dbfe4fd16ba6b
x86, mtrr: Use explicit sizing and padding for the 64-bit ioctls

Specify the data structures for the 64-bit ioctls with explicit sizing
and padding so that the x32 kernel will correctly use the 64-bit forms
of these ioctls.  Note that these ioctls are bogus in both forms on
both 32 and 64 bits; even on 64 bits the maximum MTRR size is only 44
bits long.

Note that nothing really is supposed to use these ioctls and that the
preferred interface is text strings on /proc/mtrr, or better yet,
nothing at all (use /sys/bus/pci/devices/*/resource*_wc for write
combining; that uses PAT not MTRRs.)

Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Cc: H. J. Lu <hjl.tools@gmail.com>
Tested-by: Nitin A. Kamble <nitin.a.kamble@intel.com>
Link: http://lkml.kernel.org/n/tip-vwvnlu3hjmtkwvij4qxtm90l@git.kernel.org
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
arch/x86/include/asm/mtrr.h
arch/x86/kernel/cpu/mtrr/if.c