Regression caused by "eeprom: at24: Probe for DDR3 thermal sensor in the SPD case" - "sysfs: cannot create duplicate filename"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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




[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux