Lines Matching defs:xendev
146 int xenbus_read_otherend_details(struct xenbus_device *xendev,
149 int err = xenbus_gather(XBT_NIL, xendev->nodename,
150 id_node, "%i", &xendev->otherend_id,
151 path_node, NULL, &xendev->otherend,
154 xenbus_dev_fatal(xendev, err,
156 xendev->nodename);
159 if (strlen(xendev->otherend) == 0 ||
160 !xenbus_exists(XBT_NIL, xendev->otherend, "")) {
161 xenbus_dev_fatal(xendev, -ENOENT,
164 xendev->nodename);
165 free_otherend_details(xendev);
388 struct xenbus_device *xendev = to_xenbus_device(dev);
391 if (!strcmp(xendev->nodename, info->nodename)) {
392 info->dev = xendev;
410 struct xenbus_device *xendev = to_xenbus_device(dev);
417 if (strncmp(xendev->nodename, info->nodename, len))
421 if ((strlen(xendev->nodename) > len) && (xendev->nodename[len] != '/'))
424 info->dev = xendev;
503 struct xenbus_device *xendev;
516 xendev = kzalloc(sizeof(*xendev) + stringlen, GFP_KERNEL);
517 if (!xendev)
520 xendev->state = XenbusStateInitialising;
524 tmpstring = (char *)(xendev + 1);
526 xendev->nodename = tmpstring;
530 xendev->devicetype = tmpstring;
531 init_completion(&xendev->down);
533 xendev->dev.bus = &bus->bus;
534 xendev->dev.release = xenbus_dev_release;
536 err = bus->get_bus_id(devname, xendev->nodename);
540 dev_set_name(&xendev->dev, "%s", devname);
541 sema_init(&xendev->reclaim_sem, 1);
544 err = device_register(&xendev->dev);
546 put_device(&xendev->dev);
547 xendev = NULL;
553 kfree(xendev);