ia64/xen-unstable

changeset 8755:47a2eb32002a

Update to Linux 2.6.16-rc2.

Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
author cl349@firebug.cl.cam.ac.uk
date Fri Feb 03 17:49:27 2006 +0000 (2006-02-03)
parents a3f4357a9e16
children ce9170da40ae
files buildconfigs/linux-defconfig_xen0_x86_32 buildconfigs/linux-defconfig_xen0_x86_64 buildconfigs/linux-defconfig_xenU_x86_32 buildconfigs/linux-defconfig_xenU_x86_64 buildconfigs/linux-defconfig_xen_x86_32 buildconfigs/linux-defconfig_xen_x86_64 buildconfigs/mk.linux-2.6-xen linux-2.6-xen-sparse/arch/i386/Kconfig linux-2.6-xen-sparse/arch/i386/kernel/acpi/Makefile linux-2.6-xen-sparse/arch/i386/kernel/acpi/boot-xen.c linux-2.6-xen-sparse/arch/i386/kernel/mpparse-xen.c linux-2.6-xen-sparse/arch/i386/pci/irq-xen.c linux-2.6-xen-sparse/arch/um/kernel/physmem.c linux-2.6-xen-sparse/arch/x86_64/ia32/ia32entry-xen.S linux-2.6-xen-sparse/arch/x86_64/kernel/acpi/Makefile linux-2.6-xen-sparse/arch/x86_64/kernel/io_apic-xen.c linux-2.6-xen-sparse/arch/x86_64/kernel/mpparse-xen.c linux-2.6-xen-sparse/drivers/acpi/Kconfig linux-2.6-xen-sparse/drivers/serial/Kconfig linux-2.6-xen-sparse/fs/Kconfig linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/page.h linux-2.6-xen-sparse/lib/Makefile linux-2.6-xen-sparse/mm/memory.c linux-2.6-xen-sparse/mm/page_alloc.c linux-2.6-xen-sparse/net/core/dev.c linux-2.6-xen-sparse/net/core/skbuff.c
line diff
     1.1 --- a/buildconfigs/linux-defconfig_xen0_x86_32	Fri Feb 03 14:24:52 2006 +0000
     1.2 +++ b/buildconfigs/linux-defconfig_xen0_x86_32	Fri Feb 03 17:49:27 2006 +0000
     1.3 @@ -1,7 +1,7 @@
     1.4  #
     1.5  # Automatically generated make config: don't edit
     1.6 -# Linux kernel version: 2.6.16-rc1-git4-xen0
     1.7 -# Thu Feb  2 18:19:17 2006
     1.8 +# Linux kernel version: 2.6.16-rc2-xen0
     1.9 +# Fri Feb  3 16:57:06 2006
    1.10  #
    1.11  CONFIG_X86_32=y
    1.12  CONFIG_SEMAPHORE_SLEEPERS=y
    1.13 @@ -160,6 +160,11 @@ CONFIG_SWIOTLB=y
    1.14  # CONFIG_NOHIGHMEM is not set
    1.15  CONFIG_HIGHMEM4G=y
    1.16  # CONFIG_HIGHMEM64G is not set
    1.17 +CONFIG_VMSPLIT_3G=y
    1.18 +# CONFIG_VMSPLIT_3G_OPT is not set
    1.19 +# CONFIG_VMSPLIT_2G is not set
    1.20 +# CONFIG_VMSPLIT_1G is not set
    1.21 +CONFIG_PAGE_OFFSET=0xC0000000
    1.22  CONFIG_HIGHMEM=y
    1.23  CONFIG_SELECT_MEMORY_MODEL=y
    1.24  CONFIG_FLATMEM_MANUAL=y
    1.25 @@ -589,10 +594,12 @@ CONFIG_DM_MIRROR=y
    1.26  #
    1.27  # Fusion MPT device support
    1.28  #
    1.29 -# CONFIG_FUSION is not set
    1.30 -# CONFIG_FUSION_SPI is not set
    1.31 +CONFIG_FUSION=y
    1.32 +CONFIG_FUSION_SPI=y
    1.33  # CONFIG_FUSION_FC is not set
    1.34  # CONFIG_FUSION_SAS is not set
    1.35 +CONFIG_FUSION_MAX_SGE=128
    1.36 +# CONFIG_FUSION_CTL is not set
    1.37  
    1.38  #
    1.39  # IEEE 1394 (FireWire) support
     2.1 --- a/buildconfigs/linux-defconfig_xen0_x86_64	Fri Feb 03 14:24:52 2006 +0000
     2.2 +++ b/buildconfigs/linux-defconfig_xen0_x86_64	Fri Feb 03 17:49:27 2006 +0000
     2.3 @@ -1,7 +1,7 @@
     2.4  #
     2.5  # Automatically generated make config: don't edit
     2.6 -# Linux kernel version: 2.6.16-rc1-git4
     2.7 -# Thu Feb  2 17:51:17 2006
     2.8 +# Linux kernel version: 2.6.16-rc2-xen0
     2.9 +# Fri Feb  3 16:53:41 2006
    2.10  #
    2.11  CONFIG_X86_64=y
    2.12  CONFIG_64BIT=y
    2.13 @@ -529,10 +529,12 @@ CONFIG_DM_MULTIPATH_EMC=y
    2.14  #
    2.15  # Fusion MPT device support
    2.16  #
    2.17 -# CONFIG_FUSION is not set
    2.18 -# CONFIG_FUSION_SPI is not set
    2.19 +CONFIG_FUSION=y
    2.20 +CONFIG_FUSION_SPI=y
    2.21  # CONFIG_FUSION_FC is not set
    2.22  # CONFIG_FUSION_SAS is not set
    2.23 +CONFIG_FUSION_MAX_SGE=128
    2.24 +# CONFIG_FUSION_CTL is not set
    2.25  
    2.26  #
    2.27  # IEEE 1394 (FireWire) support
     3.1 --- a/buildconfigs/linux-defconfig_xenU_x86_32	Fri Feb 03 14:24:52 2006 +0000
     3.2 +++ b/buildconfigs/linux-defconfig_xenU_x86_32	Fri Feb 03 17:49:27 2006 +0000
     3.3 @@ -1,7 +1,7 @@
     3.4  #
     3.5  # Automatically generated make config: don't edit
     3.6 -# Linux kernel version: 2.6.16-rc1-git4-xenU
     3.7 -# Thu Feb  2 18:28:58 2006
     3.8 +# Linux kernel version: 2.6.16-rc2-xenU
     3.9 +# Fri Feb  3 16:57:27 2006
    3.10  #
    3.11  CONFIG_X86_32=y
    3.12  CONFIG_SEMAPHORE_SLEEPERS=y
    3.13 @@ -159,6 +159,11 @@ CONFIG_X86_CPUID=y
    3.14  # CONFIG_NOHIGHMEM is not set
    3.15  CONFIG_HIGHMEM4G=y
    3.16  # CONFIG_HIGHMEM64G is not set
    3.17 +CONFIG_VMSPLIT_3G=y
    3.18 +# CONFIG_VMSPLIT_3G_OPT is not set
    3.19 +# CONFIG_VMSPLIT_2G is not set
    3.20 +# CONFIG_VMSPLIT_1G is not set
    3.21 +CONFIG_PAGE_OFFSET=0xC0000000
    3.22  CONFIG_HIGHMEM=y
    3.23  CONFIG_SELECT_MEMORY_MODEL=y
    3.24  CONFIG_FLATMEM_MANUAL=y
     4.1 --- a/buildconfigs/linux-defconfig_xenU_x86_64	Fri Feb 03 14:24:52 2006 +0000
     4.2 +++ b/buildconfigs/linux-defconfig_xenU_x86_64	Fri Feb 03 17:49:27 2006 +0000
     4.3 @@ -1,7 +1,7 @@
     4.4  #
     4.5  # Automatically generated make config: don't edit
     4.6 -# Linux kernel version: 2.6.16-rc1-git4
     4.7 -# Thu Feb  2 17:50:11 2006
     4.8 +# Linux kernel version: 2.6.16-rc2-xenU
     4.9 +# Fri Feb  3 16:30:13 2006
    4.10  #
    4.11  CONFIG_X86_64=y
    4.12  CONFIG_64BIT=y
    4.13 @@ -735,7 +735,6 @@ CONFIG_VXFS_FS=m
    4.14  CONFIG_QNX4FS_FS=m
    4.15  CONFIG_SYSV_FS=m
    4.16  CONFIG_UFS_FS=m
    4.17 -# CONFIG_UFS_FS_WRITE is not set
    4.18  
    4.19  #
    4.20  # Network File Systems
     5.1 --- a/buildconfigs/linux-defconfig_xen_x86_32	Fri Feb 03 14:24:52 2006 +0000
     5.2 +++ b/buildconfigs/linux-defconfig_xen_x86_32	Fri Feb 03 17:49:27 2006 +0000
     5.3 @@ -1,7 +1,7 @@
     5.4  #
     5.5  # Automatically generated make config: don't edit
     5.6 -# Linux kernel version: 2.6.16-rc1-git4-xen
     5.7 -# Thu Feb  2 18:43:06 2006
     5.8 +# Linux kernel version: 2.6.16-rc2-xen
     5.9 +# Fri Feb  3 16:57:47 2006
    5.10  #
    5.11  CONFIG_X86_32=y
    5.12  CONFIG_SEMAPHORE_SLEEPERS=y
    5.13 @@ -166,6 +166,11 @@ CONFIG_DCDBAS=m
    5.14  # CONFIG_NOHIGHMEM is not set
    5.15  CONFIG_HIGHMEM4G=y
    5.16  # CONFIG_HIGHMEM64G is not set
    5.17 +CONFIG_VMSPLIT_3G=y
    5.18 +# CONFIG_VMSPLIT_3G_OPT is not set
    5.19 +# CONFIG_VMSPLIT_2G is not set
    5.20 +# CONFIG_VMSPLIT_1G is not set
    5.21 +CONFIG_PAGE_OFFSET=0xC0000000
    5.22  CONFIG_HIGHMEM=y
    5.23  CONFIG_SELECT_MEMORY_MODEL=y
    5.24  CONFIG_FLATMEM_MANUAL=y
    5.25 @@ -1222,7 +1227,6 @@ CONFIG_IEEE1394_RAWIO=m
    5.26  CONFIG_I2O=m
    5.27  CONFIG_I2O_LCT_NOTIFY_ON_CHANGES=y
    5.28  CONFIG_I2O_EXT_ADAPTEC=y
    5.29 -# CONFIG_I2O_EXT_ADAPTEC_DMA64 is not set
    5.30  CONFIG_I2O_CONFIG=m
    5.31  CONFIG_I2O_CONFIG_OLD_IOCTL=y
    5.32  CONFIG_I2O_BUS=m
    5.33 @@ -2494,6 +2498,7 @@ CONFIG_USB_MICROTEK=m
    5.34  # CONFIG_USB_DABUSB is not set
    5.35  CONFIG_USB_VICAM=m
    5.36  CONFIG_USB_DSBR=m
    5.37 +CONFIG_USB_ET61X251=m
    5.38  CONFIG_USB_IBMCAM=m
    5.39  CONFIG_USB_KONICAWC=m
    5.40  CONFIG_USB_OV511=m
     6.1 --- a/buildconfigs/linux-defconfig_xen_x86_64	Fri Feb 03 14:24:52 2006 +0000
     6.2 +++ b/buildconfigs/linux-defconfig_xen_x86_64	Fri Feb 03 17:49:27 2006 +0000
     6.3 @@ -1,7 +1,7 @@
     6.4  #
     6.5  # Automatically generated make config: don't edit
     6.6 -# Linux kernel version: 2.6.16-rc1-git4
     6.7 -# Thu Feb  2 17:54:57 2006
     6.8 +# Linux kernel version: 2.6.16-rc2-xen
     6.9 +# Fri Feb  3 16:30:34 2006
    6.10  #
    6.11  CONFIG_X86_64=y
    6.12  CONFIG_64BIT=y
    6.13 @@ -2195,6 +2195,7 @@ CONFIG_USB_MICROTEK=m
    6.14  CONFIG_USB_DABUSB=m
    6.15  CONFIG_USB_VICAM=m
    6.16  CONFIG_USB_DSBR=m
    6.17 +CONFIG_USB_ET61X251=m
    6.18  CONFIG_USB_IBMCAM=m
    6.19  CONFIG_USB_KONICAWC=m
    6.20  CONFIG_USB_OV511=m
     7.1 --- a/buildconfigs/mk.linux-2.6-xen	Fri Feb 03 14:24:52 2006 +0000
     7.2 +++ b/buildconfigs/mk.linux-2.6-xen	Fri Feb 03 17:49:27 2006 +0000
     7.3 @@ -2,8 +2,8 @@
     7.4  OS           = linux
     7.5  
     7.6  LINUX_SERIES = 2.6
     7.7 -LINUX_VER    = 2.6.16-rc1-git4
     7.8 -LINUX_SRCS = linux-2.6.15.tar.bz2 patch-2.6.16-rc1.bz2 patch-2.6.16-rc1-git4.bz2
     7.9 +LINUX_VER    = 2.6.16-rc2
    7.10 +LINUX_SRCS = linux-2.6.15.tar.bz2 patch-2.6.16-rc2.bz2
    7.11  LINUX_PDIR = linux-$(LINUX_VER)
    7.12  
    7.13  EXTRAVERSION ?= xen
    7.14 @@ -33,7 +33,7 @@ pristine-$(LINUX_PDIR)/.valid-srcs: $(LI
    7.15  	touch $(@D)/.hgskip
    7.16  	touch $@
    7.17  
    7.18 -pristine-linux-%.16-rc1-git4/.valid-pristine: pristine-$(LINUX_PDIR)/.valid-srcs
    7.19 +pristine-linux-%.16-rc2/.valid-pristine: pristine-$(LINUX_PDIR)/.valid-srcs
    7.20  	touch $@ # update timestamp to avoid rebuild
    7.21  
    7.22  $(LINUX_DIR)/include/linux/autoconf.h: ref-$(OS)-$(LINUX_VER)/.valid-ref
     8.1 --- a/linux-2.6-xen-sparse/arch/i386/Kconfig	Fri Feb 03 14:24:52 2006 +0000
     8.2 +++ b/linux-2.6-xen-sparse/arch/i386/Kconfig	Fri Feb 03 17:49:27 2006 +0000
     8.3 @@ -47,16 +47,6 @@ config DMI
     8.4  
     8.5  source "init/Kconfig"
     8.6  
     8.7 -config DOUBLEFAULT
     8.8 -	default y
     8.9 -	bool "Enable doublefault exception handler" if EMBEDDED
    8.10 -	depends on !XEN
    8.11 -	help
    8.12 -          This option allows trapping of rare doublefault exceptions that
    8.13 -          would otherwise cause a system to silently reboot. Disabling this
    8.14 -          option saves about 4k and might cause you much additional grey
    8.15 -          hair.
    8.16 -
    8.17  menu "Processor type and features"
    8.18  
    8.19  choice
    8.20 @@ -492,6 +482,43 @@ config HIGHMEM64G
    8.21  
    8.22  endchoice
    8.23  
    8.24 +choice
    8.25 +	depends on EXPERIMENTAL && !X86_PAE
    8.26 +	prompt "Memory split"
    8.27 +	default VMSPLIT_3G
    8.28 +	help
    8.29 +	  Select the desired split between kernel and user memory.
    8.30 +
    8.31 +	  If the address range available to the kernel is less than the
    8.32 +	  physical memory installed, the remaining memory will be available
    8.33 +	  as "high memory". Accessing high memory is a little more costly
    8.34 +	  than low memory, as it needs to be mapped into the kernel first.
    8.35 +	  Note that increasing the kernel address space limits the range
    8.36 +	  available to user programs, making the address space there
    8.37 +	  tighter.  Selecting anything other than the default 3G/1G split
    8.38 +	  will also likely make your kernel incompatible with binary-only
    8.39 +	  kernel modules.
    8.40 +
    8.41 +	  If you are not absolutely sure what you are doing, leave this
    8.42 +	  option alone!
    8.43 +
    8.44 +	config VMSPLIT_3G
    8.45 +		bool "3G/1G user/kernel split"
    8.46 +	config VMSPLIT_3G_OPT
    8.47 +		bool "3G/1G user/kernel split (for full 1G low memory)"
    8.48 +	config VMSPLIT_2G
    8.49 +		bool "2G/2G user/kernel split"
    8.50 +	config VMSPLIT_1G
    8.51 +		bool "1G/3G user/kernel split"
    8.52 +endchoice
    8.53 +
    8.54 +config PAGE_OFFSET
    8.55 +	hex
    8.56 +	default 0xB0000000 if VMSPLIT_3G_OPT
    8.57 +	default 0x78000000 if VMSPLIT_2G
    8.58 +	default 0x40000000 if VMSPLIT_1G
    8.59 +	default 0xC0000000
    8.60 +
    8.61  config HIGHMEM
    8.62  	bool
    8.63  	depends on HIGHMEM64G || HIGHMEM4G
    8.64 @@ -749,6 +776,16 @@ config HOTPLUG_CPU
    8.65  
    8.66  	  Say N.
    8.67  
    8.68 +config DOUBLEFAULT
    8.69 +	default y
    8.70 +	bool "Enable doublefault exception handler" if EMBEDDED
    8.71 +	depends on !XEN
    8.72 +	help
    8.73 +          This option allows trapping of rare doublefault exceptions that
    8.74 +          would otherwise cause a system to silently reboot. Disabling this
    8.75 +          option saves about 4k and might cause you much additional grey
    8.76 +          hair.
    8.77 +
    8.78  endmenu
    8.79  
    8.80  
     9.1 --- a/linux-2.6-xen-sparse/arch/i386/kernel/acpi/Makefile	Fri Feb 03 14:24:52 2006 +0000
     9.2 +++ b/linux-2.6-xen-sparse/arch/i386/kernel/acpi/Makefile	Fri Feb 03 17:49:27 2006 +0000
     9.3 @@ -3,7 +3,7 @@ obj-$(CONFIG_X86_IO_APIC)	+= earlyquirk.
     9.4  obj-$(CONFIG_ACPI_SLEEP)	+= sleep.o wakeup.o
     9.5  
     9.6  ifneq ($(CONFIG_ACPI_PROCESSOR),)
     9.7 -obj-y				+= cstate.o
     9.8 +obj-y				+= cstate.o processor.o
     9.9  endif
    9.10  
    9.11  ifdef CONFIG_XEN
    10.1 --- a/linux-2.6-xen-sparse/arch/i386/kernel/acpi/boot-xen.c	Fri Feb 03 14:24:52 2006 +0000
    10.2 +++ b/linux-2.6-xen-sparse/arch/i386/kernel/acpi/boot-xen.c	Fri Feb 03 17:49:27 2006 +0000
    10.3 @@ -466,7 +466,7 @@ int acpi_gsi_to_irq(u32 gsi, unsigned in
    10.4   * success: return IRQ number (>=0)
    10.5   * failure: return < 0
    10.6   */
    10.7 -int acpi_register_gsi(u32 gsi, int edge_level, int active_high_low)
    10.8 +int acpi_register_gsi(u32 gsi, int triggering, int polarity)
    10.9  {
   10.10  	unsigned int irq;
   10.11  	unsigned int plat_gsi = gsi;
   10.12 @@ -478,14 +478,14 @@ int acpi_register_gsi(u32 gsi, int edge_
   10.13  	if (acpi_irq_model == ACPI_IRQ_MODEL_PIC) {
   10.14  		extern void eisa_set_level_irq(unsigned int irq);
   10.15  
   10.16 -		if (edge_level == ACPI_LEVEL_SENSITIVE)
   10.17 +		if (triggering == ACPI_LEVEL_SENSITIVE)
   10.18  			eisa_set_level_irq(gsi);
   10.19  	}
   10.20  #endif
   10.21  
   10.22  #ifdef CONFIG_X86_IO_APIC
   10.23  	if (acpi_irq_model == ACPI_IRQ_MODEL_IOAPIC) {
   10.24 -		plat_gsi = mp_register_gsi(gsi, edge_level, active_high_low);
   10.25 +		plat_gsi = mp_register_gsi(gsi, triggering, polarity);
   10.26  	}
   10.27  #endif
   10.28  	acpi_gsi_to_irq(plat_gsi, &irq);
    11.1 --- a/linux-2.6-xen-sparse/arch/i386/kernel/mpparse-xen.c	Fri Feb 03 14:24:52 2006 +0000
    11.2 +++ b/linux-2.6-xen-sparse/arch/i386/kernel/mpparse-xen.c	Fri Feb 03 17:49:27 2006 +0000
    11.3 @@ -1097,7 +1097,7 @@ void __init mp_config_acpi_legacy_irqs (
    11.4  
    11.5  #define MAX_GSI_NUM	4096
    11.6  
    11.7 -int mp_register_gsi (u32 gsi, int edge_level, int active_high_low)
    11.8 +int mp_register_gsi (u32 gsi, int triggering, int polarity)
    11.9  {
   11.10  	int			ioapic = -1;
   11.11  	int			ioapic_pin = 0;
   11.12 @@ -1146,7 +1146,7 @@ int mp_register_gsi (u32 gsi, int edge_l
   11.13  
   11.14  	mp_ioapic_routing[ioapic].pin_programmed[idx] |= (1<<bit);
   11.15  
   11.16 -	if (edge_level) {
   11.17 +	if (triggering == ACPI_LEVEL_SENSITIVE) {
   11.18  		/*
   11.19  		 * For PCI devices assign IRQs in order, avoiding gaps
   11.20  		 * due to unused I/O APIC pins.
   11.21 @@ -1168,8 +1168,8 @@ int mp_register_gsi (u32 gsi, int edge_l
   11.22  	}
   11.23  
   11.24  	io_apic_set_pci_routing(ioapic, ioapic_pin, gsi,
   11.25 -		    edge_level == ACPI_EDGE_SENSITIVE ? 0 : 1,
   11.26 -		    active_high_low == ACPI_ACTIVE_HIGH ? 0 : 1);
   11.27 +		    triggering == ACPI_EDGE_SENSITIVE ? 0 : 1,
   11.28 +		    polarity == ACPI_ACTIVE_HIGH ? 0 : 1);
   11.29  	return gsi;
   11.30  }
   11.31  
    12.1 --- a/linux-2.6-xen-sparse/arch/i386/pci/irq-xen.c	Fri Feb 03 14:24:52 2006 +0000
    12.2 +++ b/linux-2.6-xen-sparse/arch/i386/pci/irq-xen.c	Fri Feb 03 17:49:27 2006 +0000
    12.3 @@ -542,6 +542,11 @@ static __init int intel_router_probe(str
    12.4  		case PCI_DEVICE_ID_INTEL_ICH7_30:
    12.5  		case PCI_DEVICE_ID_INTEL_ICH7_31:
    12.6  		case PCI_DEVICE_ID_INTEL_ESB2_0:
    12.7 +		case PCI_DEVICE_ID_INTEL_ICH8_0:
    12.8 +		case PCI_DEVICE_ID_INTEL_ICH8_1:
    12.9 +		case PCI_DEVICE_ID_INTEL_ICH8_2:
   12.10 +		case PCI_DEVICE_ID_INTEL_ICH8_3:
   12.11 +		case PCI_DEVICE_ID_INTEL_ICH8_4:
   12.12  			r->name = "PIIX/ICH";
   12.13  			r->get = pirq_piix_get;
   12.14  			r->set = pirq_piix_set;
    13.1 --- a/linux-2.6-xen-sparse/arch/um/kernel/physmem.c	Fri Feb 03 14:24:52 2006 +0000
    13.2 +++ b/linux-2.6-xen-sparse/arch/um/kernel/physmem.c	Fri Feb 03 17:49:27 2006 +0000
    13.3 @@ -267,7 +267,7 @@ int init_maps(unsigned long physmem, uns
    13.4  	highmem_len = highmem_pages * sizeof(struct page);
    13.5  
    13.6  	total_pages = phys_pages + iomem_pages + highmem_pages;
    13.7 -	total_len = phys_len + iomem_pages + highmem_len;
    13.8 +	total_len = phys_len + iomem_len + highmem_len;
    13.9  
   13.10  	if(kmalloc_ok){
   13.11  		map = kmalloc(total_len, GFP_KERNEL);
    14.1 --- a/linux-2.6-xen-sparse/arch/x86_64/ia32/ia32entry-xen.S	Fri Feb 03 14:24:52 2006 +0000
    14.2 +++ b/linux-2.6-xen-sparse/arch/x86_64/ia32/ia32entry-xen.S	Fri Feb 03 17:49:27 2006 +0000
    14.3 @@ -703,7 +703,7 @@ ia32_sys_call_table:
    14.4  	.quad sys_mkdirat
    14.5  	.quad sys_mknodat
    14.6  	.quad sys_fchownat
    14.7 -	.quad sys_futimesat
    14.8 +	.quad compat_sys_futimesat
    14.9  	.quad compat_sys_newfstatat	/* 300 */
   14.10  	.quad sys_unlinkat
   14.11  	.quad sys_renameat
    15.1 --- a/linux-2.6-xen-sparse/arch/x86_64/kernel/acpi/Makefile	Fri Feb 03 14:24:52 2006 +0000
    15.2 +++ b/linux-2.6-xen-sparse/arch/x86_64/kernel/acpi/Makefile	Fri Feb 03 17:49:27 2006 +0000
    15.3 @@ -2,4 +2,8 @@ obj-y			:= boot.o
    15.4  boot-y			:= ../../../i386/kernel/acpi/boot.o
    15.5  obj-$(CONFIG_ACPI_SLEEP)	+= sleep.o wakeup.o
    15.6  
    15.7 +ifneq ($(CONFIG_ACPI_PROCESSOR),)
    15.8 +obj-y			+= processor.o
    15.9 +endif
   15.10 +
   15.11  boot-$(CONFIG_XEN)		:= ../../../i386/kernel/acpi/boot-xen.o
    16.1 --- a/linux-2.6-xen-sparse/arch/x86_64/kernel/io_apic-xen.c	Fri Feb 03 14:24:52 2006 +0000
    16.2 +++ b/linux-2.6-xen-sparse/arch/x86_64/kernel/io_apic-xen.c	Fri Feb 03 17:49:27 2006 +0000
    16.3 @@ -2105,7 +2105,7 @@ int __init io_apic_get_redir_entries (in
    16.4  }
    16.5  
    16.6  
    16.7 -int io_apic_set_pci_routing (int ioapic, int pin, int irq, int edge_level, int active_high_low)
    16.8 +int io_apic_set_pci_routing (int ioapic, int pin, int irq, int triggering, int polarity)
    16.9  {
   16.10  	struct IO_APIC_route_entry entry;
   16.11  	unsigned long flags;
   16.12 @@ -2127,8 +2127,8 @@ int io_apic_set_pci_routing (int ioapic,
   16.13  	entry.delivery_mode = INT_DELIVERY_MODE;
   16.14  	entry.dest_mode = INT_DEST_MODE;
   16.15  	entry.dest.logical.logical_dest = cpu_mask_to_apicid(TARGET_CPUS);
   16.16 -	entry.trigger = edge_level;
   16.17 -	entry.polarity = active_high_low;
   16.18 +	entry.trigger = triggering;
   16.19 +	entry.polarity = polarity;
   16.20  	entry.mask = 1;					 /* Disabled (masked) */
   16.21  
   16.22  	irq = gsi_irq_sharing(irq);
   16.23 @@ -2143,9 +2143,9 @@ int io_apic_set_pci_routing (int ioapic,
   16.24  	apic_printk(APIC_VERBOSE,KERN_DEBUG "IOAPIC[%d]: Set PCI routing entry (%d-%d -> 0x%x -> "
   16.25  		"IRQ %d Mode:%i Active:%i)\n", ioapic, 
   16.26  	       mp_ioapics[ioapic].mpc_apicid, pin, entry.vector, irq,
   16.27 -	       edge_level, active_high_low);
   16.28 +	       triggering, polarity);
   16.29  
   16.30 -	ioapic_register_intr(irq, entry.vector, edge_level);
   16.31 +	ioapic_register_intr(irq, entry.vector, triggering);
   16.32  
   16.33  	if (!ioapic && (irq < 16))
   16.34  		disable_8259A_irq(irq);
    17.1 --- a/linux-2.6-xen-sparse/arch/x86_64/kernel/mpparse-xen.c	Fri Feb 03 14:24:52 2006 +0000
    17.2 +++ b/linux-2.6-xen-sparse/arch/x86_64/kernel/mpparse-xen.c	Fri Feb 03 17:49:27 2006 +0000
    17.3 @@ -920,7 +920,7 @@ void __init mp_config_acpi_legacy_irqs (
    17.4  
    17.5  #define MAX_GSI_NUM	4096
    17.6  
    17.7 -int mp_register_gsi(u32 gsi, int edge_level, int active_high_low)
    17.8 +int mp_register_gsi(u32 gsi, int triggering, int polarity)
    17.9  {
   17.10  	int			ioapic = -1;
   17.11  	int			ioapic_pin = 0;
   17.12 @@ -969,7 +969,7 @@ int mp_register_gsi(u32 gsi, int edge_le
   17.13  
   17.14  	mp_ioapic_routing[ioapic].pin_programmed[idx] |= (1<<bit);
   17.15  
   17.16 -	if (edge_level) {
   17.17 +	if (triggering == ACPI_LEVEL_SENSITIVE) {
   17.18  		/*
   17.19  		 * For PCI devices assign IRQs in order, avoiding gaps
   17.20  		 * due to unused I/O APIC pins.
   17.21 @@ -991,8 +991,8 @@ int mp_register_gsi(u32 gsi, int edge_le
   17.22  	}
   17.23  
   17.24  	io_apic_set_pci_routing(ioapic, ioapic_pin, gsi,
   17.25 -		edge_level == ACPI_EDGE_SENSITIVE ? 0 : 1,
   17.26 -		active_high_low == ACPI_ACTIVE_HIGH ? 0 : 1);
   17.27 +		triggering == ACPI_EDGE_SENSITIVE ? 0 : 1,
   17.28 +		polarity == ACPI_ACTIVE_HIGH ? 0 : 1);
   17.29  	return gsi;
   17.30  }
   17.31  
    18.1 --- a/linux-2.6-xen-sparse/drivers/acpi/Kconfig	Fri Feb 03 14:24:52 2006 +0000
    18.2 +++ b/linux-2.6-xen-sparse/drivers/acpi/Kconfig	Fri Feb 03 17:49:27 2006 +0000
    18.3 @@ -267,7 +267,6 @@ config ACPI_DEBUG
    18.4  
    18.5  config ACPI_EC
    18.6  	bool
    18.7 -	depends on X86
    18.8  	default y
    18.9  	help
   18.10  	  This driver is required on some systems for the proper operation of
    19.1 --- a/linux-2.6-xen-sparse/drivers/serial/Kconfig	Fri Feb 03 14:24:52 2006 +0000
    19.2 +++ b/linux-2.6-xen-sparse/drivers/serial/Kconfig	Fri Feb 03 17:49:27 2006 +0000
    19.3 @@ -24,7 +24,7 @@ config SERIAL_8250
    19.4  	  work.)
    19.5  
    19.6  	  To compile this driver as a module, choose M here: the
    19.7 -	  module will be called serial.
    19.8 +	  module will be called 8250.
    19.9  	  [WARNING: Do not compile this driver as a module if you are using
   19.10  	  non-standard serial ports, since the configuration information will
   19.11  	  be lost when the driver is unloaded.  This limitation may be lifted
    20.1 --- a/linux-2.6-xen-sparse/fs/Kconfig	Fri Feb 03 14:24:52 2006 +0000
    20.2 +++ b/linux-2.6-xen-sparse/fs/Kconfig	Fri Feb 03 17:49:27 2006 +0000
    20.3 @@ -1328,7 +1328,7 @@ config UFS_FS
    20.4  
    20.5  config UFS_FS_WRITE
    20.6  	bool "UFS file system write support (DANGEROUS)"
    20.7 -	depends on UFS_FS && EXPERIMENTAL
    20.8 +	depends on UFS_FS && EXPERIMENTAL && BROKEN
    20.9  	help
   20.10  	  Say Y here if you want to try writing to UFS partitions. This is
   20.11  	  experimental, so you should back up your UFS partitions beforehand.
    21.1 --- a/linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/page.h	Fri Feb 03 14:24:52 2006 +0000
    21.2 +++ b/linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/page.h	Fri Feb 03 17:49:27 2006 +0000
    21.3 @@ -280,10 +280,10 @@ extern int page_is_ram(unsigned long pag
    21.4  #endif /* __ASSEMBLY__ */
    21.5  
    21.6  #ifdef __ASSEMBLY__
    21.7 -#define __PAGE_OFFSET		(0xC0000000)
    21.8 +#define __PAGE_OFFSET		CONFIG_PAGE_OFFSET
    21.9  #define __PHYSICAL_START	CONFIG_PHYSICAL_START
   21.10  #else
   21.11 -#define __PAGE_OFFSET		(0xC0000000UL)
   21.12 +#define __PAGE_OFFSET		((unsigned long)CONFIG_PAGE_OFFSET)
   21.13  #define __PHYSICAL_START	((unsigned long)CONFIG_PHYSICAL_START)
   21.14  #endif
   21.15  #define __KERNEL_START		(__PAGE_OFFSET + __PHYSICAL_START)
    22.1 --- a/linux-2.6-xen-sparse/lib/Makefile	Fri Feb 03 14:24:52 2006 +0000
    22.2 +++ b/linux-2.6-xen-sparse/lib/Makefile	Fri Feb 03 17:49:27 2006 +0000
    22.3 @@ -9,7 +9,7 @@ lib-y := errno.o ctype.o string.o vsprin
    22.4  
    22.5  lib-y	+= kobject.o kref.o kobject_uevent.o klist.o
    22.6  
    22.7 -obj-y += sort.o parser.o halfmd4.o
    22.8 +obj-y += sort.o parser.o halfmd4.o iomap_copy.o
    22.9  
   22.10  ifeq ($(CONFIG_DEBUG_KOBJECT),y)
   22.11  CFLAGS_kobject.o += -DDEBUG
    23.1 --- a/linux-2.6-xen-sparse/mm/memory.c	Fri Feb 03 14:24:52 2006 +0000
    23.2 +++ b/linux-2.6-xen-sparse/mm/memory.c	Fri Feb 03 17:49:27 2006 +0000
    23.3 @@ -1987,6 +1987,7 @@ static int do_swap_page(struct mm_struct
    23.4  		goto out;
    23.5  
    23.6  	entry = pte_to_swp_entry(orig_pte);
    23.7 +again:
    23.8  	page = lookup_swap_cache(entry);
    23.9  	if (!page) {
   23.10   		swapin_readahead(entry, address, vma);
   23.11 @@ -2010,6 +2011,12 @@ static int do_swap_page(struct mm_struct
   23.12  
   23.13  	mark_page_accessed(page);
   23.14  	lock_page(page);
   23.15 +	if (!PageSwapCache(page)) {
   23.16 +		/* Page migration has occured */
   23.17 +		unlock_page(page);
   23.18 +		page_cache_release(page);
   23.19 +		goto again;
   23.20 +	}
   23.21  
   23.22  	/*
   23.23  	 * Back out if somebody else already faulted in this pte.
    24.1 --- a/linux-2.6-xen-sparse/mm/page_alloc.c	Fri Feb 03 14:24:52 2006 +0000
    24.2 +++ b/linux-2.6-xen-sparse/mm/page_alloc.c	Fri Feb 03 17:49:27 2006 +0000
    24.3 @@ -1801,7 +1801,7 @@ void zonetable_add(struct zone *zone, in
    24.4  	memmap_init_zone((size), (nid), (zone), (start_pfn))
    24.5  #endif
    24.6  
    24.7 -static int __meminit zone_batchsize(struct zone *zone)
    24.8 +static int __cpuinit zone_batchsize(struct zone *zone)
    24.9  {
   24.10  	int batch;
   24.11  
   24.12 @@ -1895,7 +1895,7 @@ static struct per_cpu_pageset
   24.13   * Dynamically allocate memory for the
   24.14   * per cpu pageset array in struct zone.
   24.15   */
   24.16 -static int __meminit process_zones(int cpu)
   24.17 +static int __cpuinit process_zones(int cpu)
   24.18  {
   24.19  	struct zone *zone, *dzone;
   24.20  
   24.21 @@ -1936,7 +1936,7 @@ static inline void free_zone_pagesets(in
   24.22  	}
   24.23  }
   24.24  
   24.25 -static int __meminit pageset_cpuup_callback(struct notifier_block *nfb,
   24.26 +static int __cpuinit pageset_cpuup_callback(struct notifier_block *nfb,
   24.27  		unsigned long action,
   24.28  		void *hcpu)
   24.29  {
    25.1 --- a/linux-2.6-xen-sparse/net/core/dev.c	Fri Feb 03 14:24:52 2006 +0000
    25.2 +++ b/linux-2.6-xen-sparse/net/core/dev.c	Fri Feb 03 17:49:27 2006 +0000
    25.3 @@ -2593,13 +2593,14 @@ int dev_ioctl(unsigned int cmd, void __u
    25.4  		case SIOCBONDENSLAVE:
    25.5  		case SIOCBONDRELEASE:
    25.6  		case SIOCBONDSETHWADDR:
    25.7 -		case SIOCBONDSLAVEINFOQUERY:
    25.8 -		case SIOCBONDINFOQUERY:
    25.9  		case SIOCBONDCHANGEACTIVE:
   25.10  		case SIOCBRADDIF:
   25.11  		case SIOCBRDELIF:
   25.12  			if (!capable(CAP_NET_ADMIN))
   25.13  				return -EPERM;
   25.14 +			/* fall through */
   25.15 +		case SIOCBONDSLAVEINFOQUERY:
   25.16 +		case SIOCBONDINFOQUERY:
   25.17  			dev_load(ifr.ifr_name);
   25.18  			rtnl_lock();
   25.19  			ret = dev_ifsioc(&ifr, cmd);
    26.1 --- a/linux-2.6-xen-sparse/net/core/skbuff.c	Fri Feb 03 14:24:52 2006 +0000
    26.2 +++ b/linux-2.6-xen-sparse/net/core/skbuff.c	Fri Feb 03 17:49:27 2006 +0000
    26.3 @@ -136,13 +136,15 @@ void skb_under_panic(struct sk_buff *skb
    26.4  struct sk_buff *__alloc_skb(unsigned int size, gfp_t gfp_mask,
    26.5  			    int fclone)
    26.6  {
    26.7 +	kmem_cache_t *cache;
    26.8  	struct skb_shared_info *shinfo;
    26.9  	struct sk_buff *skb;
   26.10  	u8 *data;
   26.11  
   26.12 +	cache = fclone ? skbuff_fclone_cache : skbuff_head_cache;
   26.13 +
   26.14  	/* Get the HEAD */
   26.15 -	skb = kmem_cache_alloc(fclone ? skbuff_fclone_cache : skbuff_head_cache,
   26.16 -				gfp_mask & ~__GFP_DMA);
   26.17 +	skb = kmem_cache_alloc(cache, gfp_mask & ~__GFP_DMA);
   26.18  	if (!skb)
   26.19  		goto out;
   26.20  
   26.21 @@ -181,7 +183,7 @@ struct sk_buff *__alloc_skb(unsigned int
   26.22  out:
   26.23  	return skb;
   26.24  nodata:
   26.25 -	kmem_cache_free(fclone ? skbuff_fclone_cache : skbuff_head_cache, skb);
   26.26 +	kmem_cache_free(cache, skb);
   26.27  	skb = NULL;
   26.28  	goto out;
   26.29  }
   26.30 @@ -206,13 +208,15 @@ struct sk_buff *alloc_skb_from_cache(kme
   26.31  				     gfp_t gfp_mask,
   26.32  				     int fclone)
   26.33  {
   26.34 +	kmem_cache_t *cache;
   26.35  	struct skb_shared_info *shinfo;
   26.36  	struct sk_buff *skb;
   26.37  	u8 *data;
   26.38  
   26.39 +	cache = fclone ? skbuff_fclone_cache : skbuff_head_cache;
   26.40 +
   26.41  	/* Get the HEAD */
   26.42 -	skb = kmem_cache_alloc(fclone ? skbuff_fclone_cache : skbuff_head_cache,
   26.43 -				gfp_mask & ~__GFP_DMA);
   26.44 +	skb = kmem_cache_alloc(cache, gfp_mask & ~__GFP_DMA);
   26.45  	if (!skb)
   26.46  		goto out;
   26.47  
   26.48 @@ -251,7 +255,7 @@ struct sk_buff *alloc_skb_from_cache(kme
   26.49  out:
   26.50  	return skb;
   26.51  nodata:
   26.52 -	kmem_cache_free(fclone ? skbuff_fclone_cache : skbuff_head_cache, skb);
   26.53 +	kmem_cache_free(cache, skb);
   26.54  	skb = NULL;
   26.55  	goto out;
   26.56  }