Skip to contentSkip to conversation

unstable /sys interface from hmon

DISCUSSION Daniel Walker 2 participants 2 messages Jan 30, 2017

lore
Share & tools
lore
#0 lore raw

Hi,

Cisco recently upgraded to kernel 4.4.. We have applications which use the /sys interfaces for some hmon drivers. We found that the following patches,

https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=bab2243ce1897865e31ea6d59b0478391f51812b
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=c3b7cddc70075d525db6b3068d8b2b9158eedc84

Altered the interface as seen from userspace. These patches changed the paths in the following way,

Before,
/sys/bus/i2c/devices/14-0050/

After,
/sys/bus/i2c/devices/14-0050/hwmon/hwmon7

My impression was that /sys was suppose to be stable, and debugfs was unstable. I'm not sure what the current guidelines are for this, but we would request that hmon drivers maintain a stable interface from /sys. This change has cause upgrade issues for us which we would like to avoid in the future.

A patch to add in a compatibility layer would be welcome.

Daniel

#1 lore raw
Quoted 8 lines · Daniel Walker

Hi,

Cisco recently upgraded to kernel 4.4.. We have applications which use the /sys interfaces for some hmon drivers. We found that the following patches,

https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=bab2243ce1897865e31ea6d59b0478391f51812b
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=c3b7cddc70075d525db6b3068d8b2b9158eedc84

Quoted 8 lines

Altered the interface as seen from userspace. These patches changed the paths in the following way,

Before,
/sys/bus/i2c/devices/14-0050/

After,
/sys/bus/i2c/devices/14-0050/hwmon/hwmon7

Actually, the stable link to use would be /sys/class/hwmon/hwmon7 in both cases, and to check if the name attribute resides in hwmon7 or in hwmon7/device (which is the real change in your case - it moved from hwmon7/device to hwmon7, ie from the parent device to the hwmon device).

Quoted 4 lines

My impression was that /sys was suppose to be stable, and debugfs was unstable. I'm not sure what the current guidelines are for this, but we would request that hmon drivers maintain a stable interface from /sys. This change has cause upgrade issues for us which we would like to avoid in the future.

The key transition is the move from attaching the attributes to the parent device (here: the i2c device) to the hwmon device. libsensors handles this transition transparently; I assume you are not using it ?

Quoted 2 lines

A patch to add in a compatibility layer would be welcome.

A compatibility layer would have to link each attribute back to the parent device. Interesting idea, actually. I'll check if that is possible.

Thanks,
Guenter