From owner-freebsd-current@FreeBSD.ORG Thu Jan 9 16:30:56 2014 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (unknown [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 24B1C997; Thu, 9 Jan 2014 16:30:56 +0000 (UTC) Received: from SMTP02.CITRIX.COM (smtp02.citrix.com [66.165.176.63]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 4DBB315D0; Thu, 9 Jan 2014 16:30:55 +0000 (UTC) X-IronPort-AV: E=Sophos;i="4.95,631,1384300800"; d="scan'208";a="89200731" Received: from accessns.citrite.net (HELO FTLPEX01CL03.citrite.net) ([10.9.154.239]) by FTLPIPO02.CITRIX.COM with ESMTP; 09 Jan 2014 16:30:36 +0000 Received: from [127.0.0.1] (10.80.16.47) by smtprelay.citrix.com (10.13.107.80) with Microsoft SMTP Server id 14.2.342.4; Thu, 9 Jan 2014 11:30:35 -0500 Message-ID: <52CECEAA.107@citrix.com> Date: Thu, 9 Jan 2014 17:30:34 +0100 From: =?UTF-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:24.0) Gecko/20100101 Thunderbird/24.2.0 MIME-Version: 1.0 To: Julien Grall Subject: Re: [Xen-devel] [PATCH v9 15/19] xen: create a Xen nexus to use in PV/PVH References: <1388677433-49525-1-git-send-email-roger.pau@citrix.com> <1388677433-49525-16-git-send-email-roger.pau@citrix.com> <52C9D4CA.6070403@linaro.org> <52CA78DE.9060502@citrix.com> <52CA9481.4090703@linaro.org> <52CBBB05.6020104@citrix.com> <52CC0EE8.6060205@linaro.org> In-Reply-To: <52CC0EE8.6060205@linaro.org> X-Enigmail-Version: 1.6 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8bit X-DLP: MIA2 Cc: xen-devel@lists.xen.org, julien.grall@citrix.com, freebsd-xen@freebsd.org, freebsd-current@freebsd.org, kib@freebsd.org, gibbs@freebsd.org X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 09 Jan 2014 16:30:56 -0000 On 07/01/14 15:27, Julien Grall wrote: > On 01/07/2014 08:29 AM, Roger Pau Monné wrote: >> On 06/01/14 12:33, Julien Grall wrote: >>> >>> >>> On 01/06/2014 09:35 AM, Roger Pau Monné wrote: >>>> On 05/01/14 22:55, Julien Grall wrote: >>>>> >>>>> >>>>> On 01/02/2014 03:43 PM, Roger Pau Monne wrote: >>>>>> Introduce a Xen specific nexus that is going to be in charge for >>>>>> attaching Xen specific devices. >>>>> >>>>> Now that we have a xenpv bus, do we really need a specific nexus for >>>>> Xen? >>>>> We should be able to use the identify callback of xenpv to create the >>>>> bus. >>>>> >>>>> The other part of this patch can be merged in the patch #14 "Introduce >>>>> xenpv bus and a dummy pvcpu device". >>>> >>>> On x86 at least we need the Xen specific nexus, or we will fall back to >>>> use the legacy nexus which is not what we really want. >>>> >>> >>> Oh right, in any case can we use the identify callback of xenpv to add >>> the bus? >> >> AFAICT this kind of bus devices don't have a identify routine, and they >> are usually added manually from the specific nexus, see acpi or legacy. >> Could you add the device on ARM when you detect that you are running as >> a Xen guest, or in the generic ARM nexus if Xen is detected? > > Is there any reason to not add identify callback? If it's possible, I > would like to avoid as much as possible #ifdef XENHVM in ARM code. Maybe the x86 world is really different from the ARM world in how nexus works, but I rather prefer to have a #ifdef XENHVM and a BUS_ADD_CHILD that attaches the xenpv bus in the generic ARM nexus rather than having something that completely diverges from what buses usually do in FreeBSD. It's going to be much more difficult to track in case of bugs, and it's not what people expects, but that's just my opinion. I can certainly add the identify routine if there's an agreement that it's the best way to deal with it. Roger.