Hi!
On Thu, 15 Oct 2015, Jason Zaman wrote:
> Can you try this:
>
> # getfattr -d -m- /bin/ping
> security.capability=0sAQAAAgAgAAAAAAAAAAAAAAAAAAA=
> # setfattr -n user.test -v "foo" ./ping
> # setfattr -n user.pax.flags -v "me" ./ping
> # getfattr -d -m- /bin/ping
> security.capability=0sAQAAAgAgAAAAAAAAAAAAAAAAAAA=
> user.pax.flags="me"
> user.test="foo"
>
> If this works then something else is causing those messages and we
> should look into it further.
# cd /bin/
# getfattr -d -m- ./ping
# file: ping
security.capability=0sAQAAAgAgAAAAAAAAAAAAAAAAAAA=
# setfattr -n user.test -v "foo" ./ping
# setfattr -n user.pax.flags -v "me" ./ping
# getfattr -d -m- ./ping
# file: ping
security.capability=0sAQAAAgAgAAAAAAAAAAAAAAAAAAA=
user.pax.flags="me"
user.test="foo"
But note that emerging iputils does _not_ result in the PaX
messages I described. Here's an incomplete list of packages that
have triggered them in the past:
app-emulation/qemu-2.4.0.1
dev-lang/ghc-7.10.2-r1
dev-lang/python-3.5.0-r1
media-video/mpv-0.11.0
sys-devel/llvm-3.7.0-r2
www-client/firefox-bin-41.0.1
www-client/google-chrome-beta-46.0.2490.64_p1
I have no clue what they do differently from iputils to result in
those messages.
So I looked at a file mentioned during the llvm merge,
/usr/bin/llvm-rtdyld:
# getfattr ./llvm-rtdyld
# setfattr -n user.test -v "foo" ./llvm-rtdyld
# setfattr -n user.pax.flags -v "me" ./llvm-rtdyld
# getfattr -d -m- ./llvm-rtdyld
Then I remembered that the setfattr might not happen in the live
system, but on the tmpfs mounted on /var/tmp/portage.
So I tried it there:
# cp ./llvm-rtdyld /var/tmp/portage
# cd /var/tmp/portage
# getfattr -d -m- ./llvm-rtdyld
# setfattr -n user.test -v "foo" ./llvm-rtdyld
setfattr: ./llvm-rtdyld: Operation not supported
# setfattr -n user.pax.flags -v "me" ./llvm-rtdyld
setfattr: ./llvm-rtdyld: Operation not supported
So it's not a BTRFS problem, but one of tmpfs. So I wondered if I
maybe had missed to activate xattr suport for tmpfs, but no:
# zgrep -i tmpfs /proc/config.gz
CONFIG_DEVTMPFS=y
CONFIG_DEVTMPFS_MOUNT=y
CONFIG_TMPFS=y
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS_XATTR=y
#
I have no clue what's missing, since I can't find a mount option
or anything that I might have missed:
# mount -l -t tmpfs |grep portage
none on /var/tmp/portage type tmpfs (rw,relatime,size=8388608k)
On a whim, I tried user_xattr, something older ext* FSs support,
but alas:
# mount -o remount,user_xattr /var/tmp/portage
mount: /var/tmp/portage not mounted or bad option
In some cases useful info is found in syslog - try
dmesg | tail or so.
# dmesg|tail -n1
[ 8623.541053] tmpfs: No value for mount option 'user_xattr'
Providing =something just results in this:
[ 8701.215926] tmpfs: Bad mount option user_xattr
So I'm fresh out of ideas.
Regards,
Tobias
--
"Sendmail is the sort of tool that gave UNIX its bad reputation."
-- _System Performance Tuning_