diff --git a/drivers/block/Kconfig b/drivers/block/Kconfig
index 83c32cb72582bd6a1c33524ff61bdc757e76d6f2..9abb6468971281f8e46fdb763656ede72f9af987 100644
--- a/drivers/block/Kconfig
+++ b/drivers/block/Kconfig
@@ -470,6 +470,14 @@ config XEN_BLKDEV_FRONTEND
 	  block device driver.  It communicates with a back-end driver
 	  in another domain which drives the actual block device.
 
+config XEN_BLKDEV_BACKEND
+	tristate "Block-device backend driver"
+	depends on XEN_BACKEND
+	help
+	  The block-device backend driver allows the kernel to export its
+	  block devices to other guests via a high-performance shared-memory
+	  interface.
+
 config VIRTIO_BLK
 	tristate "Virtio block driver (EXPERIMENTAL)"
 	depends on EXPERIMENTAL && VIRTIO
diff --git a/drivers/block/Makefile b/drivers/block/Makefile
index 40528ba56d1bf1a1a2db7c2728b10219b98cd029..76646e9a1c91528617c22e2c3f429201531acdf4 100644
--- a/drivers/block/Makefile
+++ b/drivers/block/Makefile
@@ -36,6 +36,7 @@ obj-$(CONFIG_BLK_DEV_UB)	+= ub.o
 obj-$(CONFIG_BLK_DEV_HD)	+= hd.o
 
 obj-$(CONFIG_XEN_BLKDEV_FRONTEND)	+= xen-blkfront.o
+obj-$(CONFIG_XEN_BLKDEV_BACKEND)	+= xen-blkback/
 obj-$(CONFIG_BLK_DEV_DRBD)     += drbd/
 obj-$(CONFIG_BLK_DEV_RBD)     += rbd.o
 
diff --git a/drivers/xen/blkback/Makefile b/drivers/block/xen-blkback/Makefile
similarity index 100%
rename from drivers/xen/blkback/Makefile
rename to drivers/block/xen-blkback/Makefile
diff --git a/drivers/xen/blkback/blkback.c b/drivers/block/xen-blkback/blkback.c
similarity index 100%
rename from drivers/xen/blkback/blkback.c
rename to drivers/block/xen-blkback/blkback.c
diff --git a/drivers/xen/blkback/common.h b/drivers/block/xen-blkback/common.h
similarity index 100%
rename from drivers/xen/blkback/common.h
rename to drivers/block/xen-blkback/common.h
diff --git a/drivers/xen/blkback/interface.c b/drivers/block/xen-blkback/interface.c
similarity index 100%
rename from drivers/xen/blkback/interface.c
rename to drivers/block/xen-blkback/interface.c
diff --git a/drivers/xen/blkback/vbd.c b/drivers/block/xen-blkback/vbd.c
similarity index 100%
rename from drivers/xen/blkback/vbd.c
rename to drivers/block/xen-blkback/vbd.c
diff --git a/drivers/xen/blkback/xenbus.c b/drivers/block/xen-blkback/xenbus.c
similarity index 100%
rename from drivers/xen/blkback/xenbus.c
rename to drivers/block/xen-blkback/xenbus.c
diff --git a/drivers/xen/Kconfig b/drivers/xen/Kconfig
index fb1af628cbfc00a56efd51d489d7debfe6f80347..a59638b37c1add565887e30feba7aebc7c3b54be 100644
--- a/drivers/xen/Kconfig
+++ b/drivers/xen/Kconfig
@@ -37,14 +37,6 @@ config XEN_BACKEND
 	  Support for backend device drivers that provide I/O services
 	  to other virtual machines.
 
-config XEN_BLKDEV_BACKEND
-	tristate "Block-device backend driver"
-	depends on XEN_BACKEND && BLOCK
-	help
-	  The block-device backend driver allows the kernel to export its
-	  block devices to other guests via a high-performance shared-memory
-	  interface.
-
 config XENFS
 	tristate "Xen filesystem"
 	default y
diff --git a/drivers/xen/Makefile b/drivers/xen/Makefile
index 29c0a416f082aed028c196b39ea81eebcc89d0c6..f420f1ff7f137c7be0e85f7f102e50f42a1d1a25 100644
--- a/drivers/xen/Makefile
+++ b/drivers/xen/Makefile
@@ -11,7 +11,6 @@ obj-$(CONFIG_XEN_BALLOON)	+= xen-balloon.o
 obj-$(CONFIG_XEN_DEV_EVTCHN)	+= xen-evtchn.o
 obj-$(CONFIG_XEN_GNTDEV)	+= xen-gntdev.o
 obj-$(CONFIG_XEN_GRANT_DEV_ALLOC)	+= xen-gntalloc.o
-obj-$(CONFIG_XEN_BLKDEV_BACKEND)	+= blkback/
 obj-$(CONFIG_XENFS)		+= xenfs/
 obj-$(CONFIG_XEN_SYS_HYPERVISOR)	+= sys-hypervisor.o
 obj-$(CONFIG_XEN_PLATFORM_PCI)	+= xen-platform-pci.o