diff options
author | Abhimanyu <abhimanyu@freescale.com> | 2015-10-21 04:42:32 (GMT) |
---|---|---|
committer | Priyanka Jain <Priyanka.Jain@freescale.com> | 2015-10-21 05:01:21 (GMT) |
commit | 502650e09dd95d79ddbe24419409f7ef93818157 (patch) | |
tree | 2927fc5950b247d082836329ead74dd37070e44a /drivers/sfi | |
parent | e37ce255ffa6daf1cdda0b1472c8ca5f4aaaeae8 (diff) | |
download | linux-fsl-qoriq-502650e09dd95d79ddbe24419409f7ef93818157.tar.xz |
net, rt: limit net_rx napi calls in threaded ISR context
-In a PREEMPT_RT with CONFIG_PREEMPT_RT_FULL configuration enabled,
some of Interrupt Handler runs in context of threaded ISR.
And if this threaded ISR raises a particular softirq, then that calls
__raise_softirq_irqoff() function which mark the softirq ready to be
executed while exiting ISR in context of ISR only.
-So, net_rx_action() function is called in context of threaded ISR
if NET_RX_SOFTIRQ softirq is raised by that particular ISR.
-net_rx_action is balancing scheduling among napis
by using time-out of 2 jiffies for particular napi.
On timeout , it calls __raise_softirq_irqoff().
-In case of RT kernel, __raise_softirq_irqoff() again makes the
NET_RX_SOFTIRQ ready. So it is called again and again until the packet
ring is emptied.This creats a starvation condition for other threads.
-This patch removes calling __raise_softirq_irqoff() again while exiting
net_rx_action()
Signed-off-by: Priyanka Jain <Priyanka.Jain@freescale.com>
Signed-off-by: Abhimanyu <abhimanyu@freescale.com>
Diffstat (limited to 'drivers/sfi')
0 files changed, 0 insertions, 0 deletions