lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAL_JsqKsMdarvdfL6LTejmBQNK1uOrBtB9X+dscOeESJqx0C-A@mail.gmail.com>
Date:   Fri, 21 Oct 2016 08:51:49 -0500
From:   Rob Herring <robh@...nel.org>
To:     Mike Galbraith <umgwanakikbuti@...il.com>
Cc:     LKML <linux-kernel@...r.kernel.org>,
        Peter Hurley <peter@...leysoftware.com>
Subject: Re: 4.9 regression/bisection - 761ed4a94582 tty: serial_core: convert
 uart_close to use tty_port_close

On Fri, Oct 21, 2016 at 7:45 AM, Mike Galbraith
<umgwanakikbuti@...il.com> wrote:
> Greetings,
>
> My old DL980 G7 is exploding on reboot with master, with only the first
> couple lines actually making it to the console.  Once (and only once)
> during bisection it did manage to get the below emitted.

Does this patch[1] fix things for you? Sorry, only the reply seems to
be in the archives.

Rob

[1] https://lkml.org/lkml/2016/10/19/394

>
> [  358.315713] BUG: unable to handle kernel NULL pointer dereference at 00000000000001e0
> [  358.400610] IP: [<ffffffff81414b4c>] tty_wakeup+0xc/0x70
> [  358.460221] PGD 0
> [  358.481987] Oops: 0000 [#1] SMP
> [  358.515036] Dumping ftrace buffer:
> [  358.555845]    (ftrace buffer empty)
> [  358.591789] Modules linked in: autofs4(E) edd(E) af_packet(E) cpufreq_conservative(E) cpufreq_userspace(E) fuse(E) loop(E) md_mod(E) dm_mod(E) vhost_net(E) macvtap(E) macvlan(E) vhost(E) tun(E) ipmi_ssif(E) iTCO_wdt(E) kvm_intel(E) iTCO_vendor_support(E) gpio_ich(E) ipmi_si(E) kvm(E) joydev(E) i7core_edac(E) lpc_ich(E) irqbypass(E) bnx2(E) netxen_nic(E) shpchp(E) sr_mod(E) pcspkr(E) ipmi_msghandler(E) mfd_core(E) cdrom(E) edac_core(E) hpilo(E) hpwdt(E) pcc_cpufreq(E) sg(E) fjes(E) hid_generic(E) button(E) acpi_cpufreq(E) ehci_pci(E) acpi_power_meter(E) ext4(E) mbcache(E) jbd2(E) crc16(E) usbhid(E) uhci_hcd(E) ehci_hcd(E) usbcore(E) sd_mod(E) thermal(E) scsi_dh_hp_sw(E) scsi_dh_emc(E) scsi_dh_rdac(E) scsi_dh_alua(E) ata_generic(E) ata_piix(E) libata(E) hpsa(E) scsi_transport_sas(E) cciss(E) scsi_mod(E)
> [  359.376789] CPU: 0 PID: 1698 Comm: kworker/0:4 Tainted: G            E   4.9.0-default #230
> [  359.479980] Hardware name: Hewlett-Packard ProLiant DL980 G7, BIOS P66 07/07/2010
> [  359.568962] task: ffff880273eba240 task.stack: ffffc90001fe4000
> [  359.635241] RIP: 0010:[<ffffffff81414b4c>]  [<ffffffff81414b4c>] tty_wakeup+0xc/0x70
> [  359.720193] RSP: 0018:ffff88027fc03df8  EFLAGS: 00010082
> [  359.781228] RAX: ffff880274e901a8 RBX: ffffffff820941e0 RCX: 0000000000000000
> [  359.863437] RDX: 000000000000001b RSI: 00000000000002f8 RDI: 0000000000000000
> [  359.946407] RBP: ffff88027fc03e08 R08: ffff88027fc17cc0 R09: 0000000000000000
> [  360.024457] R10: ffffffffffffffe4 R11: ffffffffffffff9e R12: ffff880274e901a8
> [  360.105862] R13: 0000000000000000 R14: 0000000000000020 R15: 00000000000000c2
> [  360.187865] FS:  0000000000000000(0000) GS:ffff88027fc00000(0000) knlGS:0000000000000000
> [  360.278200] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
> [  360.345712] CR2: 00000000000000b8 CR3: 0000000001c06000 CR4: 00000000000006f0
> [  360.427968] Stack:
> [  360.449955]  ffffffff820941e0 ffff880274e901a8 ffff88027fc03e18 ffffffff814319d1
> [  360.535162]  ffff88027fc03e40 ffffffff81439e20 ffffffff820941e0 0000000000000060
> [  360.625426]  0000000000000046 ffff88027fc03e78 ffffffff8143a05d ffffffff820941e0
> [  360.709070] Call Trace:
> [  360.736862]  <IRQ>
> [  360.756285]  [<ffffffff814319d1>] uart_write_wakeup+0x21/0x30
> [  360.823321]  [<ffffffff81439e20>] serial8250_tx_chars+0x220/0x280
> [  360.894461]  [<ffffffff8143a05d>] serial8250_handle_irq.part.22+0xdd/0x100
> [  360.970372]  [<ffffffff8143a0e7>] serial8250_default_handle_irq+0x47/0x70
> [  361.046833]  [<ffffffff81435623>] serial8250_interrupt+0x63/0x130
> [  361.109593]  [<ffffffff810cc82f>] __handle_irq_event_percpu+0x3f/0x1a0
> [  361.177384]  [<ffffffff810cc9b3>] handle_irq_event_percpu+0x23/0x60
> [  361.240864]  [<ffffffff810cca2e>] handle_irq_event+0x3e/0x60
> [  361.302754]  [<ffffffff810d0089>] handle_edge_irq+0x99/0x150
> [  361.386869]  [<ffffffff8101ec7d>] handle_irq+0x1d/0x30
> [  361.445032]  [<ffffffff81600fad>] do_IRQ+0x4d/0xd0
> [  361.494099]  [<ffffffff815ff18c>] common_interrupt+0x8c/0x8c
> [  361.552523]  <EOI>
> [  361.572270]  [<ffffffff810bcc9f>] ? native_queued_spin_lock_slowpath+0x12f/0x1a0
> [  361.652790]  [<ffffffff811804e4>] queued_spin_lock_slowpath+0xb/0xf
> [  361.725628]  [<ffffffff815fe5b0>] _raw_spin_lock+0x20/0x30
> [  361.789215]  [<ffffffff811c7339>] find_vmap_area+0x19/0x60
> [  361.852010]  [<ffffffff811c8b41>] remove_vm_area+0x11/0x70
> [  361.911002]  [<ffffffff811c8bca>] __vunmap+0x2a/0xd0
> [  361.967589]  [<ffffffff811c8cde>] vfree+0x2e/0x70
> [  362.020037]  [<ffffffff8106dec5>] put_task_stack+0x75/0x110
> [  362.083000]  [<ffffffff81098977>] finish_task_switch+0x1c7/0x240
> [  362.149896]  [<ffffffff815fa6e4>] __schedule+0x224/0x6a0
> [  362.212147]  [<ffffffff815fab96>] schedule+0x36/0x80
> [  362.268175]  [<ffffffff8108acf2>] worker_thread+0x1a2/0x4b0
> [  362.332810]  [<ffffffff8108ab50>] ? rescuer_thread+0x350/0x350
> [  362.399906]  [<ffffffff810904ca>] kthread+0xca/0xe0
> [  362.457034]  [<ffffffff81090400>] ? kthread_park+0x60/0x60
> [  362.519201]  [<ffffffff815fea55>] ret_from_fork+0x25/0x30
> [  362.582964] Code: 00 00 48 85 c0 74 05 48 89 df ff d0 4c 89 ee 4c 89 e7 e8 18 98 1e 00 5b 41 5c 41 5d 5d c3 90 66 66 66 66 90 55 48 89 e5 41 54 53 <48> 8b 87 e0 01 00 00 48 89 fb a8 20 75 20 48 8d bb 30 02 00 00
> [  362.799640] RIP  [<ffffffff81414b4c>] tty_wakeup+0xc/0x70
> [  362.860880]  RSP <ffff88027fc03df8>
> [  362.901975] CR2: 00000000000001e0
>
> 761ed4a94582ab291aa24dcbea4e01e8936488c8 is the first bad commit
> commit 761ed4a94582ab291aa24dcbea4e01e8936488c8
> Author: Rob Herring <robh@...nel.org>
> Date:   Mon Aug 22 17:39:10 2016 -0500
>
>     tty: serial_core: convert uart_close to use tty_port_close
>
>     tty_port_close handles much of the common parts of tty close. Convert
>     uart_close to use it and move the serial_core specific parts into
>     tty_port.shutdown function. This will be needed to use tty_port functions
>     directly from in kernel clients.
>
>     This change causes ops->stop_rx() to be called after uart_wait_until_sent()
>     is called which I think should be fine. Otherwise, the sequence of the
>     close should be the same.
>
>     Cc: Peter Hurley <peter@...leysoftware.com>
>     Signed-off-by: Rob Herring <robh@...nel.org>
>     Acked-by: Alan Cox <alan@...ux.intel.com>
>     Signed-off-by: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
>
> :040000 040000 91a49bab72cc416842d1058b43896c213a64ab5d e84cedcd2ce818ea3aafbd4e7221b283eaec45f4 M      drivers
>
> git bisect start
> # good: [c8d2bc9bc39ebea8437fd974fdbc21847bb897a3] Linux 4.8
> git bisect good c8d2bc9bc39ebea8437fd974fdbc21847bb897a3
> # bad: [c3f8f7fa8b19e274e7eb99dee428ad3a9b2ad8eb] Merge tag 'platform-drivers-x86-v4.9-2' of git://git.infradead.org/users/dvhart/linux-platform-drivers-x86
> git bisect bad c3f8f7fa8b19e274e7eb99dee428ad3a9b2ad8eb
> # bad: [41844e36206be90cd4d962ea49b0abc3612a99d0] Merge tag 'staging-4.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging
> git bisect bad 41844e36206be90cd4d962ea49b0abc3612a99d0
> # bad: [d268dbe76a53d72cc41316eb59e7968db60e77ad] Merge tag 'pinctrl-v4.9-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl
> git bisect bad d268dbe76a53d72cc41316eb59e7968db60e77ad
> # bad: [02bafd96f3a5d8e610b19033ffec55b92459aaae] Merge tag 'docs-4.9' of git://git.lwn.net/linux
> git bisect bad 02bafd96f3a5d8e610b19033ffec55b92459aaae
> # good: [9929780e86854833e649b39b290b5fe921eb1701] Merge tag 'driver-core-4.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
> git bisect good 9929780e86854833e649b39b290b5fe921eb1701
> # bad: [77b0a4aa0732f1856aef85b8db085864e5971a14] Merge tag 'hwmon-for-linus-v4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging
> git bisect bad 77b0a4aa0732f1856aef85b8db085864e5971a14
> # good: [f21ca2c9999872da113a1fc70abb527129b72af3] Merge tag 'usb-ci-v4.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/peter.chen/usb into usb-testing
> git bisect good f21ca2c9999872da113a1fc70abb527129b72af3
> # bad: [e6dce825fba05f447bd22c865e27233182ab3d79] Merge tag 'tty-4.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty
> git bisect bad e6dce825fba05f447bd22c865e27233182ab3d79
> # bad: [5d7519dfc963ec8b6a10a51356840580fc005a1e] serial: mxs-auart: Disable clock on error path
> git bisect bad 5d7519dfc963ec8b6a10a51356840580fc005a1e
> # bad: [a13e19cf3dc1080cf8a3a174cefd9199610faed7] serial: 8250_lpss: split LPSS driver to separate module
> git bisect bad a13e19cf3dc1080cf8a3a174cefd9199610faed7
> # bad: [5887ad43ee02a00f17a6132b7fb256dc6865474c] tty: serial: fsl_lpuart: Use cyclic DMA for Rx
> git bisect bad 5887ad43ee02a00f17a6132b7fb256dc6865474c
> # bad: [761ed4a94582ab291aa24dcbea4e01e8936488c8] tty: serial_core: convert uart_close to use tty_port_close
> git bisect bad 761ed4a94582ab291aa24dcbea4e01e8936488c8
> # good: [2426fbc77faef57c80a573303af6543531e2efa3] tty: amba-pl011: probe ZTE device from AMBA bus with a pseudo-ID
> git bisect good 2426fbc77faef57c80a573303af6543531e2efa3
> # good: [ebaa81c7287edd40dd4899e5d93a20e7a2b938e7] serial: samsung: Register cpufreq notifier only on S3C24xx
> git bisect good ebaa81c7287edd40dd4899e5d93a20e7a2b938e7
> # good: [b3b57646186400d4f54652ab7bbf55f5764d9467] tty: serial_core: convert uart_open to use tty_port_open
> git bisect good b3b57646186400d4f54652ab7bbf55f5764d9467

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