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-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150330173031.1fb46443@mir>
Date:	Mon, 30 Mar 2015 17:30:31 +0200
From:	Stefan Lippers-Hollmann <s.l-h@....de>
To:	linux-media@...r.kernel.org
Cc:	linux-kernel@...r.kernel.org, m.chehab@...sung.com,
	James Hogan <james.hogan@...tec.com>,
	"David Härdeman" <david@...deman.nu>,
	"Antti Seppälä" <a.seppala@...il.com>,
	Tomas Melin <tomas.melin@....fi>
Subject: Re: mceusb: sysfs: cannot create duplicate filename '/class/rc/rc0'
 (race condition between multiple RC_CORE devices)

Hi

This is a follow-up for:
	http://lkml.kernel.org/r/<201412181916.18051.s.L-H@....de>
	http://lkml.kernel.org/r/<201412302211.40801.s.L-H@....de>

On 2014-12-30, Stefan Lippers-Hollmann wrote:
> On Thursday 18 December 2014, Stefan Lippers-Hollmann wrote:
> > Occassionally, but not readily reproducably, I hit a race condition 
> > between mceusb and other connected RC_CORE devices when mceusb tries 
> > to create /class/rc/rc0, which is -by then- already taken by another 
> > RC_CORE device. The other involved IR devices (physically only one)
> > are part of a PCIe TeVii s480 s2.1 twin-tuner DVB-S2 card and aren't 
> > actually supposed to receive IR signals (IR receiver not connected):
> > 
> > mceusb device transceiver:
> > Bus 002 Device 004: ID 0609:0334 SMK Manufacturing, Inc. eHome Infrared Receiver
> > 
> > DVB-T receiver (no RC_CORE device)
> > Bus 001 Device 004: ID 0ccd:0069 TerraTec Electronic GmbH Cinergy T XE (Version 2, AF9015)
> > 
> > twin-tuner DVB-S2 PCIe device, TeVii s480 v2.1 (physically one IR 
> > receiver (NEC protocol), logically recognized as two RC_CORE devices):
> [...]
> > 	Bus 006 Device 003: ID 9022:d660 TeVii Technology Ltd. DVB-S2 S660
> > 	Bus 003 Device 003: ID 9022:d660 TeVii Technology Ltd. DVB-S2 S660

> Today I got a new, similar, trace with kernel 3.18.1, but this is not a
> regression and randomly happens with older kernels as well. The 
> frequency of this occuring differs vastly, this time it was 12 days 
> with probably 20 (re-)boots, before that it didn't happen for multiple
> weeks. I can not totally rule out if it ever happened in the reverse
> detection/ initialisation order, as I wouldn't notice the consequences 
> of dvb_usb_dw2102's RC_CORE devices failing to initialise, but I think
> the problem might be seated in the common core of rc-main.c.

This remains to be a re-occuring issue with kernel 3.19 and 4.0-rc6, 
not happening on every boot, but every few weeks.

