<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/linux.git/drivers/pci, branch linux-2.6.22.y</title>
<subtitle>Linux kernel stable tree (mirror)</subtitle>
<id>https://git.radix-linux.su/kernel/linux.git/atom?h=linux-2.6.22.y</id>
<link rel='self' href='https://git.radix-linux.su/kernel/linux.git/atom?h=linux-2.6.22.y'/>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/'/>
<updated>2008-02-25T23:59:18+00:00</updated>
<entry>
<title>PCI: Fix fakephp deadlock</title>
<updated>2008-02-25T23:59:18+00:00</updated>
<author>
<name>Ian Abbott</name>
<email>abbotti@mev.co.uk</email>
</author>
<published>2008-02-04T13:56:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=e7df3e44961ced101d56895acd896bf9d6382275'/>
<id>urn:sha1:e7df3e44961ced101d56895acd896bf9d6382275</id>
<content type='text'>
This patch works around a problem in the fakephp driver when a process
writing "0" to a "power" sysfs file to fake removal of a PCI device ends
up deadlocking itself in the sysfs code.

The patch is functionally identical to the one in Linus' tree post 2.6.24:
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=5c796ae7a7ebe56967ed9b9963d7c16d733635ff

I have tested it on a 2.6.22 kernel.

Signed-off-by: Ian Abbott &lt;abbotti@mev.co.uk&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>ACPI: apply quirk_ich6_lpc_acpi to more ICH8 and ICH9</title>
<updated>2008-02-06T19:43:46+00:00</updated>
<author>
<name>Zhao Yakui</name>
<email>yakui.zhao@intel.com</email>
</author>
<published>2008-01-14T07:27:45+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=0abe2d30fd090eba86541654080fee7686cf72fc'/>
<id>urn:sha1:0abe2d30fd090eba86541654080fee7686cf72fc</id>
<content type='text'>
patch d1ec7298fcefd7e4d1ca612da402ce9e5d5e2c13 in mainline.

It is important that these resources be reserved
to avoid conflicts with well known ACPI registers.

Signed-off-by: Zhao Yakui &lt;yakui.zhao@intel.com&gt;
Signed-off-by: Len Brown &lt;len.brown@intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>PCI: disable MSI on RX790</title>
<updated>2007-08-31T06:01:52+00:00</updated>
<author>
<name>Tejun Heo</name>
<email>htejun@gmail.com</email>
</author>
<published>2007-08-22T22:12:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=cd7f435fa35f80ba07c867d7569a9bb3606e1692'/>
<id>urn:sha1:cd7f435fa35f80ba07c867d7569a9bb3606e1692</id>
<content type='text'>
RX790 can't do MSI like its predecessors.  Disable MSI on RX790.

Signed-off-by: Tejun Heo &lt;htejun@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>PCI: disable MSI on RD580</title>
<updated>2007-08-31T06:01:52+00:00</updated>
<author>
<name>Tejun Heo</name>
<email>htejun@gmail.com</email>
</author>
<published>2007-08-22T22:12:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=41ef7dce0273066f384374cfc962c23f2d918d84'/>
<id>urn:sha1:41ef7dce0273066f384374cfc962c23f2d918d84</id>
<content type='text'>
RD580 can't do MSI like its predecessors.  Disable MSI on RD580.

Signed-off-by: Tejun Heo &lt;teheo@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>PCI: disable MSI on RS690</title>
<updated>2007-08-31T06:01:52+00:00</updated>
<author>
<name>Tejun Heo</name>
<email>htejun@gmail.com</email>
</author>
<published>2007-08-22T22:12:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=1674e24cbb06e511b3d4c37eb7c275d6e268bfc8'/>
<id>urn:sha1:1674e24cbb06e511b3d4c37eb7c275d6e268bfc8</id>
<content type='text'>
RS690 can't do MSI like its predecessors.  Disable MSI on RS690.

Signed-off-by: Tejun Heo &lt;htejun@gmail.com&gt;
Cc: Henry Su &lt;henry.su@amd.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>PCI: lets kill the 'PCI hidden behind bridge' message</title>
<updated>2007-08-31T06:01:52+00:00</updated>
<author>
<name>Bernhard Kaindl</name>
<email>bk@suse.de</email>
</author>
<published>2007-08-22T22:12:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=2124e37772002da46addd4ed6d13fcdec9717541'/>
<id>urn:sha1:2124e37772002da46addd4ed6d13fcdec9717541</id>
<content type='text'>
Adrian Bunk wrote:
&gt; Alois NeÅ¡por wrote
&gt;&gt; PCI: Bus #0b (-#0e) is hidden behind transparent bridge #0a (-#0b) (try 'pci=assign-busses')
&gt;&gt; Please report the result to linux-kernel to fix this permanently"
&gt;&gt;
&gt;&gt; dmesg:
&gt;&gt; "Yenta: Raising subordinate bus# of parent bus (#0a) from #0b to #0e"
&gt;&gt; without pci=assign-busses and nothing with pci=assign-busses.
&gt;
&gt; Bernhard?

