can't interrupt when printing T T T T T

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello, I boot my barebox by barebox from tftpserver. I poweroff my
switcher. and barebox began to print
- - - -
Booting entry 'net'
T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T T IP 192.168.1.88 is not reachable
- - - -
I try to hit ctrl-c and some other keys. but I can't stop it printing 'T'.
so I added some piece of code to test it

fs/tftp.c
   static int tftp_poll(struct file_priv *priv)
 {
+
+       if(tstc()) {
+               printf("%s", __func__);
+               putchar(getchar());
+       }
+
        if (ctrlc()) {

net/net.c
 
 void net_poll(void)
 {
+       if(tstc()) {
+               printf("%s", __func__);
+               putchar(getchar());
+       }
+


net/eth.c

static int __eth_rx(struct eth_device *edev)
{
	int ret;

+       if(tstc()) {
+               putchar(getchar());
+               printf("|-_-|");
+       }
+
- - - - - - - -
the result:

Booting entry 'net'
T net_pollknet_polljnet_pollknet_polljk|-_-|net_polljT n|-_-|net_pollkj|-_-|net_pollsnet_pollknet_pollfnet_pollanet_polljT |-_-|net_poll|-_-||-_-|net_pollnet_
pollT T T T T net_pollfnet_pollfT net_pollff|-_-|f|-_-|net_pollfnet_pollfnet_pollfnet_pollfnet_pollfnet_pollfnet_pollfT f|-_-|net_polldnet_pollfnet_pollsnet_p
olldnet_pollkf|-_-|net_polljnet_pollknet_pollsnet_polljd|-_-|net_polljnet_polljnet_polljnet_polljnet_polljnet_polljnet_polljT net_polljnet_polljnet_polljnet_p
olljnet_polljnet_polljnet_polljnet_polljnet_polljnet_polljnet_polljnet_polljnet_polljnet_polljnet_polljnet_polljj|-_-|net_polljT T T T T T T T net_pollfnet_po
llfnet_pollfT net_pollfnet_pollfnet_pollfnet_pollfnet_pollfnet_pollfnet_pollfnet_pollfnet_pollfnet_pollfnet_pollff|-_-|T net_pollfnet_polldnet_polldd|-_-|d|-_
-|T T T T T T T T T T T T T T T T T T T IP 192.168.1.88 is not reachable

I found it the routine (tftp_poll) didn't catch the key input.
mostly the input is catched by net_poll().
could anyone help to move the ctrlc() dection into the right place?

duhuanpeng.








_______________________________________________
barebox mailing list
barebox@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/barebox



[Index of Archives]     [Linux Embedded]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux