<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/arch/x86/kernel/cpu/mtrr, branch linux-3.7.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.7.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-3.7.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2012-07-10T08:38:15Z</updated>
<entry>
<title>x86/mm/mtrr: Slightly simplify print_mtrr_state()</title>
<updated>2012-07-10T08:38:15Z</updated>
<author>
<name>Jan Beulich</name>
</author>
<published>2012-07-06T14:20:35Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a7101d152665817bf7cafc47e7f5dcb1f54664fe'/>
<id>urn:sha1:a7101d152665817bf7cafc47e7f5dcb1f54664fe</id>
<content type='text'>
high_width can be easily calculated in a single expression when
making use of __ffs64().

Signed-off-by: Jan Beulich &lt;jbeulich@suse.com&gt;
Cc: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Cc: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Cc: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
Cc: Yinghai Lu &lt;yinghai@kernel.org&gt;
Link: http://lkml.kernel.org/r/4FF71053020000780008E1B5@nat28.tlf.novell.com
Signed-off-by: Ingo Molnar &lt;mingo@kernel.org&gt;
</content>
</entry>
<entry>
<title>x86/mm/mtrr: Fix alignment determination in range_to_mtrr()</title>
<updated>2012-07-10T08:38:14Z</updated>
<author>
<name>Jan Beulich</name>
</author>
<published>2012-07-06T14:07:48Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1ba9a294141b106b7247649a5c3372d8284eca80'/>
<id>urn:sha1:1ba9a294141b106b7247649a5c3372d8284eca80</id>
<content type='text'>
With the variable operated on being of "unsigned long" type,
neither ffs() nor fls() are suitable to use on them, as those
truncate their arguments to 32 bits. Using __ffs() and __fls()
respectively at once eliminates the need to subtract 1 from their
results.