[    1.837215] Registered IR keymap rc-rc6-mce
[    1.837225] ------------[ cut here ]------------
[    1.837229] WARNING: CPU: 3 PID: 277 at /tmp/buildd/linux-aptosid-4.0~rc6/fs/sysfs/dir.c:31 sysfs_warn_dup+0x55/0x70()
[    1.837230] sysfs: cannot create duplicate filename '/class/rc/rc0'
[    1.837231] Modules linked in: rt2800usb(+) rt2x00usb rt2800lib rt2x00lib mac80211 cfg80211 rc_rc6_mce crc_ccitt mceusb(+) rc_tevii_nec ds3000 btusb dvb_usb_af9015 dvb_usb_v2 bluetooth nls_utf8 nls_cp437 vfat fat snd_hda_codec_hdmi iTCO_wdt eeepc_wmi iTCO_vendor_support asus_wmi sparse_keymap intel_rapl rfkill iosf_mbi x86_pkg_temp_thermal intel_powerclamp evdev coretemp snd_hda_codec_realtek snd_hda_codec_generic kvm_intel kvm crct10dif_pclmul crc32_pclmul ghash_clmulni_intel dvb_usb_dw2102 dvb_usb aesni_intel aes_x86_64 lrw dvb_core gf128mul rc_core snd_hda_intel glue_helper i915 ablk_helper snd_hda_controller cryptd snd_hda_codec i2c_algo_bit psmouse snd_hwdep drm_kms_helper snd_pcm serio_raw pcspkr i2c_i801 drm snd_timer lpc_ich snd i2c_core mfd_core soundcore intel_gtt mei_me battery ie31200_edac
[    1.837253]  mei 8250_fintek edac_core tpm_infineon video wmi processor button nct6775 hwmon_vid fuse parport_pc ppdev lp parport autofs4 ext4 crc16 jbd2 mbcache dm_mod sg sd_mod ohci_pci crc32c_intel ahci libahci libata xhci_pci scsi_mod ohci_hcd ehci_pci xhci_hcd ehci_hcd r8169 mii usbcore usb_common fan thermal
[    1.837267] CPU: 3 PID: 277 Comm: systemd-udevd Not tainted 4.0.0-rc6-aptosid-amd64 #1 aptosid 4.0~rc6-1~git0.slh.1
[    1.837268] Hardware name: System manufacturer System Product Name/P8H77-M PRO, BIOS 1503 03/17/2014
[    1.837269]  ffffffff816236d0 0000000054e7a09b ffffffff816236d0 ffffffff814fb0ee
[    1.837271]  ffff8807fb643880 ffffffff81060627 ffff8807fbe5c000 ffff8807fbe2ee78
[    1.837272]  ffff8807f93a07f8 ffff8807f93a07f8 ffffffffffffffef ffffffff810606b8
[    1.837273] Call Trace:
[    1.837277]  [<ffffffff814fb0ee>] ? dump_stack+0x47/0x67
[    1.837279]  [<ffffffff81060627>] ? warn_slowpath_common+0x77/0xb0
[    1.837280]  [<ffffffff810606b8>] ? warn_slowpath_fmt+0x58/0x80
[    1.837282]  [<ffffffff811ea562>] ? kernfs_path+0x42/0x50
[    1.837284]  [<ffffffff811ed975>] ? sysfs_warn_dup+0x55/0x70
[    1.837286]  [<ffffffff811edcce>] ? sysfs_do_create_link_sd.isra.2+0xbe/0xd0
[    1.837287]  [<ffffffff813887a4>] ? device_add+0x264/0x640
[    1.837291]  [<ffffffffa09c38dc>] ? rc_register_device+0x1bc/0x610 [rc_core]
[    1.837293]  [<ffffffffa0861f55>] ? mceusb_dev_probe+0x405/0xadd [mceusb]
[    1.837296]  [<ffffffff81271aa8>] ? ida_get_new_above+0x1f8/0x220
[    1.837298]  [<ffffffff81271b69>] ? ida_simple_get+0x99/0x120
[    1.837304]  [<ffffffffa0036763>] ? usb_probe_interface+0x193/0x290 [usbcore]
[    1.837306]  [<ffffffff8138b647>] ? driver_probe_device+0x87/0x260
[    1.837309]  [<ffffffff8138b8eb>] ? __driver_attach+0x7b/0x80
[    1.837311]  [<ffffffff8138b870>] ? __device_attach+0x50/0x50
[    1.837312]  [<ffffffff813896fb>] ? bus_for_each_dev+0x6b/0xc0
[    1.837313]  [<ffffffff8138ade8>] ? bus_add_driver+0x178/0x230
[    1.837315]  [<ffffffff8138bf1e>] ? driver_register+0x5e/0xf0
[    1.837319]  [<ffffffffa003514b>] ? usb_register_driver+0x7b/0x160 [usbcore]
[    1.837321]  [<ffffffffa0865000>] ? 0xffffffffa0865000
[    1.837323]  [<ffffffffa0865000>] ? 0xffffffffa0865000
[    1.837325]  [<ffffffff81002108>] ? do_one_initcall+0x98/0x1f0
[    1.837327]  [<ffffffff814fa016>] ? do_init_module+0x50/0x1b0
[    1.837329]  [<ffffffff810d1df3>] ? load_module+0x1b03/0x2030
[    1.837331]  [<ffffffff810cf240>] ? __symbol_put+0x70/0x70
[    1.837333]  [<ffffffff811819ae>] ? kernel_read+0x4e/0x80
[    1.837334]  [<ffffffff810d248d>] ? SyS_finit_module+0x8d/0xa0
[    1.837336]  [<ffffffff81500e49>] ? system_call_fastpath+0x12/0x17
[    1.837337] ---[ end trace 158112bdd663741e ]---
[    1.837347] mceusb 2-1.6:1.0: remote dev registration failed
[    1.837370] mceusb 2-1.6:1.0: mceusb_dev_probe: device setup failed!
[    1.837392] mceusb: probe of 2-1.6:1.0 failed with error -12
[    1.837410] usbcore: registered new interface driver mceusb

Regards
	Stefan Lippers-Hollmann

Content of type "application/pgp-signature" skipped

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