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
