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: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:	Wed, 6 Feb 2013 10:04:24 +0800
From:	Fengguang Wu <fengguang.wu@...el.com>
To:	Felipe Balbi <balbi@...com>
Cc:	Sebastian Andrzej Siewior <bigeasy@...utronix.de>,
	linux-usb@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: [usb gadget] WARNING: at kernel/mutex.c:198 __mutex_lock_common()

Greetings,

I got the below warning and the first bad commit is

commit 19b10a8828a6cdd5a4e7e37babd5084d35641f87
Author: Sebastian Andrzej Siewior <bigeasy@...utronix.de>
Date:   Sun Dec 23 21:10:06 2012 +0100

    usb: gadget: allocate & giveback serial ports instead hard code them
    
    This patch removes gserial_setup() and gserial_cleanup() and adds
    gserial_alloc_line() and gserial_free_line() to replace them.
    
    The initial setup of u_serial happens now on module load time. A
    maximum of four TTY ports can be requested which is the current limit.
    In theory we could extend this limit, the hard limit is the number of
    available endpoints.
    alloc_tty_driver() is now called at module init time with the max
    available ports. The per-line footprint here is on 32bit is 3 * size of
    pointer + 60 bytes (for cdevs).
    The remaining memory (struct gs_port) is allocated once a port is
    requested.
    
    With this change it is possible to load g_multi and g_serial at the same
    time. GS0 receives the module that is loaded first, GS1 is received by
    the next module and so on. With the configfs interface the port number
    can be exported and the device node is more predictable. Nothing changes
    for g_serial and friends as long as one module is used.
    
    Signed-off-by: Sebastian Andrzej Siewior <bigeasy@...utronix.de>
    Signed-off-by: Felipe Balbi <balbi@...com>

[    4.625655] usb0: HOST MAC da:6c:61:74:5d:c0
[    4.626504] ------------[ cut here ]------------
[    4.627366] WARNING: at /c/kernel-tests/src/linux/kernel/mutex.c:198 __mutex_lock_common+0xcf/0x357()
[    4.627446] Pid: 1, comm: swapper Not tainted 3.8.0-rc5-00646-g2f520a0 #4
[    4.627446] Call Trace:
[    4.627446]  [<c1028524>] warn_slowpath_common+0x54/0x69
[    4.627446]  [<c147be9a>] ? __mutex_lock_common+0xcf/0x357
[    4.627446]  [<c147be9a>] ? __mutex_lock_common+0xcf/0x357
[    4.627446]  [<c10285d7>] warn_slowpath_null+0x1d/0x22
[    4.627446]  [<c147be9a>] __mutex_lock_common+0xcf/0x357
[    4.627446]  [<c123b588>] ? gserial_alloc_line+0x21/0x18d
[    4.627446]  [<c10391c0>] ? schedule_delayed_work+0x11/0x13
[    4.627446]  [<c13b7c82>] ? linkwatch_schedule_work+0x62/0x65
[    4.627446]  [<c147c15b>] mutex_lock_nested+0x39/0x3f
[    4.627446]  [<c123b588>] ? gserial_alloc_line+0x21/0x18d
[    4.627446]  [<c123b588>] gserial_alloc_line+0x21/0x18d
[    4.627446]  [<c18ffb7c>] cdc_bind+0x2b/0xf2
[    4.627446]  [<c122d9ca>] ? composite_dev_prepare+0x8e/0xc0
[    4.627446]  [<c122db66>] composite_bind+0x82/0x16a
[    4.627446]  [<c18fface>] ? udc_driver_init+0xf/0xf
[    4.627446]  [<c18fface>] ? udc_driver_init+0xf/0xf
[    4.627446]  [<c122b6c4>] udc_bind_to_driver+0x47/0xb2
[    4.627446]  [<c18fface>] ? udc_driver_init+0xf/0xf
[    4.627446]  [<c122bc07>] usb_gadget_probe_driver+0x65/0x7e
[    4.627446]  [<c122dcbb>] usb_composite_probe+0x6d/0x78
[    4.627446]  [<c18ffadb>] init+0xd/0xf
[    4.627446]  [<c18dd9ba>] do_one_initcall+0x7e/0x12e
[    4.627446]  [<c18ddb3e>] kernel_init_freeable+0xd4/0x16e
[    4.627446]  [<c18dd435>] ? do_early_param+0x7a/0x7a
[    4.627446]  [<c14737fb>] kernel_init+0xb/0xbe
[    4.627446]  [<c147e8b7>] ret_from_kernel_thread+0x1b/0x28
[    4.627446]  [<c14737f0>] ? rest_init+0x11c/0x11c
[    4.627446] ---[ end trace 8ef03ce626e1a2a9 ]---

git bisect start 2f520a0e87bbe47bf0909ce5700dd72b258991d2 cf5425bfcd6909f9831a00bc06ccb9a5b163766a --
git bisect good   #    10  2013-02-05 16:54:14  Merge branch 'sdio_acpi' into for-zhangrui
git bisect good   #    10  2013-02-05 17:24:30  Merge tag 'dwc3-for-v3.9' of git://git.kernel.org/pub/scm/linux/kernel/git/balbi/usb into usb-next
git bisect  bad   #     0  2013-02-05 17:33:09  usb: gadget: pxa25x_udc: convert to udc_start/udc_stop
git bisect good   #    15  2013-02-05 18:04:34  usb: gadget: u_serial: convert into a module
git bisect  bad   #     0  2013-02-05 18:10:01  usb: gadget: composite: introduce usb_gstrings_attach()
git bisect  bad   #     0  2013-02-05 18:11:55  usb: gadget: cdc2: use function framework for ACM
git bisect  bad   #     0  2013-02-05 18:13:49  usb: gadget: allocate & giveback serial ports instead hard code them
git bisect good   #    10  2013-02-05 18:45:13  usb: gadget: composite: add usb_remove_function()
git bisect good   #    33  2013-02-05 19:35:39  usb: gadget: composite: add usb_remove_function()
git bisect good   #    30  2013-02-05 20:31:48  Add linux-next specific files for 20130125

Thanks,
Fengguang

View attachment "dmesg-kvm-inn-52453-2013-02-01-16-07-28-3.8.0-rc5-00646-g2f520a0-4" of type "text/plain" (117044 bytes)

View attachment "2f520a0-bisect.log" of type "text/plain" (6698 bytes)

View attachment ".config-bisect" of type "text/plain" (55222 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