Date: Mon, 6 Jan 2014 10:46:55 +0100 From: =?UTF-8?B?Um9nZXIgUGF1IE1vbm7DqQ==?= <roger.pau@citrix.com> To: Julien Grall <julien.grall@linaro.org>, <freebsd-xen@freebsd.org>, <freebsd-current@freebsd.org>, <xen-devel@lists.xen.org>, <gibbs@freebsd.org>, <jhb@freebsd.org>, <kib@freebsd.org>, <julien.grall@citrix.com> Subject: Re: [Xen-devel] [PATCH v9 14/19] xen: introduce xenpv bus and a dummy pvcpu device Message-ID: <52CA7B8F.9060402@citrix.com> In-Reply-To: <52C9D432.3040409@linaro.org> References: <1388677433-49525-1-git-send-email-roger.pau@citrix.com> <1388677433-49525-15-git-send-email-roger.pau@citrix.com> <52C9D432.3040409@linaro.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 05/01/14 22:52, Julien Grall wrote:
>
>
> On 01/02/2014 03:43 PM, Roger Pau Monne wrote:
>> Since Xen PVH guests doesn't have ACPI, we need to create a dummy
>> bus so top level Xen devices can attach to it (instead of
>> attaching directly to the nexus) and a pvcpu device that will be used
>> to fill the pcpu->pc_device field.
>> ---
>> sys/conf/files.amd64 | 1 +
>> sys/conf/files.i386 | 1 +
>> sys/x86/xen/xenpv.c | 155
>> ++++++++++++++++++++++++++++++++++++++++++++++++++
>
> I think it makes more sense to have 2 files: one for xenpv bus and one
> for a dummy pvcpu device. It would allow us to move xenpv bus to common
> code (sys/xen or sys/dev/xen).
Ack. I wasn't thinking other arches will probably use the xenpv bus but
not the dummy cpu device. Would you agree to leave xenpv bus inside
x86/xen for now and move the dummy PV cpu device to dev/xen/pvcpu/?
>
> [..]
>
>> +
>> +static int
>> +xenpv_probe(device_t dev)
>> +{
>> +
>> + device_set_desc(dev, "Xen PV bus");
>> + device_quiet(dev);
>> + return (0);
>
> As I understand, 0 means I can "handle" the current device, in this case
> if a device is probing, because it doesn't have yet a driver, we will
> use xenpv and end up with 2 (or even more) xenpv buses.
>
> As we only want to probe xenpv bus once, when the bus was added
> manually, returning BUS_PROBE_NO_WILDCARD would suit better.
>
> [..]
>
>> +static int
>> +xenpvcpu_probe(device_t dev)
>> +{
>> +
>> + device_set_desc(dev, "Xen PV CPU");
>> + return (0);
>
> Same here: BUS_PROBE_NOWILDCARD.
Ack for both, will change it to BUS_PROBE_NOWILDCARD. While at it, we
should also change xenstore probe function to return BUS_PROBE_NOWILDCARD.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?52CA7B8F.9060402>
