Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 25 Jun 2007 08:03:44 +0200
From:      Marcin Cieslak <saper@system.pl>
To:        freebsd-emulation@freebsd.org
Subject:   Re: snd_es137x & -CURRENT,   /dev/dsp: Invalid argument -- Could not mmap /dev/dsp - linux   emulation problem?
Message-ID:  <f5nlss$nh5$1@sea.gmane.org>
In-Reply-To: <200706121313.51377.jkim@FreeBSD.org>
References:  <466AFD29.7040108@barafranca.com> <466BE4FA.1020804@barafranca.com>	<20070612223746.25d44a5c.ariff@FreeBSD.org> <200706121313.51377.jkim@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Jung-uk Kim wrote:
> To mimic (broken) Linux behavior. ;-)  Seriously Linux kernel for i386 
> (without NX/XD bit support) implies PROT_EXEC when PROT_READ or 
> PROT_WRITE is set even if you don't specify.  In FreeBSD, we have to 
> explicitly specify PROT_EXEC.  Therefore the hack was required.  In 
> fact, 32-bit mmap implementation for Linux/ia64 does exactly this to 
> run i386 binaries.  Many (broken) Linux-only applications had abused 
> this bug in the past and I believe they still exist widely.  If you 
> want, you can add a tunable to turn off this behavior but please 
> leave it on by default.

I just wonder why it breaks now with /dev/dsp*.
Perhaps we should not do PROT_EXEC on devices?

--Marcin




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?f5nlss$nh5$1>