Re: Memory allocation bug in pci hotplug

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Nov 19, 2009 at 1:10 PM, Yinghai Lu <yhlu.kernel@xxxxxxxxx> wrote:
> On Thu, Nov 19, 2009 at 10:06 AM, Eric Biederman
> <ebiederm@xxxxxxxxxxxxxxxxxx> wrote:
>>> Eric,
>>>
>>> how about change default min_size to 0 ?
>>
>> For io_size  I can see that as io space access are pretty much legacy
>> at this point.
>>
>> For mem_size I haven't seen a device that doesn't need something
>> and 2M is small.
>>
>>> #define DEFAULT_HOTPLUG_IO_SIZE         0
>>> #define DEFAULT_HOTPLUG_MEM_SIZE        0
>>> /* pci=hpmemsize=nnM,hpiosize=nn can override this */
>>> unsigned long pci_hotplug_io_size  = DEFAULT_HOTPLUG_IO_SIZE;
>>> unsigned long pci_hotplug_mem_size = DEFAULT_HOTPLUG_MEM_SIZE;
>>>
>>> and later to use dmi or other quirks way increase those value.
>>
>> The immediate problem is that after the simulated hotplug we have
>> shifted the resource assignments around on the qlogic adapter
>> and the adapter no longer works.
>>

eric,

he is taking down the bridge 0b:00.0

so bridge 00:06.0 bridges resource is not touched. ( it is not big
enough for min_size == 2M...)

pci=use_crs is not going to help. unless the 00:06.0 is taken down.

here's the lspci -tv
+-06.0-[0000:0b-15]----00.0-[0000:0c-15]--+-00.0-[0000:13-15]--+-00.0
QLogic Corp. ISP2432-based 4Gb Fibre Channel to PCI Express HBA
|                                         |                    \-00.1
QLogic Corp. ISP2432-based 4Gb Fibre Channel to PCI Express HBA
|                                         +-01.0-[0000:10-12]--
|                                         \-09.0-[0000:0d-0f]--


here's the remove

dl580g5:~# echo 1 > /sys/bus/pci/devices/0000\:0b\:00.0/remove
[  279.175405] qla2xxx 0000:13:00.0: PCI INT A disabled
[  279.195644] qla2xxx 0000:13:00.1: PCI INT B disabled
[  279.203038] pcieport-driver 0000:0c:00.0: PCI INT A disabled
[  279.210565] pcieport-driver 0000:0c:01.0: PCI INT A disabled
[  279.213557] pcieport-driver 0000:0c:09.0: PCI INT A disabled
[  279.219402] pcieport-driver 0000:0b:00.0: PCI INT A disabled


my v11 patchset:
1. boot stage: will change pci bridge resource from bottom to up
bridge one by one if bridge resource is not big enough.
2. pciehp: will change pcie hotplug bridge resource if it is not big
enough. but it will not go above that bridge.

YH
--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux