lkml.org 
[lkml]   [2014]   [Oct]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: incompatible pci sysfs change since 3.12 (5136b2da770d)
On Wed, Oct 29, 2014 at 07:22:58PM -0500, Jeff Epler wrote:
> Hi.
>
> I am an author of LinuxCNC, a GPL'd CNC control for Linux.
>
> Recently we added support for userspace PCI drivers. This worked with
> kernel 3.2 but doesn't with kernel 3.16. The software fails early with
> Failed to open "/sys/devices/pci0000:00/.../enable" (Permission denied)
>
> This appears to be because our software relies on the documented
> "enable" sysfs file for pci devices (Documentation/filesystem/sysfs-pci.txt)
> which was (unintentionally?) changed to "enabled" in the above-named
> patch:
>
> 5136b2da770d PCI: convert bus code to use dev_groups
> ...
> +static DEVICE_ATTR_RW(enabled);
> ...
> - __ATTR(enable, 0600, is_enabled_show, is_enabled_store),
>
> Are we in the LinuxCNC project wrong in thinking that stuff in /sys (and
> not /sys/debug) is supposed to be a durable API/interface for userspace
> to the kernel? (It must be a low-usage API if it went unnoticed for a
> year :-/)

Ugh, that's my fault, I made a typo and should not have renamed the
sysfs file, very sorry about that.

I'll work on making up a patch to fix this and get it into the stable
kernels so that you don't have to have a work-around for very long.

> We'll have to work around it by modifying our software (since we'd like
> to work with the kernels people already have) in any case.
>
> Even if it is not going to be changed compatibly with older kernels, it
> seems like the documentation should be updated!

I'll fix it up, this was just a bug, my apologies.

greg k-h


\
 
 \ /
  Last update: 2014-10-30 01:41    [W:0.053 / U:0.496 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site