[systemd-devel] sysfs regression: wrong link counts
Greg KH
greg at kroah.com
Mon Jan 30 14:06:11 PST 2012
On Mon, Jan 30, 2012 at 10:56:26PM +0100, Jiri Slaby wrote:
> Hi,
>
> I cannot boot properly with this commit:
> commit 524b6c5b39b931311dfe5a2f5abae2f5c9731676
> Author: Eric W. Biederman <ebiederm at xmission.com>
> Date: Sun Dec 18 20:09:31 2011 -0800
>
> sysfs: Kill nlink counting.
>
>
> 1) network systemd rule doesn't start network
> 2) sensors complain:
> sensors_init: Kernel interface error
Odd.
What in systemd is causing a reliance on this?
> ad 2) look at what it does:
> /* returns !0 if sysfs filesystem was found, 0 otherwise */
> int sensors_init_sysfs(void)
> {
> struct stat statbuf;
>
> snprintf(sensors_sysfs_mount, NAME_MAX, "%s", "/sys");
> if (stat(sensors_sysfs_mount, &statbuf) < 0
> || statbuf.st_nlink <= 2) /* Empty directory */
> return 0;
>
> return 1;
> }
Ah, a hack to see if the directory is empty.
Isn't there some other "proper" way of doing this in userspace, or is
this really the correct way?
> So this looks like it became a part of ABI we cannot break...
>
> A revert of this commit on the top of today's -next fixes the problem.
Ick.
Eric, care to fix this up, or do you want me to revert it?
thanks,
greg k-h
More information about the systemd-devel
mailing list