Re: [PATCH 3/3] irq-poll: Reduce local_irq_save/restore operations in irq_poll_softirq

2016-11-13 Thread Sagi Grimberg
+ while (!list_empty()) { Maybe do a list_first_entry_or_null here if you're touching the list iteration anyway? I can do that. + local_irq_disable(); + list_splice_tail_init(iop_list, ); + list_splice(, iop_list); + if (rearm)

Re: [PATCH 3/3] irq-poll: Reduce local_irq_save/restore operations in irq_poll_softirq

2016-11-13 Thread Christoph Hellwig
> + while (!list_empty()) { Maybe do a list_first_entry_or_null here if you're touching the list iteration anyway? > + local_irq_disable(); > + list_splice_tail_init(iop_list, ); > + list_splice(, iop_list); > + > if (rearm) >

[PATCH 3/3] irq-poll: Reduce local_irq_save/restore operations in irq_poll_softirq

2016-11-12 Thread Sagi Grimberg
splice to a local list (and splice back when done) so we won't need to enable/disable local_irq in each iteration. Signed-off-by: Sagi Grimberg --- lib/irq_poll.c | 31 --- 1 file changed, 16 insertions(+), 15 deletions(-) diff --git