diff options
author | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2012-04-07 23:18:52 +0000 |
---|---|---|
committer | Samuel Thibault <samuel.thibault@ens-lyon.org> | 2012-04-07 23:18:52 +0000 |
commit | d7edc2746adebffe2c351a1de557a3e9a7f44a18 (patch) | |
tree | e99cc6cf93d8e80692c318af4cc5109689b58143 /libdde_linux26/lib/src | |
parent | e8d16b1684b9c49669a444405f52b4f4715eab85 (diff) |
Do not enable irqs during softirq processing, just like upstream DDE
Diffstat (limited to 'libdde_linux26/lib/src')
-rw-r--r-- | libdde_linux26/lib/src/arch/l4/softirq.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/libdde_linux26/lib/src/arch/l4/softirq.c b/libdde_linux26/lib/src/arch/l4/softirq.c index 67e8f5aa..21b36d17 100644 --- a/libdde_linux26/lib/src/arch/l4/softirq.c +++ b/libdde_linux26/lib/src/arch/l4/softirq.c @@ -172,6 +172,7 @@ static void tasklet_hi_action(struct softirq_action *a) } } + #define MAX_SOFTIRQ_RETRIES 10 /** Run softirq handlers @@ -185,7 +186,6 @@ void __do_softirq(void) /* reset softirq count */ set_softirq_pending(0); - local_irq_enable(); /* While we have a softirq pending... */ while (pending) { @@ -197,7 +197,6 @@ void __do_softirq(void) /* remove pending flag for last softirq */ pending >>= 1; } - local_irq_disable(); /* Somebody might have scheduled another softirq in between * (e.g., an IRQ thread or another tasklet). */ |