From 8ff50d5c979e0b8b872edddd538add90d34bf278 Mon Sep 17 00:00:00 2001 From: Laszlo Ersek Date: Fri, 7 Oct 2011 21:34:38 +0200 Subject: [PATCH] --- yaml --- r: 273839 b: refs/heads/master c: 469738e675524b6aa029ecd46bdda3f878b12eff h: refs/heads/master i: 273837: b615af5bda00d0ac7403edb6089aa131582936ea 273835: 616aa8a781e8e7cfd1f02c29ae40e91918662161 273831: 63b960bdb5dbe3d323b8e8141d36c4189e551436 273823: 9ed03d56b4878629693d2f88ce91622d0391d5e8 v: v3 --- [refs] | 2 +- trunk/drivers/block/xen-blkfront.c | 10 +++++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index b087679aea5f..592c0b6d8781 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: d11e6158307bed3f178399a4e6216eec67d16200 +refs/heads/master: 469738e675524b6aa029ecd46bdda3f878b12eff diff --git a/trunk/drivers/block/xen-blkfront.c b/trunk/drivers/block/xen-blkfront.c index 8bf0cb7b2565..773da7d6491e 100644 --- a/trunk/drivers/block/xen-blkfront.c +++ b/trunk/drivers/block/xen-blkfront.c @@ -1450,6 +1450,8 @@ static struct xenbus_driver blkfront = { static int __init xlblk_init(void) { + int ret; + if (!xen_domain()) return -ENODEV; @@ -1459,7 +1461,13 @@ static int __init xlblk_init(void) return -ENODEV; } - return xenbus_register_frontend(&blkfront); + ret = xenbus_register_frontend(&blkfront); + if (ret) { + unregister_blkdev(XENVBD_MAJOR, DEV_NAME); + return ret; + } + + return 0; } module_init(xlblk_init);