<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/arch/i386/kernel, branch linux-2.6.13.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.13.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.13.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2005-08-24T02:52:37Z</updated>
<entry>
<title>[PATCH] i386: fix incorrect FP signal code</title>
<updated>2005-08-24T02:52:37Z</updated>
<author>
<name>Chuck Ebbert</name>
</author>
<published>2005-08-24T01:36:40Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=b1daec3089a129a67169d3ae975985a7480fe17f'/>
<id>urn:sha1:b1daec3089a129a67169d3ae975985a7480fe17f</id>
<content type='text'>
i386 floating-point exception handling has a bug that can cause error
code 0 to be sent instead of the proper code during signal delivery.

This is caused by unconditionally checking the IS and c1 bits from the
FPU status word when they are not always relevant.  The IS bit tells
whether an exception is a stack fault and is only relevant when the
exception is IE (invalid operation.) The C1 bit determines whether a
stack fault is overflow or underflow and is only relevant when IS and IE
are set.

Signed-off-by: Chuck Ebbert &lt;76306.1226@compuserve.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] Mobil Pentium 4 HT and the NMI</title>
<updated>2005-08-20T01:44:56Z</updated>
<author>
<name>Steven Rostedt</name>
</author>
<published>2005-08-20T00:57:46Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=cd3716ab40c6049479d29a74b29107fd7e0e1153'/>
<id>urn:sha1:cd3716ab40c6049479d29a74b29107fd7e0e1153</id>
<content type='text'>
I'm trying to get the nmi working with my laptop (IBM ThinkPad G41) and after
debugging it a while, I found that the nmi code doesn't want to set it up for
this particular CPU.

Here I have:

$ cat /proc/cpuinfo
processor       : 0
vendor_id       : GenuineIntel
cpu family      : 15
model           : 4
model name      : Mobile Intel(R) Pentium(R) 4 CPU 3.33GHz
stepping        : 1
cpu MHz         : 3320.084
cache size      : 1024 KB
physical id     : 0
siblings        : 2
core id         : 0
cpu cores       : 1
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 3
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge
mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe pni
monitor ds_cpl est tm2 cid xtpr
bogomips        : 6642.39

processor       : 1
vendor_id       : GenuineIntel
cpu family      : 15
model           : 4
model name      : Mobile Intel(R) Pentium(R) 4 CPU 3.33GHz
stepping        : 1
cpu MHz         : 3320.084
cache size      : 1024 KB
physical id     : 0
siblings        : 2
core id         : 0
cpu cores       : 1
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 3
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge
mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe pni
monitor ds_cpl est tm2 cid xtpr
bogomips        : 6637.46

And the following code shows:

$ cat linux-2.6.13-rc6/arch/i386/kernel/nmi.c

[...]

void setup_apic_nmi_watchdog (void)
{
        switch (boot_cpu_data.x86_vendor) {
        case X86_VENDOR_AMD:
                if (boot_cpu_data.x86 != 6 &amp;&amp; boot_cpu_data.x86 != 15)
                        return;
                setup_k7_watchdog();
                break;
        case X86_VENDOR_INTEL:
                 switch (boot_cpu_data.x86) {
                case 6:
                        if (boot_cpu_data.x86_model &gt; 0xd)
                                return;

                        setup_p6_watchdog();
                        break;
                case 15:
                        if (boot_cpu_data.x86_model &gt; 0x3)
                                return;

Here I get boot_cpu_data.x86_model == 0x4.  So I decided to change it and
reboot.  I now seem to have a working NMI.  So, unless there's something know
to be bad about this processor and the NMI.  I'm submitting the following
patch.

Signed-off-by: Steven Rostedt &lt;rostedt@goodmis.org&gt;
Acked-by: Zwane Mwaikambo &lt;zwane@arm.linux.org.uk&gt;
Acked-by: Mikael Pettersson &lt;mikpe@csd.uu.se&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] x86: Remove obsolete get_cpu_vendor call</title>
<updated>2005-08-18T19:53:59Z</updated>
<author>
<name>Andi Kleen</name>
</author>
<published>2005-08-18T18:24:27Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6be382ea0c767a81be0e7980400b9b18167b3261'/>
<id>urn:sha1:6be382ea0c767a81be0e7980400b9b18167b3261</id>
<content type='text'>
Since early CPU identify is in this information is already available

Signed-off-by: Andi Kleen &lt;ak@suse.de&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] transmeta: CONFIG_PROC_FS=n build fix</title>
<updated>2005-08-02T04:38:00Z</updated>
<author>
<name>Andrew Morton</name>
</author>
<published>2005-08-02T04:11:44Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=39bbb07d7c0cf3e374831d1474e2246d9cabd931'/>
<id>urn:sha1:39bbb07d7c0cf3e374831d1474e2246d9cabd931</id>
<content type='text'>
Fix bug found by Grant Coady &lt;lkml@dodo.com.au&gt;'s autobuild setup.

Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] disable addres space randomization default on transmeta CPUs</title>
<updated>2005-08-02T02:13:59Z</updated>
<author>
<name>Eric Lammerts</name>
</author>
<published>2005-08-01T05:34:42Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=cdf32eaa4e601b15146e21b6470de00f149ce37f'/>
<id>urn:sha1:cdf32eaa4e601b15146e21b6470de00f149ce37f</id>
<content type='text'>
We know that the randomisation slows down some workloads on Transmeta CPUs
by quite large amounts.  We think it's because the CPU needs to recode the
same x86 instructions when they pop up at a different virtual address after
a fork+exec.

