<div dir="ltr"><div>thanks a lot to all of you for the help.</div><div> </div><div>Vishwas S</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Oct 3, 2013 at 8:48 PM, anish singh <span dir="ltr">&lt;<a href="mailto:anish198519851985@gmail.com" target="_blank">anish198519851985@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><p dir="ltr"><div class="im"><br>
On Oct 3, 2013 8:28 PM, &quot;sujan dutta&quot; &lt;<a href="mailto:stoned.seven@gmail.com" target="_blank">stoned.seven@gmail.com</a>&gt; wrote:<br>
&gt;<br>
&gt;<br>
&gt; Yes you can, infact network subsystem softirq are reactive so it can run again.<br>
&gt; however, reactivated softirq are not immediately process but until kernel handles the pending softirqs because it might introduce latency in user-space. <br>
&gt; And for better performance, when pending BH grows excessively then family of kernel threads are wakes up to handle the load.<br></div>
Family of threads mentioned here is called ksoftirqd.<br>
Linux uses the ksoftirqd as the general solution to schedule softirq&#39;s to run before next interrupt and by putting them under scheduler control. Also this prevents consecutive softirq&#39;s from monopolizing the CPU. This also has the effect that the priority of ksoftirq needs to be considered when running very CPU-intensive applications and networking to get the proper balance of softirq/user balance. Increasing ksoftirq priority to 0 (eventually more) is reported to cure problems with low network performance at high CPU load.<br>


I think softirq calling itself is a problem which is delicately managed by linux kernel developers and how to improve the code and logic is an active field where you can contribute.<div class="im"><br>
&gt;<br>
&gt;<br>
&gt; On 27-Sep-2013, at 4:44 PM, Vishwas Srivastava (vishsriv) &lt;<a href="mailto:vishsriv@cisco.com" target="_blank">vishsriv@cisco.com</a>&gt; wrote:<br>
&gt;<br>
&gt;&gt; Hi Group,<br>
&gt;&gt;    I am a bit unclear if, I could schedule another BH while I am already running in a BH ?<br>
&gt;&gt; For example, if I am running in a SOFT IRQ, can I schedule a tasklet from there ??<br>
&gt;&gt;  <br>
&gt;&gt; Thanks,<br>
&gt;&gt; Vishwas S<br>
&gt;&gt;  <br>
&gt;&gt;  <br>
&gt;&gt; _______________________________________________<br>
&gt;&gt; Kernelnewbies mailing list<br>
&gt;&gt; <a href="mailto:Kernelnewbies@kernelnewbies.org" target="_blank">Kernelnewbies@kernelnewbies.org</a><br>
&gt;&gt; <a href="http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies" target="_blank">http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies</a><br>
&gt;<br>
&gt;<br>
&gt;<br>
&gt; _______________________________________________<br>
&gt; Kernelnewbies mailing list<br>
&gt; <a href="mailto:Kernelnewbies@kernelnewbies.org" target="_blank">Kernelnewbies@kernelnewbies.org</a><br>
&gt; <a href="http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies" target="_blank">http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies</a><br>
&gt;<br>
</div><p></p>
</p></blockquote></div><br></div>