All of lore.kernel.org
 help / color / mirror / Atom feed
* usb: mon: freeing active timer
@ 2014-04-24 17:40 Sasha Levin
  2014-04-24 19:24 ` Greg KH
  0 siblings, 1 reply; 4+ messages in thread
From: Sasha Levin @ 2014-04-24 17:40 UTC (permalink / raw)
  To: linux-usb; +Cc: Greg KH, Dave Jones, LKML

Hi all,

While fuzzing with trinity inside a KVM tools guest running the latest -next
kernel I've stumbled on the following:

[ 1361.390880] WARNING: CPU: 10 PID: 24274 at lib/debugobjects.c:260 debug_print_object+0x8c/0xb0()
[ 1361.391203] ODEBUG: free active (active state 0) object type: timer_list hint: delayed_work_timer_fn+0x0/0x20
[ 1361.391203] Modules linked in:
[ 1361.391203] CPU: 10 PID: 24274 Comm: trinity-c83 Not tainted 3.15.0-rc2-next-20140423-sasha-00018-gc4ff6c4 #408
[ 1361.391203]  0000000000000009 ffff8801de341c78 ffffffffb85271f2 0000000000000001
[ 1361.391203]  ffff8801de341cc8 ffff8801de341cb8 ffffffffb515afcc ffff8801eb3ebd98
[ 1361.391203]  ffff8801eb751870 ffffffffb9e76200 ffffffffb98dc502 ffffffffbc702550
[ 1361.391203] Call Trace:
[ 1361.391203] dump_stack (lib/dump_stack.c:52)
[ 1361.391203] warn_slowpath_common (kernel/panic.c:430)
[ 1361.391203] warn_slowpath_fmt (kernel/panic.c:445)
[ 1361.391203] debug_print_object (lib/debugobjects.c:262)
[ 1361.391203] ? __queue_work (kernel/workqueue.c:1452)
[ 1361.391203] __debug_check_no_obj_freed (lib/debugobjects.c:697)
[ 1361.391203] debug_check_no_obj_freed (lib/debugobjects.c:726)
[ 1361.391203] kmem_cache_free (mm/slub.c:2689 mm/slub.c:2717)
[ 1361.391203] ? kmem_cache_destroy (mm/slab_common.c:363)
[ 1361.391203] kmem_cache_destroy (mm/slab_common.c:363)
[ 1361.391203] mon_text_release (drivers/usb/mon/mon_text.c:643)
[ 1361.391203] __fput (fs/file_table.c:217)
[ 1361.391203] ____fput (fs/file_table.c:253)
[ 1361.391203] task_work_run (kernel/task_work.c:125 (discriminator 1))
[ 1361.391203] do_notify_resume (include/linux/tracehook.h:196 arch/x86/kernel/signal.c:751)
[ 1361.391203] int_signal (arch/x86/kernel/entry_64.S:807)


Thanks,
Sasha

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: usb: mon: freeing active timer
  2014-04-24 17:40 usb: mon: freeing active timer Sasha Levin
@ 2014-04-24 19:24 ` Greg KH
  2014-04-24 19:35   ` Sasha Levin
  0 siblings, 1 reply; 4+ messages in thread
From: Greg KH @ 2014-04-24 19:24 UTC (permalink / raw)
  To: Sasha Levin; +Cc: linux-usb, Dave Jones, LKML

On Thu, Apr 24, 2014 at 01:40:14PM -0400, Sasha Levin wrote:
> Hi all,
> 
> While fuzzing with trinity inside a KVM tools guest running the latest -next
> kernel I've stumbled on the following:
> 
> [ 1361.390880] WARNING: CPU: 10 PID: 24274 at lib/debugobjects.c:260 debug_print_object+0x8c/0xb0()
> [ 1361.391203] ODEBUG: free active (active state 0) object type: timer_list hint: delayed_work_timer_fn+0x0/0x20
> [ 1361.391203] Modules linked in:
> [ 1361.391203] CPU: 10 PID: 24274 Comm: trinity-c83 Not tainted 3.15.0-rc2-next-20140423-sasha-00018-gc4ff6c4 #408
> [ 1361.391203]  0000000000000009 ffff8801de341c78 ffffffffb85271f2 0000000000000001
> [ 1361.391203]  ffff8801de341cc8 ffff8801de341cb8 ffffffffb515afcc ffff8801eb3ebd98
> [ 1361.391203]  ffff8801eb751870 ffffffffb9e76200 ffffffffb98dc502 ffffffffbc702550
> [ 1361.391203] Call Trace:
> [ 1361.391203] dump_stack (lib/dump_stack.c:52)
> [ 1361.391203] warn_slowpath_common (kernel/panic.c:430)
> [ 1361.391203] warn_slowpath_fmt (kernel/panic.c:445)
> [ 1361.391203] debug_print_object (lib/debugobjects.c:262)
> [ 1361.391203] ? __queue_work (kernel/workqueue.c:1452)
> [ 1361.391203] __debug_check_no_obj_freed (lib/debugobjects.c:697)
> [ 1361.391203] debug_check_no_obj_freed (lib/debugobjects.c:726)
> [ 1361.391203] kmem_cache_free (mm/slub.c:2689 mm/slub.c:2717)
> [ 1361.391203] ? kmem_cache_destroy (mm/slab_common.c:363)
> [ 1361.391203] kmem_cache_destroy (mm/slab_common.c:363)
> [ 1361.391203] mon_text_release (drivers/usb/mon/mon_text.c:643)
> [ 1361.391203] __fput (fs/file_table.c:217)
> [ 1361.391203] ____fput (fs/file_table.c:253)
> [ 1361.391203] task_work_run (kernel/task_work.c:125 (discriminator 1))
> [ 1361.391203] do_notify_resume (include/linux/tracehook.h:196 arch/x86/kernel/signal.c:751)
> [ 1361.391203] int_signal (arch/x86/kernel/entry_64.S:807)

So you were running usbmon at the time?  Were you actually monitoring a
specific USB device/bus, or something else?

thanks,

greg k-h

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: usb: mon: freeing active timer
  2014-04-24 19:24 ` Greg KH
