From: Suresh <sur...@in...> - 2005-04-26 14:01:26
|
At 06:52 PM 4/26/2005, Vincent Guffens wrote: >Suresh wrote: > >>hi, >>So in case of uml, if all the interrupts are being handled in the >>processor 0, hence >>softirq and tasklets are going to be handled in processor 0. If this is >>the case, >>then don't you think that smp functionality is lost here. Kindly tell me, >>is that the case >>even in 2.4.20 kernel. In the dairy it was given that it is for 2.5 kernel. >>Performance may not be an issue to me, so that I can simulate SMP >>functionality that >>host linux offers. > >With UML-SMP, you may have multiple processes running simultaneously. For >instance, here is a top from an SMP-UML machine: > >3:36pm up 4 min, 4 users, load average: 0.04, 0.02, 0.00 > 37 processes: 33 sleeping, 4 running, 0 zombie, 0 stopped > > PID USER PRI NI SIZE RSS SHARE STAT %CPU %MEM TIME COMMAND > 156 root 14 0 376 376 316 R 14.4 1.2 0:01 md5sum > 155 root 11 0 376 376 316 R 12.6 1.2 0:01 md5sum > 154 root 13 0 376 376 316 R 12.2 1.2 0:01 md5sum > 153 root 10 0 920 920 728 R 0.1 3.1 0:00 top > > >But from what I understand, the interrupt paths may run only on processor >0 so there is no SMP capability from that point of view. Maybe thinks have >changed since I tried. This was with 2.4.24-um1 in tt mode. > >However, I don't know if softirq and tasklet may run only on processor 0 >as interrupts do. Can't these be schedulled on another processor ? Suppose if interrupts handled only in cpu0. When ever a packet comes to the nic, then isr runs on cpu0. This isr will queue the packet to the cpu0 backlog queue, and a softirq is raised and isr returns. This softirq which is raised on cpu0 will only run on cpu0. In case of tasklets also, if the tasklets are scheduled from interrupts, then the will be will on the processor on which they are scheduled. How ever if the tasklets are scheduled from the threads, and the threads are attached to another processor, then the scheduled tasklets can run on any other processor on which it is scheduled. With this most of the kernel functionality seems to run only in cpu0 context. thanks for the information. regards Suresh >Cheers, > > >-- > Vincent Guffens > PhD Student UCL/CESAME > tel: +32 10 47 80 30 >Value your freedom, or you will lose it, teaches history. >"Don't bother us with politics," respond those who don't want to learn. > -- Richard M. Stallman |