# HG changeset patch
# User Alex Williamson <alex.williamson@xxxxxx>
# Date 1197481903 25200
# Node ID 412fe6438399e5907a94b865e5354c6f80c29fcc
# Parent e3e6f40354eb597255a371d5da055f60ab3fed62
# Parent cd744c5ec95039b5beb0bcc8342fe254a1e5fbf3
merge with linux-2.6.18-xen.hg (staging)
---
arch/i386/kernel/time-xen.c | 4 +--
drivers/xen/Kconfig | 52 +++++++++++++++++-----------------------
drivers/xen/Makefile | 2 -
drivers/xen/balloon/balloon.c | 2 -
drivers/xen/blkfront/blkfront.c | 2 -
drivers/xen/core/smpboot.c | 24 +++---------------
drivers/xen/core/xen_sysfs.c | 2 -
drivers/xen/evtchn/evtchn.c | 2 -
drivers/xen/gntdev/Makefile | 2 -
drivers/xen/gntdev/gntdev.c | 2 -
mm/memory.c | 2 -
11 files changed, 38 insertions(+), 58 deletions(-)
diff -r e3e6f40354eb -r 412fe6438399 arch/i386/kernel/time-xen.c
--- a/arch/i386/kernel/time-xen.c Tue Dec 11 09:00:53 2007 -0700
+++ b/arch/i386/kernel/time-xen.c Wed Dec 12 10:51:43 2007 -0700
@@ -1054,7 +1054,7 @@ void time_resume(void)
#ifdef CONFIG_SMP
static char timer_name[NR_CPUS][15];
-int local_setup_timer(unsigned int cpu)
+int __cpuinit local_setup_timer(unsigned int cpu)
{
int seq, irq;
@@ -1085,7 +1085,7 @@ int local_setup_timer(unsigned int cpu)
return 0;
}
-void local_teardown_timer(unsigned int cpu)
+void __cpuexit local_teardown_timer(unsigned int cpu)
{
BUG_ON(cpu == 0);
unbind_from_irqhandler(per_cpu(timer_irq, cpu), NULL);
diff -r e3e6f40354eb -r 412fe6438399 drivers/xen/Kconfig
--- a/drivers/xen/Kconfig Tue Dec 11 09:00:53 2007 -0700
+++ b/drivers/xen/Kconfig Wed Dec 12 10:51:43 2007 -0700
@@ -24,22 +24,19 @@ config XEN_PRIVILEGED_GUEST
Support for privileged operation (domain 0)
config XEN_UNPRIVILEGED_GUEST
- bool
- default !XEN_PRIVILEGED_GUEST
+ def_bool !XEN_PRIVILEGED_GUEST
config XEN_PRIVCMD
- bool
+ def_bool y
depends on PROC_FS
- default y
config XEN_XENBUS_DEV
- bool
+ def_bool y
depends on PROC_FS
- default y
config XEN_BACKEND
tristate "Backend driver support"
- default y
+ default XEN_PRIVILEGED_GUEST
help
Support for backend device drivers that provide I/O services
to other virtual machines.
@@ -47,7 +44,7 @@ config XEN_BLKDEV_BACKEND
config XEN_BLKDEV_BACKEND
tristate "Block-device backend driver"
depends on XEN_BACKEND
- default y
+ default 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
@@ -56,7 +53,7 @@ config XEN_BLKDEV_TAP
config XEN_BLKDEV_TAP
tristate "Block-device tap backend driver"
depends on XEN_BACKEND
- default XEN_PRIVILEGED_GUEST
+ default XEN_BACKEND
help
The block tap driver is an alternative to the block back driver
and allows VM block requests to be redirected to userspace through
@@ -68,7 +65,7 @@ config XEN_NETDEV_BACKEND
config XEN_NETDEV_BACKEND
tristate "Network-device backend driver"
depends on XEN_BACKEND && NET
- default y
+ default XEN_BACKEND
help
The network-device backend driver allows the kernel to export its
network devices to other guests via a high-performance shared-memory
@@ -77,7 +74,6 @@ config XEN_NETDEV_PIPELINED_TRANSMITTER
config XEN_NETDEV_PIPELINED_TRANSMITTER
bool "Pipelined transmitter (DANGEROUS)"
depends on XEN_NETDEV_BACKEND
- default n
help
If the net backend is a dumb domain, such as a transparent Ethernet
bridge with no local IP interface, it is safe to say Y here to get
@@ -90,7 +86,6 @@ config XEN_NETDEV_LOOPBACK
config XEN_NETDEV_LOOPBACK
tristate "Network-device loopback driver"
depends on XEN_NETDEV_BACKEND
- default n
help
A two-interface loopback device to emulate a local netfront-netback
connection. If unsure, it is probably safe to say N here.
@@ -98,7 +93,7 @@ config XEN_PCIDEV_BACKEND
config XEN_PCIDEV_BACKEND
tristate "PCI-device backend driver"
depends on PCI && XEN_BACKEND
- default XEN_PRIVILEGED_GUEST
+ default XEN_BACKEND
help
The PCI device backend driver allows the kernel to export arbitrary
PCI devices to other guests. If you select this to be a module, you
@@ -158,18 +153,15 @@ config XEN_PCIDEV_BE_DEBUG
config XEN_PCIDEV_BE_DEBUG
bool "PCI Backend Debugging"
depends on XEN_PCIDEV_BACKEND
- default n
config XEN_TPMDEV_BACKEND
tristate "TPM-device backend driver"
depends on XEN_BACKEND
- default n
help
The TPM-device backend driver
config XEN_BLKDEV_FRONTEND
tristate "Block-device frontend driver"
- depends on XEN
default y
help
The block-device frontend driver allows the kernel to access block
@@ -179,7 +171,7 @@ config XEN_BLKDEV_FRONTEND
config XEN_NETDEV_FRONTEND
tristate "Network-device frontend driver"
- depends on XEN && NET
+ depends on NET
default y
help
The network-device frontend driver allows the kernel to access
@@ -187,9 +179,16 @@ config XEN_NETDEV_FRONTEND
dedicated device-driver domain, or your master control domain
(domain 0), then you almost certainly want to say Y here.
+config XEN_GRANT_DEV
+ tristate "User-space granted page access driver"
+ default XEN_PRIVILEGED_GUEST
+ help
+ Device for accessing (in user-space) pages that have been granted
+ by other domains.
+
config XEN_FRAMEBUFFER
tristate "Framebuffer-device frontend driver"
- depends on XEN && FB
+ depends on FB
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
@@ -202,7 +201,7 @@ config XEN_FRAMEBUFFER
config XEN_KEYBOARD
tristate "Keyboard-device frontend driver"
- depends on XEN && XEN_FRAMEBUFFER && INPUT
+ depends on XEN_FRAMEBUFFER && INPUT
default y
help
The keyboard-device frontend driver allows the kernel to create a
@@ -265,28 +264,23 @@ endmenu
endmenu
config HAVE_IRQ_IGNORE_UNHANDLED
- bool
- default y
+ def_bool y
config NO_IDLE_HZ
- bool
- default y
+ def_bool y
config XEN_SMPBOOT
- bool
- default y
+ def_bool y
depends on SMP && !PPC_XEN
config XEN_BALLOON
- bool
- default y
+ def_bool y
depends on !PPC_XEN
config XEN_XENCOMM
bool
config XEN_DEVMEM
- bool
- default y
+ def_bool y
endif
diff -r e3e6f40354eb -r 412fe6438399 drivers/xen/Makefile
--- a/drivers/xen/Makefile Tue Dec 11 09:00:53 2007 -0700
+++ b/drivers/xen/Makefile Wed Dec 12 10:51:43 2007 -0700
@@ -2,7 +2,6 @@ obj-y += console/
obj-y += console/
obj-y += evtchn/
obj-y += xenbus/
-obj-y += gntdev/
obj-y += char/
obj-y += util.o
@@ -18,3 +17,4 @@ obj-$(CONFIG_XEN_FRAMEBUFFER) += fbfron
obj-$(CONFIG_XEN_FRAMEBUFFER) += fbfront/
obj-$(CONFIG_XEN_KEYBOARD) += fbfront/
obj-$(CONFIG_XEN_PRIVCMD) += privcmd/
+obj-$(CONFIG_XEN_GRANT_DEV) += gntdev/
diff -r e3e6f40354eb -r 412fe6438399 drivers/xen/balloon/balloon.c
--- a/drivers/xen/balloon/balloon.c Tue Dec 11 09:00:53 2007 -0700
+++ b/drivers/xen/balloon/balloon.c Wed Dec 12 10:51:43 2007 -0700
@@ -527,7 +527,7 @@ static int __init balloon_init(void)
subsys_initcall(balloon_init);
-static void balloon_exit(void)
+static void __exit balloon_exit(void)
{
/* XXX - release balloon here */
return;
diff -r e3e6f40354eb -r 412fe6438399 drivers/xen/blkfront/blkfront.c
--- a/drivers/xen/blkfront/blkfront.c Tue Dec 11 09:00:53 2007 -0700
+++ b/drivers/xen/blkfront/blkfront.c Wed Dec 12 10:51:43 2007 -0700
@@ -911,7 +911,7 @@ module_init(xlblk_init);
module_init(xlblk_init);
-static void xlblk_exit(void)
+static void __exit xlblk_exit(void)
{
return xenbus_unregister_driver(&blkfront);
}
diff -r e3e6f40354eb -r 412fe6438399 drivers/xen/core/smpboot.c
--- a/drivers/xen/core/smpboot.c Tue Dec 11 09:00:53 2007 -0700
+++ b/drivers/xen/core/smpboot.c Wed Dec 12 10:51:43 2007 -0700
@@ -59,8 +59,6 @@ static char callfunc_name[NR_CPUS][15];
u8 cpu_2_logical_apicid[NR_CPUS] = { [0 ... NR_CPUS-1] = BAD_APICID };
-void *xquad_portio;
-
cpumask_t cpu_sibling_map[NR_CPUS] __cacheline_aligned;
cpumask_t cpu_core_map[NR_CPUS] __cacheline_aligned;
EXPORT_SYMBOL(cpu_core_map);
@@ -115,7 +113,7 @@ remove_siblinginfo(int cpu)
cpu_data[cpu].booted_cores = 0;
}
-static int xen_smp_intr_init(unsigned int cpu)
+static int __cpuinit xen_smp_intr_init(unsigned int cpu)
{
int rc;
@@ -167,7 +165,7 @@ static void xen_smp_intr_exit(unsigned i
}
#endif
-void cpu_bringup(void)
+void __cpuinit cpu_bringup(void)
{
cpu_init();
identify_cpu(cpu_data + smp_processor_id());
@@ -176,13 +174,13 @@ void cpu_bringup(void)
local_irq_enable();
}
-static void cpu_bringup_and_idle(void)
+static void __cpuinit cpu_bringup_and_idle(void)
{
cpu_bringup();
cpu_idle();
}
-static void cpu_initialize_context(unsigned int cpu)
+static void __cpuinit cpu_initialize_context(unsigned int cpu)
{
vcpu_guest_context_t ctxt;
struct task_struct *idle = idle_task(cpu);
@@ -392,21 +390,9 @@ void __cpu_die(unsigned int cpu)
alternatives_smp_switch(0);
}
-#else /* !CONFIG_HOTPLUG_CPU */
-
-int __cpu_disable(void)
-{
- return -ENOSYS;
-}
-
-void __cpu_die(unsigned int cpu)
-{
- BUG();
-}
-
#endif /* CONFIG_HOTPLUG_CPU */
-int __devinit __cpu_up(unsigned int cpu)
+int __cpuinit __cpu_up(unsigned int cpu)
{
int rc;
diff -r e3e6f40354eb -r 412fe6438399 drivers/xen/core/xen_sysfs.c
--- a/drivers/xen/core/xen_sysfs.c Tue Dec 11 09:00:53 2007 -0700
+++ b/drivers/xen/core/xen_sysfs.c Wed Dec 12 10:51:43 2007 -0700
@@ -364,7 +364,7 @@ out:
return ret;
}
-static void hyper_sysfs_exit(void)
+static void __exit hyper_sysfs_exit(void)
{
xen_properties_destroy();
xen_compilation_destroy();
diff -r e3e6f40354eb -r 412fe6438399 drivers/xen/evtchn/evtchn.c
--- a/drivers/xen/evtchn/evtchn.c Tue Dec 11 09:00:53 2007 -0700
+++ b/drivers/xen/evtchn/evtchn.c Wed Dec 12 10:51:43 2007 -0700
@@ -544,7 +544,7 @@ static int __init evtchn_init(void)
return 0;
}
-static void evtchn_cleanup(void)
+static void __exit evtchn_cleanup(void)
{
misc_deregister(&evtchn_miscdev);
unregister_cpu_notifier(&evtchn_cpu_nfb);
diff -r e3e6f40354eb -r 412fe6438399 drivers/xen/gntdev/Makefile
--- a/drivers/xen/gntdev/Makefile Tue Dec 11 09:00:53 2007 -0700
+++ b/drivers/xen/gntdev/Makefile Wed Dec 12 10:51:43 2007 -0700
@@ -1,1 +1,1 @@ obj-y := gntdev.o
-obj-y := gntdev.o
+obj-$(CONFIG_XEN_GRANT_DEV) := gntdev.o
diff -r e3e6f40354eb -r 412fe6438399 drivers/xen/gntdev/gntdev.c
--- a/drivers/xen/gntdev/gntdev.c Tue Dec 11 09:00:53 2007 -0700
+++ b/drivers/xen/gntdev/gntdev.c Wed Dec 12 10:51:43 2007 -0700
@@ -136,7 +136,7 @@ static long gntdev_ioctl(struct file *fl
static long gntdev_ioctl(struct file *flip,
unsigned int cmd, unsigned long arg);
-static struct file_operations gntdev_fops = {
+static const struct file_operations gntdev_fops = {
.owner = THIS_MODULE,
.open = gntdev_open,
.release = gntdev_release,
diff -r e3e6f40354eb -r 412fe6438399 mm/memory.c
--- a/mm/memory.c Tue Dec 11 09:00:53 2007 -0700
+++ b/mm/memory.c Wed Dec 12 10:51:43 2007 -0700
@@ -396,7 +396,7 @@ struct page *vm_normal_page(struct vm_ar
return NULL;
}
-#ifdef CONFIG_XEN
+#if defined(CONFIG_XEN) && defined(CONFIG_X86)
/* XEN: Covers user-space grant mappings (even of local pages). */
if (unlikely(vma->vm_flags & VM_FOREIGN))
return NULL;
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|