So disable randomization by default on those CPUs.

Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] remove sys_set_zone_reclaim()</title>
<updated>2005-08-01T17:03:56Z</updated>
<author>
<name>Ingo Molnar</name>
</author>
<published>2005-08-01T11:39:13Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=6cb54819d7b1867053e2dfd8c0ca3a8dc65a7eff'/>
<id>urn:sha1:6cb54819d7b1867053e2dfd8c0ca3a8dc65a7eff</id>
<content type='text'>
This removes sys_set_zone_reclaim() for now.  While i'm sure Martin is
trying to solve a real problem, we must not hard-code an incomplete and
insufficient approach into a syscall, because syscalls are pretty much
for eternity.  I am quite strongly convinced that this syscall must not
hit v2.6.13 in its current form.

Firstly, the syscall lacks basic syscall design: e.g. it allows the
global setting of VM policy for unprivileged users. (!) [ Imagine an
Oracle installation and a SAP installation on the same NUMA box fighting
over the 'optimal' setting for this flag. What will they do? Will they
try to set the flag to their own preferred value every second or so? ]

Secondly, it was added based on a single datapoint from Martin:

 http://marc.theaimsgroup.com/?l=linux-mm&amp;m=111763597218177&amp;w=2

where Martin characterizes the numbers the following way:

 ' Run-to-run variability for "make -j" is huge, so these numbers aren't
   terribly useful except to see that with reclaim the benchmark still
   finishes in a reasonable amount of time. '

in other words: the fundamental problem has likely not been solved, only
a tendential move into the right direction has been observed, and a
handful of numbers were picked out of a set of hugely variable results,
without showing the variability data. How much variance is there
run-to-run?

I'd really suggest to first walk the walk and see what's needed to get
stable &amp; predictable kernel compilation numbers on that NUMA box, before
adding random syscalls to tune a particular aspect of the VM ... which
approach might not even matter once the whole picture has been analyzed
and understood!

The third, most important point is that the syscall exposes VM tuning
internals in a completely unstructured way. What sense does it make to
have a _GLOBAL_ per-node setting for 'should we go to another node for
reclaim'? If then it might make sense to do this per-app, via numalib or
so.

The change is minimalistic in that it doesnt remove the syscall and the
underlying infrastructure changes, only the user-visible changes.  We
could perhaps add a CAP_SYS_ADMIN-only sysctl for this hack, a'ka
/proc/sys/vm/swappiness, but even that looks quite counterproductive
when the generic approach is that we are trying to reduce the number of
external factors in the VM balance picture.

Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>merge 2.6.13-rc4 with ACPI's to-linus tree</title>
<updated>2005-07-30T05:55:32Z</updated>
<author>
<name>Len Brown</name>
</author>
<published>2005-07-30T05:55:32Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=adbedd34244e2b054557002817f979a9b004a405'/>
<id>urn:sha1:adbedd34244e2b054557002817f979a9b004a405</id>
<content type='text'>
</content>
</entry>
<entry>
<title>/home/lenb/src/to-linus branch 'acpi-2.6.12'</title>
<updated>2005-07-30T03:31:17Z</updated>
<author>
<name>Len Brown</name>
</author>
<published>2005-07-30T03:31:17Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d6ac1a7910d22626bc77e73db091e00b810715f4'/>
<id>urn:sha1:d6ac1a7910d22626bc77e73db091e00b810715f4</id>
<content type='text'>
</content>
</entry>
<entry>
<title>[ACPI] Always set P-state on initialization</title>
<updated>2005-07-29T22:29:47Z</updated>
<author>
<name>Dominik Brodowski</name>
</author>
<published>2005-05-18T17:49:00Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4b31e77455b868b43e665edceb111c9a330c8e0f'/>
<id>urn:sha1:4b31e77455b868b43e665edceb111c9a330c8e0f</id>
<content type='text'>
Otherwise a platform that supports ACPI based cpufreq
and boots up at lowest possible speed could stay there
forever.  This because the governor may request max speed,
but the code doesn't update if there is no change in
speed, and it assumed the initial state of max speed.

http://bugzilla.kernel.org/show_bug.cgi?id=4634

Signed-off-by: Dominik Brodowski &lt;linux@dominikbrodowski.net&gt;
Signed-off-by: Venkatesh Pallipadi &lt;venkatesh.pallipadi@intel.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
</content>
</entry>
<entry>
<title>[PATCH] x86: avoid wasting IRQs patch update</title>
<updated>2005-07-29T22:01:13Z</updated>
<author>
<name>Natalie.Protasevich@unisys.com</name>
</author>
<published>2005-07-29T21:03:32Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e1afc3f522ed088405fc8932110d338330db82bb'/>
<id>urn:sha1:e1afc3f522ed088405fc8932110d338330db82bb</id>
<content type='text'>
The patch addresses a problem with ACPI SCI interrupt entry, which gets
re-used, and the IRQ is assigned to another unrelated device.  The patch
corrects the code such that SCI IRQ is skipped and duplicate entry is
avoided.  Second issue came up with VIA chipset, the problem was caused by
original patch assigning IRQs starting 16 and up.  The VIA chipset uses
4-bit IRQ register for internal interrupt routing, and therefore cannot
handle IRQ numbers assigned to its devices.  The patch corrects this
problem by allowing PCI IRQs below 16.

Signed-off by: Natalie Protasevich &lt;Natalie.Protasevich@unisys.com&gt;

Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
</feed>
