On Wed, Apr 01, 2015 at 04:30:59PM +0300, Maxim Uvarov wrote:
> Commit:
>  8fa64fb9fc4e43fbd9d3c226ed89229863bdb771
>  linux-generic: scheduler: restructured queue and pktio integration
> Implement race with schedule termination and polling input queue.
> This patch locks pktio while doing poll to prevent destroy linked
> queue in the middle of this poll.
> 

Admittedly I've not looked in detail at the terminate sequence after the
scheduler changes, so don't really understand what you're fixing, but
this feels like a workaround rather than a fix. Shouldn't the pktin
queue have been removed from the scheduler before it's closed? What's
the sequence that leads to the problem?

Another reason I'm not keen on this change is that those locks really
need to go as they serialise all send/recv calls (per pktio) and kill
scalability. As far as I can see they're only there to protect against
the application closing a pktio handle while another thread is using it,
but IMO we should consider that an application error. The only
linux-generic implementation that needs them is MMAP, and that can be
fixed. So it would be good to find a solution for this problem that
doesn't depend on those locks.

--
Stuart.
_______________________________________________
lng-odp mailing list
[email protected]
https://lists.linaro.org/mailman/listinfo/lng-odp

Reply via email to