From owner-freebsd-emulation@FreeBSD.ORG Mon Aug 18 08:05:51 2008 Return-Path: Delivered-To: freebsd-emulation@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 186AA1065674 for ; Mon, 18 Aug 2008 08:05:51 +0000 (UTC) (envelope-from alexander@leidinger.net) Received: from redbull.bpaserver.net (redbullneu.bpaserver.net [213.198.78.217]) by mx1.freebsd.org (Postfix) with ESMTP id AA8688FC1A for ; Mon, 18 Aug 2008 08:05:50 +0000 (UTC) (envelope-from alexander@leidinger.net) Received: from outgoing.leidinger.net (p54A574E6.dip.t-dialin.net [84.165.116.230]) by redbull.bpaserver.net (Postfix) with ESMTP id 7BBCC2E085; Mon, 18 Aug 2008 10:05:45 +0200 (CEST) Received: from webmail.leidinger.net (webmail.leidinger.net [192.168.1.102]) by outgoing.leidinger.net (Postfix) with ESMTP id 487686C715; Mon, 18 Aug 2008 10:05:42 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=Leidinger.net; s=outgoing-alex; t=1219046742; bh=qIaACm9nBKHPr85K12KK043XWP3elCvli cLqUC8Xy44=; h=Message-ID:Date:From:To:Cc:Subject:References: In-Reply-To:MIME-Version:Content-Type:Content-Transfer-Encoding; b=LraQsw7sgDvtK79CwLe+4UCCdj2ujVhxr85+YKUi1jfnnFo0b3OiwanPv4gpThnRx Hp2nR1/K3aMhR5BtOwPnR2GpAfFoSQCmY/S4Zf8zwr+Hw+BDyU7KMaG2mmFvCb5WypH tzm7WOtGBsiIQbHHji08U/2j8DqYykrgmV0j1eK80CwdAF9hN+WkbptVtC4c2sSJWzW RGg4jqP+pl5/CdL5tce6xM/T3r11hXTuJF5/zUczYfhNVk85umIb4nr5Fc0dvzSzorD tfi0LKowwmx0X4iOLB4wpv16/qeMJmDCDrEdjPcnXtqHdJKOJnCE88Bjr/Qh+drrtMA CMngM25sw== Received: (from www@localhost) by webmail.leidinger.net (8.14.2/8.13.8/Submit) id m7I85fix050009; Mon, 18 Aug 2008 10:05:41 +0200 (CEST) (envelope-from Alexander@Leidinger.net) Received: from pslux.cec.eu.int (pslux.cec.eu.int [158.169.9.14]) by webmail.leidinger.net (Horde Framework) with HTTP; Mon, 18 Aug 2008 10:05:41 +0200 Message-ID: <20080818100541.20073jcxqbtyci80@webmail.leidinger.net> X-Priority: 3 (Normal) Date: Mon, 18 Aug 2008 10:05:41 +0200 From: "Alexander Leidinger" To: "Chagin Dmitry" References: <20080810072013.GA15196@dchagin.dialup.corbina.ru> <20080810115406.GR97161@deviant.kiev.zoral.com.ua> <20080810120424.GA15768@dchagin.dialup.corbina.ru> <20080810122124.GS97161@deviant.kiev.zoral.com.ua> <20080817181757.GA2940@dchagin.dialup.corbina.ru> In-Reply-To: <20080817181757.GA2940@dchagin.dialup.corbina.ru> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; DelSp="Yes"; format="flowed" Content-Disposition: inline Content-Transfer-Encoding: quoted-printable User-Agent: Internet Messaging Program (IMP) H3 (4.2) / FreeBSD-8.0 X-BPAnet-MailScanner-Information: Please contact the ISP for more information X-MailScanner-ID: 7BBCC2E085.630BA X-BPAnet-MailScanner: Found to be clean X-BPAnet-MailScanner-SpamCheck: not spam, ORDB-RBL, SpamAssassin (not cached, score=-12.136, required 6, BAYES_00 -15.00, DKIM_SIGNED 0.00, DKIM_VERIFIED -0.00, J_CHICKENPOX_52 0.60, MIME_QP_LONG_LINE 1.40, NORMAL_HTTP_TO_IP 0.00, RDNS_DYNAMIC 0.10, SARE_GETFCK 1.11, SMILEY -0.50, TW_CV 0.08, TW_HN 0.08) X-BPAnet-MailScanner-From: alexander@leidinger.net X-Spam-Status: No Cc: freebsd-emulation@freebsd.org Subject: Re: x86_64 linuxulator patches X-BeenThere: freebsd-emulation@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Development of Emulators of other operating systems List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 18 Aug 2008 08:05:51 -0000 Quoting "Chagin Dmitry" (from Sun, 17 Aug 2008 =20 22:17:57 +0400): > On Sun, Aug 10, 2008 at 03:21:24PM +0300, Kostik Belousov wrote: >> On Sun, Aug 10, 2008 at 04:04:24PM +0400, Chagin Dmitry wrote: >> > On Sun, Aug 10, 2008 at 02:54:06PM +0300, Kostik Belousov wrote: >> > > On Sun, Aug 10, 2008 at 11:20:13AM +0400, Chagin Dmitry wrote: >> > > > Hi, as promised, I place x86_64 linuxulator patches. >> > > > >> > > > here the basic patch: >> > > > http://78.107.232.239/linuxulator64-current.patch >> > > > >> > > > here recvmsg && sendmsg patch (not tested with really applications)= : >> > > > http://78.107.232.239/send-recv-msg.patch >> > > > >> > > > here master repository: >> > > > git://78.107.232.239/linuxulator >> > > > >> > > > and ports used for testing (and only for testing): >> > > > git://78.107.232.239/linux_base-f8 >> > > > git://78.107.232.239/linux_devel-f8 >> > > > git://78.107.232.239/linux_kdump-1.6 >> > > > >> > > > by default on amd64 builds i386 linuxulator, for build x86_64 use >> > > > cd sys/modules/linux >> > > > make -D COMPAT_LINUX64 >> > > > >> > > > for correct recognition of what linuxulator version is used >> > > > added new sysctl compat.linux.platform >> > > > for example use in ports Makefile's: >> > > > >> > > > LINUX_PLATFORM!=3D /sbin/sysctl -n compat.linux.platform =20 >> 2>/dev/null >> > > > >> > > > .if ${LINUX_PLATFORM}x =3D=3D "x" >> > > > IGNORE=3D linuxulator is not (kld)loaded >> > > > .elif ${LINUX_PLATFORM} =3D=3D "i386" >> > > > LINUX_RPM_ARCH=3D i386 >> > > > .elif ${LINUX_PLATFORM} =3D=3D "x86_64" >> > > > LINUX_RPM_ARCH=3D x86_64 >> > > > SFX=3D 64 >> > > > .else >> > > > IGNORE=3D ${LINUX_PLATFORM} is not supported >> > > > .endif >> > > > >> > > > I shal glad to remarks, proposals and results of testing. >> > > > thnx >> > > >> > > Reading your email, I got an impression that i386/linux and x86_64/li= nux >> > > ABI emulators are mutually exclusive. Is this right ? I think it woul= d >> > > be most useful to be able to have them both in one kernel. >> > >> > yes, it so. if there are ports working only on i386 it's necessary >> > to do it. I don't know such ports :( >> >> Whether there is a _port_ that has no amd64 counterpart for i386 one is >> irrelevant there. The Linux ABI emulation is supposed to work not only wi= th >> a software installed from port, but with most binaries. >> >> If emulating both ia32 and x86_64 simultaneously is technically feasible >> (and I believe it is), then both should be available. i386->amd64 is >> not the replacement step, this is an backward-compatible upgrade. > > Something few the interested participants of discussion :) > problem in that I am not familiar with a ports infrastructure... > > in my opinion the best decision for amd64 looks so. > we use two modules. linux.ko for x86_64 and linux32.ko for ia32, > option COMPAT_LINUX for x86_64 and COMPAT_LINUX32 for ia32. > and two linux_base directories: /compat/linux for x86_64 > and /compat/linux32 for ia32. > > there are other opinions? I propose: - /compat/linux64 for 64bit stuff - /compat/linux32 a symlink to /compat/linux - /compat/linux for 32bit stuff (we can think about having) Reasons: - existing installations don't get fucked up with a partial update (very big point!) - we don't have to special case amd64-linux32 for LINUXBASE, we just have to distinguish 32 and 64 bit (maybe with switches USE_LINUX and USE_LINUX64, we have to have separate 64bit ports anyway, when we want to be able to install in parallel) Bye, Alexander. --=20 If God wanted us to be brave, why did he give us legs? =09=09-- Marvin Kitman http://www.Leidinger.net Alexander @ Leidinger.net: PGP ID =3D B0063FE7 http://www.FreeBSD.org netchild @ FreeBSD.org : PGP ID =3D 72077137