* RE: Fast HDLC driver [not found] <20021119161020.83422.qmail@web20104.mail.yahoo.com> @ 2002-11-19 16:48 ` Joakim Tjernlund 2002-12-17 12:44 ` memory management bug?? Owen Green 2002-11-19 16:55 ` Fast HDLC driver Roland Dreier 1 sibling, 1 reply; 4+ messages in thread From: Joakim Tjernlund @ 2002-11-19 16:48 UTC (permalink / raw) To: Owen Green, linuxppc-embedded Hi Owen I have written a patch to 8xx_io/enet.c that avoids copying. It still calls netif_rx from IRQ context, but it's a start. The patch was posted a few weeks ago to this list. Could you post a copy of the qslinux hdlc driver? I am interested to se how one would avoid calling netif_rx from IRQ context. Jocke > > > Hi all, > > I`ve started working on a new project were a high > performace hdlc channel is needed (at least 4Mbps on > MPC8xx-50Mhz). > I found several drivers for hdlc, but some are not > very fast (copies memory,... ), most of them calls > netif_rx from inside interrupt_handler (I don`t think > this is the best place for doing that, watchdog may > expire if the interface gets very busy..). > The only driver I found that seems to be really fast > and doesnt do all this stuff in interrupt context is > for kernel-2.2 (QSLINUX). > Does anyone ported this to 2.4 or knows another > implementation of hdlc driver that could do this the > way I`m thinking? > > Thanks in advance, Owen. > > > > ** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/ ^ permalink raw reply [flat|nested] 4+ messages in thread
* memory management bug?? 2002-11-19 16:48 ` Fast HDLC driver Joakim Tjernlund @ 2002-12-17 12:44 ` Owen Green 0 siblings, 0 replies; 4+ messages in thread From: Owen Green @ 2002-12-17 12:44 UTC (permalink / raw) To: linuxppc-embedded [-- Attachment #1: Type: text/plain, Size: 467 bytes --] Hi all, I was making some tests in my linux box and I just realized that when the system goes to a "low memory state" kswapd gets almost all the cpu, I've got this from top (see attached file). But the worst I guess is that I can't see to where my memory has gone, top output and /proc/meminfo seems to be "hidding" some ... I'm using kernel 2.4.4 from Denx, is there memory leak in this kernel version? How can I reduce kswapd cpu usage? Thanks in advance, Owen. [-- Attachment #2: memory_problems_output.txt --] [-- Type: text/plain, Size: 1305 bytes --] 12:34am up 34 min, 0 users, load average: 1.37, 1.33, 0.89 9 processes: 7 sleeping, 2 running, 0 zombie, 0 stopped CPU states: 7.2% user, 92.8% system, 0.0% nice, 0.0% idle Mem: 14712K total, 13696K used, 1016K free, 6144K buffers Swap: 0K total, 0K used, 0K free, 4812K cached PID USER PRI NI SIZE RSS SHARE STAT %CPU %MEM TIME COMMAND 3 root 16 0 0 0 0 RW 78.4 0.0 12:20 kswapd 150 root 18 0 420 428 120 R 18.9 2.8 0:19 top 5 root 9 0 0 0 0 SW 2.9 0.0 0:28 bdflush 1 root 8 0 144 144 0 S 0.0 0.9 0:26 init 2 root 9 0 0 0 0 SW 0.0 0.0 0:00 keventd 4 root 9 0 0 0 0 SW 0.0 0.0 0:00 kreclaimd 6 root 9 0 0 0 0 SW 0.0 0.0 0:01 kupdated 21 root 9 0 212 212 0 S 0.0 1.4 0:11 sh 106 root 9 0 224 224 0 S 0.0 1.5 0:00 xinetd # ps PID Uid Stat Command 1 root S init 2 root S [keventd] 3 root R [kswapd] 4 root S [kreclaimd] 5 root S [bdflush] 6 root S [kupdated] 21 root S -sh 106 root S xinetd 151 root R ps # ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Fast HDLC driver [not found] <20021119161020.83422.qmail@web20104.mail.yahoo.com> 2002-11-19 16:48 ` Fast HDLC driver Joakim Tjernlund @ 2002-11-19 16:55 ` Roland Dreier [not found] ` <200211201439.45731.scop@digitel.com.br> 1 sibling, 1 reply; 4+ messages in thread From: Roland Dreier @ 2002-11-19 16:55 UTC (permalink / raw) To: Owen Green; +Cc: linuxppc-embedded >>>>> "Owen" == Owen Green <owenjinggreen@yahoo.com> writes: Owen> most of them calls netif_rx from inside interrupt_handler (I Owen> don`t think this is the best place for doing that, watchdog Owen> may expire if the interface gets very busy..) I don't have a specific answer about HDLC, but I think calling netif_rx() from interrupt context is correct. netif_rx() doesn't do anything except queue the packet for processing and then mark the network softirq. In fact if you want to call netif_rx() from non-interrupt context then you have to use the netif_rx_ni() function to make sure the softirq runs soon enough. Best, Roland ** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/ ^ permalink raw reply [flat|nested] 4+ messages in thread
[parent not found: <200211201439.45731.scop@digitel.com.br>]
* Re: Fast HDLC driver [not found] ` <200211201439.45731.scop@digitel.com.br> @ 2002-11-20 17:41 ` Roland Dreier 0 siblings, 0 replies; 4+ messages in thread From: Roland Dreier @ 2002-11-20 17:41 UTC (permalink / raw) To: Ricardo Scop; +Cc: Owen Green, linuxppc-embedded >>>>> "Ricardo" == Ricardo Scop <scop@digitel.com.br> writes: Roland> I don't have a specific answer about HDLC, but I think Roland> calling netif_rx() from interrupt context is correct. Roland> netif_rx() doesn't do anything except queue the packet for Roland> processing and then mark the network softirq. In fact if Roland> you want to call netif_rx() from non-interrupt context Roland> then you have to use the netif_rx_ni() function to make Roland> sure the softirq runs soon enough. Ricardo> Hmm, is this true? QSLinux driver calls netif_rx() from Ricardo> thew interrupts bottom half; it it ok? This should probably be OK. First, a bottom half is still interrupt context. Second, if I recall correctly, Linux 2.2 does not even define netif_rx_ni(). If the driver works well there's no reason to change it. Best, Roland ** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/ ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2002-12-17 12:44 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20021119161020.83422.qmail@web20104.mail.yahoo.com>
2002-11-19 16:48 ` Fast HDLC driver Joakim Tjernlund
2002-12-17 12:44 ` memory management bug?? Owen Green
2002-11-19 16:55 ` Fast HDLC driver Roland Dreier
[not found] ` <200211201439.45731.scop@digitel.com.br>
2002-11-20 17:41 ` Roland Dreier
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).