[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20130625083615.GA25344@localhost>
Date: Tue, 25 Jun 2013 16:36:15 +0800
From: Fengguang Wu <fengguang.wu@...el.com>
To: fengguang.wu@...el.com, Hans Verkuil <hans.verkuil@...co.com>
Cc: Mauro Carvalho Chehab <mchehab@...hat.com>,
linux-media@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: WARNING: at drivers/media/v4l2-core/v4l2-dev.c:775
__video_register_device()
Greetings,
I got the below dmesg and the first bad commit is
commit 1c1d86a1ea07506c070cfb217a009d53990bdeb0
Author: Hans Verkuil <hans.verkuil@...co.com>
Date: Wed Jun 12 11:15:12 2013 -0300
[media] v4l2: always require v4l2_dev, rename parent to dev_parent
The last set of drivers still using the parent field of video_device instead
of the v4l2_dev field have been converted, so v4l2_dev is now always set.
A proper pointer to v4l2_dev is necessary these days otherwise the advanced
debugging ioctls will not work when addressing sub-devices. It also ensures
that the core can always go from a video_device struct to the top-level
v4l2_device struct.
There is still one single use case for the parent pointer: if there are
multiple busses, each being the parent of one or more video nodes, and if
they all share the same v4l2_device struct. In that case one still needs a
parent pointer since the v4l2_device struct can only refer to a single
parent device. The cx88 driver is one such case. Unfortunately, the cx88
failed to set the parent pointer since 3.6. The next patch will correct this.
In order to support this use-case the parent pointer is only renamed to
dev_parent, not removed altogether. It has been renamed to ensure that the
compiler will catch any (possibly out-of-tree) drivers that were missed during
the conversion.
Signed-off-by: Hans Verkuil <hans.verkuil@...co.com>
Acked-by: Sakari Ailus <sakari.ailus@....fi>
Acked-by: Laurent Pinchart <laurent.pinchart@...asonboard.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@...hat.com>
[ 1.203580] IR MCE Keyboard/mouse protocol handler initialized
[ 1.205350] ------------[ cut here ]------------
[ 1.206821] WARNING: at /c/kernel-tests/src/tip/drivers/media/v4l2-core/v4l2-dev.c:775 __video_register_device+0x55/0xbc7()
[ 1.210029] CPU: 0 PID: 1 Comm: swapper Not tainted 3.10.0-rc7-00478-ge90d833 #28
[ 1.212515] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
[ 1.214172] ffffffff810a5186 ffff88000d865dd8 ffffffff8172b4f7 ffff88000d865e10
[ 1.217032] ffffffff810878a9 0000000000000000 ffffffffffffffff ffff8800062f7510
[ 1.219851] 0000000000000002 0000000000000000 ffff88000d865e20 ffffffff81087983
[ 1.222661] Call Trace:
[ 1.223677] [<ffffffff810a5186>] ? up+0xf/0x39
[ 1.225121] [<ffffffff8172b4f7>] dump_stack+0x19/0x1b
[ 1.226679] [<ffffffff810878a9>] warn_slowpath_common+0x5b/0x73
[ 1.234994] [<ffffffff81087983>] warn_slowpath_null+0x15/0x17
[ 1.236722] [<ffffffff8151cf7c>] __video_register_device+0x55/0xbc7
[ 1.238555] [<ffffffff8171fb86>] ? klist_init+0x31/0x40
[ 1.240163] [<ffffffff8136a944>] ? device_private_init+0x39/0x5e
[ 1.241917] [<ffffffff81537c8a>] fm_v4l2_init_video_device+0x89/0x1e8
[ 1.243789] [<ffffffff81f45951>] fm_drv_init+0x72/0xba
[ 1.245353] [<ffffffff81f458df>] ? wl1273_fm_radio_driver_init+0x12/0x12
[ 1.247249] [<ffffffff81f15db5>] do_one_initcall+0x99/0x12e
[ 1.248911] [<ffffffff81f15faf>] kernel_init_freeable+0x165/0x1e6
[ 1.250739] [<ffffffff81f1570c>] ? do_early_param+0x88/0x88
[ 1.252414] [<ffffffff8172046a>] ? rest_init+0xce/0xce
[ 1.253954] [<ffffffff81720473>] kernel_init+0x9/0xd1
[ 1.255510] [<ffffffff817314ba>] ret_from_fork+0x7a/0xb0
[ 1.257120] [<ffffffff8172046a>] ? rest_init+0xce/0xce
[ 1.258734] ---[ end trace b4db00f0f9ac731d ]---
git bisect start e90d833ed71ac503e3b33b7ad970fc52cb67d9ed 9e895ace5d82df8929b16f58e9f515f6d54ab82d --
git bisect good 0bde6c3e4c4d594eb66200e37d9aec6ed45a8543 # 13:59 37+ [media] bttv: fix querystd
git bisect bad 05959be7b646e8755a9339ad13e3b87849249f90 # 14:08 0- [media] uvc: Depend on VIDEO_V4L2
git bisect good b60f9aa1a9fcf69df963c1f06ee0594d836f6760 # 14:14 37+ [media] f_uvc: add v4l2_device and replace parent with v4l2_dev
git bisect bad 8b0706802fede74a2ee0341499f0b4586118a7d3 # 14:15 0- [media] soc_camera: Fix checkpatch warning in ov9640.c
git bisect bad a76a0b338112580593af0f68327e3cc204d4d8e7 # 14:16 0- [media] media: davinci: vpif_capture: remove unnecessary loop for IRQ resource
git bisect bad 746cb2c31f7d88bac5453e3af45d95670a00ffe8 # 14:17 0- [media] pvrusb2: Remove unused variable
git bisect bad 1c1d86a1ea07506c070cfb217a009d53990bdeb0 # 14:20 0- [media] v4l2: always require v4l2_dev, rename parent to dev_parent
git bisect good d481c581dfe43be11a17728b5c84c2d4b5beecb2 # 14:26 37+ [media] saa7134: use v4l2_dev instead of the deprecated parent field
git bisect good d481c581dfe43be11a17728b5c84c2d4b5beecb2 # 14:30 111+ [media] saa7134: use v4l2_dev instead of the deprecated parent field
git bisect bad e90d833ed71ac503e3b33b7ad970fc52cb67d9ed # 14:30 0- Merge remote-tracking branch 'scsi/for-next' into devel-cairo-x86_64-201306251052
git bisect good 79981489b8b25b70e1c36d08ab86dbb1fb88f0a6 # 14:55 111+ Revert "[media] v4l2: always require v4l2_dev, rename parent to dev_parent"
git bisect good f97f7d2d27bf092b40babda9ded29cc85cf77eec # 15:10 111+ Merge tag 'spi-v3.10-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi
git bisect good 34fe2f4be68a2fe90c5aaa67bc906a191799ec66 # 15:20 111+ Add linux-next specific files for 20130624
Thanks,
Fengguang
View attachment "dmesg-kvm-lkp-sbx04-1167-20130625154150--" of type "text/plain" (42041 bytes)
View attachment "bisect-e90d833ed71ac503e3b33b7ad970fc52cb67d9ed-x86_64-randconfig-c14-0624-fm_drv_init+-x-42751.log" of type "text/plain" (16370 bytes)
View attachment ".config-bisect" of type "text/plain" (81167 bytes)
Powered by blists - more mailing lists