Bug 16068 - Intel i915 drm driver doesnot correctly enumerates output
Summary: Intel i915 drm driver doesnot correctly enumerates output
Status: RESOLVED CODE_FIX
Alias: None
Product: Drivers
Classification: Unclassified
Component: Video(DRI - Intel) (show other bugs)
Hardware: All Linux
: P1 high
Assignee: drivers_video-dri-intel@kernel-bugs.osdl.org
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-05-28 13:32 UTC by vadim
Modified: 2010-07-23 20:12 UTC (History)
2 users (show)

See Also:
Kernel Version: 2.6.34-rc7
Tree: Mainline
Regression: No


Attachments
patch solving the problem (5.36 KB, patch)
2010-05-28 13:32 UTC, vadim
Details | Diff

Description vadim 2010-05-28 13:32:27 UTC
Created attachment 26567 [details]
patch solving the problem

i915 cannot correctly attach svdo->vga converter.
the problem is in counting outputs of same type.
svdo output connector first created, but then output type is modified. But output type modification should follow "devices of that type" counter modification

patch solving this problem for i915 is applyed

need to check is modification required to other drm driver (just with grep -r connector_type * on /drivers/gpu/drm).

------------[ cut here ]------------
WARNING: at fs/sysfs/dir.c:451 sysfs_add_one+0xb2/0xc7()
Hardware name:  
sysfs: cannot create duplicate filename '/devices/pci0000:00/0000:00:02.0/drm/card0/card0-VGA-1'
Modules linked in: i915(+) drm_kms_helper drm i2c_algo_bit i2c_core video output
Pid: 71, comm: modprobe Not tainted 2.6.34-rc7 #4
Call Trace:
[<c043b1d6>] warn_slowpath_common+0x6a/0x81
[<c05257d0>] ? sysfs_add_one+0xb2/0xc7
[<c043b22b>] warn_slowpath_fmt+0x29/0x2c
[<c05257d0>] sysfs_add_one+0xb2/0xc7
[<c052582d>] create_dir+0x48/0x71
[<c0525888>] sysfs_create_dir+0x32/0x42
[<c07b77a2>] ? _raw_spin_unlock+0x22/0x25
[<c05bb320>] kobject_add_internal+0xef/0x1b3
[<c05bb495>] kobject_add_varg+0x31/0x3d
[<c05bb50b>] kobject_add+0x43/0x49
[<c06604fe>] device_add+0xba/0x4b1
[<c0667604>] ? pm_runtime_init+0xf4/0xfa
[<c066750d>] ? device_pm_init+0x33/0x36
[<c066090c>] device_register+0x17/0x1a
[<f82a19c6>] drm_sysfs_connector_add+0x92/0x193 [drm]
[<c0660358>] ? device_unregister+0x35/0x53
[<f8919e3b>] intel_sdvo_output_setup+0x291/0x2ac [i915]
[<f8910002>] ? ironlake_crtc_dpms+0x70/0xb5d [i915]
[<f891aeca>] intel_sdvo_detect+0xaf/0xd5 [i915]
[<f8352107>] drm_helper_probe_single_connector_modes+0x9f/0x23e [drm_kms_helper]
[<f83522dd>] drm_helper_probe_connector_modes+0x37/0x63 [drm_kms_helper]
[<f8353006>] drm_helper_initial_config+0x2a/0x52 [drm_kms_helper]
[<f890082e>] i915_driver_load+0xc54/0xd00 [i915]
[<f829fc1e>] drm_get_dev+0x31b/0x3f2 [drm]
[<f8920f3f>] i915_pci_probe+0x12/0xbc [i915]
[<c05d246c>] local_pci_probe+0x13/0x15
[<c05d3059>] pci_device_probe+0x48/0x6b
[<c066299b>] driver_probe_device+0xca/0x1d2
[<c0662aeb>] __driver_attach+0x48/0x64
[<c0661ff8>] bus_for_each_dev+0x42/0x6c
[<c0662789>] driver_attach+0x19/0x1b
[<c0662aa3>] ? __driver_attach+0x0/0x64
[<c066245d>] bus_add_driver+0xb6/0x201
[<c0662d56>] driver_register+0x81/0xe8
[<c05c4eae>] ? __raw_spin_lock_init+0x28/0x4e
[<c05d323c>] __pci_register_driver+0x51/0xae
[<f829b6e7>] drm_init+0x62/0xba [drm]
[<f893b000>] ? i915_init+0x0/0x8b [i915]
[<f893b089>] i915_init+0x89/0x8b [i915]
[<c0401154>] do_one_initcall+0x62/0x170
[<c046d8a6>] sys_init_module+0xae/0x1e6
[<c040331f>] sysenter_do_call+0x12/0x38
Comment 1 Jesse Barnes 2010-07-23 20:12:20 UTC
This should be fixed by the SDVO code currently upstream.

Note You need to log in before you can comment on or make changes to this bug.