On Wed, 2013-01-16 at 10:25 +0000, Anuz Pratap Singh Tomar wrote: > > > On Tue, Jan 15, 2013 at 6:31 AM, horseriver <horserivers@xxxxxxxxx> > wrote: > hi: > > what is the function of do_softirq()? Softirq is basically same as bottom half except it is run in irq context.So the question which comes to mind is why softirq?Softirqs can run concurrently on several CPUs and that is why it used in networking. There are other advantages also but it is mostly use case dependent. > > It is called by ksoftirqd() ,which is setup by : > kernel_thread(ksoftirqd, hcpu, CLONE_KERNEL) ; ksoftirq is a saviour thread which takes up the execution of softirq if it finds out that softirq are executing one by one and thereby userspace is not being scheduled or none of other task is getting executed.As threads have low priority it lets other tasks run. > > Please read "Understanding the Linux Kernel" Chapter on Interrupts and > Section on Softirqs and tasklets. Page number 171(might be different > in other editions) onwards. > > > > thanks! > > _______________________________________________ > Kernelnewbies mailing list > Kernelnewbies@xxxxxxxxxxxxxxxxx > http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies > > > > -- > Thank you > Warm Regards > Anuz > _______________________________________________ > Kernelnewbies mailing list > Kernelnewbies@xxxxxxxxxxxxxxxxx > http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies _______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies