-
 ,       -
 raise softirq_irqoff (),     .

/*

*    !

*/

raise_softirq_irqoff(NET_TX_SOFTIRQ) ;

       -
 .       
  ,    ,  -
   .     -
    do_softirq().   -
       ,   
  .       "
"  " ".



      ,    -
  .   ,     -
   (task).         
  .         
  .

  ,    ,   : 
    .     -
 ,      
   .      
,         -
  .      -
           .

 

       ,   -
   (softirq).   ,  -
    : HI_SOFTIRQ  TASKLET_SOFTIRQ.
     ,    HI_SOFTIRQ -
     TASKLET_SOFTIRQ.

 

     tasklet_struct.  -
     .    
  <linux/interrupt ,h>   .

struct tasklet struct {

struct tasklet_struct *next;   /*   

   */
unsigned long state;           /*   */

                                       141