@ 2014-04-24 19:35   ` Sasha Levin
  2014-04-24 19:54     ` Alan Stern
  0 siblings, 1 reply; 4+ messages in thread
From: Sasha Levin @ 2014-04-24 19:35 UTC (permalink / raw)
  To: Greg KH; +Cc: linux-usb, Dave Jones, LKML

On 04/24/2014 03:24 PM, Greg KH wrote:
> On Thu, Apr 24, 2014 at 01:40:14PM -0400, Sasha Levin wrote:
>> > Hi all,
>> > 
>> > While fuzzing with trinity inside a KVM tools guest running the latest -next
>> > kernel I've stumbled on the following:
>> > 
>> > [ 1361.390880] WARNING: CPU: 10 PID: 24274 at lib/debugobjects.c:260 debug_print_object+0x8c/0xb0()
>> > [ 1361.391203] ODEBUG: free active (active state 0) object type: timer_list hint: delayed_work_timer_fn+0x0/0x20
>> > [ 1361.391203] Modules linked in:
>> > [ 1361.391203] CPU: 10 PID: 24274 Comm: trinity-c83 Not tainted 3.15.0-rc2-next-20140423-sasha-00018-gc4ff6c4 #408
>> > [ 1361.391203]  0000000000000009 ffff8801de341c78 ffffffffb85271f2 0000000000000001
>> > [ 1361.391203]  ffff8801de341cc8 ffff8801de341cb8 ffffffffb515afcc ffff8801eb3ebd98
>> > [ 1361.391203]  ffff8801eb751870 ffffffffb9e76200 ffffffffb98dc502 ffffffffbc702550
>> > [ 1361.391203] Call Trace:
>> > [ 1361.391203] dump_stack (lib/dump_stack.c:52)
>> > [ 1361.391203] warn_slowpath_common (kernel/panic.c:430)
>> > [ 1361.391203] warn_slowpath_fmt (kernel/panic.c:445)
>> > [ 1361.391203] debug_print_object (lib/debugobjects.c:262)
>> > [ 1361.391203] ? __queue_work (kernel/workqueue.c:1452)
>> > [ 1361.391203] __debug_check_no_obj_freed (lib/debugobjects.c:697)
>> > [ 1361.391203] debug_check_no_obj_freed (lib/debugobjects.c:726)
>> > [ 1361.391203] kmem_cache_free (mm/slub.c:2689 mm/slub.c:2717)
>> > [ 1361.391203] ? kmem_cache_destroy (mm/slab_common.c:363)
>> > [ 1361.391203] kmem_cache_destroy (mm/slab_common.c:363)
>> > [ 1361.391203] mon_text_release (drivers/usb/mon/mon_text.c:643)
>> > [ 1361.391203] __fput (fs/file_table.c:217)
>> > [ 1361.391203] ____fput (fs/file_table.c:253)
>> > [ 1361.391203] task_work_run (kernel/task_work.c:125 (discriminator 1))
>> > [ 1361.391203] do_notify_resume (include/linux/tracehook.h:196 arch/x86/kernel/signal.c:751)
>> > [ 1361.391203] int_signal (arch/x86/kernel/entry_64.S:807)
> So you were running usbmon at the time?  Were you actually monitoring a
> specific USB device/bus, or something else?

This was inside a vm with no actual physical USB devices:

# lsusb -t
lsusb: cannot open "/var/lib/usbutils/usb.ids", No such file or directory
/:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ozwpan/8p, 12M
/:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=dummy_hcd/1p, 480M
    |__ Port 1: Dev 2, If 0, Class=comm., Driver=cdc_eem, 480M