Ok, lets kill the message. As Alois NeÅ¡por also saw, that's fixed up by Yenta,
so PCI does not have to warn about it. PCI could still warn about it if
is_cardbus is 0 in that instance of pci_scan_bridge(), but so far I have
not seen a report where this would have been the case so I think we can
spare the kernel of that check (removes ~300 lines of asm) unless debugging
is done.

History: The whole check was added in the days before we had the fixup
for this in Yenta and pci=assign-busses was the only way to get CardBus
cards detected on many (not all) of the machines which give this warning.

In theory, there could be cases when this warning would be triggered and
it's not cardbus, then the warning should still apply, but I think this
should only be the case when working on a completely broken PCI setup,
but one may have already enabled the debug code in drivers/pci and the
patched check would then trigger.

I do not sign this off yet because it's completely untested so far, but
everyone is free to test it (with the #ifdef DEBUG replaced by #if 1 and
pr_debug( changed to printk(.

We may also dump the whole check (remove everything within the #ifdef from
the source) if that's perferred.

On Alois NeÅ¡por's machine this would then (only when debugging) this message:

"PCI: Bus #0b (-#0e) is partially hidden behind transparent bridge #0a (-#0b)"

"partially" should be in the message on his machine because #0b of #0b-#0e
is reachable behind #0a-#0b, but not #0c-#0e.

But that differentiation is now moot anyway because the fixup in Yenta takes
care of it as far as I could see so far, which means that unless somebody
is debugging a totally broken PCI setup, this message is not needed anymore,
not even for debugging PCI.


Ok, here the patch with the following changes:

* Refined to say that the bus is only partially hidden when the parent
  bus numbers are not totally way off (outside of) the child bus range
* remove the reference to pci=assign-busses and the plea to report it

We could add a pure source code-only comment to keep a reference to
pci=assign-busses the in case when this is triggered by someone who
is debugging the cause of this message and looking the way to solve it.

From: Bernhard Kaindl &lt;bk@suse.de&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>msi: mask the msix vector before we unmap it</title>
<updated>2007-06-01T15:18:27+00:00</updated>
<author>
<name>Eric W. Biederman</name>
<email>ebiederm@xmission.com</email>
</author>
<published>2007-06-01T07:46:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=78b7611c4a1e3ff008abc4751b566cb533d68f3d'/>
<id>urn:sha1:78b7611c4a1e3ff008abc4751b566cb533d68f3d</id>
<content type='text'>
With these two lines in the reverse order the drives/block/ccis.c was
oopsing in msi_free_irqs.  Silly us calling writel on an area after
we unmap it.

BUG: unable to handle kernel paging request at virtual address f8b2200c
 printing eip:
c01e9cc7
*pdpt = 0000000000003001
*pde = 0000000037e48067
*pte = 0000000000000000
Oops: 0002 [#1]
SMP
Modules linked in: cciss ipv6 parport_pc lp parport autofs4 i2c_dev i2c_core
sunrpc loop dm_multipath button battery asus_acpi ac tg3 floppy sg dm_snapshot
dm_zero dm_mirror ext3 jbd dm_mod ata_piix libata mptsas scsi_transport_sas
mptspi scsi_transport_spi mptscsih mptbase sd_mod scsi_mod
CPU:    1
EIP:    0060:[&lt;c01e9cc7&gt;]    Not tainted VLI
EFLAGS: 00010286   (2.6.22-rc2-gd2579053 #1)
EIP is at msi_free_irqs+0x81/0xbe
eax: f8b22000   ebx: f71f3180   ecx: f7fff280   edx: c1886eb8
esi: f7c4e800   edi: f7c4ec48   ebp: 00000002   esp: f5a0dec8
ds: 007b   es: 007b   fs: 00d8  gs: 0033  ss: 0068
Process rmmod (pid: 5286, ti=f5a0d000 task=c47d2550 task.ti=f5a0d000)
Stack: 00000002 f8b72294 00000400 f8b69ca7 f8b6bc6c 00000002 00000000 00000000
       00000000 00000000 00000000 f5a997f4 f8b69d61 f7c5a4b0 f7c4e848 f7c4e848
       f7c4e800 f7c4e800 f8b72294 f7c4e848 f8b72294 c01e3cdf f7c4e848 c024c469
Call Trace:
 [&lt;f8b69ca7&gt;] cciss_shutdown+0xae/0xc3 [cciss]
 [&lt;f8b69d61&gt;] cciss_remove_one+0xa5/0x178 [cciss]
 [&lt;c01e3cdf&gt;] pci_device_remove+0x16/0x35
 [&lt;c024c469&gt;] __device_release_driver+0x71/0x8e
 [&lt;c024c56e&gt;] driver_detach+0xa0/0xde
 [&lt;c024bc5c&gt;] bus_remove_driver+0x27/0x41
 [&lt;c01e3ef3&gt;] pci_unregister_driver+0xb/0x13
 [&lt;f8b6a343&gt;] cciss_cleanup+0xf/0x51 [cciss]
 [&lt;c0139ced&gt;] sys_delete_module+0x110/0x135
 [&lt;c0104c7a&gt;] sysenter_past_esp+0x5f/0x85

Here's a patch that just reverses the 2 lines of code as Eric suggests. Please
consider this for inclusion.

Signed-off-by: Mike Miller &lt;mike.miller@hp.com&gt;
Signed-off-by: Chase Maupin &lt;chase.maupin@hp.com&gt;
Signed-off-by: "Eric W. Biederman" &lt;ebiederm@xmission.com&gt;
Cc: Andi Kleen &lt;ak@suse.de&gt;
Cc: Greg KH &lt;greg@kroah.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>msi: fix the ordering of msix irqs</title>
<updated>2007-06-01T15:18:27+00:00</updated>
<author>
<name>Eric W. Biederman</name>
<email>ebiederm@xmission.com</email>
</author>
<published>2007-06-01T07:46:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=0dd11f9be47188ce08543ef65e9ece9beb2027dc'/>
<id>urn:sha1:0dd11f9be47188ce08543ef65e9ece9beb2027dc</id>
<content type='text'>
"Mike Miller (OS Dev)" &lt;mikem@beardog.cca.cpqcorp.net&gt; writes:

Found what seems the problem with our vectors being listed backward.  In
drivers/pci/msi.c we should be using list_add_tail rather than list_add to
preserve the ordering across various kernels.  Please consider this for
inclusion.

Signed-off-by: "Eric W. Biederman" &lt;ebiederm@xmission.com&gt;
Screwed-up-by: Michael Ellerman &lt;michael@ellerman.id.au&gt;
Cc: "Mike Miller (OS Dev)" &lt;mikem@beardog.cca.cpqcorp.net&gt;
Cc: Andi Kleen &lt;ak@suse.de&gt;
Cc: Greg KH &lt;greg@kroah.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>PCI: quirk disable MSI on via vt3351</title>
<updated>2007-05-31T23:56:37+00:00</updated>
<author>
<name>Jay Cliburn</name>
<email>jacliburn@bellsouth.net</email>
</author>
<published>2007-05-26T22:01:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=184b812f7da6726d7ea4ca409c7a8762ff6c6df6'/>
<id>urn:sha1:184b812f7da6726d7ea4ca409c7a8762ff6c6df6</id>
<content type='text'>
The Via VT3351 APIC does not play well with MSI and unleashes a flood
of APIC errors when MSI is used to deliver interrupts.  The problem
was recently exposed when the atl1 network device driver, which enables
MSI by default, stimulated APIC errors on an Asus M2V mainboard, which
employs the Via VT3351.
See http://bugzilla.kernel.org/show_bug.cgi?id=8472 for additional
details on this bug.

Signed-off-by: Jay Cliburn &lt;jacliburn@bellsouth.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>PCI: Fix pci_find_present</title>
<updated>2007-05-31T23:56:37+00:00</updated>
<author>
<name>Ben Gardner</name>
<email>gardner.ben@gmail.com</email>
</author>
<published>2007-05-11T05:58:58+00:00</published>
<link rel='alternate' type='text/html' href='https://git.radix-linux.su/kernel/linux.git/commit/?id=3c92c57af9a24a08b8d2f76650b1209239914fcd'/>
<id>urn:sha1:3c92c57af9a24a08b8d2f76650b1209239914fcd</id>
<content type='text'>
pci_find_present() is only matching the last item in the list of ids.

The break after the match is found only escapes the for loop, not the
while loop, so found gets reset to NULL on the next pass.

Signed-off-by: Ben Gardner &lt;gardner.ben@gmail.com&gt;
Cc: Alan Cox &lt;alan@lxorguk.ukuu.org.uk&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
</feed>
