[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] Update to Linux 2.6.16-rc2.
# HG changeset patch # User cl349@xxxxxxxxxxxxxxxxxxxx # Node ID 47a2eb32002a960ffd15dd9617425d326b10a441 # Parent a3f4357a9e16efa05d963fcbdc93cb667cee6b5d Update to Linux 2.6.16-rc2. Signed-off-by: Christian Limpach <Christian.Limpach@xxxxxxxxxxxx> diff -r a3f4357a9e16 -r 47a2eb32002a buildconfigs/linux-defconfig_xen0_x86_32 --- a/buildconfigs/linux-defconfig_xen0_x86_32 Fri Feb 3 14:24:52 2006 +++ b/buildconfigs/linux-defconfig_xen0_x86_32 Fri Feb 3 17:49:27 2006 @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit -# Linux kernel version: 2.6.16-rc1-git4-xen0 -# Thu Feb 2 18:19:17 2006 +# Linux kernel version: 2.6.16-rc2-xen0 +# Fri Feb 3 16:57:06 2006 # CONFIG_X86_32=y CONFIG_SEMAPHORE_SLEEPERS=y @@ -160,6 +160,11 @@ # CONFIG_NOHIGHMEM is not set CONFIG_HIGHMEM4G=y # CONFIG_HIGHMEM64G is not set +CONFIG_VMSPLIT_3G=y +# CONFIG_VMSPLIT_3G_OPT is not set +# CONFIG_VMSPLIT_2G is not set +# CONFIG_VMSPLIT_1G is not set +CONFIG_PAGE_OFFSET=0xC0000000 CONFIG_HIGHMEM=y CONFIG_SELECT_MEMORY_MODEL=y CONFIG_FLATMEM_MANUAL=y @@ -589,10 +594,12 @@ # # Fusion MPT device support # -# CONFIG_FUSION is not set -# CONFIG_FUSION_SPI is not set +CONFIG_FUSION=y +CONFIG_FUSION_SPI=y # CONFIG_FUSION_FC is not set # CONFIG_FUSION_SAS is not set +CONFIG_FUSION_MAX_SGE=128 +# CONFIG_FUSION_CTL is not set # # IEEE 1394 (FireWire) support diff -r a3f4357a9e16 -r 47a2eb32002a buildconfigs/linux-defconfig_xen0_x86_64 --- a/buildconfigs/linux-defconfig_xen0_x86_64 Fri Feb 3 14:24:52 2006 +++ b/buildconfigs/linux-defconfig_xen0_x86_64 Fri Feb 3 17:49:27 2006 @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit -# Linux kernel version: 2.6.16-rc1-git4 -# Thu Feb 2 17:51:17 2006 +# Linux kernel version: 2.6.16-rc2-xen0 +# Fri Feb 3 16:53:41 2006 # CONFIG_X86_64=y CONFIG_64BIT=y @@ -529,10 +529,12 @@ # # Fusion MPT device support # -# CONFIG_FUSION is not set -# CONFIG_FUSION_SPI is not set +CONFIG_FUSION=y +CONFIG_FUSION_SPI=y # CONFIG_FUSION_FC is not set # CONFIG_FUSION_SAS is not set +CONFIG_FUSION_MAX_SGE=128 +# CONFIG_FUSION_CTL is not set # # IEEE 1394 (FireWire) support diff -r a3f4357a9e16 -r 47a2eb32002a buildconfigs/linux-defconfig_xenU_x86_32 --- a/buildconfigs/linux-defconfig_xenU_x86_32 Fri Feb 3 14:24:52 2006 +++ b/buildconfigs/linux-defconfig_xenU_x86_32 Fri Feb 3 17:49:27 2006 @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit -# Linux kernel version: 2.6.16-rc1-git4-xenU -# Thu Feb 2 18:28:58 2006 +# Linux kernel version: 2.6.16-rc2-xenU +# Fri Feb 3 16:57:27 2006 # CONFIG_X86_32=y CONFIG_SEMAPHORE_SLEEPERS=y @@ -159,6 +159,11 @@ # CONFIG_NOHIGHMEM is not set CONFIG_HIGHMEM4G=y # CONFIG_HIGHMEM64G is not set +CONFIG_VMSPLIT_3G=y +# CONFIG_VMSPLIT_3G_OPT is not set +# CONFIG_VMSPLIT_2G is not set +# CONFIG_VMSPLIT_1G is not set +CONFIG_PAGE_OFFSET=0xC0000000 CONFIG_HIGHMEM=y CONFIG_SELECT_MEMORY_MODEL=y CONFIG_FLATMEM_MANUAL=y diff -r a3f4357a9e16 -r 47a2eb32002a buildconfigs/linux-defconfig_xenU_x86_64 --- a/buildconfigs/linux-defconfig_xenU_x86_64 Fri Feb 3 14:24:52 2006 +++ b/buildconfigs/linux-defconfig_xenU_x86_64 Fri Feb 3 17:49:27 2006 @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit -# Linux kernel version: 2.6.16-rc1-git4 -# Thu Feb 2 17:50:11 2006 +# Linux kernel version: 2.6.16-rc2-xenU +# Fri Feb 3 16:30:13 2006 # CONFIG_X86_64=y CONFIG_64BIT=y @@ -735,7 +735,6 @@ CONFIG_QNX4FS_FS=m CONFIG_SYSV_FS=m CONFIG_UFS_FS=m -# CONFIG_UFS_FS_WRITE is not set # # Network File Systems diff -r a3f4357a9e16 -r 47a2eb32002a buildconfigs/linux-defconfig_xen_x86_32 --- a/buildconfigs/linux-defconfig_xen_x86_32 Fri Feb 3 14:24:52 2006 +++ b/buildconfigs/linux-defconfig_xen_x86_32 Fri Feb 3 17:49:27 2006 @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit -# Linux kernel version: 2.6.16-rc1-git4-xen -# Thu Feb 2 18:43:06 2006 +# Linux kernel version: 2.6.16-rc2-xen +# Fri Feb 3 16:57:47 2006 # CONFIG_X86_32=y CONFIG_SEMAPHORE_SLEEPERS=y @@ -166,6 +166,11 @@ # CONFIG_NOHIGHMEM is not set CONFIG_HIGHMEM4G=y # CONFIG_HIGHMEM64G is not set +CONFIG_VMSPLIT_3G=y +# CONFIG_VMSPLIT_3G_OPT is not set +# CONFIG_VMSPLIT_2G is not set +# CONFIG_VMSPLIT_1G is not set +CONFIG_PAGE_OFFSET=0xC0000000 CONFIG_HIGHMEM=y CONFIG_SELECT_MEMORY_MODEL=y CONFIG_FLATMEM_MANUAL=y @@ -1222,7 +1227,6 @@ CONFIG_I2O=m CONFIG_I2O_LCT_NOTIFY_ON_CHANGES=y CONFIG_I2O_EXT_ADAPTEC=y -# CONFIG_I2O_EXT_ADAPTEC_DMA64 is not set CONFIG_I2O_CONFIG=m CONFIG_I2O_CONFIG_OLD_IOCTL=y CONFIG_I2O_BUS=m @@ -2494,6 +2498,7 @@ # CONFIG_USB_DABUSB is not set CONFIG_USB_VICAM=m CONFIG_USB_DSBR=m +CONFIG_USB_ET61X251=m CONFIG_USB_IBMCAM=m CONFIG_USB_KONICAWC=m CONFIG_USB_OV511=m diff -r a3f4357a9e16 -r 47a2eb32002a buildconfigs/linux-defconfig_xen_x86_64 --- a/buildconfigs/linux-defconfig_xen_x86_64 Fri Feb 3 14:24:52 2006 +++ b/buildconfigs/linux-defconfig_xen_x86_64 Fri Feb 3 17:49:27 2006 @@ -1,7 +1,7 @@ # # Automatically generated make config: don't edit -# Linux kernel version: 2.6.16-rc1-git4 -# Thu Feb 2 17:54:57 2006 +# Linux kernel version: 2.6.16-rc2-xen +# Fri Feb 3 16:30:34 2006 # CONFIG_X86_64=y CONFIG_64BIT=y @@ -2195,6 +2195,7 @@ CONFIG_USB_DABUSB=m CONFIG_USB_VICAM=m CONFIG_USB_DSBR=m +CONFIG_USB_ET61X251=m CONFIG_USB_IBMCAM=m CONFIG_USB_KONICAWC=m CONFIG_USB_OV511=m diff -r a3f4357a9e16 -r 47a2eb32002a buildconfigs/mk.linux-2.6-xen --- a/buildconfigs/mk.linux-2.6-xen Fri Feb 3 14:24:52 2006 +++ b/buildconfigs/mk.linux-2.6-xen Fri Feb 3 17:49:27 2006 @@ -2,8 +2,8 @@ OS = linux LINUX_SERIES = 2.6 -LINUX_VER = 2.6.16-rc1-git4 -LINUX_SRCS = linux-2.6.15.tar.bz2 patch-2.6.16-rc1.bz2 patch-2.6.16-rc1-git4.bz2 +LINUX_VER = 2.6.16-rc2 +LINUX_SRCS = linux-2.6.15.tar.bz2 patch-2.6.16-rc2.bz2 LINUX_PDIR = linux-$(LINUX_VER) EXTRAVERSION ?= xen @@ -33,7 +33,7 @@ touch $(@D)/.hgskip touch $@ -pristine-linux-%.16-rc1-git4/.valid-pristine: pristine-$(LINUX_PDIR)/.valid-srcs +pristine-linux-%.16-rc2/.valid-pristine: pristine-$(LINUX_PDIR)/.valid-srcs touch $@ # update timestamp to avoid rebuild $(LINUX_DIR)/include/linux/autoconf.h: ref-$(OS)-$(LINUX_VER)/.valid-ref diff -r a3f4357a9e16 -r 47a2eb32002a linux-2.6-xen-sparse/arch/i386/Kconfig --- a/linux-2.6-xen-sparse/arch/i386/Kconfig Fri Feb 3 14:24:52 2006 +++ b/linux-2.6-xen-sparse/arch/i386/Kconfig Fri Feb 3 17:49:27 2006 @@ -46,16 +46,6 @@ default y source "init/Kconfig" - -config DOUBLEFAULT - default y - bool "Enable doublefault exception handler" if EMBEDDED - depends on !XEN - help - This option allows trapping of rare doublefault exceptions that - would otherwise cause a system to silently reboot. Disabling this - option saves about 4k and might cause you much additional grey - hair. menu "Processor type and features" @@ -492,6 +482,43 @@ endchoice +choice + depends on EXPERIMENTAL && !X86_PAE + prompt "Memory split" + default VMSPLIT_3G + help + Select the desired split between kernel and user memory. + + If the address range available to the kernel is less than the + physical memory installed, the remaining memory will be available + as "high memory". Accessing high memory is a little more costly + than low memory, as it needs to be mapped into the kernel first. + Note that increasing the kernel address space limits the range + available to user programs, making the address space there + tighter. Selecting anything other than the default 3G/1G split + will also likely make your kernel incompatible with binary-only + kernel modules. + + If you are not absolutely sure what you are doing, leave this + option alone! + + config VMSPLIT_3G + bool "3G/1G user/kernel split" + config VMSPLIT_3G_OPT + bool "3G/1G user/kernel split (for full 1G low memory)" + config VMSPLIT_2G + bool "2G/2G user/kernel split" + config VMSPLIT_1G + bool "1G/3G user/kernel split" +endchoice + +config PAGE_OFFSET + hex + default 0xB0000000 if VMSPLIT_3G_OPT + default 0x78000000 if VMSPLIT_2G + default 0x40000000 if VMSPLIT_1G + default 0xC0000000 + config HIGHMEM bool depends on HIGHMEM64G || HIGHMEM4G @@ -748,6 +775,16 @@ can be controlled through /sys/devices/system/cpu. Say N. + +config DOUBLEFAULT + default y + bool "Enable doublefault exception handler" if EMBEDDED + depends on !XEN + help + This option allows trapping of rare doublefault exceptions that + would otherwise cause a system to silently reboot. Disabling this + option saves about 4k and might cause you much additional grey + hair. endmenu diff -r a3f4357a9e16 -r 47a2eb32002a linux-2.6-xen-sparse/arch/i386/kernel/acpi/Makefile --- a/linux-2.6-xen-sparse/arch/i386/kernel/acpi/Makefile Fri Feb 3 14:24:52 2006 +++ b/linux-2.6-xen-sparse/arch/i386/kernel/acpi/Makefile Fri Feb 3 17:49:27 2006 @@ -3,7 +3,7 @@ obj-$(CONFIG_ACPI_SLEEP) += sleep.o wakeup.o ifneq ($(CONFIG_ACPI_PROCESSOR),) -obj-y += cstate.o +obj-y += cstate.o processor.o endif ifdef CONFIG_XEN diff -r a3f4357a9e16 -r 47a2eb32002a linux-2.6-xen-sparse/arch/i386/kernel/acpi/boot-xen.c --- a/linux-2.6-xen-sparse/arch/i386/kernel/acpi/boot-xen.c Fri Feb 3 14:24:52 2006 +++ b/linux-2.6-xen-sparse/arch/i386/kernel/acpi/boot-xen.c Fri Feb 3 17:49:27 2006 @@ -466,7 +466,7 @@ * success: return IRQ number (>=0) * failure: return < 0 */ -int acpi_register_gsi(u32 gsi, int edge_level, int active_high_low) +int acpi_register_gsi(u32 gsi, int triggering, int polarity) { unsigned int irq; unsigned int plat_gsi = gsi; @@ -478,14 +478,14 @@ if (acpi_irq_model == ACPI_IRQ_MODEL_PIC) { extern void eisa_set_level_irq(unsigned int irq); - if (edge_level == ACPI_LEVEL_SENSITIVE) + if (triggering == ACPI_LEVEL_SENSITIVE) eisa_set_level_irq(gsi); } #endif #ifdef CONFIG_X86_IO_APIC if (acpi_irq_model == ACPI_IRQ_MODEL_IOAPIC) { - plat_gsi = mp_register_gsi(gsi, edge_level, active_high_low); + plat_gsi = mp_register_gsi(gsi, triggering, polarity); } #endif acpi_gsi_to_irq(plat_gsi, &irq); diff -r a3f4357a9e16 -r 47a2eb32002a linux-2.6-xen-sparse/arch/i386/kernel/mpparse-xen.c --- a/linux-2.6-xen-sparse/arch/i386/kernel/mpparse-xen.c Fri Feb 3 14:24:52 2006 +++ b/linux-2.6-xen-sparse/arch/i386/kernel/mpparse-xen.c Fri Feb 3 17:49:27 2006 @@ -1097,7 +1097,7 @@ #define MAX_GSI_NUM 4096 -int mp_register_gsi (u32 gsi, int edge_level, int active_high_low) +int mp_register_gsi (u32 gsi, int triggering, int polarity) { int ioapic = -1; int ioapic_pin = 0; @@ -1146,7 +1146,7 @@ mp_ioapic_routing[ioapic].pin_programmed[idx] |= (1<<bit); - if (edge_level) { + if (triggering == ACPI_LEVEL_SENSITIVE) { /* * For PCI devices assign IRQs in order, avoiding gaps * due to unused I/O APIC pins. @@ -1168,8 +1168,8 @@ } io_apic_set_pci_routing(ioapic, ioapic_pin, gsi, - edge_level == ACPI_EDGE_SENSITIVE ? 0 : 1, - active_high_low == ACPI_ACTIVE_HIGH ? 0 : 1); + triggering == ACPI_EDGE_SENSITIVE ? 0 : 1, + polarity == ACPI_ACTIVE_HIGH ? 0 : 1); return gsi; } diff -r a3f4357a9e16 -r 47a2eb32002a linux-2.6-xen-sparse/arch/i386/pci/irq-xen.c --- a/linux-2.6-xen-sparse/arch/i386/pci/irq-xen.c Fri Feb 3 14:24:52 2006 +++ b/linux-2.6-xen-sparse/arch/i386/pci/irq-xen.c Fri Feb 3 17:49:27 2006 @@ -542,6 +542,11 @@ case PCI_DEVICE_ID_INTEL_ICH7_30: case PCI_DEVICE_ID_INTEL_ICH7_31: case PCI_DEVICE_ID_INTEL_ESB2_0: + case PCI_DEVICE_ID_INTEL_ICH8_0: + case PCI_DEVICE_ID_INTEL_ICH8_1: + case PCI_DEVICE_ID_INTEL_ICH8_2: + case PCI_DEVICE_ID_INTEL_ICH8_3: + case PCI_DEVICE_ID_INTEL_ICH8_4: r->name = "PIIX/ICH"; r->get = pirq_piix_get; r->set = pirq_piix_set; diff -r a3f4357a9e16 -r 47a2eb32002a linux-2.6-xen-sparse/arch/um/kernel/physmem.c --- a/linux-2.6-xen-sparse/arch/um/kernel/physmem.c Fri Feb 3 14:24:52 2006 +++ b/linux-2.6-xen-sparse/arch/um/kernel/physmem.c Fri Feb 3 17:49:27 2006 @@ -267,7 +267,7 @@ highmem_len = highmem_pages * sizeof(struct page); total_pages = phys_pages + iomem_pages + highmem_pages; - total_len = phys_len + iomem_pages + highmem_len; + total_len = phys_len + iomem_len + highmem_len; if(kmalloc_ok){ map = kmalloc(total_len, GFP_KERNEL); diff -r a3f4357a9e16 -r 47a2eb32002a linux-2.6-xen-sparse/arch/x86_64/ia32/ia32entry-xen.S --- a/linux-2.6-xen-sparse/arch/x86_64/ia32/ia32entry-xen.S Fri Feb 3 14:24:52 2006 +++ b/linux-2.6-xen-sparse/arch/x86_64/ia32/ia32entry-xen.S Fri Feb 3 17:49:27 2006 @@ -703,7 +703,7 @@ .quad sys_mkdirat .quad sys_mknodat .quad sys_fchownat - .quad sys_futimesat + .quad compat_sys_futimesat .quad compat_sys_newfstatat /* 300 */ .quad sys_unlinkat .quad sys_renameat diff -r a3f4357a9e16 -r 47a2eb32002a linux-2.6-xen-sparse/arch/x86_64/kernel/acpi/Makefile --- a/linux-2.6-xen-sparse/arch/x86_64/kernel/acpi/Makefile Fri Feb 3 14:24:52 2006 +++ b/linux-2.6-xen-sparse/arch/x86_64/kernel/acpi/Makefile Fri Feb 3 17:49:27 2006 @@ -2,4 +2,8 @@ boot-y := ../../../i386/kernel/acpi/boot.o obj-$(CONFIG_ACPI_SLEEP) += sleep.o wakeup.o +ifneq ($(CONFIG_ACPI_PROCESSOR),) +obj-y += processor.o +endif + boot-$(CONFIG_XEN) := ../../../i386/kernel/acpi/boot-xen.o diff -r a3f4357a9e16 -r 47a2eb32002a linux-2.6-xen-sparse/arch/x86_64/kernel/io_apic-xen.c --- a/linux-2.6-xen-sparse/arch/x86_64/kernel/io_apic-xen.c Fri Feb 3 14:24:52 2006 +++ b/linux-2.6-xen-sparse/arch/x86_64/kernel/io_apic-xen.c Fri Feb 3 17:49:27 2006 @@ -2105,7 +2105,7 @@ } -int io_apic_set_pci_routing (int ioapic, int pin, int irq, int edge_level, int active_high_low) +int io_apic_set_pci_routing (int ioapic, int pin, int irq, int triggering, int polarity) { struct IO_APIC_route_entry entry; unsigned long flags; @@ -2127,8 +2127,8 @@ entry.delivery_mode = INT_DELIVERY_MODE; entry.dest_mode = INT_DEST_MODE; entry.dest.logical.logical_dest = cpu_mask_to_apicid(TARGET_CPUS); - entry.trigger = edge_level; - entry.polarity = active_high_low; + entry.trigger = triggering; + entry.polarity = polarity; entry.mask = 1; /* Disabled (masked) */ irq = gsi_irq_sharing(irq); @@ -2143,9 +2143,9 @@ apic_printk(APIC_VERBOSE,KERN_DEBUG "IOAPIC[%d]: Set PCI routing entry (%d-%d -> 0x%x -> " "IRQ %d Mode:%i Active:%i)\n", ioapic, mp_ioapics[ioapic].mpc_apicid, pin, entry.vector, irq, - edge_level, active_high_low); - - ioapic_register_intr(irq, entry.vector, edge_level); + triggering, polarity); + + ioapic_register_intr(irq, entry.vector, triggering); if (!ioapic && (irq < 16)) disable_8259A_irq(irq); diff -r a3f4357a9e16 -r 47a2eb32002a linux-2.6-xen-sparse/arch/x86_64/kernel/mpparse-xen.c --- a/linux-2.6-xen-sparse/arch/x86_64/kernel/mpparse-xen.c Fri Feb 3 14:24:52 2006 +++ b/linux-2.6-xen-sparse/arch/x86_64/kernel/mpparse-xen.c Fri Feb 3 17:49:27 2006 @@ -920,7 +920,7 @@ #define MAX_GSI_NUM 4096 -int mp_register_gsi(u32 gsi, int edge_level, int active_high_low) +int mp_register_gsi(u32 gsi, int triggering, int polarity) { int ioapic = -1; int ioapic_pin = 0; @@ -969,7 +969,7 @@ mp_ioapic_routing[ioapic].pin_programmed[idx] |= (1<<bit); - if (edge_level) { + if (triggering == ACPI_LEVEL_SENSITIVE) { /* * For PCI devices assign IRQs in order, avoiding gaps * due to unused I/O APIC pins. @@ -991,8 +991,8 @@ } io_apic_set_pci_routing(ioapic, ioapic_pin, gsi, - edge_level == ACPI_EDGE_SENSITIVE ? 0 : 1, - active_high_low == ACPI_ACTIVE_HIGH ? 0 : 1); + triggering == ACPI_EDGE_SENSITIVE ? 0 : 1, + polarity == ACPI_ACTIVE_HIGH ? 0 : 1); return gsi; } diff -r a3f4357a9e16 -r 47a2eb32002a linux-2.6-xen-sparse/drivers/acpi/Kconfig --- a/linux-2.6-xen-sparse/drivers/acpi/Kconfig Fri Feb 3 14:24:52 2006 +++ b/linux-2.6-xen-sparse/drivers/acpi/Kconfig Fri Feb 3 17:49:27 2006 @@ -267,7 +267,6 @@ config ACPI_EC bool - depends on X86 default y help This driver is required on some systems for the proper operation of diff -r a3f4357a9e16 -r 47a2eb32002a linux-2.6-xen-sparse/drivers/serial/Kconfig --- a/linux-2.6-xen-sparse/drivers/serial/Kconfig Fri Feb 3 14:24:52 2006 +++ b/linux-2.6-xen-sparse/drivers/serial/Kconfig Fri Feb 3 17:49:27 2006 @@ -24,7 +24,7 @@ work.) To compile this driver as a module, choose M here: the - module will be called serial. + module will be called 8250. [WARNING: Do not compile this driver as a module if you are using non-standard serial ports, since the configuration information will be lost when the driver is unloaded. This limitation may be lifted diff -r a3f4357a9e16 -r 47a2eb32002a linux-2.6-xen-sparse/fs/Kconfig --- a/linux-2.6-xen-sparse/fs/Kconfig Fri Feb 3 14:24:52 2006 +++ b/linux-2.6-xen-sparse/fs/Kconfig Fri Feb 3 17:49:27 2006 @@ -1328,7 +1328,7 @@ config UFS_FS_WRITE bool "UFS file system write support (DANGEROUS)" - depends on UFS_FS && EXPERIMENTAL + depends on UFS_FS && EXPERIMENTAL && BROKEN help Say Y here if you want to try writing to UFS partitions. This is experimental, so you should back up your UFS partitions beforehand. diff -r a3f4357a9e16 -r 47a2eb32002a linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/page.h --- a/linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/page.h Fri Feb 3 14:24:52 2006 +++ b/linux-2.6-xen-sparse/include/asm-i386/mach-xen/asm/page.h Fri Feb 3 17:49:27 2006 @@ -280,10 +280,10 @@ #endif /* __ASSEMBLY__ */ #ifdef __ASSEMBLY__ -#define __PAGE_OFFSET (0xC0000000) +#define __PAGE_OFFSET CONFIG_PAGE_OFFSET #define __PHYSICAL_START CONFIG_PHYSICAL_START #else -#define __PAGE_OFFSET (0xC0000000UL) +#define __PAGE_OFFSET ((unsigned long)CONFIG_PAGE_OFFSET) #define __PHYSICAL_START ((unsigned long)CONFIG_PHYSICAL_START) #endif #define __KERNEL_START (__PAGE_OFFSET + __PHYSICAL_START) diff -r a3f4357a9e16 -r 47a2eb32002a linux-2.6-xen-sparse/lib/Makefile --- a/linux-2.6-xen-sparse/lib/Makefile Fri Feb 3 14:24:52 2006 +++ b/linux-2.6-xen-sparse/lib/Makefile Fri Feb 3 17:49:27 2006 @@ -9,7 +9,7 @@ lib-y += kobject.o kref.o kobject_uevent.o klist.o -obj-y += sort.o parser.o halfmd4.o +obj-y += sort.o parser.o halfmd4.o iomap_copy.o ifeq ($(CONFIG_DEBUG_KOBJECT),y) CFLAGS_kobject.o += -DDEBUG diff -r a3f4357a9e16 -r 47a2eb32002a linux-2.6-xen-sparse/mm/memory.c --- a/linux-2.6-xen-sparse/mm/memory.c Fri Feb 3 14:24:52 2006 +++ b/linux-2.6-xen-sparse/mm/memory.c Fri Feb 3 17:49:27 2006 @@ -1987,6 +1987,7 @@ goto out; entry = pte_to_swp_entry(orig_pte); +again: page = lookup_swap_cache(entry); if (!page) { swapin_readahead(entry, address, vma); @@ -2010,6 +2011,12 @@ mark_page_accessed(page); lock_page(page); + if (!PageSwapCache(page)) { + /* Page migration has occured */ + unlock_page(page); + page_cache_release(page); + goto again; + } /* * Back out if somebody else already faulted in this pte. diff -r a3f4357a9e16 -r 47a2eb32002a linux-2.6-xen-sparse/mm/page_alloc.c --- a/linux-2.6-xen-sparse/mm/page_alloc.c Fri Feb 3 14:24:52 2006 +++ b/linux-2.6-xen-sparse/mm/page_alloc.c Fri Feb 3 17:49:27 2006 @@ -1801,7 +1801,7 @@ memmap_init_zone((size), (nid), (zone), (start_pfn)) #endif -static int __meminit zone_batchsize(struct zone *zone) +static int __cpuinit zone_batchsize(struct zone *zone) { int batch; @@ -1895,7 +1895,7 @@ * Dynamically allocate memory for the * per cpu pageset array in struct zone. */ -static int __meminit process_zones(int cpu) +static int __cpuinit process_zones(int cpu) { struct zone *zone, *dzone; @@ -1936,7 +1936,7 @@ } } -static int __meminit pageset_cpuup_callback(struct notifier_block *nfb, +static int __cpuinit pageset_cpuup_callback(struct notifier_block *nfb, unsigned long action, void *hcpu) { diff -r a3f4357a9e16 -r 47a2eb32002a linux-2.6-xen-sparse/net/core/dev.c --- a/linux-2.6-xen-sparse/net/core/dev.c Fri Feb 3 14:24:52 2006 +++ b/linux-2.6-xen-sparse/net/core/dev.c Fri Feb 3 17:49:27 2006 @@ -2593,13 +2593,14 @@ case SIOCBONDENSLAVE: case SIOCBONDRELEASE: case SIOCBONDSETHWADDR: - case SIOCBONDSLAVEINFOQUERY: - case SIOCBONDINFOQUERY: case SIOCBONDCHANGEACTIVE: case SIOCBRADDIF: case SIOCBRDELIF: if (!capable(CAP_NET_ADMIN)) return -EPERM; + /* fall through */ + case SIOCBONDSLAVEINFOQUERY: + case SIOCBONDINFOQUERY: dev_load(ifr.ifr_name); rtnl_lock(); ret = dev_ifsioc(&ifr, cmd); diff -r a3f4357a9e16 -r 47a2eb32002a linux-2.6-xen-sparse/net/core/skbuff.c --- a/linux-2.6-xen-sparse/net/core/skbuff.c Fri Feb 3 14:24:52 2006 +++ b/linux-2.6-xen-sparse/net/core/skbuff.c Fri Feb 3 17:49:27 2006 @@ -136,13 +136,15 @@ struct sk_buff *__alloc_skb(unsigned int size, gfp_t gfp_mask, int fclone) { + kmem_cache_t *cache; struct skb_shared_info *shinfo; struct sk_buff *skb; u8 *data; + cache = fclone ? skbuff_fclone_cache : skbuff_head_cache; + /* Get the HEAD */ - skb = kmem_cache_alloc(fclone ? skbuff_fclone_cache : skbuff_head_cache, - gfp_mask & ~__GFP_DMA); + skb = kmem_cache_alloc(cache, gfp_mask & ~__GFP_DMA); if (!skb) goto out; @@ -181,7 +183,7 @@ out: return skb; nodata: - kmem_cache_free(fclone ? skbuff_fclone_cache : skbuff_head_cache, skb); + kmem_cache_free(cache, skb); skb = NULL; goto out; } @@ -206,13 +208,15 @@ gfp_t gfp_mask, int fclone) { + kmem_cache_t *cache; struct skb_shared_info *shinfo; struct sk_buff *skb; u8 *data; + cache = fclone ? skbuff_fclone_cache : skbuff_head_cache; + /* Get the HEAD */ - skb = kmem_cache_alloc(fclone ? skbuff_fclone_cache : skbuff_head_cache, - gfp_mask & ~__GFP_DMA); + skb = kmem_cache_alloc(cache, gfp_mask & ~__GFP_DMA); if (!skb) goto out; @@ -251,7 +255,7 @@ out: return skb; nodata: - kmem_cache_free(fclone ? skbuff_fclone_cache : skbuff_head_cache, skb); + kmem_cache_free(cache, skb); skb = NULL; goto out; } _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |