Re: [PATCH 1/1] epoll: remove wrong assert that ep_poll_callback is always called with irqs off

2019-01-08 Thread Roman Penyaev
On 2019-01-08 16:16, Davidlohr Bueso wrote: On 2019-01-08 04:42, Roman Penyaev wrote: What we can do: a) disable irqs if we are not in interrupt. b) revert the patch completely. David, is it really crucial in terms of performance to avoid double local_irq_save() on Xen on this

Re: [PATCH 1/1] epoll: remove wrong assert that ep_poll_callback is always called with irqs off

2019-01-08 Thread Davidlohr Bueso
On 2019-01-08 04:42, Roman Penyaev wrote: What we can do: a) disable irqs if we are not in interrupt. b) revert the patch completely. David, is it really crucial in terms of performance to avoid double local_irq_save() on Xen on this ep_poll_callback() hot path? Note that such optimizations

Re: [PATCH 1/1] epoll: remove wrong assert that ep_poll_callback is always called with irqs off

2019-01-08 Thread Roman Penyaev
On 2019-01-08 11:01, Roman Penyaev wrote: That was wrong assumption that all drivers disable irqs before waking up a wait queue. Even assert line is removed the whole logic stays correct: epoll always locks rwlock with irqs disabled and by itself does not call from interrupts, thus it is up

[PATCH 1/1] epoll: remove wrong assert that ep_poll_callback is always called with irqs off

2019-01-08 Thread Roman Penyaev
That was wrong assumption that all drivers disable irqs before waking up a wait queue. Even assert line is removed the whole logic stays correct: epoll always locks rwlock with irqs disabled and by itself does not call from interrupts, thus it is up to driver how to call wake_up_locked(), because