<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/pci, branch v2.6.26</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v2.6.26</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v2.6.26'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2008-07-04T17:40:05Z</updated>
<entry>
<title>pci: VT3336 can't do MSI either</title>
<updated>2008-07-04T17:40:05Z</updated>
<author>
<name>Tejun Heo</name>
<email>tj@kernel.org</email>
</author>
<published>2008-07-04T16:59:32Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=66d715c95a39e84cd25204a665915621457d9691'/>
<id>urn:sha1:66d715c95a39e84cd25204a665915621457d9691</id>
<content type='text'>
It seems VT3336 can't do msi either as with its bro 3351.  Disable it.
Reported in the following SUSE bug.

  https://bugzilla.novell.com/show_bug.cgi?id=300001

Signed-off-by: Tejun Heo &lt;tj@kernel.org&gt;
Acked-by: Jesse Barnes &lt;jbarnes@virtuousgeek.org&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: acpiphp: cleanup notify handler on all root bridges</title>
<updated>2008-07-02T18:27:30Z</updated>
<author>
<name>Alex Chiang</name>
<email>achiang@hp.com</email>
</author>
<published>2008-07-02T02:02:23Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=a13307cef8bf51990ef1d525b1cbdcc2cfe07e2a'/>
<id>urn:sha1:a13307cef8bf51990ef1d525b1cbdcc2cfe07e2a</id>
<content type='text'>
During the development of the physical PCI slot patch series, Gary Hade
kept on reporting strange oopses due to interactions between pci_slot
and acpiphp.

	http://lkml.org/lkml/2007/11/28/319

find_root_bridges() unconditionally installs
handle_hotplug_event_bridge() as an ACPI_SYSTEM_NOTIFY handler for all
root bridges.

However, during module cleanup, remove_bridge() will only remove the
notify handler iff the root bridge had a hot-pluggable slot directly
underneath. That is:

	root bridge -&gt; hotplug slot

But, if the topology looks like either of the following:

	root bridge -&gt; non-hotplug slot
	root bridge -&gt; p2p bridge -&gt; hotplug slot

Then we currently do not remove the notify handler from that root
bridge.

This can cause a kernel oops if we modprobe acpiphp later and it gets
loaded somewhere else in memory. If the root bridge then receives a
hotplug event, it will then attempt to call a stale, non-existent notify
handler and we blow up.

Much thanks goes to Gary Hade for his persistent debugging efforts.

Signed-off-by: Alex Chiang &lt;achiang@hp.com&gt;
Signed-off-by: Gary Hade &lt;garyhade@us.ibm.com&gt;
Signed-off-by: Jesse Barnes &lt;jbarnes@virtuousgeek.org&gt;
</content>
</entry>
<entry>
<title>PCI: Limit VPD read/write lengths for Broadcom 5706, 5708, 5709 rev.</title>
<updated>2008-07-02T18:25:54Z</updated>
<author>
<name>Benjamin Li</name>
<email>benli@broadcom.com</email>
</author>
<published>2008-07-02T17:59:04Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=99cb233d60cbe644203f19938c729ea2bb004d70'/>
<id>urn:sha1:99cb233d60cbe644203f19938c729ea2bb004d70</id>
<content type='text'>
For Broadcom 5706, 5708, 5709 rev. A nics, any read beyond the
VPD end tag will hang the device.  This problem was initially
observed when a vpd entry was created in sysfs
('/sys/bus/pci/devices/&lt;id&gt;/vpd').   A read to this sysfs entry
will dump 32k of data.  Reading a full 32k will cause an access
beyond the VPD end tag causing the device to hang.  Once the device
is hung, the bnx2 driver will not be able to reset the device.
We believe that it is legal to read beyond the end tag and
therefore the solution is to limit the read/write length.

A majority of this patch is from Matthew Wilcox who gave code for
reworking the PCI vpd size information.  A PCI quirk added for the
Broadcom NIC's to limit the read/write's.

Signed-off-by: Benjamin Li &lt;benli@broadcom.com&gt;
Signed-off-by: Matthew Wilcox &lt;willy@linux.intel.com&gt;
Signed-off-by: Jesse Barnes &lt;jbarnes@virtuousgeek.org&gt;
</content>
</entry>
<entry>
<title>PCI: Restrict VPD read permission to root</title>
<updated>2008-07-01T16:51:53Z</updated>
<author>
<name>Ben Hutchings</name>
<email>bhutchings@solarflare.com</email>
</author>
<published>2008-07-01T16:18:17Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=a94c248113b86bbbc47d027a4004b70f2be298b1'/>
<id>urn:sha1:a94c248113b86bbbc47d027a4004b70f2be298b1</id>
<content type='text'>
Some PCI devices will lock up if we attempt to read from VPD addresses
beyond some device-dependent limit.  Until we can identify these
devices and adjust the file size accordingly, only let root read VPD
through sysfs to prevent a DoS by normal users.

