[lkml]   [2008]   [Oct]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
Patch in this message
SubjectRe: [RFC patch 5/5] genirq: make irq threading robust
On Wed, 2008-10-01 at 23:02 +0000, Thomas Gleixner wrote:

> To make sure that a crashed irq thread does not cause more trouble
> when the irq code tries to wake up a gone thread or the device code
> calling free_irq and trying to kthread_stop the dead thread, we plug a
> pointer to irqaction into task_struct, which is evaluated in
> do_exit(). When the thread crashes the do_exit code marks the thread
> as DIED in irqaction->flags to prevent further wakeups from the
> interrupt handler code.

> @@ -1301,6 +1301,7 @@ struct task_struct {
> int latency_record_count;
> struct latency_record latency_record[LT_SAVECOUNT];
> #endif
> + struct irqaction *irqaction;
> };

Is that going to fly? For the vast majority of task_structs this is now
a wasted 4/8 bytes that won't be used.


 \ /
  Last update: 2008-10-02 02:55    [W:0.122 / U:30.732 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site