Re: [PATCH 2/5 V2] PCI: pciehp: check and wait port status out of DPC before handling DLLSC and PDC

From: Sinan Kaya
Date: Mon Sep 28 2020 - 07:10:22 EST


On 9/27/2020 10:01 PM, Zhao, Haifeng wrote:
> Sinan,
> I explained the reason why locks don't protect this case in the patch description part.
> Write side and read side hold different semaphore and mutex.
>

I have been thinking about it some time but is there any reason why we
have to handle all port AER/DPC/HP events in different threads?

Can we go to single threaded event loop for all port drivers events?

This will require some refactoring but it wlll eliminate the lock
nightmares we are having.

This means no sleeping. All sleeps need to happen outside of the loop.

I wanted to see what you all are thinking about this.

It might become a performance problem if the system is
continuously observing a hotplug/aer/dpc events.

I always think that these should be rare events.