From: Patrick Ohly Date: Mon, 21 Dec 2015 13:56:00 +0000 (+0100) Subject: mount-setup.c: fix handling of symlink Smack labelling in cgroup setup X-Git-Tag: v229.1~1^2~83 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=b81e1f72c73aaee653819615faaebacc48eeb18d;hp=b81e1f72c73aaee653819615faaebacc48eeb18d;p=elogind.git mount-setup.c: fix handling of symlink Smack labelling in cgroup setup The code introduced in f8c1a81c51 (= elogind 227) failed for me with: Failed to copy smack label from net_cls to /sys/fs/cgroup/net_cls: No such file or directory There is no need for a symlink in this case because source and target are identical. The symlink() call is allowed to fail when the target already exists. When that happens, copying the Smack label must be skipped. But the code also failed when there is a symlink, like "cpu -> cpu,cpuacct", because mac_smack_copy() got called with src="cpu,cpuacct" which fails to find the entry because the current directory is not inside /sys/fs/cgroup. The absolute path to the existing entry must be used instead. ---