Do not free frontend resources if some error happened, since the
backend may not have finished properly restarting in such case.
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
snprintf(path, sizeof(path), "%s/event-channel", nodename);
xenbus_rm(XBT_NIL, path);
- free_blkfront(dev);
+ if (!err)
+ free_blkfront(dev);
}
static void blkfront_wait_slot(struct blkfront_dev *dev)
snprintf(path, sizeof(path), "%s/request-abs-pointer", nodename);
xenbus_rm(XBT_NIL, path);
- free_kbdfront(dev);
+ if (!err)
+ free_kbdfront(dev);
}
#ifdef HAVE_LIBC
snprintf(path, sizeof(path), "%s/feature-update", nodename);
xenbus_rm(XBT_NIL, path);
- free_fbfront(dev);
+ if (!err)
+ free_fbfront(dev);
}
#ifdef HAVE_LIBC
snprintf(path, sizeof(path), "%s/request-rx-copy", nodename);
xenbus_rm(XBT_NIL, path);
- free_netfront(dev);
+ if (!err)
+ free_netfront(dev);
}
snprintf(path, sizeof(path), "%s/event-channel", nodename);
xenbus_rm(XBT_NIL, path);
- free_pcifront(dev);
+ if (!err)
+ free_pcifront(dev);
}
int pcifront_physical_to_virtual (struct pcifront_dev *dev,