From owner-freebsd-arch@FreeBSD.ORG Wed Oct 27 21:55:25 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 405DE106566C; Wed, 27 Oct 2010 21:55:25 +0000 (UTC) (envelope-from asmrookie@gmail.com) Received: from mail-qw0-f54.google.com (mail-qw0-f54.google.com [209.85.216.54]) by mx1.freebsd.org (Postfix) with ESMTP id CFFD78FC22; Wed, 27 Oct 2010 21:55:24 +0000 (UTC) Received: by qwe4 with SMTP id 4so1164620qwe.13 for ; Wed, 27 Oct 2010 14:55:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:sender:received :in-reply-to:references:date:x-google-sender-auth:message-id:subject :from:to:cc:content-type:content-transfer-encoding; bh=vsYFnY+RGp8AMT+myvTlYAolQxdOQ8NGdyE4dsco1l0=; b=dnREf9TtYBH7YewqLZU7edbQSuAWSTOvYlafP5EICj+QNt5gpbjg/3vxGUhf2JKUqf zZBI9bM9Z2LZE1P6z8XWZ299vay7o0I6I/XK+mf0LiU35B0txTDanMp4CcGn/NXfRuZ4 S9GnQGHEQloPtse1RysDDmBe8+4c6Ij2RxpoQ= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type :content-transfer-encoding; b=HGRDDlLRmsQCAzvVC5t7k/7XdjAmiVg9iNdtRaU/BPCC9jKxCNgVPH7EM+egVy/p3d 8J43/VXssRasqPBAefFCS+c8+xFBX/4aJMVmN6EOsM35/QXjsb9xiRhUpg4/7pEYkSG8 E3kvUkq2JLsFcWR9cyrlEPyLRaekk4WbdYruo= MIME-Version: 1.0 Received: by 10.229.232.133 with SMTP id ju5mr5705647qcb.213.1288216523529; Wed, 27 Oct 2010 14:55:23 -0700 (PDT) Sender: asmrookie@gmail.com Received: by 10.229.237.9 with HTTP; Wed, 27 Oct 2010 14:55:23 -0700 (PDT) In-Reply-To: <201010271749.54619.jhb@freebsd.org> References: <201010271649.47880.jhb@freebsd.org> <201010271749.54619.jhb@freebsd.org> Date: Wed, 27 Oct 2010 23:55:23 +0200 X-Google-Sender-Auth: 10VQhsR6BG20W6E3XOo4FrlR-oc Message-ID: From: Attilio Rao To: John Baldwin Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Cc: freebsd-arch@freebsd.org Subject: Re: [PATCH] Headers for the x86 subtree X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 27 Oct 2010 21:55:25 -0000 2010/10/27 John Baldwin : > On Wednesday, October 27, 2010 5:25:20 pm Attilio Rao wrote: >> 2010/10/27 John Baldwin : >> > On Wednesday, October 27, 2010 4:00:15 pm Attilio Rao wrote: >> >> 2010/10/27 John Baldwin : >> >> > On Wednesday, October 27, 2010 10:56:06 am Attilio Rao wrote: >> >> >> This patch should convert a (simple and 100% shared between amd64 = and >> >> >> i386 header) under the x86 sub-tree. Please note that in this patc= h I >> >> >> "svn cp" the file from sys/amd64/include/mptable.h into >> >> >> sys/x86/include/mptable.h: >> >> >> http://www.freebsd.org/~attilio/headers-x86.diff >> >> >> >> >> >> This is someway a POC, that I really want to get in. The idea is >> >> >> simple and someway follows the pc98 case (even if not entirely): t= he >> >> >> files under machine/include/* became just mere stubs for x86/inclu= de/* >> >> >> contents and redirect there. >> >> >> This won't particulary help reducing the number of available files= , >> >> >> but generally removing verbatim and would also be the way to go fo= r >> >> >> handling MFCs. >> >> >> If you find this is the right way I'll commit the fix and start mo= ving >> >> >> other files as time permits. >> >> > >> >> > No, we want to do this differently because we also want this to wor= k in >> >> > userland. =C2=A0(e.g. I'd like to outright move mca.h to x86/includ= e and then use >> >> > '#include ' in both kernel and userland for it). =C2=A0W= e'd need some >> >> > special glue to setup an 'x86' symlink during a kernel build that p= oints to >> >> > @/x86/include as we do now to setup an 'i386' link for pc98 kernels= . >> >> > >> >> > We'd also need to install the x86 headers into /usr/include during = an >> >> > installworld. =C2=A0Warner has some more pointers on this I think. >> >> >> >> So you probabilly are suggesting to go w/ the "pc98 approach". >> >> I'm fine with it, I'll try to look for how it works and implement as = well. >> > >> > Thanks. =C2=A0I think it is fine to use '#include ' in code= directly >> > with this approach as well. =C2=A0I only think we should provide wrapp= ers in >> > /usr/include/machine if compatibility is needed. =C2=A0mca.h and mptab= le.h >> > shouldn't need compatibility for example, but specialreg.h might. >> >> I'd expect to potentially mirror any header, otherwise on which >> criterias we can say some are needed and other not? > > If it is widely used in userland. :) =C2=A0mptable.h is probably only use= d by the > mptable utility which is easily fixed. =C2=A0It will not be of interest t= o any 3rd > party software. =C2=A0mca.h may eventually be used by third party softwar= e, but it > is very new, so we can probably move it now without causing any harm. > > Kernel-only headers such as intr_machdep.h certainly do not need any comp= at > wrappers. > > We can always add a compat header in machine if we find it is needed, but= I'd > like to minimize the amount of compat cruft as much as possible. I'd say in general I agree, so let's add them just on-demand is possibly fi= ne. Thanks, Attilio --=20 Peace can only be achieved by understanding - A. Einstein