Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 547014 - dev-libs/libunique-1.1.6-r1 fails with sandbox violation to /dev/mem when using nvidia's tegra drivers
Summary: dev-libs/libunique-1.1.6-r1 fails with sandbox violation to /dev/mem when usi...
Status: UNCONFIRMED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: ARM Linux
: Normal normal (vote)
Assignee: Gentoo Linux Gnome Desktop Team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-04-18 16:54 UTC by Thorsten
Modified: 2015-04-30 06:28 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
sandbox.log (sandbox-5352.log,1.80 KB, text/x-log)
2015-04-27 17:07 UTC, Thorsten
Details
99-tegra-device.rules (99-tegra-devices.rules,429 bytes, text/plain)
2015-04-30 03:17 UTC, Thorsten
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Thorsten 2015-04-18 16:54:19 UTC
dev-libs/libunique-1.1.6-r1 fails in compile stage because the access to /dev/mem failed. It's likely that it is related to different behaviour between /dev/mem under x86 and ARM (and possibly other platforms).

Reproducible: Always

Steps to Reproduce:
1. Install gentoo on ARM-machine
2. try to emerge  dev-libs/libunique-1.1.6-r1

Actual Results:  
build phase fails with sandbox violation of /dev/mem (fails with FEATURES="-sandbox" too)

Expected Results:  
build fine
Comment 1 Thorsten 2015-04-18 17:00:01 UTC
build.log:

http://pastebin.com/KasZDiQG

attachments do not work for me on this bug
Comment 2 Thorsten 2015-04-18 17:01:32 UTC
Portage 2.2.14 (python 2.7.9-final-0, default/linux/arm/13.0/armv7a/desktop, gcc-4.8.3, glibc-2.19-r1, 3.10.18 armv7l)
=================================================================
                         System Settings
=================================================================
System uname: Linux-3.10.18-armv7l-with-gentoo-2.2
KiB Mem:     4105368 total,   1268384 free
KiB Swap:          0 total,         0 free
Timestamp of tree: Sat, 18 Apr 2015 00:15:01 +0000
ld GNU ld (Gentoo 2.24 p1.4) 2.24
app-shells/bash:          4.2_p53
dev-java/java-config:     2.2.0
dev-lang/perl:            5.20.1-r4
dev-lang/python:          2.7.9-r1, 3.3.5-r1, 3.4.1
dev-util/cmake:           2.8.12.2-r1
dev-util/pkgconfig:       0.28-r1
sys-apps/baselayout:      2.2
sys-apps/openrc:          0.13.11
sys-apps/sandbox:         2.6-r1
sys-devel/autoconf:       2.13, 2.69
sys-devel/automake:       1.11.6-r1, 1.13.4
sys-devel/binutils:       2.24-r3
sys-devel/gcc:            4.8.3
sys-devel/gcc-config:     1.7.3
sys-devel/libtool:        2.4.4
sys-devel/make:           4.0-r1
sys-kernel/linux-headers: 3.16 (virtual/os-headers)
sys-libs/glibc:           2.19-r1
Repositories: gentoo swabbles-overlay
ACCEPT_KEYWORDS="arm"
ACCEPT_LICENSE="* -@EULA"
CBUILD="armv7a-hardfloat-linux-gnueabi"
CFLAGS="-Os -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -mtune=native"
CHOST="armv7a-hardfloat-linux-gnueabi"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo"
CXXFLAGS="-Os -pipe -march=armv7-a -mfpu=vfpv3-d16 -mfloat-abi=hard -mtune=native"
DISTDIR="/usr/portage/distfiles"
FCFLAGS="-O2 -pipe -march=armv7-a"
FEATURES="assume-digests binpkg-logs config-protect-if-modified distlocks ebuild-locks fixlafiles merge-sync news parallel-fetch preserve-libs protect-owned sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync"
FFLAGS="-O2 -pipe -march=armv7-a"
GENTOO_MIRRORS="http://de-mirror.org/gentoo/ http://ftp-stud.hs-esslingen.de/pub/Mirrors/gentoo/"
LANG="de_DE.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j4"
PKGDIR="/usr/portage/packages"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/var/lib/layman/swabbles-overlay"
SYNC="rsync://192.168.0.1/gentoo-portage"
USE="X a52 aac acl acpi alsa arm armv5te armv6 armv6t2 berkdb bluetooth branding bzip2 cairo cdda cdr cli consolekit cracklib crypt cups cxx dbus dri dts dvd dvdr emboss encode exif fam firefox flac fortran gdbm gif glamor gpm gtk iconv ipv6 jpeg lcms ldap libnotify mad mng modules mp3 mp4 mpeg ncurses neon nls nptl ogg opengl openmp pam pango pcre pdf png policykit ppds qt3support readline sdl session spell ssl startup-notification svg tcpd tiff truetype udev udisks unicode upower usb vorbis wxwidgets xcb xml xv xvid zlib" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="kexi words flow plan sheets stage tables krita karbon braindump author" CAMERAS="ptp2" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="evdev synaptics mouse keyboard" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LINGUAS="de" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php5-5" PYTHON_SINGLE_TARGET="python2_7" PYTHON_TARGETS="python2_7 python3_3" RUBY_TARGETS="ruby19 ruby20" USERLAND="GNU" VIDEO_CARDS="dummy fbdev v4l modesetting" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LC_ALL, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, USE_PYTHON
Comment 3 Pacho Ramos gentoo-dev 2015-04-26 08:58:27 UTC
@sandbox, as looks like this is "common" in multiple packages on ARM... is there any other way of fixing it than trying to add addpredict /dev/mem on all of them? Thanks
Comment 4 SpanKY gentoo-dev 2015-04-27 09:21:07 UTC
(In reply to Pacho Ramos from comment #3)

i don't think any package should be adding a predict on /dev/mem.  packages shouldn't be attempting to read memory directly.

i don't see a log here though, so not sure what exactly is failing.
Comment 5 Thorsten 2015-04-27 17:07:56 UTC
Created attachment 402114 [details]
sandbox.log
Comment 6 SpanKY gentoo-dev 2015-04-29 07:09:55 UTC
looks like it's coming from the graphics drivers (whatever you have on this particular system).  it'd be specific to that graphics stack rather than ARM.

i'm wondering why this is hitting the GPU at all.  maybe some low level GL init logic makes it always open /dev nodes ?  not sure there's any way to inhibit that.

what are you using for your graphics ?
Comment 7 Thorsten 2015-04-30 03:15:39 UTC
Since my hardware is an NVidia Tegra K1 I'm using the proprietary NVidia Tegra driver for this board from swabbles-overlay.
As far as i can understand the architecture of this driver there is no proprietary kernel module coming with this driver like the nvidia module on x86. The userland driver creates the devices via a udev-rule.

Should I try to switch to fbdev for another compile test?
Comment 8 Thorsten 2015-04-30 03:17:10 UTC
Created attachment 402268 [details]
99-tegra-device.rules
Comment 9 SpanKY gentoo-dev 2015-04-30 06:28:38 UTC
(In reply to Thorsten from comment #7)

it's really just semantics at that point.  the userland code gets pretty full access to the hardware and can do bad things just like the kernel module.

at any rate, yes, my guess is the root of your troubles are the tegra drivers.