Topic: Tracking down an error report

I buiilt a userhook0 script that periodically uploads some data from my chumby to my personal web site.
To see if the link is still active I attempted to ping my website with ping -c 1 mysite.address.org (not my real website)
then if there was not error code returned from that ping command I uploaded the file with secure copy.

When I get to the ping command sometimes (about 1/6th) of the time the chumby spits out this giant error message, and
freezes.  I don't know much about the various drivers that are being referenced in this error message, I was wondering if anyone on this site knows someone who can make some kind of sense out of this fatal error type dump message.

Thanks,  Barry Mead  (This forum doesn't have an attach file option, so the long error report is pasted below)

[   99.910000] ------------[ cut here ]------------
[   99.910000] WARNING: at drivers/usb/serial/usb-serial.c:327 serial_write_room+0x50/0x7c [usbserial]()
[   99.920000] Modules linked in: ipv6 stmp3xxx_rotdec stmp378x_devb_rotdec chumby_timer i2c_dev rt2800usb rt2800lib crc_ccitt rt2x00usb rt2x00lt
[   99.950000] [<c0329ca0>] (dump_stack+0x0/0x14) from [<c0040794>] (warn_on_slowpath+0x4c/0x68)
[   99.960000] [<c0040748>] (warn_on_slowpath+0x0/0x68) from [<bf0a262c>] (serial_write_room+0x50/0x7c [usbserial])
[   99.970000]  r6:00000060 r5:c2ae8800 r4:c296d400
[   99.980000] [<bf0a25dc>] (serial_write_room+0x0/0x7c [usbserial]) from [<c021474c>] (tty_write_room+0x24/0x28)
[   99.990000]  r5:c2ae8800 r4:c2ae8800
[   99.990000] [<c0214728>] (tty_write_room+0x0/0x28) from [<c0212258>] (opost+0x1c/0x1c8)
[  100.010000] [<c021223c>] (opost+0x0/0x1c8) from [<c0212474>] (echo_char+0x70/0x78)
[  100.020000]  r7:c2ae8800 r6:c2ae8800 r5:c2ae8800 r4:00000060
[  100.030000] [<c0212404>] (echo_char+0x0/0x78) from [<c0214380>] (n_tty_receive_buf+0xc4c/0xef0)
[  100.040000]  r5:00000060 r4:00000001
[  100.040000] [<c0213734>] (n_tty_receive_buf+0x0/0xef0) from [<c02169f0>] (flush_to_ldisc+0x14c/0x208)
[  100.060000] [<c02168a4>] (flush_to_ldisc+0x0/0x208) from [<c0052bf4>] (run_workqueue+0xf0/0x1c4)
[  100.070000] [<c0052b04>] (run_workqueue+0x0/0x1c4) from [<c0053488>] (worker_thread+0x104/0x118)
[  100.080000]  r9:00000000 r8:00000000 r7:c381a900 r6:c3812040 r5:c3812048
[  100.090000] r4:c3826000
[  100.090000] [<c0053384>] (worker_thread+0x0/0x118) from [<c0056e70>] (kthread+0x54/0x80)
[  100.100000]  r7:00000000 r6:00000000 r5:c0053384 r4:c3812040
[  100.100000] [<c0056e1c>] (kthread+0x0/0x80) from [<c0043b90>] (do_exit+0x0/0x800)
[  100.110000]  r5:00000000 r4:00000000
[  100.120000] ---[ end trace cf29247f48de367d ]---
[  100.120000] Unable to handle kernel NULL pointer dereference at virtual address 00000168
[  100.130000] pgd = c0004000
[  100.130000] [00000168] *pgd=00000000
[  100.140000] Internal error: Oops: 17 [#1] PREEMPT
[  100.140000] Modules linked in: ipv6 stmp3xxx_rotdec stmp378x_devb_rotdec chumby_timer i2c_dev rt2800usb rt2800lib crc_ccitt rt2x00usb rt2x00lt
[  100.140000] CPU: 0    Tainted: P        W   (2.6.28-chumby #302)
[  100.140000] PC is at pl2303_write_room+0x18/0xd4 [pl2303]
[  100.140000] LR is at serial_write_room+0x64/0x7c [usbserial]
[  100.140000] pc : [<bf0da28c>]    lr : [<bf0a2640>]    psr: 60000013
[  100.140000] sp : c3827df0  ip : c3827e08  fp : c3827e04
[  100.140000] r10: a0000013  r9 : c2ae889c  r8 : c3826000
[  100.140000] r7 : c2ae8800  r6 : 00000060  r5 : c2ae8800  r4 : c296d400
[  100.140000] r3 : 00000000  r2 : 00000000  r1 : c045a440  r0 : c2ae8800
[  100.140000] Flags: nZCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment kernel
[  100.140000] Control: 0005317f  Table: 42a48000  DAC: 00000017
[  100.140000] Process events/0 (pid: 4, stack limit = 0xc3826268)
[  100.140000] Stack: (0xc3827df0 to 0xc3828000)
[  100.140000] 7de0:                                     c296d400 c2ae8800 c3827e1c c3827e08
[  100.140000] 7e00: bf0a2640 bf0da284 c2ae8800 c2ae8800 c3827e2c c3827e20 c021474c bf0a25ec
[  100.140000] 7e20: c3827e4c c3827e30 c0212258 c0214738 00000060 c2ae8800 c2ae8800 c2ae8800
[  100.140000] 7e40: c3827e64 c3827e50 c0212474 c021224c 00000001 00000060 c3827f3c c3827e68
[  100.140000] 7e60: c0214380 c0212414 c2ae90a1 c2ae91a2 00000000 00000001 c2ae88e0 c2ae8898
[  100.140000] 7e80: c2ae8948 c2ae887c c2ae8918 00000000 00000001 20000013 c3827ec4 c3827ea8
[  100.140000] 7ea0: c3827ec4 c3827eb0 c0045e9c c003ae98 0000000b 00000000 c3827edc c3827ec8
[  100.140000] 7ec0: c0026068 c0045e3c ffffffff f0000000 c381a930 c0459db8 00000000 00000000
[  100.140000] 7ee0: c3827f14 c3827ef0 c003a348 c003a1e8 c381a900 c381a930 c381a900 c381a930
[  100.140000] 7f00: c0459d80 c3826000 c3827f34 c3827f18 c2ae8800 c2ae9000 c3826000 00000085
[  100.140000] 7f20: c2ae8800 00000001 c2ae889c a0000013 c3827f7c c3827f40 c02169f0 c0213744
[  100.140000] 7f40: c2ae887c c2ae901c c2ae911c c2ae8814 c005c434 c2ae88a0 c3826000 c3812040
[  100.140000] 7f60: c2ae889c c02168a4 00000000 00000000 c3827fa4 c3827f80 c0052bf4 c02168b4
[  100.140000] 7f80: c3826000 c3812048 c3812040 c381a900 00000000 00000000 c3827fdc c3827fa8
[  100.140000] 7fa0: c0053488 c0052b14 00000000 00000000 c381a900 c0057108 c3827fb8 c3827fb8
[  100.140000] 7fc0: c3812040 c0053384 00000000 00000000 c3827ff4 c3827fe0 c0056e70 c0053394
[  100.140000] 7fe0: 00000000 00000000 00000000 c3827ff8 c0043b90 c0056e2c 00000000 00000000
[  100.140000] Backtrace:
[  100.140000] [<bf0da274>] (pl2303_write_room+0x0/0xd4 [pl2303]) from [<bf0a2640>] (serial_write_room+0x64/0x7c [usbserial])
[  100.140000]  r5:c2ae8800 r4:c296d400
[  100.140000] [<bf0a25dc>] (serial_write_room+0x0/0x7c [usbserial]) from [<c021474c>] (tty_write_room+0x24/0x28)
[  100.140000]  r5:c2ae8800 r4:c2ae8800
[  100.140000] [<c0214728>] (tty_write_room+0x0/0x28) from [<c0212258>] (opost+0x1c/0x1c8)
[  100.140000] [<c021223c>] (opost+0x0/0x1c8) from [<c0212474>] (echo_char+0x70/0x78)
[  100.140000]  r7:c2ae8800 r6:c2ae8800 r5:c2ae8800 r4:00000060
[  100.140000] [<c0212404>] (echo_char+0x0/0x78) from [<c0214380>] (n_tty_receive_buf+0xc4c/0xef0)
[  100.140000]  r5:00000060 r4:00000001
[  100.140000] [<c0213734>] (n_tty_receive_buf+0x0/0xef0) from [<c02169f0>] (flush_to_ldisc+0x14c/0x208)
[  100.140000] [<c02168a4>] (flush_to_ldisc+0x0/0x208) from [<c0052bf4>] (run_workqueue+0xf0/0x1c4)
[  100.140000] [<c0052b04>] (run_workqueue+0x0/0x1c4) from [<c0053488>] (worker_thread+0x104/0x118)
[  100.140000]  r9:00000000 r8:00000000 r7:c381a900 r6:c3812040 r5:c3812048
[  100.140000] r4:c3826000
[  100.140000] [<c0053384>] (worker_thread+0x0/0x118) from [<c0056e70>] (kthread+0x54/0x80)
[  100.140000]  r7:00000000 r6:00000000 r5:c0053384 r4:c3812040
[  100.140000] [<c0056e1c>] (kthread+0x0/0x80) from [<c0043b90>] (do_exit+0x0/0x800)
[  100.140000]  r5:00000000 r4:00000000
[  100.140000] Code: e24cb004 e59f30ac e59020fc e5933000 (e5925168)
[  100.520000] ---[ end trace cf29247f48de367d ]---

Re: Tracking down an error report

Do you have something plugged into the USB port on this device?

3 (edited by BarryMead 2011-03-01 17:58:19)

Re: Tracking down an error report

I think I figured it out.  I had a USB serial port device pumping data into the serial port, and it was filling up the
USB port's buffers while the chumby was running the other part of the script to ping the internet site.

It was the USB/serial port that actually caused the problem.   I believe all I need to do to fix it is to keep the
USB/Serial port's buffers from filling up, by using device control protocol like DTR, or whatever to shut off the
serial stream while the chumby is busy doing other tasks.  I think I answered my own question.

Thanks,  Barry