Bug 890117

Summary: hwinfo --monitor does not report correct setup
Product: [openSUSE] openSUSE 13.1 Reporter: a b <wharms>
Component: OtherAssignee: Ladislav Slezák <lslezak>
Status: RESOLVED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P3 - Medium CC: bwiedemann
Version: Final   
Target Milestone: ---   
Hardware: Other   
OS: Other   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: getsysinfo 1. monitor attached

Description a b 2014-08-03 12:54:51 UTC
User-Agent:       Mozilla/5.0 (X11; Linux x86_64; rv:6.0) Gecko/20100101 Firefox/6.0

The setup is an optiplex 755 with radeon card that has 2 outputs. Connect is
a dell display and a panasonic via VGA (only supported mode). 
Using hwinfo --monitor causes the same monitor to be reported 3 times (output below)

there are no obvious problems for hwinfo to detect that:
 hwinfo --gfx
28: PCI 100.0: 0300 VGA compatible controller (VGA)             
  [Created at pci.319]
  Unique ID: VCu0.zsc2jFVFM2F
  Parent ID: vSkL.p_D9a9Gh3ZD
  SysFS ID: /devices/pci0000:00/0000:00:01.0/0000:01:00.0
  SysFS BusID: 0000:01:00.0
  Hardware Class: graphics card
  Model: "Dell Optiplex 755"
  Vendor: pci 0x1002 "ATI Technologies Inc"
  Device: pci 0x94c1 "RV610 [Radeon HD 2400 XT]"
  SubVendor: pci 0x1028 "Dell"
  SubDevice: pci 0x0d02 "Optiplex 755"
  Driver: "radeon"
  Driver Modules: "drm"
  Memory Range: 0xd0000000-0xdfffffff (ro,non-prefetchable)
  Memory Range: 0xfe9f0000-0xfe9fffff (rw,non-prefetchable)
  I/O Ports: 0xdc00-0xdcff (rw)
  Memory Range: 0xfea00000-0xfea1ffff (ro,non-prefetchable,disabled)
  IRQ: 43 (20694 events)
  I/O Ports: 0x3c0-0x3df (rw)
  Module Alias: "pci:v00001002d000094C1sv00001028sd00000D02bc03sc00i00"
  Driver Info #0:
    Driver Status: radeon is active
    Driver Activation Cmd: "modprobe radeon"
  Config Status: cfg=no, avail=yes, need=no, active=unknown
  Attached to: #10 (PCI bridge)

Primary display adapter: #28


Reproducible: Always

Steps to Reproduce:
1.
2.
3.
Actual Results:  
 hwinfo --monitor
29: None 00.0: 10000 Monitor                                    
  [Created at monitor.95]
  Unique ID: rdCR.OevdKI05H4B
  Hardware Class: monitor
  Model: "DELL 2007FP"
  Vendor: DEL "DELL"
  Device: eisa 0xa020 "DELL 2007FP"
  Serial ID: "G360H8722DLL"
  Resolution: 720x400@70Hz
  Resolution: 640x480@60Hz
  Resolution: 640x480@75Hz
  Resolution: 800x600@60Hz
  Resolution: 800x600@75Hz
  Resolution: 1024x768@60Hz
  Resolution: 1024x768@75Hz
  Resolution: 1280x1024@75Hz
  Resolution: 1280x1024@60Hz
  Resolution: 1600x1200@60Hz
  Resolution: 1152x864@75Hz
  Size: 367x275 mm
  Detailed Timings #0:
     Resolution: 1600x1200
     Horizontal: 1600 1664 1856 2160 (+64 +256 +560) +hsync
       Vertical: 1200 1201 1204 1250 (+1 +4 +50) +vsync
    Frequencies: 162.00 MHz, 75.00 kHz, 60.00 Hz
  Driver Info #0:
    Max. Resolution: 1600x1200
    Vert. Sync Range: 56-76 Hz
    Hor. Sync Range: 30-83 kHz
    Bandwidth: 162 MHz
  Config Status: cfg=no, avail=yes, need=no, active=unknown

