open_softirq do?

Rami Rosen roszenrami at gmail.com
Wed Apr 10 08:41:04 EDT 2013


Hi,
This is simply a registration of the software interrupt TX method
(net_tx_action).


The net_tx_action() is invoked in general when transmission was finished:
look in :
http://lxr.free-electrons.com/source/net/core/dev.c

void dev_kfree_skb_irq(struct sk_buff *skb)
...
raise_softirq_irqoff(NET_TX_SOFTIRQ);
...


whereas the dev_kfree_skb_irq() is called from the driver TX path for
freeing the skb.

There are other case; look in __netif_reschedule(), and in

dev_cpu_callback(), in net/core/dev.c


regards,
Rami Rosen
http://ramirose.wix.com/ramirosen


On Wed, Apr 10, 2013 at 3:18 PM, Robert Clove <cloverobert at gmail.com> wrote:
> Hello All,
>
> I am clear all that the softirq is a software interrupt :
> Whenever a system call is about to return to the user space or h/w interrupt
> exit,ant s/w interrupt which are marked pending are run.
>
> Now in networking code i found
>
> open_softirq(NET_TX_SOFTIRQ, net_tx_action, NULL);
>
> What does this do?
>
> Thanks
>
>
> _______________________________________________
> Kernelnewbies mailing list
> Kernelnewbies at kernelnewbies.org
> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>



More information about the Kernelnewbies mailing list