Since it happened while I was fuzzing, I'm not sure what exactly was getting
monitored at that point.


Thanks,
Sasha

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: usb: mon: freeing active timer
  2014-04-24 19:35   ` Sasha Levin
@ 2014-04-24 19:54     ` Alan Stern
  0 siblings, 0 replies; 4+ messages in thread
From: Alan Stern @ 2014-04-24 19:54 UTC (permalink / raw)
  To: Sasha Levin; +Cc: Greg KH, linux-usb, Dave Jones, LKML

On Thu, 24 Apr 2014, Sasha Levin wrote:

> On 04/24/2014 03:24 PM, Greg KH wrote:
> > On Thu, Apr 24, 2014 at 01:40:14PM -0400, Sasha Levin wrote:
> >> > Hi all,
> >> > 
> >> > While fuzzing with trinity inside a KVM tools guest running the latest -next
> >> > kernel I've stumbled on the following:
> >> > 
> >> > [ 1361.390880] WARNING: CPU: 10 PID: 24274 at lib/debugobjects.c:260 debug_print_object+0x8c/0xb0()
> >> > [ 1361.391203] ODEBUG: free active (active state 0) object type: timer_list hint: delayed_work_timer_fn+0x0/0x20
> >> > [ 1361.391203] Modules linked in:
> >> > [ 1361.391203] CPU: 10 PID: 24274 Comm: trinity-c83 Not tainted 3.15.0-rc2-next-20140423-sasha-00018-gc4ff6c4 #408
> >> > [ 1361.391203]  0000000000000009 ffff8801de341c78 ffffffffb85271f2 0000000000000001
> >> > [ 1361.391203]  ffff8801de341cc8 ffff8801de341cb8 ffffffffb515afcc ffff8801eb3ebd98
> >> > [ 1361.391203]  ffff8801eb751870 ffffffffb9e76200 ffffffffb98dc502 ffffffffbc702550
> >> > [ 1361.391203] Call Trace:
> >> > [ 1361.391203] dump_stack (lib/dump_stack.c:52)
> >> > [ 1361.391203] warn_slowpath_common (kernel/panic.c:430)
> >> > [ 1361.391203] warn_slowpath_fmt (kernel/panic.c:445)
> >> > [ 1361.391203] debug_print_object (lib/debugobjects.c:262)
> >> > [ 1361.391203] ? __queue_work (kernel/workqueue.c:1452)
> >> > [ 1361.391203] __debug_check_no_obj_freed (lib/debugobjects.c:697)
> >> > [ 1361.391203] debug_check_no_obj_freed (lib/debugobjects.c:726)
> >> > [ 1361.391203] kmem_cache_free (mm/slub.c:2689 mm/slub.c:2717)
> >> > [ 1361.391203] ? kmem_cache_destroy (mm/slab_common.c:363)
> >> > [ 1361.391203] kmem_cache_destroy (mm/slab_common.c:363)
> >> > [ 1361.391203] mon_text_release (drivers/usb/mon/mon_text.c:643)
> >> > [ 1361.391203] __fput (fs/file_table.c:217)
> >> > [ 1361.391203] ____fput (fs/file_table.c:253)
> >> > [ 1361.391203] task_work_run (kernel/task_work.c:125 (discriminator 1))
> >> > [ 1361.391203] do_notify_resume (include/linux/tracehook.h:196 arch/x86/kernel/signal.c:751)
> >> > [ 1361.391203] int_signal (arch/x86/kernel/entry_64.S:807)
> > So you were running usbmon at the time?  Were you actually monitoring a
> > specific USB device/bus, or something else?
> 
> This was inside a vm with no actual physical USB devices:
> 
> # lsusb -t
> lsusb: cannot open "/var/lib/usbutils/usb.ids", No such file or directory
> /:  Bus 02.Port 1: Dev 1, Class=root_hub, Driver=ozwpan/8p, 12M
> /:  Bus 01.Port 1: Dev 1, Class=root_hub, Driver=dummy_hcd/1p, 480M
>     |__ Port 1: Dev 2, If 0, Class=comm., Driver=cdc_eem, 480M
> 
> Since it happened while I was fuzzing, I'm not sure what exactly was getting
> monitored at that point.

This is odd because the warning message indicates the something 
containing an active timer (a delayed_work structure?) was deallocated.  
But usbmon doesn't use either timers or work queues, and as far as I 
can see, neither does anything involved in kmem_cache management.

Alan Stern


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2014-04-24 19:54 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-04-24 17:40 usb: mon: freeing active timer Sasha Levin
2014-04-24 19:24 ` Greg KH
2014-04-24 19:35   ` Sasha Levin
2014-04-24 19:54     ` Alan Stern

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.