diff options
author | 2008-11-03 23:38:43 +0000 | |
---|---|---|
committer | 2008-11-03 23:38:43 +0000 | |
commit | 19eab6d4d0e464c2384e3d49cb3cf7664c444463 (patch) | |
tree | 8f2a9914f45a6b2ea98fda6ada2dcd25497bb97b /sys-apps | |
parent | New version for GNOME 2.24. Update code to use xrandr 1.2 capabilities, moder... (diff) | |
download | gentoo-2-19eab6d4d0e464c2384e3d49cb3cf7664c444463.tar.gz gentoo-2-19eab6d4d0e464c2384e3d49cb3cf7664c444463.tar.bz2 gentoo-2-19eab6d4d0e464c2384e3d49cb3cf7664c444463.zip |
Add a fix for bug #245254.
(Portage version: 2.2_rc13/cvs/Linux 2.6.27 x86_64)
Diffstat (limited to 'sys-apps')
-rw-r--r-- | sys-apps/v86d/ChangeLog | 6 | ||||
-rw-r--r-- | sys-apps/v86d/files/v86d-0.1.9-prot_write.patch | 28 | ||||
-rw-r--r-- | sys-apps/v86d/v86d-0.1.9.ebuild | 10 |
3 files changed, 41 insertions, 3 deletions
diff --git a/sys-apps/v86d/ChangeLog b/sys-apps/v86d/ChangeLog index 9035919051d2..52bb4733c0be 100644 --- a/sys-apps/v86d/ChangeLog +++ b/sys-apps/v86d/ChangeLog @@ -1,6 +1,10 @@ # ChangeLog for sys-apps/v86d # Copyright 1999-2008 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/v86d/ChangeLog,v 1.28 2008/10/18 17:27:33 spock Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-apps/v86d/ChangeLog,v 1.29 2008/11/03 23:38:43 spock Exp $ + + 03 Nov 2008; Michał Januszewski <spock@gentoo.org> + +files/v86d-0.1.9-prot_write.patch, v86d-0.1.9.ebuild: + Add a fix for bug #245254. 18 Oct 2008; Michał Januszewski <spock@gentoo.org> -v86d-0.1.5.2.ebuild, -v86d-0.1.6.ebuild, -v86d-0.1.7.ebuild, -v86d-0.1.8.ebuild: diff --git a/sys-apps/v86d/files/v86d-0.1.9-prot_write.patch b/sys-apps/v86d/files/v86d-0.1.9-prot_write.patch new file mode 100644 index 000000000000..109c1c731b7b --- /dev/null +++ b/sys-apps/v86d/files/v86d-0.1.9-prot_write.patch @@ -0,0 +1,28 @@ +diff --git a/v86_mem.c b/v86_mem.c +index 4cedbbe..23eb7c0 100644 +--- a/v86_mem.c ++++ b/v86_mem.c +@@ -293,7 +293,13 @@ int v86_mem_init(void) + } + vbios_size = tmp[2] * 0x200; + ulog(LOG_DEBUG, "VBIOS at %5x-%5x\n", VBIOS_BASE, VBIOS_BASE + vbios_size - 1); +- mem_vbios = map_file(NULL, vbios_size, PROT_READ, ++ ++ /* ++ * The Video BIOS and the System BIOS have to be mapped with PROT_WRITE. ++ * There is at least one case where mapping them without this flag causes ++ * a segfault during the emulation: https://bugs.gentoo.org/show_bug.cgi?id=245254 ++ */ ++ mem_vbios = map_file(NULL, vbios_size, PROT_READ | PROT_WRITE, + MAP_SHARED, "/dev/mem", VBIOS_BASE); + + if (!mem_vbios) { +@@ -303,7 +309,7 @@ int v86_mem_init(void) + } + + /* Map the system BIOS */ +- mem_sbios = map_file(NULL, SBIOS_SIZE, PROT_READ, ++ mem_sbios = map_file(NULL, SBIOS_SIZE, PROT_READ | PROT_WRITE, + MAP_SHARED, "/dev/mem", SBIOS_BASE); + if (!mem_sbios) { + ulog(LOG_ERR, "Failed to mmap the System BIOS as %5x.", SBIOS_BASE); diff --git a/sys-apps/v86d/v86d-0.1.9.ebuild b/sys-apps/v86d/v86d-0.1.9.ebuild index 245308776b0a..8252b76eb366 100644 --- a/sys-apps/v86d/v86d-0.1.9.ebuild +++ b/sys-apps/v86d/v86d-0.1.9.ebuild @@ -1,8 +1,8 @@ # Copyright 1999-2008 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/sys-apps/v86d/v86d-0.1.9.ebuild,v 1.2 2008/10/04 09:38:55 spock Exp $ +# $Header: /var/cvsroot/gentoo-x86/sys-apps/v86d/v86d-0.1.9.ebuild,v 1.3 2008/11/03 23:38:43 spock Exp $ -inherit linux-info multilib +inherit eutils linux-info multilib DESCRIPTION="A daemon to run x86 code in an emulated environment." HOMEPAGE="http://dev.gentoo.org/~spock/projects/uvesafb/" @@ -27,6 +27,12 @@ pkg_setup() { linux-info_pkg_setup } +src_unpack() { + unpack ${A} + cd "${S}" + epatch "${FILESDIR}/${P}-prot_write.patch" +} + src_compile() { ./configure --with-klibc $(use_with debug) $(use_with x86emu) || die emake KDIR="${KV_DIR}" || die |