Signed-off-by: Ben Hutchings &lt;bhutchings@solarflare.com&gt;
Signed-off-by: Jesse Barnes &lt;jbarnes@virtuousgeek.org&gt;
</content>
</entry>
<entry>
<title>PCI: fixup write combine comment in pci_mmap_resource</title>
<updated>2008-06-12T20:51:46Z</updated>
<author>
<name>Jesse Barnes</name>
<email>jbarnes@hobbes.lan</email>
</author>
<published>2008-06-12T20:51:46Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=81d5575a48f49f494289a1299a32e4e5e41fbf40'/>
<id>urn:sha1:81d5575a48f49f494289a1299a32e4e5e41fbf40</id>
<content type='text'>
Now that we can actually do write combining properly, there's no need to have
the FIXME.

Signed-off-by: Jesse Barnes &lt;jbarnes@virtuousgeek.org&gt;
</content>
</entry>
<entry>
<title>Merge branch 'pci-for-jesse' of git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-tip into for-linus</title>
<updated>2008-06-12T20:51:05Z</updated>
<author>
<name>Jesse Barnes</name>
<email>jbarnes@hobbes.lan</email>
</author>
<published>2008-06-12T20:51:05Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=883eed1b3e25fb1d7d8f32c6550cc1ac44888838'/>
<id>urn:sha1:883eed1b3e25fb1d7d8f32c6550cc1ac44888838</id>
<content type='text'>
</content>
</entry>
<entry>
<title>x86: PAT export resource_wc in pci sysfs</title>
<updated>2008-06-12T08:12:42Z</updated>
<author>
<name>venkatesh.pallipadi@intel.com</name>
<email>venkatesh.pallipadi@intel.com</email>
</author>
<published>2008-03-19T00:00:22Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=45aec1ae72fc592f231e9e73ed9ed4d10cfbc0b5'/>
<id>urn:sha1:45aec1ae72fc592f231e9e73ed9ed4d10cfbc0b5</id>
<content type='text'>
For the ranges with IORESOURCE_PREFETCH, export a new resource_wc interface in
pci /sysfs along with resource (which is uncached).

Signed-off-by: Venkatesh Pallipadi &lt;venkatesh.pallipadi@intel.com&gt;
Signed-off-by: Suresh Siddha &lt;suresh.b.siddha@intel.com&gt;
Acked-by: Jesse Barnes &lt;jbarnes@virtuousgeek.org&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
</entry>
<entry>
<title>PCI: fix rpadlpar pci hotplug driver sysfs usage</title>
<updated>2008-05-30T16:50:46Z</updated>
<author>
<name>Benjamin Herrenschmidt</name>
<email>benh@kernel.crashing.org</email>
</author>
<published>2008-05-30T03:39:12Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=a9b841e1a336822a25899ec8cdf70a55a6696ae7'/>
<id>urn:sha1:a9b841e1a336822a25899ec8cdf70a55a6696ae7</id>
<content type='text'>
When Greg "fixed" the sysfs usage of that driver a while back, he seem
to have introduced a bug where the quotes are added around the name of
our specific sysfs files, thus breaking the user space tool.

This fixes it. Tested DLPAR operations on a POWER6 machine successfully.

Signed-off-by: Benjamin Herrenschmidt &lt;benh@kernel.crashing.org&gt;
Signed-off-by: Jesse Barnes &lt;jbarnes@virtuousgeek.org&gt;
</content>
</entry>
<entry>
<title>pciehp: add message about pciehp_slot_with_bus option</title>
<updated>2008-05-27T22:43:47Z</updated>
<author>
<name>Kenji Kaneshige</name>
<email>kaneshige.kenji@jp.fujitsu.com</email>
</author>
<published>2008-05-27T10:07:33Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=9e4f2e8d4ddb04ad16a3828cd9a369a5a5287009'/>
<id>urn:sha1:9e4f2e8d4ddb04ad16a3828cd9a369a5a5287009</id>
<content type='text'>
Some (broken?) platform assign the same slot name to multiple hotplug
slots. On such system, slot initialization would fail because of name
collision. The pciehp driver already have a "slot_with_bus" module
option which adds the bus number into the slot name. This patch adds
the message about this module option that will be displayed when slot
name collision is detected.

