Revert "Mark HI and TASKLET softirq synchronous"

This reverts commit 3c53776e29.
Reverting the change to match what we have on previous Kernels.

Change-Id: I4af64cd7e2c4291dda5f503bf2d74ede459a76c6
Signed-off-by: Satya Durga Srinivasu Prabhala <satyap@codeaurora.org>
This commit is contained in:
Satya Durga Srinivasu Prabhala 2019-01-08 15:38:32 -08:00
parent bf251c4d3b
commit ab58fa6c77

View file

@ -86,16 +86,12 @@ static void wakeup_softirqd(void)
/* /*
* If ksoftirqd is scheduled, we do not want to process pending softirqs * If ksoftirqd is scheduled, we do not want to process pending softirqs
* right now. Let ksoftirqd handle this at its own rate, to get fairness, * right now. Let ksoftirqd handle this at its own rate, to get fairness.
* unless we're doing some of the synchronous softirqs.
*/ */
#define SOFTIRQ_NOW_MASK ((1 << HI_SOFTIRQ) | (1 << TASKLET_SOFTIRQ)) static bool ksoftirqd_running(void)
static bool ksoftirqd_running(unsigned long pending)
{ {
struct task_struct *tsk = __this_cpu_read(ksoftirqd); struct task_struct *tsk = __this_cpu_read(ksoftirqd);
if (pending & SOFTIRQ_NOW_MASK)
return false;
return tsk && (tsk->state == TASK_RUNNING); return tsk && (tsk->state == TASK_RUNNING);
} }
@ -354,7 +350,7 @@ asmlinkage __visible void do_softirq(void)
pending = local_softirq_pending(); pending = local_softirq_pending();
if (pending && !ksoftirqd_running(pending)) if (pending && !ksoftirqd_running())
do_softirq_own_stack(); do_softirq_own_stack();
local_irq_restore(flags); local_irq_restore(flags);
@ -381,7 +377,7 @@ void irq_enter(void)
static inline void invoke_softirq(void) static inline void invoke_softirq(void)
{ {
if (ksoftirqd_running(local_softirq_pending())) if (ksoftirqd_running())
return; return;
if (!force_irqthreads) { if (!force_irqthreads) {