Re: [PATCH v1] PCI: pciehp: Fix the slot in BLINKINGON_STATE when Presence Detect Changed event occurred

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

 



Hi,

On 4/19/23 3:48 PM, Lukas Wunner wrote:
> On Wed, Apr 19, 2023 at 10:58:33AM +0800, Rongguang Wei wrote:
>> I test the 1-line change and it make the test failed. The dmesg like this:
>>
>> pcieport 0000:00:01.5: pciehp: Slot(0-5): Attention button pressed
>> pcieport 0000:00:01.5: pciehp: Slot(0-5): Powering off due to button press
>> pcieport 0000:00:01.5: pciehp: Slot(0-5): Attention button pressed
>> pcieport 0000:00:01.5: pciehp: Slot(0-5): Ignoring invalid state 0x4
> [...]
>> diff --git a/drivers/pci/hotplug/pciehp_ctrl.c b/drivers/pci/hotplug/pciehp_ctrl.c
>> index 529c34808440..462a61fc7313 100644
>> --- a/drivers/pci/hotplug/pciehp_ctrl.c
>> +++ b/drivers/pci/hotplug/pciehp_ctrl.c
>> @@ -256,7 +256,9 @@ void pciehp_handle_presence_or_link_change(struct controller *ctrl, u32 events)
>>  	present = pciehp_card_present(ctrl);
>>  	link_active = pciehp_check_link_active(ctrl);
>>  	if (present <= 0 && link_active <= 0) {
>> +		ctrl->state = POWEROFF_STATE;
>>  		mutex_unlock(&ctrl->state_lock);
> 
> My apologies, I made a mistake.  I meant OFF_STATE, not POWEROFF_STATE.
> Could you try that, without the addition below:
> 
>> +		pciehp_disable_slot(ctrl, SURPRISE_REMOVAL);
>>  		return;
>>  	}
> 
> Sorry again and thanks,
> 
> Lukas
> 

It test good. I will rework the patch and send V2. 
Thank you for your help. :)




[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