Additionally, with the alignment value subsequently used as a
shift count, it must be enforced to be less than BITS_PER_LONG
(and on 64-bit there's no need for it to be any smaller).

Signed-off-by: Jan Beulich &lt;jbeulich@suse.com&gt;
Cc: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Cc: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Cc: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
Cc: Yinghai Lu &lt;yinghai@kernel.org&gt;
Link: http://lkml.kernel.org/r/4FF70D54020000780008E179@nat28.tlf.novell.com
Signed-off-by: Ingo Molnar &lt;mingo@kernel.org&gt;
</content>
</entry>
<entry>
<title>x86, mtrr: Fix a type overflow in range_to_mtrr func</title>
<updated>2012-05-30T21:37:00Z</updated>
<author>
<name>zhenzhong.duan</name>
</author>
<published>2012-05-30T04:52:15Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=2da06af8106f8f35318bb084baf8448797ef058a'/>
<id>urn:sha1:2da06af8106f8f35318bb084baf8448797ef058a</id>
<content type='text'>
When boot on sun G5+ with 4T mem, see an overflow in mtrr cleanup as below.

*BAD*gran_size: 2G      chunk_size: 2G  num_reg: 10     lose cover RAM:
-18014398505283592M

This is because 1&lt;&lt;31 sign extended. Use an unsigned long constant to
fix it.  Useful for mem larger than or equal to 4T.

-v2: Use 64bit constant instead of explicit type conversion as suggested
by Yinghai. Description updated too.

Signed-off-by: Zhenzhong Duan &lt;zhenzhong.duan@oracle.com&gt;
Link: http://lkml.kernel.org/r/4FC5A77F.6060505@oracle.com
Signed-off-by: H. Peter Anvin &lt;hpa@zytor.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'x86-x32-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip</title>
<updated>2012-03-30T01:12:23Z</updated>
<author>
<name>Linus Torvalds</name>
</author>
<published>2012-03-30T01:12:23Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a591afc01d9e48affbacb365558a31e53c85af45'/>
<id>urn:sha1:a591afc01d9e48affbacb365558a31e53c85af45</id>
<content type='text'>
Pull x32 support for x86-64 from Ingo Molnar:
 "This tree introduces the X32 binary format and execution mode for x86:
  32-bit data space binaries using 64-bit instructions and 64-bit kernel
  syscalls.

  This allows applications whose working set fits into a 32 bits address
  space to make use of 64-bit instructions while using a 32-bit address
  space with shorter pointers, more compressed data structures, etc."

Fix up trivial context conflicts in arch/x86/{Kconfig,vdso/vma.c}

* 'x86-x32-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (71 commits)
  x32: Fix alignment fail in struct compat_siginfo
  x32: Fix stupid ia32/x32 inversion in the siginfo format
  x32: Add ptrace for x32
  x32: Switch to a 64-bit clock_t
  x32: Provide separate is_ia32_task() and is_x32_task() predicates
  x86, mtrr: Use explicit sizing and padding for the 64-bit ioctls
  x86/x32: Fix the binutils auto-detect
  x32: Warn and disable rather than error if binutils too old
  x32: Only clear TIF_X32 flag once
  x32: Make sure TS_COMPAT is cleared for x32 tasks
  fs: Remove missed -&gt;fds_bits from cessation use of fd_set structs internally
  fs: Fix close_on_exec pointer in alloc_fdtable
  x32: Drop non-__vdso weak symbols from the x32 VDSO
  x32: Fix coding style violations in the x32 VDSO code
  x32: Add x32 VDSO support
  x32: Allow x32 to be configured
  x32: If configured, add x32 system calls to system call tables
  x32: Handle process creation
  x32: Signal-related system calls
  x86: Add #ifdef CONFIG_COMPAT to &lt;asm/sys_ia32.h&gt;
  ...
</content>
</entry>
<entry>
<title>Disintegrate asm/system.h for X86</title>
<updated>2012-03-28T17:11:12Z</updated>
<author>
<name>David Howells</name>
</author>
<published>2012-03-28T17:11:12Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f05e798ad4c09255f590f5b2c00a7ca6c172f983'/>
<id>urn:sha1:f05e798ad4c09255f590f5b2c00a7ca6c172f983</id>
<content type='text'>
Disintegrate asm/system.h for X86.

Signed-off-by: David Howells &lt;dhowells@redhat.com&gt;
Acked-by: H. Peter Anvin &lt;hpa@zytor.com&gt;
cc: x86@kernel.org
</content>
</entry>
<entry>
<title>x86, mtrr: Use explicit sizing and padding for the 64-bit ioctls</title>
<updated>2012-03-01T20:48:52Z</updated>
<author>
<name>H. Peter Anvin</name>
</author>
<published>2012-02-27T23:15:25Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b263b31e8ad65cdbfa5a7f739460f350554a2dc1'/>
<id>urn:sha1:b263b31e8ad65cdbfa5a7f739460f350554a2dc1</id>
<content type='text'>
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 &lt;hpa@linux.intel.com&gt;
Cc: H. J. Lu &lt;hjl.tools@gmail.com&gt;
Tested-by: Nitin A. Kamble &lt;nitin.a.kamble@intel.com&gt;
Link: http://lkml.kernel.org/n/tip-vwvnlu3hjmtkwvij4qxtm90l@git.kernel.org
Signed-off-by: H. Peter Anvin &lt;hpa@zytor.com&gt;
</content>
</entry>
<entry>
<title>x86/mtrr: Resolve inconsistency with Intel processor manual</title>
<updated>2011-12-05T14:06:15Z</updated>
<author>
<name>Ajaykumar Hotchandani</name>
</author>
<published>2011-11-11T13:01:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=8dbf4a30033ff61091015f0076e872b5c8f717cc'/>
<id>urn:sha1:8dbf4a30033ff61091015f0076e872b5c8f717cc</id>
<content type='text'>
Following is from Notes of section 11.5.3 of Intel processor
manual available at:

  http://www.intel.com/Assets/PDF/manual/325384.pdf

For the Pentium 4 and Intel Xeon processors, after the sequence of
steps given above has been executed, the cache lines containing the
code between the end of the WBINVD instruction and before the
MTRRS have actually been disabled may be retained in the cache
hierarchy. Here, to remove code from the cache completely, a
second WBINVD instruction must be executed after the MTRRs have
been disabled.

This patch provides resolution for that.

Ideally, I will like to make changes only for Pentium 4 and Xeon
processors. But, I am not finding easier way to do it.
And, extra wbinvd() instruction does not hurt much for other
processors.

Signed-off-by: Ajaykumar Hotchandani &lt;ajaykumar.hotchandani@oracle.com&gt;
Cc: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Cc: Arjan van de Ven &lt;arjan@linux.intel.com&gt;
Cc: Lucas De Marchi &lt;lucas.demarchi@profusion.mobi&gt;
Link: http://lkml.kernel.org/r/4EBD1CC5.3030008@oracle.com
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
<entry>
<title>Add TAINT_FIRMWARE_WORKAROUND on MTRR fixup</title>
<updated>2011-12-05T12:48:50Z</updated>
<author>
<name>Prarit Bhargava</name>
</author>
<published>2011-10-18T17:24:10Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=644ddf588f5dba34df483a6ea8abe639cc102289'/>
<id>urn:sha1:644ddf588f5dba34df483a6ea8abe639cc102289</id>
<content type='text'>
TAINT_FIRMWARE_WORKAROUND should be set when an MTRR fixup
is done.

Signed-off-by: Prarit Bhargava &lt;prarit@redhat.com&gt;
Acked-by: David Rientjes &lt;rientjes@google.com&gt;
Link: http://lkml.kernel.org/r/1318958650-12447-1-git-send-email-prarit@redhat.com
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
<entry>
<title>mtrr: fix UP breakage caused during switch to stop_machine</title>
<updated>2011-08-25T18:02:29Z</updated>
<author>
<name>Tejun Heo</name>
</author>
<published>2011-08-25T17:46:56Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=cbbfa38fcb95930babc5233cf6927ec430f38abc'/>
<id>urn:sha1:cbbfa38fcb95930babc5233cf6927ec430f38abc</id>
<content type='text'>
While removing custom rendezvous code and switching to stop_machine,
commit 192d8857427d ("x86, mtrr: use stop_machine APIs for doing MTRR
rendezvous") completely dropped mtrr setting code on !CONFIG_SMP
breaking MTRR settting on UP.

Fix it by removing the incorrect CONFIG_SMP.

Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt;
Reported-by: Anders Eriksson &lt;aeriksson@fastmail.fm&gt;
Tested-and-acked-by: Suresh Siddha &lt;suresh.b.siddha@intel.com&gt;
Acked-by: H. Peter Anvin &lt;hpa@zytor.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>x86, mtrr: Use pci_dev-&gt;revision</title>
<updated>2011-07-02T09:10:07Z</updated>
<author>
<name>Sergei Shtylyov</name>
</author>
<published>2011-07-01T18:42:08Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=50c31e4a2497ea17747b587e8f96b278f07f5483'/>
<id>urn:sha1:50c31e4a2497ea17747b587e8f96b278f07f5483</id>
<content type='text'>
This code uses PCI_CLASS_REVISION instead of PCI_REVISION_ID, so
it wasn't converted by commit 44c10138fd4 ("PCI: Change all
drivers to use pci_device-&gt;revision") before being moved to
arch/x86/...

Do it now at last -- and save one level of indentation...

Signed-off-by: Sergei Shtylyov &lt;sshtylyov@ru.mvista.com&gt;
Cc: Suresh Siddha &lt;suresh.b.siddha@intel.com&gt;
Link: http://lkml.kernel.org/r/201107012242.08347.sshtylyov@ru.mvista.com
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
</feed>
