On 14/01/14 17:14, Julien Grall wrote:
> On 01/14/2014 04:08 PM, Roger Pau Monné wrote:
>> On 14/01/14 16:41, Julien Grall wrote:
>>> On 01/14/2014 02:59 PM, Roger Pau Monne wrote:
>>>> +static int
>>>> +xenpv_attach(device_t dev)
>>>> +{
>>>> +  device_t child;
>>>> +
>>>> +  if (xen_hvm_domain()) {
>>>> +          device_t xenpci;
>>>> +          devclass_t dc;
>>>> +
>>>> +          /* Make sure xenpci has been attached */
>>>> +          dc = devclass_find("xenpci");
>>>> +          if (dc == NULL)
>>>> +                  panic("unable to find xenpci devclass");
>>>> +
>>>> +          xenpci = devclass_get_device(dc, 0);
>>>> +          if (xenpci == NULL)
>>>> +                  panic("unable to find xenpci device");
>>>> +
>>>> +          if (!device_is_attached(xenpci))
>>>> +                  panic("trying to attach xenpv before xenpci");
>>>> +  }
>>>
>>> Can you use the identify method to add the xenpci device?
>>
>> I don't think so, xenpci is a pci device, it is detected and plugged by
>> the pci bus code.
> 
> Oups, I though you are trying to add the device. In this case, the check
> seems pointless. In which case the xenpci couldn't exist?

It's just a "belt and suspenders", if we attach the xenpv bus without
xenpci being attached first a bunch of things are going to fail, I
though it might be best to print a clear error message about what went
wrong in order to help debug it.

_______________________________________________
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"

Reply via email to