30: None 00.1: 10000 Monitor
  [Created at monitor.95]
  Unique ID: jyhG.OevdKI05H4B
  Hardware Class: monitor
  Model: "DELL 2007FP"
  Vendor: DEL "DELL"
  Device: eisa 0xa020 "DELL 2007FP"
  Serial ID: "G360H8722DLL"
  Resolution: 720x400@70Hz
  Resolution: 640x480@60Hz
  Resolution: 640x480@75Hz
  Resolution: 800x600@60Hz
  Resolution: 800x600@75Hz
  Resolution: 1024x768@60Hz
  Resolution: 1024x768@75Hz
  Resolution: 1280x1024@75Hz
  Resolution: 1280x1024@60Hz
  Resolution: 1600x1200@60Hz
  Resolution: 1152x864@75Hz
  Size: 367x275 mm
  Detailed Timings #0:
     Resolution: 1600x1200
     Horizontal: 1600 1664 1856 2160 (+64 +256 +560) +hsync
       Vertical: 1200 1201 1204 1250 (+1 +4 +50) +vsync
    Frequencies: 162.00 MHz, 75.00 kHz, 60.00 Hz
  Driver Info #0:
    Max. Resolution: 1600x1200
    Vert. Sync Range: 56-76 Hz
    Hor. Sync Range: 30-83 kHz
    Bandwidth: 162 MHz
  Config Status: cfg=no, avail=yes, need=no, active=unknown

31: None 00.2: 10000 Monitor
  [Created at monitor.95]
  Unique ID: aHB6.OevdKI05H4B
  Hardware Class: monitor
  Model: "DELL 2007FP"
  Vendor: DEL "DELL"
  Device: eisa 0xa020 "DELL 2007FP"
  Serial ID: "G360H8722DLL"
  Resolution: 720x400@70Hz
  Resolution: 640x480@60Hz
  Resolution: 640x480@75Hz
  Resolution: 800x600@60Hz
  Resolution: 800x600@75Hz
  Resolution: 1024x768@60Hz
  Resolution: 1024x768@75Hz
  Resolution: 1280x1024@75Hz
  Resolution: 1280x1024@60Hz
  Resolution: 1600x1200@60Hz
  Resolution: 1152x864@75Hz
  Size: 367x275 mm
  Detailed Timings #0:
     Resolution: 1600x1200
     Horizontal: 1600 1664 1856 2160 (+64 +256 +560) +hsync
       Vertical: 1200 1201 1204 1250 (+1 +4 +50) +vsync
    Frequencies: 162.00 MHz, 75.00 kHz, 60.00 Hz
  Driver Info #0:
    Max. Resolution: 1600x1200
    Vert. Sync Range: 56-76 Hz
    Hor. Sync Range: 30-83 kHz
    Bandwidth: 162 MHz
  Config Status: cfg=no, avail=yes, need=no, active=unknown



This setup causes also problems for X11:
Fatal server error:
[   202.311] (EE) (EE) BUG: triggered 'if (f[f_idx])'
[   202.311] (EE) BUG: log.c:464 in pnprintf()
[   202.311] (EE) Unsupported printf directive '*'
[   202.311] (EE) 
[   202.311] (EE) Backtrace:
[   202.323] (EE) 0: X (xorg_backtrace+0x3d) [0x585abd]
[   202.323] (EE) 1: X (LogVMessageVerbSigSafe+0x87d) [0x59131d]
[   202.323] (EE) 2: X (FatalError+0xd5) [0x5915e5]
[   202.323] (EE) 3: X (0x400000+0x1937e2) [0x5937e2]
[   202.323] (EE) 4: X (0x400000+0x193bad) [0x593bad]
[   202.323] (EE) 5: X (WakeupHandler+0x6d) [0x440e4d]
[   202.323] (EE) 6: X (WaitForSomething+0x1af) [0x58307f]
[   202.323] (EE) 7: X (0x400000+0x3c991) [0x43c991]
[   202.323] (EE) 8: X (0x400000+0x2c1ba) [0x42c1ba]
[   202.323] (EE) 9: /lib64/libc.so.6 (__libc_start_main+0xf5) [0x7f753e3acbe5]
[   202.323] (EE) 10: X (0x400000+0x2c501) [0x42c501]
[   202.323] (EE) 
[   202.323] XDMCP fatal error: Session declined %*.*s
[   202.323] (EE) 
[   202.323] (EE) 

