Acked-by: jbeulich@novell.com
-Index: head-2008-11-25/drivers/xen/Makefile
-===================================================================
---- head-2008-11-25.orig/drivers/xen/Makefile 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/drivers/xen/Makefile 2008-11-25 12:35:56.000000000 +0100
+--- sle11-2009-09-18.orig/drivers/xen/Makefile 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/drivers/xen/Makefile 2008-11-25 12:35:56.000000000 +0100
@@ -1,4 +1,25 @@
-obj-y += grant-table.o features.o events.o manage.o
+obj-y += core/
+obj-$(CONFIG_XEN_NETDEV_ACCEL_SFC_UTIL) += sfc_netutil/
+obj-$(CONFIG_XEN_NETDEV_ACCEL_SFC_FRONTEND) += sfc_netfront/
+obj-$(CONFIG_XEN_NETDEV_ACCEL_SFC_BACKEND) += sfc_netback/
-Index: head-2008-11-25/drivers/xen/xenbus/Makefile
-===================================================================
---- head-2008-11-25.orig/drivers/xen/xenbus/Makefile 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/drivers/xen/xenbus/Makefile 2008-11-25 12:35:56.000000000 +0100
+--- sle11-2009-09-18.orig/drivers/xen/xenbus/Makefile 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/drivers/xen/xenbus/Makefile 2008-11-25 12:35:56.000000000 +0100
@@ -1,7 +1,9 @@
-obj-y += xenbus.o
+obj-y += xenbus_client.o xenbus_comms.o xenbus_xs.o xenbus_probe.o
+xenbus-$(CONFIG_XEN_BACKEND) += xenbus_probe_backend.o
+obj-y += $(xenbus-y) $(xenbus-m)
+obj-$(CONFIG_XEN_XENBUS_DEV) += xenbus_dev.o
-Index: head-2008-11-25/drivers/xen/xenbus/xenbus_client.c
-===================================================================
---- head-2008-11-25.orig/drivers/xen/xenbus/xenbus_client.c 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/drivers/xen/xenbus/xenbus_client.c 2008-11-25 12:35:56.000000000 +0100
+--- sle11-2009-09-18.orig/drivers/xen/xenbus/xenbus_client.c 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/drivers/xen/xenbus/xenbus_client.c 2008-11-25 12:35:56.000000000 +0100
@@ -30,14 +30,18 @@
* IN THE SOFTWARE.
*/
enum xenbus_state xenbus_read_driver_state(const char *path)
{
enum xenbus_state result;
-Index: head-2008-11-25/drivers/xen/xenbus/xenbus_comms.c
-===================================================================
---- head-2008-11-25.orig/drivers/xen/xenbus/xenbus_comms.c 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/drivers/xen/xenbus/xenbus_comms.c 2008-11-25 12:35:56.000000000 +0100
+--- sle11-2009-09-18.orig/drivers/xen/xenbus/xenbus_comms.c 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/drivers/xen/xenbus/xenbus_comms.c 2008-11-25 12:35:56.000000000 +0100
@@ -34,19 +34,28 @@
#include <linux/interrupt.h>
#include <linux/sched.h>
+
return 0;
}
-Index: head-2008-11-25/drivers/xen/xenbus/xenbus_probe.c
-===================================================================
---- head-2008-11-25.orig/drivers/xen/xenbus/xenbus_probe.c 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/drivers/xen/xenbus/xenbus_probe.c 2008-11-25 12:35:56.000000000 +0100
+--- sle11-2009-09-18.orig/drivers/xen/xenbus/xenbus_probe.c 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/drivers/xen/xenbus/xenbus_probe.c 2008-11-25 12:35:56.000000000 +0100
@@ -4,6 +4,7 @@
* Copyright (C) 2005 Rusty Russell, IBM Corporation
* Copyright (C) 2005 Mike Wray, Hewlett-Packard
+ return bus_for_each_dev(&xenbus_frontend.bus, NULL, arg, fn);
+}
+EXPORT_SYMBOL_GPL(xenbus_for_each_frontend);
-Index: head-2008-11-25/drivers/xen/xenbus/xenbus_probe.h
-===================================================================
---- head-2008-11-25.orig/drivers/xen/xenbus/xenbus_probe.h 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/drivers/xen/xenbus/xenbus_probe.h 2008-11-25 12:35:56.000000000 +0100
+--- sle11-2009-09-18.orig/drivers/xen/xenbus/xenbus_probe.h 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/drivers/xen/xenbus/xenbus_probe.h 2008-11-25 12:35:56.000000000 +0100
@@ -34,41 +34,42 @@
#ifndef _XENBUS_PROBE_H
#define _XENBUS_PROBE_H
#endif
+
-Index: head-2008-11-25/drivers/xen/xenbus/xenbus_xs.c
-===================================================================
---- head-2008-11-25.orig/drivers/xen/xenbus/xenbus_xs.c 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/drivers/xen/xenbus/xenbus_xs.c 2008-11-25 12:35:56.000000000 +0100
+--- sle11-2009-09-18.orig/drivers/xen/xenbus/xenbus_xs.c 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/drivers/xen/xenbus/xenbus_xs.c 2008-11-25 12:35:56.000000000 +0100
@@ -47,6 +47,14 @@
#include <xen/xenbus.h>
#include "xenbus_comms.h"
for (;;) {
err = process_msg();
if (err)
-Index: head-2008-11-25/include/xen/balloon.h
-===================================================================
---- head-2008-11-25.orig/include/xen/balloon.h 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/include/xen/balloon.h 2008-11-25 12:35:56.000000000 +0100
+--- sle11-2009-09-18.orig/include/xen/balloon.h 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/include/xen/balloon.h 2008-11-25 12:35:56.000000000 +0100
@@ -31,12 +31,9 @@
* IN THE SOFTWARE.
*/
-#endif /* __XEN_BALLOON_H__ */
+#endif /* __ASM_BALLOON_H__ */
-Index: head-2008-11-25/include/xen/interface/callback.h
-===================================================================
---- head-2008-11-25.orig/include/xen/interface/callback.h 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/include/xen/interface/callback.h 2008-11-25 12:35:56.000000000 +0100
+--- sle11-2009-09-18.orig/include/xen/interface/callback.h 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/include/xen/interface/callback.h 2008-11-25 12:35:56.000000000 +0100
@@ -86,6 +86,8 @@ struct callback_register {
uint16_t flags;
xen_callback_t address;
+ * indent-tabs-mode: nil
+ * End:
+ */
-Index: head-2008-11-25/include/xen/interface/elfnote.h
-===================================================================
---- head-2008-11-25.orig/include/xen/interface/elfnote.h 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/include/xen/interface/elfnote.h 2008-11-25 12:35:56.000000000 +0100
+--- sle11-2009-09-18.orig/include/xen/interface/elfnote.h 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/include/xen/interface/elfnote.h 2008-11-25 12:35:56.000000000 +0100
@@ -3,6 +3,24 @@
*
* Definitions used for the Xen ELF notes.
#endif /* __XEN_PUBLIC_ELFNOTE_H__ */
/*
-Index: head-2008-11-25/include/xen/interface/event_channel.h
-===================================================================
---- head-2008-11-25.orig/include/xen/interface/event_channel.h 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/include/xen/interface/event_channel.h 2008-11-25 12:35:56.000000000 +0100
+--- sle11-2009-09-18.orig/include/xen/interface/event_channel.h 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/include/xen/interface/event_channel.h 2008-11-25 12:35:56.000000000 +0100
@@ -3,14 +3,39 @@
*
* Event channels between domains.
+ * indent-tabs-mode: nil
+ * End:
+ */
-Index: head-2008-11-25/include/xen/interface/features.h
-===================================================================
---- head-2008-11-25.orig/include/xen/interface/features.h 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/include/xen/interface/features.h 2008-11-25 12:22:34.000000000 +0100
+--- sle11-2009-09-18.orig/include/xen/interface/features.h 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/include/xen/interface/features.h 2008-11-25 12:22:34.000000000 +0100
@@ -3,6 +3,24 @@
*
* Feature flags, reported by XENVER_get_features.
+ * indent-tabs-mode: nil
+ * End:
+ */
-Index: head-2008-11-25/include/xen/interface/grant_table.h
-===================================================================
---- head-2008-11-25.orig/include/xen/interface/grant_table.h 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/include/xen/interface/grant_table.h 2008-11-25 12:22:34.000000000 +0100
+--- sle11-2009-09-18.orig/include/xen/interface/grant_table.h 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/include/xen/interface/grant_table.h 2008-11-25 12:22:34.000000000 +0100
@@ -100,6 +100,7 @@ struct grant_entry {
*/
uint32_t frame;
+ * indent-tabs-mode: nil
+ * End:
+ */
-Index: head-2008-11-25/include/xen/interface/io/blkif.h
-===================================================================
---- head-2008-11-25.orig/include/xen/interface/io/blkif.h 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/include/xen/interface/io/blkif.h 2008-11-25 12:35:56.000000000 +0100
+--- sle11-2009-09-18.orig/include/xen/interface/io/blkif.h 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/include/xen/interface/io/blkif.h 2008-11-25 12:35:56.000000000 +0100
@@ -3,6 +3,24 @@
*
* Unified block-device I/O interface for Xen guest OSes.
+ * indent-tabs-mode: nil
+ * End:
+ */
-Index: head-2008-11-25/include/xen/interface/io/console.h
-===================================================================
---- head-2008-11-25.orig/include/xen/interface/io/console.h 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/include/xen/interface/io/console.h 2008-11-25 12:35:56.000000000 +0100
+--- sle11-2009-09-18.orig/include/xen/interface/io/console.h 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/include/xen/interface/io/console.h 2008-11-25 12:35:56.000000000 +0100
@@ -3,6 +3,24 @@
*
* Console I/O interface for Xen guest OSes.
+ * indent-tabs-mode: nil
+ * End:
+ */
-Index: head-2008-11-25/include/xen/interface/io/fbif.h
-===================================================================
---- head-2008-11-25.orig/include/xen/interface/io/fbif.h 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/include/xen/interface/io/fbif.h 2008-11-25 12:35:56.000000000 +0100
+--- sle11-2009-09-18.orig/include/xen/interface/io/fbif.h 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/include/xen/interface/io/fbif.h 2008-11-25 12:35:56.000000000 +0100
@@ -41,12 +41,13 @@
*/
#define XENFB_TYPE_UPDATE 2
+ * indent-tabs-mode: nil
+ * End:
+ */
-Index: head-2008-11-25/include/xen/interface/io/kbdif.h
-===================================================================
---- head-2008-11-25.orig/include/xen/interface/io/kbdif.h 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/include/xen/interface/io/kbdif.h 2008-11-25 12:35:56.000000000 +0100
+--- sle11-2009-09-18.orig/include/xen/interface/io/kbdif.h 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/include/xen/interface/io/kbdif.h 2008-11-25 12:35:56.000000000 +0100
@@ -45,34 +45,38 @@
*/
#define XENKBD_TYPE_POS 4
+ * indent-tabs-mode: nil
+ * End:
+ */
-Index: head-2008-11-25/include/xen/interface/io/netif.h
-===================================================================
---- head-2008-11-25.orig/include/xen/interface/io/netif.h 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/include/xen/interface/io/netif.h 2008-11-25 12:35:56.000000000 +0100
+--- sle11-2009-09-18.orig/include/xen/interface/io/netif.h 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/include/xen/interface/io/netif.h 2008-11-25 12:35:56.000000000 +0100
@@ -3,6 +3,24 @@
*
* Unified network-device I/O interface for Xen guest OSes.
+ * indent-tabs-mode: nil
+ * End:
+ */
-Index: head-2008-11-25/include/xen/interface/io/protocols.h
-===================================================================
---- head-2008-11-25.orig/include/xen/interface/io/protocols.h 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/include/xen/interface/io/protocols.h 2008-11-25 12:35:56.000000000 +0100
+--- sle11-2009-09-18.orig/include/xen/interface/io/protocols.h 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/include/xen/interface/io/protocols.h 2008-11-25 12:35:56.000000000 +0100
@@ -1,10 +1,31 @@
+/******************************************************************************
+ * protocols.h
#else
# error arch fixup needed here
#endif
-Index: head-2008-11-25/include/xen/interface/io/ring.h
-===================================================================
---- head-2008-11-25.orig/include/xen/interface/io/ring.h 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/include/xen/interface/io/ring.h 2008-11-25 12:35:56.000000000 +0100
+--- sle11-2009-09-18.orig/include/xen/interface/io/ring.h 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/include/xen/interface/io/ring.h 2008-11-25 12:35:56.000000000 +0100
@@ -3,16 +3,42 @@
*
* Shared producer-consumer ring macros.
+ * indent-tabs-mode: nil
+ * End:
+ */
-Index: head-2008-11-25/include/xen/interface/io/xenbus.h
-===================================================================
---- head-2008-11-25.orig/include/xen/interface/io/xenbus.h 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/include/xen/interface/io/xenbus.h 2008-11-25 12:35:56.000000000 +0100
+--- sle11-2009-09-18.orig/include/xen/interface/io/xenbus.h 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/include/xen/interface/io/xenbus.h 2008-11-25 12:35:56.000000000 +0100
@@ -3,42 +3,78 @@
*
* Xenbus protocol details.
+ * indent-tabs-mode: nil
* End:
*/
-Index: head-2008-11-25/include/xen/interface/io/xs_wire.h
-===================================================================
---- head-2008-11-25.orig/include/xen/interface/io/xs_wire.h 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/include/xen/interface/io/xs_wire.h 2008-11-25 12:35:56.000000000 +0100
+--- sle11-2009-09-18.orig/include/xen/interface/io/xs_wire.h 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/include/xen/interface/io/xs_wire.h 2008-11-25 12:35:56.000000000 +0100
@@ -1,6 +1,25 @@
/*
* Details of the "wire" protocol between Xen Store Daemon and client
+ * indent-tabs-mode: nil
+ * End:
+ */
-Index: head-2008-11-25/include/xen/interface/memory.h
-===================================================================
---- head-2008-11-25.orig/include/xen/interface/memory.h 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/include/xen/interface/memory.h 2008-11-25 12:35:56.000000000 +0100
+--- sle11-2009-09-18.orig/include/xen/interface/memory.h 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/include/xen/interface/memory.h 2008-11-25 12:35:56.000000000 +0100
@@ -3,6 +3,24 @@
*
* Memory reservation and information.
+ * indent-tabs-mode: nil
+ * End:
+ */
-Index: head-2008-11-25/include/xen/interface/physdev.h
-===================================================================
---- head-2008-11-25.orig/include/xen/interface/physdev.h 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/include/xen/interface/physdev.h 2008-11-25 12:35:56.000000000 +0100
+--- sle11-2009-09-18.orig/include/xen/interface/physdev.h 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/include/xen/interface/physdev.h 2008-11-25 12:35:56.000000000 +0100
@@ -24,7 +24,7 @@
/*
* Prototype for this hypercall is:
+ * indent-tabs-mode: nil
+ * End:
+ */
-Index: head-2008-11-25/include/xen/interface/sched.h
-===================================================================
---- head-2008-11-25.orig/include/xen/interface/sched.h 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/include/xen/interface/sched.h 2008-11-25 12:35:56.000000000 +0100
+--- sle11-2009-09-18.orig/include/xen/interface/sched.h 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/include/xen/interface/sched.h 2008-11-25 12:35:56.000000000 +0100
@@ -3,6 +3,24 @@
*
* Scheduler state interactions
+ * indent-tabs-mode: nil
+ * End:
+ */
-Index: head-2008-11-25/include/xen/interface/vcpu.h
-===================================================================
---- head-2008-11-25.orig/include/xen/interface/vcpu.h 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/include/xen/interface/vcpu.h 2008-11-25 12:35:56.000000000 +0100
+--- sle11-2009-09-18.orig/include/xen/interface/vcpu.h 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/include/xen/interface/vcpu.h 2008-11-25 12:35:56.000000000 +0100
@@ -29,9 +29,9 @@
/*
+ * indent-tabs-mode: nil
+ * End:
+ */
-Index: head-2008-11-25/include/xen/interface/version.h
-===================================================================
---- head-2008-11-25.orig/include/xen/interface/version.h 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/include/xen/interface/version.h 2008-11-25 12:35:56.000000000 +0100
+--- sle11-2009-09-18.orig/include/xen/interface/version.h 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/include/xen/interface/version.h 2008-11-25 12:35:56.000000000 +0100
@@ -3,6 +3,24 @@
*
* Xen version, type, and compile information.
+ * indent-tabs-mode: nil
+ * End:
+ */
-Index: head-2008-11-25/include/xen/interface/xen.h
-===================================================================
---- head-2008-11-25.orig/include/xen/interface/xen.h 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/include/xen/interface/xen.h 2008-11-25 12:35:56.000000000 +0100
+--- sle11-2009-09-18.orig/include/xen/interface/xen.h 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/include/xen/interface/xen.h 2008-11-25 12:35:56.000000000 +0100
@@ -3,35 +3,68 @@
*
* Guest OS interface to Xen.
/* Architecture-specific VIRQ definitions. */
#define VIRQ_ARCH_0 16
-@@ -91,6 +158,7 @@
+@@ -91,6 +160,7 @@
#define VIRQ_ARCH_7 23
#define NR_VIRQS 24
/*
* MMU-UPDATE REQUESTS
*
-@@ -166,6 +234,13 @@
+@@ -166,6 +236,13 @@
* cmd: MMUEXT_SET_LDT
* linear_addr: Linear address of LDT base (NB. must be page-aligned).
* nr_ents: Number of entries in LDT.
*/
#define MMUEXT_PIN_L1_TABLE 0
#define MMUEXT_PIN_L2_TABLE 1
-@@ -182,24 +257,34 @@
+@@ -182,24 +259,34 @@
#define MMUEXT_FLUSH_CACHE 12
#define MMUEXT_SET_LDT 13
#define MMUEXT_NEW_USER_BASEPTR 15
#endif
/* These are passed as 'flags' to update_va_mapping. They can be ORed. */
-@@ -224,11 +309,24 @@ DEFINE_GUEST_HANDLE_STRUCT(mmuext_op);
+@@ -224,11 +311,24 @@ DEFINE_GUEST_HANDLE_STRUCT(mmuext_op);
*/
#define VMASST_CMD_enable 0
#define VMASST_CMD_disable 1
#ifndef __ASSEMBLY__
-@@ -267,18 +365,19 @@ struct mmu_update {
+@@ -267,18 +367,19 @@ struct mmu_update {
uint64_t ptr; /* Machine address of PTE. */
uint64_t val; /* New contents of PTE. */
};
/*
* Event channel endpoints per domain:
-@@ -287,173 +386,240 @@ DEFINE_GUEST_HANDLE_STRUCT(multicall_ent
+@@ -287,173 +388,240 @@ DEFINE_GUEST_HANDLE_STRUCT(multicall_ent
#define NR_EVENT_CHANNELS (sizeof(unsigned long) * sizeof(unsigned long) * 64)
struct vcpu_time_info {
typedef uint8_t xen_domain_handle_t[16];
-@@ -461,6 +627,11 @@ typedef uint8_t xen_domain_handle_t[16];
+@@ -461,6 +629,11 @@ typedef uint8_t xen_domain_handle_t[16];
#define __mk_unsigned_long(x) x ## UL
#define mk_unsigned_long(x) __mk_unsigned_long(x)
#else /* __ASSEMBLY__ */
/* In assembly code we cannot use C numeric constant suffixes. */
-@@ -468,4 +639,24 @@ typedef uint8_t xen_domain_handle_t[16];
+@@ -468,4 +641,24 @@ typedef uint8_t xen_domain_handle_t[16];
#endif /* !__ASSEMBLY__ */
+ * indent-tabs-mode: nil
+ * End:
+ */
-Index: head-2008-11-25/include/xen/xenbus.h
-===================================================================
---- head-2008-11-25.orig/include/xen/xenbus.h 2008-11-25 12:33:06.000000000 +0100
-+++ head-2008-11-25/include/xen/xenbus.h 2008-11-25 12:35:56.000000000 +0100
+--- sle11-2009-09-18.orig/include/xen/xenbus.h 2009-09-18 10:11:48.000000000 +0200
++++ sle11-2009-09-18/include/xen/xenbus.h 2008-11-25 12:35:56.000000000 +0100
@@ -39,6 +39,7 @@
#include <linux/mutex.h>
#include <linux/completion.h>