From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id 60ADD1387B2 for ; Fri, 3 Jan 2014 06:12:32 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id B5604E0A86; Fri, 3 Jan 2014 06:12:30 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 3728DE0A86 for ; Fri, 3 Jan 2014 06:12:30 +0000 (UTC) Received: from hornbill.gentoo.org (hornbill.gentoo.org [94.100.119.163]) (using TLSv1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id 14EF433EFDC for ; Fri, 3 Jan 2014 06:12:29 +0000 (UTC) Received: from localhost.localdomain (localhost [127.0.0.1]) by hornbill.gentoo.org (Postfix) with ESMTP id 98033E54DF for ; Fri, 3 Jan 2014 06:12:27 +0000 (UTC) From: "Brian Dolbec" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Brian Dolbec" Message-ID: <1388727571.134ce250adc19ef5ecbe37f2d8e7a55fcffcfb9b.dol-sen@gentoo> Subject: [gentoo-commits] proj/catalyst:pending commit in: modules/ X-VCS-Repository: proj/catalyst X-VCS-Files: modules/generic_stage_target.py X-VCS-Directories: modules/ X-VCS-Committer: dol-sen X-VCS-Committer-Name: Brian Dolbec X-VCS-Revision: 134ce250adc19ef5ecbe37f2d8e7a55fcffcfb9b X-VCS-Branch: pending Date: Fri, 3 Jan 2014 06:12:27 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Archives-Salt: 7cf07d27-f766-4208-a186-c0f28f2f3fcd X-Archives-Hash: 8b1542f09409ea1c6b90d96ed29accd5 commit: 134ce250adc19ef5ecbe37f2d8e7a55fcffcfb9b Author: Brian Dolbec gentoo org> AuthorDate: Mon Dec 30 23:57:28 2013 +0000 Commit: Brian Dolbec gmail com> CommitDate: Fri Jan 3 05:39:31 2014 +0000 URL: http://git.overlays.gentoo.org/gitweb/?p=proj/catalyst.git;a=commit;h=134ce250 catalyst/targets/generic_stage_target.py: mount /dev/shm on linux Add shm targets defaults. Anthony G. Basile gentoo.org> Some build systems require /dev/shm to be mounted, like python's build system. We make sure that on Linux systems, /dev/shm is mounted in the stage chroots. See bug #496328. Douglas Freed mtu.edu> : Mount /dev/shm in the chroot with the right options Bind mounting /dev/shm into the chroot isn't a good idea, as there may be collisions and result in weird side effects. Instead, we can just mount a new tmpfs there, with the right options to ensure security. (Forward ported to pending branch from 2.X Brian Dolbec) Conflicts: catalyst/targets/generic_stage_target.py --- modules/generic_stage_target.py | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/modules/generic_stage_target.py b/modules/generic_stage_target.py index 790e4da..3d66231 100644 --- a/modules/generic_stage_target.py +++ b/modules/generic_stage_target.py @@ -20,6 +20,7 @@ TARGET_MOUNTS_DEFAULTS = { "port_tmpdir": "/var/tmp/portage", "port_logdir": "/var/log/portage", "proc": "/proc", + "shm": "/dev/shm", } SOURCE_MOUNTS_DEFAULTS = { @@ -29,6 +30,7 @@ SOURCE_MOUNTS_DEFAULTS = { "portdir": "/usr/portage", "port_tmpdir": "tmpfs", "proc": "/proc", + "shm": "shmfs", } @@ -218,6 +220,7 @@ class generic_stage_target(generic_target): #self.mountmap["portdir"] = None if os.uname()[0] == "Linux": self.mounts.append("devpts") + self.mounts.append("shm") self.set_mounts() @@ -938,7 +941,7 @@ class generic_stage_target(generic_target): os.makedirs(target, 0755) if not os.path.exists(self.mountmap[x]): - if not self.mountmap[x] == "tmpfs": + if self.mountmap[x] not in ["tmpfs", "shmfs"]: os.makedirs(self.mountmap[x], 0755) src=self.mountmap[x] @@ -959,6 +962,9 @@ class generic_stage_target(generic_target): self.settings["var_tmpfs_portage"] + "G " + \ src + " " + target retval=os.system(cmd) + elif src == "shmfs": + cmd = "mount -t tmpfs -o noexec,nosuid,nodev shm " + target + retval=os.system(cmd) else: cmd = "mount --bind " + src + " " + target #print "bind(); cmd =", cmd