and kernel:
[  111.690978] WARNING: CPU: 0 PID: 1385 at /home/abuild/rpmbuild/BUILD/kernel-desktop-3.11.10/linux-3.11/drivers/gpu/drm/drm_crtc.c:1992 drm_mode_set_config_internal+0xcc/0xd0 [drm]()
[  111.691004] Modules linked in: xt_pkttype xt_LOG xt_limit ip6t_REJECT xt_tcpudp nf_conntrack_ipv6 nf_defrag_ipv6 ip6table_raw ipt_REJECT iptable_raw xt_CT iptable_filter ip6table_mangle nf_conntrack_netbios_ns nf_conntrack_broadcast nf_conntrack_ipv4 nf_defrag_ipv4 ip_tables xt_conntrack nf_conntrack ip6table_filter ip6_tables x_tables coretemp snd_hda_codec_analog usb_storage snd_hda_intel snd_hda_codec kvm snd_hwdep snd_pcm iTCO_wdt snd_timer iTCO_vendor_support snd ppdev e1000e soundcore lpc_ich mei_me snd_page_alloc mei serio_raw mfd_core dcdbas sr_mod ptp cdrom pcspkr i2c_i801 parport_pc pps_core ata_generic parport shpchp button acpi_cpufreq mperf sg dm_mod autofs4 radeon ttm processor thermal_sys drm_kms_helper drm i2c_algo_bit scsi_dh_hp_sw scsi_dh_emc scsi_dh_rdac scsi_dh_alua scsi_dh
[  111.691005] CPU: 0 PID: 1385 Comm: X Tainted: G        W    3.11.10-17-desktop #1
[  111.691006] Hardware name: Dell Inc. OptiPlex 755                 /0GM819, BIOS A09 03/11/2008
[  111.691008]  0000000000000009 ffffffff815a0402 0000000000000000 ffffffff81050eb2
[  111.691010]  ffff88011eb434a0 ffff88011e9fe000 0000000000000000 ffff88011eb43400
[  111.691011]  ffff88011eb43c38 ffffffffa003b4ec 0000000000000000 ffff88011e1fd000
[  111.691012] Call Trace:
[  111.691017]  [<ffffffff81004a28>] dump_trace+0x88/0x310
[  111.691020]  [<ffffffff81004d80>] show_stack_log_lvl+0xd0/0x1d0
[  111.691022]  [<ffffffff810061bc>] show_stack+0x1c/0x50
[  111.691024]  [<ffffffff815a0402>] dump_stack+0x50/0x89
[  111.691027]  [<ffffffff81050eb2>] warn_slowpath_common+0x72/0x90
[  111.691037]  [<ffffffffa003b4ec>] drm_mode_set_config_internal+0xcc/0xd0 [drm]
[  111.691058]  [<ffffffffa0094a3c>] drm_fb_helper_pan_display+0xec/0x140 [drm_kms_helper]
[  111.691061]  [<ffffffff81318c81>] fb_pan_display+0xb1/0x170
[  111.691065]  [<ffffffff813286f5>] bit_update_start+0x15/0x30
[  111.691067]  [<ffffffff8132848e>] fbcon_switch+0x37e/0x520
[  111.691070]  [<ffffffff81393d17>] redraw_screen+0x177/0x240
[  111.691073]  [<ffffffff81325a5a>] fbcon_blank+0x1ea/0x2a0
[  111.691076]  [<ffffffff8139439a>] do_unblank_screen+0x9a/0x1b0
[  111.691079]  [<ffffffff8138aa2e>] complete_change_console+0x4e/0xd0
[  111.691081]  [<ffffffff8138ba0b>] vt_ioctl+0xf5b/0x10f0
[  111.691085]  [<ffffffff813800dc>] tty_ioctl+0x26c/0xb70
[  111.691087]  [<ffffffff81197bac>] do_vfs_ioctl+0x2dc/0x4c0
[  111.691096]  [<ffffffff81197e10>] SyS_ioctl+0x80/0xa0
[  111.691099]  [<ffffffff815ae06d>] system_call_fastpath+0x1a/0x1f
[  111.691103]  [<00007f753e46b1e7>] 0x7f753e46b1e6
[  111.691104] ---[ end trace 70066f42d1d7bea4 ]---
Comment 1 a b 2014-08-03 13:24:32 UTC
I made separate bug reports for the X11 and the kernel crash. Always pointing back to this report
Comment 2 Steffen Winterfeldt 2014-08-12 09:49:31 UTC
Could you please run 'getsysinfo' and attach the tar file it produces (basically your packed-up /sys tree).
Comment 3 a b 2014-08-12 10:28:41 UTC
With both devices attached ?
Comment 4 a b 2014-08-12 11:00:12 UTC
Created attachment 602040 [details]
getsysinfo 1. monitor attached

The cp /sys /tmp/...  in getsysinfo got stuck. I used a kill -1 to free it and continue that script. Maybe that is an other bugreport.
Comment 5 a b 2014-08-12 11:10:06 UTC
FYI: the related X11-Bug is Bug 890119
Comment 6 Steffen Winterfeldt 2014-08-12 11:17:22 UTC
Thanks!

> The cp /sys /tmp/...  in getsysinfo got stuck.

Yes, it can hang in debugfs sometimes.
Comment 7 Ladislav Slezák 2015-06-08 11:16:35 UTC
I have improved the monitor detection in hwinfo-21.13, now it reads the data from /sys instead of emulating the BIOS calls. This should work more reliably.

Fixed in https://github.com/openSUSE/hwinfo/pull/7, submitted to Factory.