Signed-off-by: Kenji Kaneshige &lt;kaneshige.kenji@jp.fujitsu.com&gt;
Signed-off-by: Kristen Carlson Accardi &lt;kristen.c.accardi@intel.com&gt;
Signed-off-by: Jesse Barnes &lt;jbarnes@virtuousgeek.org&gt;
</content>
</entry>
<entry>
<title>pci hotplug core: add check of duplicate slot name</title>
<updated>2008-05-27T22:43:40Z</updated>
<author>
<name>Kenji Kaneshige</name>
<email>kaneshige.kenji@jp.fujitsu.com</email>
</author>
<published>2008-05-27T10:07:01Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=a86161b3134465f072d965ca7508ec9c1e2e52c7'/>
<id>urn:sha1:a86161b3134465f072d965ca7508ec9c1e2e52c7</id>
<content type='text'>
Fix the following errors reported by Jan C. Nordholz in
http://bugzilla.kernel.org/show_bug.cgi?id=10751.

kobject_add_internal failed for 2 with -EEXIST, don't try to register things with the same name in the same directory.
Pid: 1, comm: swapper Tainted: G        W 2.6.26-rc3 #1
 [&lt;c0266980&gt;] kobject_add_internal+0x140/0x190
 [&lt;c0266afd&gt;] kobject_init_and_add+0x2d/0x40
 [&lt;c027bc91&gt;] pci_hp_register+0x81/0x2f0
 [&lt;c027fd07&gt;] pciehp_probe+0x1a7/0x470
 [&lt;c01b3b84&gt;] sysfs_add_one+0x44/0xa0
 [&lt;c01b3c1f&gt;] sysfs_addrm_start+0x3f/0xb0
 [&lt;c01b497a&gt;] sysfs_create_link+0x8a/0xf0
 [&lt;c0279570&gt;] pcie_port_probe_service+0x50/0x80
 [&lt;c02e0545&gt;] driver_sysfs_add+0x55/0x70
 [&lt;c02e0662&gt;] driver_probe_device+0x82/0x180
 [&lt;c02e07cc&gt;] __driver_attach+0x6c/0x70
 [&lt;c02dfe0a&gt;] bus_for_each_dev+0x3a/0x60
 [&lt;c05db2d0&gt;] pcied_init+0x0/0x80
 [&lt;c02e04e6&gt;] driver_attach+0x16/0x20
 [&lt;c02e0760&gt;] __driver_attach+0x0/0x70
 [&lt;c02e0341&gt;] bus_add_driver+0x1a1/0x220
 [&lt;c05db2d0&gt;] pcied_init+0x0/0x80
 [&lt;c02e09cd&gt;] driver_register+0x4d/0x120
 [&lt;c05db050&gt;] ibm_acpiphp_init+0x0/0x190
 [&lt;c0125aab&gt;] printk+0x1b/0x20
 [&lt;c05db2d0&gt;] pcied_init+0x0/0x80
 [&lt;c05db2de&gt;] pcied_init+0xe/0x80
 [&lt;c05c751a&gt;] kernel_init+0x10a/0x300
 [&lt;c0120138&gt;] schedule_tail+0x18/0x50
 [&lt;c0103b9a&gt;] ret_from_fork+0x6/0x1c
 [&lt;c05c7410&gt;] kernel_init+0x0/0x300
 [&lt;c05c7410&gt;] kernel_init+0x0/0x300
 [&lt;c010485b&gt;] kernel_thread_helper+0x7/0x1c
 =======================
pci_hotplug: Unable to register kobject '2'&lt;3&gt;pciehp: pci_hp_register failed with error -22

Slot with the same name can be registered multiple times if shpchp or
pciehp driver is loaded after acpiphp is loaded because ACPI based
hotplug driver and Native OS hotplug driver trying to handle the same
physical slot. In this case, current pci_hotplug core will call
kobject_init_and_add() muliple time with the same name. This is the
cause of this problem. To fix this problem, this patch adds the check
into pci_hp_register() to see if the slot with the same name.

Signed-off-by: Kenji Kaneshige &lt;kaneshige.kenji@jp.fujitsu.com&gt;
Signed-off-by: Kristen Carlson Accardi &lt;kristen.c.accardi@intel.com&gt;
Signed-off-by: Jesse Barnes &lt;jbarnes@virtuousgeek.org&gt;
</content>
</entry>
</feed>
