tty driver crash in LInux Kernel 3.8

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

 



Hello All,

I need help in finding a fix of an issue of TTY LDISC for Kernel 3.8.


I am trying to debug a Linux Kernel Crash related to tty(serial) Ldisc
in Kernel 3.8. I am working on OMAP based embedded platform.

The below is the crash logs :-

15:40:20.6255-04:00 - Unable to handle kernel NULL pointer dereference
at virtual address 00000000
15:40:20.6255-04:00 - pgd = e2bb0000
15:40:20.6255-04:00 - [00000000] *pgd=00000000
15:40:20.6255-04:00 - Internal error: Oops: 5 [#1] PREEMPT SMP ARM
15:40:20.6255-04:00 - Modules linked in: snd_soc_dra7_atl net1080
cdc_subset cdc_ncm cdc_ether usbnet lzo arc4 8021q crc7 crc_ccitt garp
dns_resolver xfrm6_mode_tunnel xfrm6_mode_transport stp sit llc
input_polldev sdio_uart ntfs hfsplus hfs cmemk nls_utf8 usb_storage
bcmdhd g_ffs g_utbridge snd_usb_audio snd_usbmidi_lib snd_rawmidi
snd_hwdep g_zero dwc3 xhci_hcd libcomposite udc_core dwc3_omap
omap_usb3audit: audit_lost=1 audit_rate_limit=20
audit_backlog_limit=64
15:40:20.6265-04:00 - audit: rate limit exceeded
15:40:20.6265-04:00 -  omap_usb2 omap_control_usb snd_harman snd_pcm
traceBuf snd_timer snd_page_alloc snd soundcore lvsd tun mac80211
omaplfb(O) pvrsrvkm(O)
15:40:20.6265-04:00 - CPU: 0    Tainted: G           O  (3.8.13-g6b9a919 #2)
15:40:20.6265-04:00 - PC is at __wake_up_common+0x2c/0xa0
15:40:20.6265-04:00 - LR is at __wake_up+0x48/0x5c
15:40:20.6275-04:00 - pc : [<c0080d14>]    lr : [<c0083034>]    psr: a0000093
15:40:20.6275-04:00 - sp : e2b53e78  ip : 00000000  fp : e2b53eac
15:40:20.6275-04:00 - r10: e2b52000  r9 : 00000003  r8 : 00000000
15:40:20.6275-04:00 - r7 : 00000003  r6 : e422d90c  r5 : 00000013  r4 : e422d908
15:40:20.6275-04:00 - r3 : 00000000  r2 : 00000001  r1 : 00000003  r0 : e422d908
15:40:20.6275-04:00 - Flags: NzCv  IRQs off  FIQs on  Mode SVC_32  ISA
ARM  Segment user
15:40:20.6275-04:00 - Control: 10c5387d  Table: a2bb006a  DAC: 00000015
15:40:20.6275-04:00 -
15:40:20.6275-04:00 - PC: 0xc0080c94:
15:40:20.6275-04:00 - 0c94  e0a33007 e0588002 e0c99003 e1b050a5
e1a04064 e1560008 e0d7c009 e59fc024
15:40:20.6285-04:00 - 0cb4  e18020fc e18040f1 bafffff1 e24bd028
e89daff0 e1a03234 e2484001 e0040394
15:40:20.6285-04:00 - 0cd4  eaffffd2 c05bbe78 00000478 00000418
1dcd6500 e1a0c00d e92ddff0 e24cb004
15:40:20.6285-04:00 - 0cf4  e24dd00c e52de004 e8bd4000 e1a06000
e1a09001 e5b6c004 e50b2030 e156000c
15:40:20.6285-04:00 - 0d14  e59c4000 e1a08003 e244400c e24cc00c
e59b7004 0a000014 e59ca008 e1a0000c
15:40:20.6285-04:00 - 0d34  e1a03007 e1a01009 e1a02008 e59c5000
e12fff3a e1a03004 e1a0c004 e3500000
15:40:20.6285-04:00 - 0d54  0a000005 e3150001 0a000003 e51b2030
e2522001 e50b2030 0a000003 e5b3400c
15:40:20.6295-04:00 - 0d74  e1560003 e244400c 1affffea e24bd028
e89daff0 e1a0c00d e92dd800 e24cb004
15:40:20.6295-04:00 -
15:40:20.6295-04:00 - LR: 0xc0082fb4:
15:40:20.6295-04:00 - 2fb4  ebffc11d e59521f0 e5943014 e5921014
e1530001 03a04001 0a000003 e5924004
15:40:20.6295-04:00 - 2fd4  e0533004 e2734000 e0b44003 ebffc1b9
e1a00004 e89da830 e1a0c00d e92dd9f0
15:40:20.6295-04:00 - 2ff4  e24cb004 e24dd00c e52de004 e8bd4000
e1a08003 e1a04000 e1a07001 e1a06002
15:40:20.6295-04:00 - 3014  eb14ca8e e1a01007 e1a02006 e3a03000
e58d8000 e1a05000 e1a00004 ebfff72c
15:40:20.6295-04:00 - 3034  e1a00004 e1a01005 eb14cb0c e24bd020
e89da9f0 e1a0c00d e92dd9f0 e24cb004
15:40:20.6305-04:00 - 3054  e24dd00c e52de004 e8bd4000 e2504000
e1a05001 e1a07002 e1a06003 0a00000b
15:40:20.6305-04:00 - 3074  eb14ca76 e2973000 e1a01005 e1a02007
e58d6000 13a03001 e1a08000 e1a00004
15:40:20.6305-04:00 - 3094  ebfff713 e1a00004 e1a01008 eb14caf3
e24bd020 e89da9f0 e1a0c00d e92dd800
15:40:20.6305-04:00 -
15:40:20.6305-04:00 - SP: 0xe2b53df8:
15:40:20.6305-04:00 - 3df8  00000000 e2b52010 e2b53ea4 c0080d14
a0000093 c0080d14 a0000093 ffffffff
15:40:20.6305-04:00 - 3e18  e2b53e64 00000000 e2b53eac e2b53e30
c00141e4 c0008334 e422d908 00000003
15:40:20.6305-04:00 - 3e38  00000001 00000000 e422d908 00000013
e422d90c 00000003 00000000 00000003
15:40:20.6315-04:00 - 3e58  e2b52000 e2b53eac 00000000 e2b53e78
c0083034 c0080d14 a0000093 ffffffff
15:40:20.6315-04:00 - 3e78  c0086044 00000001 00000000 e422d908
00000013 00000001 00000003 00000000
15:40:20.6315-04:00 - 3e98  e2b52000 e2b52000 e2b53edc e2b53eb0
c0083034 c0080cf4 00000000 e3fab800
15:40:20.6315-04:00 - 3eb8  e2b53edc e422d900 a0000013 e3fab800
00000023 e563f180 e2b53ef4 e2b53ee0
15:40:20.6315-04:00 - 3ed8  c02f2c9c c0082ff8 e5a4b198 00000000
e2b53f04 e2b53ef8 c02f2d1c c02f2c20
15:40:20.6315-04:00 -
15:40:20.6315-04:00 - FP: 0xe2b53e2c:
15:40:20.6325-04:00 - 3e2c  c0008334 e422d908 00000003 00000001
00000000 e422d908 00000013 e422d90c
15:40:20.6325-04:00 - 3e4c  00000003 00000000 00000003 e2b52000
e2b53eac 00000000 e2b53e78 c0083034
15:40:20.6325-04:00 - 3e6c  c0080d14 a0000093 ffffffff c0086044
00000001 00000000 e422d908 00000013
15:40:20.6325-04:00 - 3e8c  00000001 00000003 00000000 e2b52000
e2b52000 e2b53edc e2b53eb0 c0083034
15:40:20.6325-04:00 - 3eac  c0080cf4 00000000 e3fab800 e2b53edc
e422d900 a0000013 e3fab800 00000023
15:40:20.6325-04:00 - 3ecc  e563f180 e2b53ef4 e2b53ee0 c02f2c9c
c0082ff8 e5a4b198 00000000 e2b53f04
15:40:20.6335-04:00 - 3eec  e2b53ef8 c02f2d1c c02f2c20 e2b53f44
e2b53f08 c02ec1c0 c02f2d10 00000023
15:40:20.6335-04:00 - 3f0c  e422d900 c02eed58 00000400 c0069480
e563f180 b643a304 e2b52008 e2b53f78
15:40:20.6335-04:00 -
15:40:20.6335-04:00 - R0: 0xe422d888:
15:40:20.6335-04:00 - d888  00000000 b4b2cb40 00000000 00000000
00000000 00000000 f8d9b11f 09f10078
15:40:20.7805-04:00 - d8a8  3c015440 800ef000 e8bdb00a f8d985e0
20e6e14c 1c0247f0 000000d1 000000d1
15:40:20.7805-04:00 - d8c8  000000ed 00000001 00000000 00000000
00000000 00000000 00028cc9 00000020
15:40:20.7805-04:00 - d8e8  00008060 00000000 0000004c 5c00f5bd
c000f8dc 4060e92d 0000002c 00000185
15:40:20.7805-04:00 - d908  00010000 00000000 00000000 00000000
e99c10a0 e99c10a0 f8502c10 f8d0000c
15:40:20.7815-04:00 - d928  47f0e02c f0003c01 b0058003 8060e8bd
e230f8d9 e7f847f0 7379732f 72656b2f
15:40:20.7815-04:00 - d948  2f6c656e 75626564 00000067 00000000
00000000 00000000 c000f8dc 40e0e92d
15:40:20.7815-04:00 - d968  1c07b084 1c0d9000 68c01c38 f8d01c29
f8d00140 47f0e02c 00000128 00000003
15:40:20.7815-04:00 -
15:40:20.7815-04:00 - R4: 0xe422d888:
15:40:20.7815-04:00 - d888  00000000 b4b2cb40 00000000 00000000
00000000 00000000 f8d9b11f 09f10078
15:40:20.7815-04:00 - d8a8  3c015440 800ef000 e8bdb00a f8d985e0
20e6e14c 1c0247f0 000000d1 000000d1
15:40:20.7815-04:00 - d8c8  000000ed 00000001 00000000 00000000
00000000 00000000 00028cc9 00000020
15:40:20.7825-04:00 - d8e8  00008060 00000000 0000004c 5c00f5bd
c000f8dc 4060e92d 0000002c 00000185
15:40:20.7825-04:00 - d908  00010000 00000000 00000000 00000000
e99c10a0 e99c10a0 f8502c10 f8d0000c
15:40:20.7825-04:00 - d928  47f0e02c f0003c01 b0058003 8060e8bd
e230f8d9 e7f847f0 7379732f 72656b2f
15:40:20.7825-04:00 - d948  2f6c656e 75626564 00000067 00000000
00000000 00000000 c000f8dc 40e0e92d
15:40:20.7825-04:00 - d968  1c07b084 1c0d9000 68c01c38 f8d01c29
f8d00140 47f0e02c 00000128 00000003
15:40:20.7825-04:00 -
15:40:20.7825-04:00 - R6: 0xe422d88c:
15:40:20.7825-04:00 - d88c  b4b2cb40 00000000 00000000 00000000
00000000 f8d9b11f 09f10078 3c015440
15:40:20.7835-04:00 - d8ac  800ef000 e8bdb00a f8d985e0 20e6e14c
1c0247f0 000000d1 000000d1 000000ed
15:40:20.7835-04:00 - d8cc  00000001 00000000 00000000 00000000
00000000 00028cc9 00000020 00008060
15:40:20.7835-04:00 - d8ec  00000000 0000004c 5c00f5bd c000f8dc
4060e92d 0000002c 00000185 00010000
15:40:20.7835-04:00 - d90c  00000000 00000000 00000000 e99c10a0
e99c10a0 f8502c10 f8d0000c 47f0e02c
15:40:20.7835-04:00 - d92c  f0003c01 b0058003 8060e8bd e230f8d9
e7f847f0 7379732f 72656b2f 2f6c656e
15:40:20.7835-04:00 - d94c  75626564 00000067 00000000 00000000
00000000 c000f8dc 40e0e92d 1c07b084
15:40:20.7845-04:00 - d96c  1c0d9000 68c01c38 f8d01c29 f8d00140
47f0e02c 00000128 00000003 0000000f
15:40:20.7845-04:00 -
15:40:20.7845-04:00 - R10: 0xe2b51f80:
15:40:20.7845-04:00 - 1f80  af4950f0 af495120 af4950c0 00000036
c00149c8 e2b50000 00000000 e2b51fa8
15:40:20.7845-04:00 - 1fa0  c0014740 c0134b20 af4950f0 af495120
00000005 c0186201 a4ca7cd0 a4ca7cc8
15:40:20.7845-04:00 - 1fc0  af4950f0 af495120 af4950c0 00000036
00000001 b4903e88 b6df4fd9 a4ca7db0
15:40:20.7845-04:00 - 1fe0  b4878ca0 a4ca7cb8 b6e306f1 b6e198d8
600f0010 00000005 00000000 00000000
15:40:20.7855-04:00 - 2000  00000003 00000002 00000000 e40ca940
c08e78bc 00000000 00000015 e2b90e40
15:40:20.7855-04:00 - 2020  00000000 e2b52010 c088a900 e40ca940
c1987900 e88b4dc0 e2b53ea4 e2b53e10
15:40:20.7855-04:00 - 2040  c05b43c8 00000000 00000000 00000000
00000000 00000000 01010000 00000000
15:40:20.7855-04:00 - 2060  b6face30 00000000 00000000 00000000
00000000 00000000 00000000 00000000
15:40:20.7855-04:00 - Process sh (pid: 5559, stack limit = 0xe2b52240)
15:40:20.7855-04:00 - Stack: (0xe2b53e78 to 0xe2b54000)
15:40:20.7855-04:00 - 3e60:
           c0086044 00000001
15:40:20.7865-04:00 - 3e80: 00000000 e422d908 00000013 00000001
00000003 00000000 e2b52000 e2b52000
15:40:20.7865-04:00 - 3ea0: e2b53edc e2b53eb0 c0083034 c0080cf4
00000000 e3fab800 e2b53edc e422d900
15:40:20.7865-04:00 - 3ec0: a0000013 e3fab800 00000023 e563f180
e2b53ef4 e2b53ee0 c02f2c9c c0082ff8
15:40:20.7865-04:00 - 3ee0: e5a4b198 00000000 e2b53f04 e2b53ef8
c02f2d1c c02f2c20 e2b53f44 e2b53f08
15:40:20.7865-04:00 - 3f00: c02ec1c0 c02f2d10 00000023 e422d900
c02eed58 00000400 c0069480 e563f180
15:40:20.7865-04:00 - 3f20: b643a304 e2b52008 e2b53f78 00000000
00000023 00000000 e2b53f74 e2b53f48
15:40:20.7875-04:00 - 3f40: c0123ac8 c02ec008 00000043 c00149c8
00000000 00000000 e563f180 b643a304
15:40:20.7875-04:00 - 3f60: 00000000 00000023 e2b53fa4 e2b53f78
c0123c78 c0123a28 00000000 00000000
15:40:20.7875-04:00 - 3f80: b6fd5f6c 00000000 00000023 00000004
c00149c8 e2b52000 00000000 e2b53fa8
15:40:20.7875-04:00 - 3fa0: c0014740 c0123c38 b6fd5f6c 00000000
00000002 b643a304 00000023 00000002
15:40:20.7875-04:00 - 3fc0: b6fd5f6c 00000000 00000023 00000004
00000000 00000000 00000000 00000000
15:40:20.7875-04:00 - 3fe0: b643a304 be9ad7e0 b6fca04b b6f5b2ac
200f0010 00000002 a9781821 a9781c21
15:40:20.7885-04:00 - [<c0080d14>] (__wake_up_common+0x2c/0xa0) from
[<c0083034>] (__wake_up+0x48/0x5c)
15:40:20.7885-04:00 - [<c0083034>] (__wake_up+0x48/0x5c) from
[<c02f2c9c>] (put_ldisc+0x88/0xf0)
15:40:20.7885-04:00 - [<c02f2c9c>] (put_ldisc+0x88/0xf0) from
[<c02f2d1c>] (tty_ldisc_deref+0x18/0x1c)
15:40:20.7885-04:00 - [<c02f2d1c>] (tty_ldisc_deref+0x18/0x1c) from
[<c02ec1c0>] (tty_write+0x1c4/0x274)
15:40:20.7885-04:00 - [<c02ec1c0>] (tty_write+0x1c4/0x274) from
[<c0123ac8>] (vfs_write+0xac/0x188)
15:40:20.8215-04:00 - [<c0123ac8>] (vfs_write+0xac/0x188) from
[<c0123c78>] (sys_write+0x4c/0x88)
15:40:20.8225-04:00 - [<c0123c78>] (sys_write+0x4c/0x88) from
[<c0014740>] (ret_fast_syscall+0x0/0x48)
15:40:20.8225-04:00 - Code: e1a09001 e5b6c004 e50b2030 e156000c (e59c4000)


As per my understanding the tty serial driver crashes during the
put_ldisc as can be seen from the stack above.

We have back ported a latest patch (as below)  to resolve the Kernel
Bug - 'Bad Scheduling while Atomic'  w.r.t drivers/tty/tty_ldisc.c

commit bd5d7ce9afdd0cddc5ab65e20d1134ccad824418

Author: Ivo Sieben <meltedpianoman@xxxxxxxxx>

Date:   Tue Dec 18 15:48:50 2012 +0100



    tty: Only wakeup the line discipline idle queue when queue is active


However the above issue was reproduced even after the patch was
applied. Can anyone help me?

I observed that there were multiple of patches submitted after 3.8 for
race conditions/crashes on TTY LDISC in Kerbel 3.14. But As I am not
migrating the whole kernel now, I am facing the above problem.


Regards,
Priyaranjan
--
To unsubscribe from this list: send the line "unsubscribe linux-serial" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Kernel Newbies]     [Security]     [Netfilter]     [Bugtraq]     [Linux PPP]     [Linux FS]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Linmodem]     [Device Mapper]     [Linux Kernel for ARM]

  Powered by Linux