[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <a57e9a39-13ce-4e4d-a7a1-c591f6b4ac65@ans.pl>
Date: Sun, 23 Jun 2024 11:47:39 -0700
From: Krzysztof Olędzki <ole@....pl>
To: Heiner Kallweit <hkallweit1@...il.com>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
Guenter Roeck <linux@...ck-us.net>,
Bartosz Golaszewski <brgl@...ev.pl>
Cc: stable@...r.kernel.org, linux-i2c@...r.kernel.org,
linux-hwmon@...r.kernel.org,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Regression caused by "eeprom: at24: Probe for DDR3 thermal sensor in
the SPD case" - "sysfs: cannot create duplicate filename"
Hi,
After upgrading kernel to Linux 6.6.34 on one of my systems, I noticed "sysfs: cannot create duplicate filename" and i2c registration errors in dmesg, please see below.
This seems to be related to https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=linux-6.6.y&id=4d5ace787273cb159bfdcf1c523df957938b3e42 - reverting the change fixes the problem.
Note that jc42 devices are registered correctly and work with and without the change.
# grep . /sys/devices/pci0000:00/0000:00:1f.3/i2c-12/12-*/name
/sys/devices/pci0000:00/0000:00:1f.3/i2c-12/12-0018/name:jc42
/sys/devices/pci0000:00/0000:00:1f.3/i2c-12/12-0019/name:jc42
/sys/devices/pci0000:00/0000:00:1f.3/i2c-12/12-001a/name:jc42
/sys/devices/pci0000:00/0000:00:1f.3/i2c-12/12-001b/name:jc42
/sys/devices/pci0000:00/0000:00:1f.3/i2c-12/12-0050/name:spd
/sys/devices/pci0000:00/0000:00:1f.3/i2c-12/12-0051/name:spd
/sys/devices/pci0000:00/0000:00:1f.3/i2c-12/12-0052/name:spd
/sys/devices/pci0000:00/0000:00:1f.3/i2c-12/12-0053/name:spd
# sensors|grep -A4 jc42-i2c
jc42-i2c-12-1b
Adapter: SMBus I801 adapter at 3000
temp1: +33.2°C (low = +0.0°C)
(high = +91.0°C, hyst = +91.0°C)
(crit = +95.0°C, hyst = +95.0°C)
--
jc42-i2c-12-19
Adapter: SMBus I801 adapter at 3000
temp1: +33.5°C (low = +0.0°C)
(high = +91.0°C, hyst = +91.0°C)
(crit = +95.0°C, hyst = +95.0°C)
--
jc42-i2c-12-1a
Adapter: SMBus I801 adapter at 3000
temp1: +33.5°C (low = +0.0°C)
(high = +91.0°C, hyst = +91.0°C)
(crit = +95.0°C, hyst = +95.0°C)
--
jc42-i2c-12-18
Adapter: SMBus I801 adapter at 3000
temp1: +33.2°C (low = +0.0°C)
(high = +91.0°C, hyst = +91.0°C)
(crit = +95.0°C, hyst = +95.0°C)
dmesg:
[ 0.000000] DMI: Dell Inc. PowerEdge T110 II/0PM2CW, BIOS 2.10.0 05/24/2018
(...)
[ 7.681132] i2c_dev: i2c /dev entries driver
[ 7.687116] i2c i2c-12: 4/4 memory slots populated (from DMI)
[ 7.690623] at24 12-0050: 256 byte spd EEPROM, read-only
[ 7.691812] i2c i2c-12: Successfully instantiated SPD at 0x50
[ 7.698246] at24 12-0051: 256 byte spd EEPROM, read-only
[ 7.699465] i2c i2c-12: Successfully instantiated SPD at 0x51
[ 7.700043] i2c i2c-12: Failed to register i2c client jc42 at 0x19 (-16)
[ 7.700047] i2c i2c-12: Failed creating jc42 at 0x19
[ 7.705248] sysfs: cannot create duplicate filename '/devices/pci0000:00/0000:00:1f.3/i2c-12/12-001a'
[ 7.711617] <TASK>
[ 7.712612] dump_stack_lvl+0x37/0x4a
[ 7.712612] sysfs_warn_dup+0x55/0x61
[ 7.715616] sysfs_create_dir_ns+0xa6/0xd2
[ 7.716620] kobject_add_internal+0xc3/0x1c0
[ 7.716620] kobject_add+0xba/0xe4
[ 7.719615] ? device_add+0x53/0x726
[ 7.720611] device_add+0x132/0x726
[ 7.720611] i2c_new_client_device+0x1ee/0x246
[ 7.723616] at24_probe+0x5f8/0x666
[ 7.724642] ? __pfx_at24_read+0x10/0x10
[ 7.724642] ? __pfx_at24_write+0x10/0x10
[ 7.724642] ? __pfx___device_attach_driver+0x10/0x10
[ 7.727619] i2c_device_probe+0x1b7/0x240
[ 7.728612] really_probe+0x101/0x248
[ 7.728612] __driver_probe_device+0xbb/0xed
[ 7.731620] driver_probe_device+0x1a/0x72
[ 7.732621] __device_attach_driver+0x82/0x96
[ 7.732621] bus_for_each_drv+0xa6/0xd4
[ 7.732621] __device_attach+0xa8/0x12a
[ 7.735619] bus_probe_device+0x31/0x95
[ 7.736614] device_add+0x265/0x726
[ 7.736614] i2c_new_client_device+0x1ee/0x246
[ 7.739618] i2c_register_spd+0x1a1/0x1ed
[ 7.740613] i801_probe+0x589/0x603
[ 7.740613] ? up_write+0x37/0x4d
[ 7.740613] ? kernfs_add_one+0x104/0x126
[ 7.743618] ? __raw_spin_unlock_irqrestore+0x14/0x29
[ 7.744612] pci_device_probe+0xbe/0x12f
[ 7.744612] really_probe+0x101/0x248
[ 7.744612] __driver_probe_device+0xbb/0xed
[ 7.747618] driver_probe_device+0x1a/0x72
[ 7.748612] __driver_attach_async_helper+0x2d/0x42
[ 7.748612] async_run_entry_fn+0x25/0xa0
[ 7.748612] process_scheduled_works+0x193/0x291
[ 7.748612] worker_thread+0x1c5/0x21f
[ 7.751619] ? __pfx_worker_thread+0x10/0x10
[ 7.752611] kthread+0xf6/0xfe
[ 7.752611] ? __pfx_kthread+0x10/0x10
[ 7.752611] ret_from_fork+0x23/0x35
[ 7.755621] ? __pfx_kthread+0x10/0x10
[ 7.756613] ret_from_fork_asm+0x1b/0x30
[ 7.756613] </TASK>
[ 7.759637] i2c i2c-12: Failed to register i2c client jc42 at 0x1a (-17)
[ 7.760815] at24 12-0052: 256 byte spd EEPROM, read-only
[ 7.762047] i2c i2c-12: Successfully instantiated SPD at 0x52
[ 7.765252] i2c i2c-12: Failed to register i2c client jc42 at 0x1b (-16)
[ 7.766126] at24 12-0053: 256 byte spd EEPROM, read-only
[ 7.767584] i2c i2c-12: Successfully instantiated SPD at 0x53
Thanks,
Krzysztof
Powered by blists - more mailing lists