diff -Nurb linux-2.6.22-570/Documentation/DocBook/Makefile linux-2.6.22-590/Documentation/DocBook/Makefile
--- linux-2.6.22-570/Documentation/DocBook/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/Documentation/DocBook/Makefile 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/Documentation/DocBook/Makefile 2008-03-20 13:27:59.000000000 -0400
@@ -11,7 +11,7 @@
procfs-guide.xml writing_usb_driver.xml \
kernel-api.xml filesystems.xml lsm.xml usb.xml \
# The build process is as follows (targets):
diff -Nurb linux-2.6.22-570/Documentation/DocBook/kgdb.tmpl linux-2.6.22-590/Documentation/DocBook/kgdb.tmpl
--- linux-2.6.22-570/Documentation/DocBook/kgdb.tmpl 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/Documentation/DocBook/kgdb.tmpl 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/Documentation/DocBook/kgdb.tmpl 2008-03-20 13:27:59.000000000 -0400
@@ -0,0 +1,250 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN"
+</book>
diff -Nurb linux-2.6.22-570/Documentation/accounting/getdelays.c linux-2.6.22-590/Documentation/accounting/getdelays.c
--- linux-2.6.22-570/Documentation/accounting/getdelays.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/Documentation/accounting/getdelays.c 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/Documentation/accounting/getdelays.c 2008-03-20 13:27:59.000000000 -0400
@@ -49,6 +49,7 @@
int dbg;
int print_delays;
err(1,"write error\n");
diff -Nurb linux-2.6.22-570/Documentation/accounting/taskstats-struct.txt linux-2.6.22-590/Documentation/accounting/taskstats-struct.txt
--- linux-2.6.22-570/Documentation/accounting/taskstats-struct.txt 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/Documentation/accounting/taskstats-struct.txt 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/Documentation/accounting/taskstats-struct.txt 2008-03-20 13:27:59.000000000 -0400
@@ -22,6 +22,8 @@
/* Extended accounting fields end */
Their values are collected if CONFIG_TASK_XACCT is set.
}
diff -Nurb linux-2.6.22-570/Documentation/cachetlb.txt linux-2.6.22-590/Documentation/cachetlb.txt
--- linux-2.6.22-570/Documentation/cachetlb.txt 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/Documentation/cachetlb.txt 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/Documentation/cachetlb.txt 2008-03-20 13:27:59.000000000 -0400
@@ -253,7 +253,7 @@
The first of these two routines is invoked after map_vm_area()
require a whole different set of interfaces to handle properly.
diff -Nurb linux-2.6.22-570/Documentation/containers.txt linux-2.6.22-590/Documentation/containers.txt
--- linux-2.6.22-570/Documentation/containers.txt 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/Documentation/containers.txt 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/Documentation/containers.txt 2008-03-20 13:27:59.000000000 -0400
@@ -0,0 +1,543 @@
+ CONTAINERS
+ -------
+
diff -Nurb linux-2.6.22-570/Documentation/cpuidle/core.txt linux-2.6.22-590/Documentation/cpuidle/core.txt
--- linux-2.6.22-570/Documentation/cpuidle/core.txt 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/Documentation/cpuidle/core.txt 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/Documentation/cpuidle/core.txt 2008-03-20 13:27:59.000000000 -0400
@@ -0,0 +1,17 @@
+
+ Supporting multiple CPU idle levels in kernel
+
diff -Nurb linux-2.6.22-570/Documentation/cpuidle/driver.txt linux-2.6.22-590/Documentation/cpuidle/driver.txt
--- linux-2.6.22-570/Documentation/cpuidle/driver.txt 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/Documentation/cpuidle/driver.txt 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/Documentation/cpuidle/driver.txt 2008-03-20 13:27:59.000000000 -0400
@@ -0,0 +1,24 @@
+
+
+int cpuidle_force_redetect(struct cpuidle_device *dev);
diff -Nurb linux-2.6.22-570/Documentation/cpuidle/governor.txt linux-2.6.22-590/Documentation/cpuidle/governor.txt
--- linux-2.6.22-570/Documentation/cpuidle/governor.txt 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/Documentation/cpuidle/governor.txt 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/Documentation/cpuidle/governor.txt 2008-03-20 13:27:59.000000000 -0400
@@ -0,0 +1,24 @@
+
+
+
diff -Nurb linux-2.6.22-570/Documentation/cpuidle/sysfs.txt linux-2.6.22-590/Documentation/cpuidle/sysfs.txt
--- linux-2.6.22-570/Documentation/cpuidle/sysfs.txt 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/Documentation/cpuidle/sysfs.txt 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/Documentation/cpuidle/sysfs.txt 2008-03-20 13:27:59.000000000 -0400
@@ -0,0 +1,27 @@
+
+
+
diff -Nurb linux-2.6.22-570/Documentation/cpusets.txt linux-2.6.22-590/Documentation/cpusets.txt
--- linux-2.6.22-570/Documentation/cpusets.txt 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/Documentation/cpusets.txt 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/Documentation/cpusets.txt 2008-03-20 13:27:59.000000000 -0400
@@ -7,6 +7,7 @@
Portions Copyright (c) 2004-2006 Silicon Graphics, Inc.
Modified by Paul Jackson <pj@sgi.com>
diff -Nurb linux-2.6.22-570/Documentation/feature-removal-schedule.txt linux-2.6.22-590/Documentation/feature-removal-schedule.txt
--- linux-2.6.22-570/Documentation/feature-removal-schedule.txt 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/Documentation/feature-removal-schedule.txt 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/Documentation/feature-removal-schedule.txt 2008-03-20 13:27:59.000000000 -0400
@@ -162,6 +162,33 @@
---------------------------
Why: These functions are a leftover from 2.4 times. They have several
diff -Nurb linux-2.6.22-570/Documentation/filesystems/00-INDEX linux-2.6.22-590/Documentation/filesystems/00-INDEX
--- linux-2.6.22-570/Documentation/filesystems/00-INDEX 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/Documentation/filesystems/00-INDEX 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/Documentation/filesystems/00-INDEX 2008-03-20 13:27:59.000000000 -0400
@@ -84,6 +84,8 @@
- info and mount options for the UDF filesystem.
ufs.txt
vfs.txt
diff -Nurb linux-2.6.22-570/Documentation/filesystems/Locking linux-2.6.22-590/Documentation/filesystems/Locking
--- linux-2.6.22-570/Documentation/filesystems/Locking 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/Documentation/filesystems/Locking 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/Documentation/filesystems/Locking 2008-03-20 13:27:59.000000000 -0400
@@ -510,12 +510,14 @@
prototypes:
void (*open)(struct vm_area_struct*);
================================================================================
diff -Nurb linux-2.6.22-570/Documentation/filesystems/configfs/configfs.txt linux-2.6.22-590/Documentation/filesystems/configfs/configfs.txt
--- linux-2.6.22-570/Documentation/filesystems/configfs/configfs.txt 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/Documentation/filesystems/configfs/configfs.txt 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/Documentation/filesystems/configfs/configfs.txt 2008-03-20 13:27:59.000000000 -0400
@@ -238,6 +238,8 @@
struct config_group *(*make_group)(struct config_group *group,
const char *name);
NOTE: Committable items are currently unimplemented.
diff -Nurb linux-2.6.22-570/Documentation/filesystems/unionfs/00-INDEX linux-2.6.22-590/Documentation/filesystems/unionfs/00-INDEX
--- linux-2.6.22-570/Documentation/filesystems/unionfs/00-INDEX 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/Documentation/filesystems/unionfs/00-INDEX 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/Documentation/filesystems/unionfs/00-INDEX 2008-03-20 13:27:59.000000000 -0400
@@ -0,0 +1,10 @@
+00-INDEX
+ - this file.
+ - Usage information and examples.
diff -Nurb linux-2.6.22-570/Documentation/filesystems/unionfs/concepts.txt linux-2.6.22-590/Documentation/filesystems/unionfs/concepts.txt
--- linux-2.6.22-570/Documentation/filesystems/unionfs/concepts.txt 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/Documentation/filesystems/unionfs/concepts.txt 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/Documentation/filesystems/unionfs/concepts.txt 2008-03-20 13:27:59.000000000 -0400
@@ -0,0 +1,75 @@
+Unionfs 2.0 CONCEPTS:
+=====================
+For more information, see <http://unionfs.filesystems.org/>.
diff -Nurb linux-2.6.22-570/Documentation/filesystems/unionfs/issues.txt linux-2.6.22-590/Documentation/filesystems/unionfs/issues.txt
--- linux-2.6.22-570/Documentation/filesystems/unionfs/issues.txt 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/Documentation/filesystems/unionfs/issues.txt 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/Documentation/filesystems/unionfs/issues.txt 2008-03-20 13:27:59.000000000 -0400
@@ -0,0 +1,39 @@
+KNOWN Unionfs 2.0 ISSUES:
+=========================
+For more information, see <http://unionfs.filesystems.org/>.
diff -Nurb linux-2.6.22-570/Documentation/filesystems/unionfs/rename.txt linux-2.6.22-590/Documentation/filesystems/unionfs/rename.txt
--- linux-2.6.22-570/Documentation/filesystems/unionfs/rename.txt 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/Documentation/filesystems/unionfs/rename.txt 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/Documentation/filesystems/unionfs/rename.txt 2008-03-20 13:27:59.000000000 -0400
@@ -0,0 +1,31 @@
+Rename is a complex beast. The following table shows which rename(2) operations
+should succeed and which should fail.
+
diff -Nurb linux-2.6.22-570/Documentation/filesystems/unionfs/usage.txt linux-2.6.22-590/Documentation/filesystems/unionfs/usage.txt
--- linux-2.6.22-570/Documentation/filesystems/unionfs/usage.txt 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/Documentation/filesystems/unionfs/usage.txt 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/Documentation/filesystems/unionfs/usage.txt 2008-03-20 13:27:59.000000000 -0400
@@ -0,0 +1,90 @@
+Unionfs is a stackable unification file system, which can appear to merge
+the contents of several directories (branches), while keeping their physical
+For more information, see <http://unionfs.filesystems.org/>.
diff -Nurb linux-2.6.22-570/Documentation/firmware_class/firmware_sample_firmware_class.c linux-2.6.22-590/Documentation/firmware_class/firmware_sample_firmware_class.c
--- linux-2.6.22-570/Documentation/firmware_class/firmware_sample_firmware_class.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/Documentation/firmware_class/firmware_sample_firmware_class.c 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/Documentation/firmware_class/firmware_sample_firmware_class.c 2008-03-20 13:27:59.000000000 -0400
@@ -78,6 +78,7 @@
firmware_loading_show, firmware_loading_store);
struct class_device *class_dev = to_class_dev(kobj);
diff -Nurb linux-2.6.22-570/Documentation/power/freezing-of-tasks.txt linux-2.6.22-590/Documentation/power/freezing-of-tasks.txt
--- linux-2.6.22-570/Documentation/power/freezing-of-tasks.txt 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/Documentation/power/freezing-of-tasks.txt 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/Documentation/power/freezing-of-tasks.txt 2008-03-20 13:27:59.000000000 -0400
@@ -0,0 +1,160 @@
+Freezing of tasks
+ (C) 2007 Rafael J. Wysocki <rjw@sisk.pl>, GPL
-the actual snapshotting.
diff -Nurb linux-2.6.22-570/Documentation/power/swsusp.txt linux-2.6.22-590/Documentation/power/swsusp.txt
--- linux-2.6.22-570/Documentation/power/swsusp.txt 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/Documentation/power/swsusp.txt 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/Documentation/power/swsusp.txt 2008-03-20 13:27:59.000000000 -0400
@@ -140,21 +140,11 @@
website, and not to the Linux Kernel Mailing List. We are working
toward merging suspend2 into the mainline kernel.
diff -Nurb linux-2.6.22-570/Documentation/scsi/scsi_fc_transport.txt linux-2.6.22-590/Documentation/scsi/scsi_fc_transport.txt
--- linux-2.6.22-570/Documentation/scsi/scsi_fc_transport.txt 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/Documentation/scsi/scsi_fc_transport.txt 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/Documentation/scsi/scsi_fc_transport.txt 2008-03-20 13:27:59.000000000 -0400
@@ -0,0 +1,450 @@
+ SCSI FC Tansport
+ =============================================
+
diff -Nurb linux-2.6.22-570/Documentation/sysctl/kernel.txt linux-2.6.22-590/Documentation/sysctl/kernel.txt
--- linux-2.6.22-570/Documentation/sysctl/kernel.txt 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/Documentation/sysctl/kernel.txt 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/Documentation/sysctl/kernel.txt 2008-03-20 13:27:59.000000000 -0400
@@ -29,6 +29,7 @@
- java-interpreter [ binfmt_java, obsolete ]
- kstack_depth_to_print [ X86 only ]
# cat osrelease
diff -Nurb linux-2.6.22-570/Documentation/sysfs-rules.txt linux-2.6.22-590/Documentation/sysfs-rules.txt
--- linux-2.6.22-570/Documentation/sysfs-rules.txt 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/Documentation/sysfs-rules.txt 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/Documentation/sysfs-rules.txt 2008-03-20 13:27:59.000000000 -0400
@@ -0,0 +1,166 @@
+Rules on how to access information in the Linux kernel sysfs
+
+
diff -Nurb linux-2.6.22-570/MAINTAINERS linux-2.6.22-590/MAINTAINERS
--- linux-2.6.22-570/MAINTAINERS 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/MAINTAINERS 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/MAINTAINERS 2008-03-20 13:27:59.000000000 -0400
@@ -232,15 +232,15 @@
S: Supported
P: Oliver Neukum
M: oliver@neukum.name
diff -Nurb linux-2.6.22-570/Makefile linux-2.6.22-590/Makefile
---- linux-2.6.22-570/Makefile 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/Makefile 2008-03-18 15:57:50.000000000 -0400
+--- linux-2.6.22-570/Makefile 2008-03-20 13:25:43.000000000 -0400
++++ linux-2.6.22-590/Makefile 2008-03-20 13:27:59.000000000 -0400
@@ -1,7 +1,7 @@
VERSION = 2
PATCHLEVEL = 6
CFLAGS += -g
endif
diff -Nurb linux-2.6.22-570/Makefile.orig linux-2.6.22-590/Makefile.orig
---- linux-2.6.22-570/Makefile.orig 2008-03-18 15:57:35.000000000 -0400
+--- linux-2.6.22-570/Makefile.orig 2008-03-20 13:25:40.000000000 -0400
+++ linux-2.6.22-590/Makefile.orig 1969-12-31 19:00:00.000000000 -0500
@@ -1,1493 +0,0 @@
-VERSION = 2
-# information in a variable se we can use it in if_changed and friends.
-.PHONY: $(PHONY)
diff -Nurb linux-2.6.22-570/arch/arm/Kconfig linux-2.6.22-590/arch/arm/Kconfig
---- linux-2.6.22-570/arch/arm/Kconfig 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/arch/arm/Kconfig 2008-03-18 15:57:50.000000000 -0400
+--- linux-2.6.22-570/arch/arm/Kconfig 2008-03-20 13:25:43.000000000 -0400
++++ linux-2.6.22-590/arch/arm/Kconfig 2008-03-20 13:27:59.000000000 -0400
@@ -1034,6 +1034,8 @@
source "drivers/rtc/Kconfig"
source "fs/Kconfig"
diff -Nurb linux-2.6.22-570/arch/arm/boot/.gitignore.rej linux-2.6.22-590/arch/arm/boot/.gitignore.rej
--- linux-2.6.22-570/arch/arm/boot/.gitignore.rej 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/arm/boot/.gitignore.rej 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/arch/arm/boot/.gitignore.rej 2008-03-20 13:27:59.000000000 -0400
@@ -0,0 +1,10 @@
+***************
+*** 1,2 ****
++ uImage
diff -Nurb linux-2.6.22-570/arch/arm/kernel/Makefile linux-2.6.22-590/arch/arm/kernel/Makefile
--- linux-2.6.22-570/arch/arm/kernel/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/arm/kernel/Makefile 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/arch/arm/kernel/Makefile 2008-03-20 13:27:59.000000000 -0400
@@ -20,6 +20,7 @@
obj-$(CONFIG_SMP) += smp.o
obj-$(CONFIG_KEXEC) += machine_kexec.o relocate_kernel.o
AFLAGS_crunch-bits.o := -Wa,-mcpu=ep9312
diff -Nurb linux-2.6.22-570/arch/arm/kernel/kgdb-jmp.S linux-2.6.22-590/arch/arm/kernel/kgdb-jmp.S
--- linux-2.6.22-570/arch/arm/kernel/kgdb-jmp.S 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/arm/kernel/kgdb-jmp.S 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/arch/arm/kernel/kgdb-jmp.S 2008-03-20 13:27:59.000000000 -0400
@@ -0,0 +1,32 @@
+/*
+ * arch/arm/kernel/kgdb-jmp.S
+ ldmia r0,{r0-pc}^
diff -Nurb linux-2.6.22-570/arch/arm/kernel/kgdb.c linux-2.6.22-590/arch/arm/kernel/kgdb.c
--- linux-2.6.22-570/arch/arm/kernel/kgdb.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/arm/kernel/kgdb.c 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/arch/arm/kernel/kgdb.c 2008-03-20 13:27:59.000000000 -0400
@@ -0,0 +1,202 @@
+/*
+ * arch/arm/kernel/kgdb.c
+};
diff -Nurb linux-2.6.22-570/arch/arm/kernel/setup.c linux-2.6.22-590/arch/arm/kernel/setup.c
--- linux-2.6.22-570/arch/arm/kernel/setup.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/arm/kernel/setup.c 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/arch/arm/kernel/setup.c 2008-03-20 13:27:59.000000000 -0400
@@ -832,6 +832,11 @@
conswitchp = &dummy_con;
#endif
diff -Nurb linux-2.6.22-570/arch/arm/kernel/traps.c linux-2.6.22-590/arch/arm/kernel/traps.c
---- linux-2.6.22-570/arch/arm/kernel/traps.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/arch/arm/kernel/traps.c 2008-03-18 15:57:50.000000000 -0400
+--- linux-2.6.22-570/arch/arm/kernel/traps.c 2008-03-20 13:25:43.000000000 -0400
++++ linux-2.6.22-590/arch/arm/kernel/traps.c 2008-03-20 13:27:59.000000000 -0400
@@ -301,6 +301,7 @@
unsigned int instr;
struct undef_hook *hook;
extern char __vectors_start[], __vectors_end[];
diff -Nurb linux-2.6.22-570/arch/arm/mach-iop13xx/setup.c linux-2.6.22-590/arch/arm/mach-iop13xx/setup.c
--- linux-2.6.22-570/arch/arm/mach-iop13xx/setup.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/arm/mach-iop13xx/setup.c 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/arch/arm/mach-iop13xx/setup.c 2008-03-20 13:27:59.000000000 -0400
@@ -25,6 +25,7 @@
#include <asm/hardware.h>
#include <asm/irq.h>
__setup("iop13xx_init_i2c", iop13xx_init_i2c_setup);
diff -Nurb linux-2.6.22-570/arch/arm/mach-iop32x/glantank.c linux-2.6.22-590/arch/arm/mach-iop32x/glantank.c
--- linux-2.6.22-570/arch/arm/mach-iop32x/glantank.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/arm/mach-iop32x/glantank.c 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/arch/arm/mach-iop32x/glantank.c 2008-03-20 13:27:59.000000000 -0400
@@ -180,6 +180,8 @@
platform_device_register(&iop3xx_i2c1_device);
platform_device_register(&glantank_flash_device);
}
diff -Nurb linux-2.6.22-570/arch/arm/mach-iop32x/iq31244.c linux-2.6.22-590/arch/arm/mach-iop32x/iq31244.c
--- linux-2.6.22-570/arch/arm/mach-iop32x/iq31244.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/arm/mach-iop32x/iq31244.c 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/arch/arm/mach-iop32x/iq31244.c 2008-03-20 13:27:59.000000000 -0400
@@ -298,9 +298,14 @@
platform_device_register(&iop3xx_i2c1_device);
platform_device_register(&iq31244_flash_device);
static int __init force_ep80219_setup(char *str)
diff -Nurb linux-2.6.22-570/arch/arm/mach-iop32x/iq80321.c linux-2.6.22-590/arch/arm/mach-iop32x/iq80321.c
--- linux-2.6.22-570/arch/arm/mach-iop32x/iq80321.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/arm/mach-iop32x/iq80321.c 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/arch/arm/mach-iop32x/iq80321.c 2008-03-20 13:27:59.000000000 -0400
@@ -181,6 +181,9 @@
platform_device_register(&iop3xx_i2c1_device);
platform_device_register(&iq80321_flash_device);
MACHINE_START(IQ80321, "Intel IQ80321")
diff -Nurb linux-2.6.22-570/arch/arm/mach-iop32x/n2100.c linux-2.6.22-590/arch/arm/mach-iop32x/n2100.c
--- linux-2.6.22-570/arch/arm/mach-iop32x/n2100.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/arm/mach-iop32x/n2100.c 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/arch/arm/mach-iop32x/n2100.c 2008-03-20 13:27:59.000000000 -0400
@@ -245,6 +245,8 @@
platform_device_register(&iop3xx_i2c0_device);
platform_device_register(&n2100_flash_device);
diff -Nurb linux-2.6.22-570/arch/arm/mach-iop33x/iq80331.c linux-2.6.22-590/arch/arm/mach-iop33x/iq80331.c
--- linux-2.6.22-570/arch/arm/mach-iop33x/iq80331.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/arm/mach-iop33x/iq80331.c 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/arch/arm/mach-iop33x/iq80331.c 2008-03-20 13:27:59.000000000 -0400
@@ -136,6 +136,9 @@
platform_device_register(&iop33x_uart0_device);
platform_device_register(&iop33x_uart1_device);
MACHINE_START(IQ80331, "Intel IQ80331")
diff -Nurb linux-2.6.22-570/arch/arm/mach-iop33x/iq80332.c linux-2.6.22-590/arch/arm/mach-iop33x/iq80332.c
--- linux-2.6.22-570/arch/arm/mach-iop33x/iq80332.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/arm/mach-iop33x/iq80332.c 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/arch/arm/mach-iop33x/iq80332.c 2008-03-20 13:27:59.000000000 -0400
@@ -136,6 +136,9 @@
platform_device_register(&iop33x_uart0_device);
platform_device_register(&iop33x_uart1_device);
MACHINE_START(IQ80332, "Intel IQ80332")
diff -Nurb linux-2.6.22-570/arch/arm/mach-ixp2000/core.c linux-2.6.22-590/arch/arm/mach-ixp2000/core.c
--- linux-2.6.22-570/arch/arm/mach-ixp2000/core.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/arm/mach-ixp2000/core.c 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/arch/arm/mach-ixp2000/core.c 2008-03-20 13:27:59.000000000 -0400
@@ -34,6 +34,7 @@
#include <asm/system.h>
#include <asm/tlbflush.h>
diff -Nurb linux-2.6.22-570/arch/arm/mach-ixp2000/ixdp2x01.c linux-2.6.22-590/arch/arm/mach-ixp2000/ixdp2x01.c
--- linux-2.6.22-570/arch/arm/mach-ixp2000/ixdp2x01.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/arm/mach-ixp2000/ixdp2x01.c 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/arch/arm/mach-ixp2000/ixdp2x01.c 2008-03-20 13:27:59.000000000 -0400
@@ -38,6 +38,7 @@
#include <asm/system.h>
#include <asm/hardware.h>
diff -Nurb linux-2.6.22-570/arch/arm/mach-ixp4xx/coyote-setup.c linux-2.6.22-590/arch/arm/mach-ixp4xx/coyote-setup.c
--- linux-2.6.22-570/arch/arm/mach-ixp4xx/coyote-setup.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/arm/mach-ixp4xx/coyote-setup.c 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/arch/arm/mach-ixp4xx/coyote-setup.c 2008-03-20 13:27:59.000000000 -0400
@@ -96,6 +96,10 @@
}
#ifdef CONFIG_ARCH_ADI_COYOTE
diff -Nurb linux-2.6.22-570/arch/arm/mach-ixp4xx/ixdp425-setup.c linux-2.6.22-590/arch/arm/mach-ixp4xx/ixdp425-setup.c
--- linux-2.6.22-570/arch/arm/mach-ixp4xx/ixdp425-setup.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/arm/mach-ixp4xx/ixdp425-setup.c 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/arch/arm/mach-ixp4xx/ixdp425-setup.c 2008-03-20 13:27:59.000000000 -0400
@@ -76,7 +76,8 @@
.mapbase = IXP4XX_UART1_BASE_PHYS,
.membase = (char *)IXP4XX_UART1_BASE_VIRT + REG_OFFSET,
.boot_params = 0x0100,
diff -Nurb linux-2.6.22-570/arch/arm/mach-omap1/serial.c linux-2.6.22-590/arch/arm/mach-omap1/serial.c
--- linux-2.6.22-570/arch/arm/mach-omap1/serial.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/arm/mach-omap1/serial.c 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/arch/arm/mach-omap1/serial.c 2008-03-20 13:27:59.000000000 -0400
@@ -15,6 +15,7 @@
#include <linux/delay.h>
#include <linux/serial.h>
diff -Nurb linux-2.6.22-570/arch/arm/mach-pnx4008/core.c linux-2.6.22-590/arch/arm/mach-pnx4008/core.c
--- linux-2.6.22-570/arch/arm/mach-pnx4008/core.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/arm/mach-pnx4008/core.c 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/arch/arm/mach-pnx4008/core.c 2008-03-20 13:27:59.000000000 -0400
@@ -224,6 +224,10 @@
spi_register_board_info(spi_board_info, ARRAY_SIZE(spi_board_info));
/* Switch on the UART clocks */
static struct map_desc pnx4008_io_desc[] __initdata = {
diff -Nurb linux-2.6.22-570/arch/arm/mach-pxa/Makefile linux-2.6.22-590/arch/arm/mach-pxa/Makefile
--- linux-2.6.22-570/arch/arm/mach-pxa/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/arm/mach-pxa/Makefile 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/arch/arm/mach-pxa/Makefile 2008-03-20 13:27:59.000000000 -0400
@@ -31,6 +31,7 @@
# Misc features
obj-$(CONFIG_PM) += pm.o sleep.o
obj-$(CONFIG_PM) += standby.o
diff -Nurb linux-2.6.22-570/arch/arm/mach-pxa/kgdb-serial.c linux-2.6.22-590/arch/arm/mach-pxa/kgdb-serial.c
--- linux-2.6.22-570/arch/arm/mach-pxa/kgdb-serial.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/arm/mach-pxa/kgdb-serial.c 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/arch/arm/mach-pxa/kgdb-serial.c 2008-03-20 13:27:59.000000000 -0400
@@ -0,0 +1,97 @@
+/*
+ * linux/arch/arm/mach-pxa/kgdb-serial.c
+};
diff -Nurb linux-2.6.22-570/arch/arm/mach-versatile/core.c linux-2.6.22-590/arch/arm/mach-versatile/core.c
--- linux-2.6.22-570/arch/arm/mach-versatile/core.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/arm/mach-versatile/core.c 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/arch/arm/mach-versatile/core.c 2008-03-20 13:27:59.000000000 -0400
@@ -184,6 +184,14 @@
.type = MT_DEVICE
},
.virtual = IO_ADDRESS(VERSATILE_PCI_CORE_BASE),
diff -Nurb linux-2.6.22-570/arch/arm/mm/extable.c linux-2.6.22-590/arch/arm/mm/extable.c
--- linux-2.6.22-570/arch/arm/mm/extable.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/arm/mm/extable.c 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/arch/arm/mm/extable.c 2008-03-20 13:27:59.000000000 -0400
@@ -2,6 +2,7 @@
* linux/arch/arm/mm/extable.c
*/
}
diff -Nurb linux-2.6.22-570/arch/arm/plat-iop/Makefile linux-2.6.22-590/arch/arm/plat-iop/Makefile
--- linux-2.6.22-570/arch/arm/plat-iop/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/arm/plat-iop/Makefile 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/arch/arm/plat-iop/Makefile 2008-03-20 13:27:59.000000000 -0400
@@ -12,6 +12,7 @@
obj-$(CONFIG_ARCH_IOP32X) += time.o
obj-$(CONFIG_ARCH_IOP32X) += io.o
obj-$(CONFIG_ARCH_IOP13XX) += cp6.o
diff -Nurb linux-2.6.22-570/arch/arm/plat-iop/adma.c linux-2.6.22-590/arch/arm/plat-iop/adma.c
--- linux-2.6.22-570/arch/arm/plat-iop/adma.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/arm/plat-iop/adma.c 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/arch/arm/plat-iop/adma.c 2008-03-20 13:27:59.000000000 -0400
@@ -0,0 +1,209 @@
+/*
+ * platform device definitions for the iop3xx dma/xor engines
+
+arch_initcall(iop3xx_adma_cap_init);
diff -Nurb linux-2.6.22-570/arch/i386/Kconfig linux-2.6.22-590/arch/i386/Kconfig
---- linux-2.6.22-570/arch/i386/Kconfig 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/arch/i386/Kconfig 2008-03-18 15:57:50.000000000 -0400
+--- linux-2.6.22-570/arch/i386/Kconfig 2008-03-20 13:25:43.000000000 -0400
++++ linux-2.6.22-590/arch/i386/Kconfig 2008-03-20 13:27:59.000000000 -0400
@@ -1053,6 +1053,8 @@
source "arch/i386/kernel/cpu/cpufreq/Kconfig"
menu "Bus options (PCI, PCMCIA, EISA, MCA, ISA)"
diff -Nurb linux-2.6.22-570/arch/i386/kernel/Makefile linux-2.6.22-590/arch/i386/kernel/Makefile
---- linux-2.6.22-570/arch/i386/kernel/Makefile 2008-03-18 15:57:35.000000000 -0400
-+++ linux-2.6.22-590/arch/i386/kernel/Makefile 2008-03-18 15:57:50.000000000 -0400
+--- linux-2.6.22-570/arch/i386/kernel/Makefile 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/arch/i386/kernel/Makefile 2008-03-20 13:27:59.000000000 -0400
@@ -39,6 +39,7 @@
obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
obj-$(CONFIG_HPET_TIMER) += hpet.o
obj-$(CONFIG_PARAVIRT) += paravirt.o
diff -Nurb linux-2.6.22-570/arch/i386/kernel/acpi/boot.c linux-2.6.22-590/arch/i386/kernel/acpi/boot.c
--- linux-2.6.22-570/arch/i386/kernel/acpi/boot.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/i386/kernel/acpi/boot.c 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/arch/i386/kernel/acpi/boot.c 2008-03-20 13:27:59.000000000 -0400
@@ -950,14 +950,6 @@
},
{
DMI_MATCH(DMI_BOARD_VENDOR, "Hewlett-Packard"),
diff -Nurb linux-2.6.22-570/arch/i386/kernel/apm.c linux-2.6.22-590/arch/i386/kernel/apm.c
--- linux-2.6.22-570/arch/i386/kernel/apm.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/i386/kernel/apm.c 2008-03-18 15:57:50.000000000 -0400
++++ linux-2.6.22-590/arch/i386/kernel/apm.c 2008-03-20 13:27:59.000000000 -0400
@@ -222,6 +222,7 @@
#include <linux/capability.h>
#include <linux/device.h>
if (num_online_cpus() > 1 && !smp ) {
diff -Nurb linux-2.6.22-570/arch/i386/kernel/io_apic.c linux-2.6.22-590/arch/i386/kernel/io_apic.c
---- linux-2.6.22-570/arch/i386/kernel/io_apic.c 2008-03-18 15:57:35.000000000 -0400
-+++ linux-2.6.22-590/arch/i386/kernel/io_apic.c 2008-03-18 15:57:50.000000000 -0400
+--- linux-2.6.22-570/arch/i386/kernel/io_apic.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/arch/i386/kernel/io_apic.c 2008-03-20 13:27:59.000000000 -0400
@@ -667,6 +667,7 @@
set_pending_irq(i, cpumask_of_cpu(0));
}
try_to_freeze();
diff -Nurb linux-2.6.22-570/arch/i386/kernel/kgdb-jmp.S linux-2.6.22-590/arch/i386/kernel/kgdb-jmp.S
--- linux-2.6.22-570/arch/i386/kernel/kgdb-jmp.S 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/i386/kernel/kgdb-jmp.S 2008-03-18 15:57:51.000000000 -0400
++++ linux-2.6.22-590/arch/i386/kernel/kgdb-jmp.S 2008-03-20 13:27:59.000000000 -0400
@@ -0,0 +1,74 @@
+/*
+ * arch/i386/kernel/kgdb-jmp.S
+ jmp *%edx /* Jump to saved PC. */
diff -Nurb linux-2.6.22-570/arch/i386/kernel/kgdb.c linux-2.6.22-590/arch/i386/kernel/kgdb.c
--- linux-2.6.22-570/arch/i386/kernel/kgdb.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/i386/kernel/kgdb.c 2008-03-18 15:57:51.000000000 -0400
++++ linux-2.6.22-590/arch/i386/kernel/kgdb.c 2008-03-20 13:27:59.000000000 -0400
@@ -0,0 +1,388 @@
+/*
+ *
+ .correct_hw_break = kgdb_correct_hw_break,
+};
diff -Nurb linux-2.6.22-570/arch/i386/kernel/process.c linux-2.6.22-590/arch/i386/kernel/process.c
---- linux-2.6.22-570/arch/i386/kernel/process.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/arch/i386/kernel/process.c 2008-03-18 15:57:51.000000000 -0400
+--- linux-2.6.22-570/arch/i386/kernel/process.c 2008-03-20 13:25:43.000000000 -0400
++++ linux-2.6.22-590/arch/i386/kernel/process.c 2008-03-20 13:27:59.000000000 -0400
@@ -179,13 +179,13 @@
/* endless idle loop with no priority at all */
idle = pm_idle;
diff -Nurb linux-2.6.22-570/arch/i386/kernel/setup.c linux-2.6.22-590/arch/i386/kernel/setup.c
--- linux-2.6.22-570/arch/i386/kernel/setup.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/i386/kernel/setup.c 2008-03-18 15:57:51.000000000 -0400
++++ linux-2.6.22-590/arch/i386/kernel/setup.c 2008-03-20 13:27:59.000000000 -0400
@@ -124,6 +124,7 @@
#endif
* FIXME: This isn't an official loader_type right
diff -Nurb linux-2.6.22-570/arch/i386/kernel/signal.c linux-2.6.22-590/arch/i386/kernel/signal.c
--- linux-2.6.22-570/arch/i386/kernel/signal.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/i386/kernel/signal.c 2008-03-18 15:57:51.000000000 -0400
++++ linux-2.6.22-590/arch/i386/kernel/signal.c 2008-03-20 13:27:59.000000000 -0400
@@ -199,6 +199,13 @@
return eax;
return 0;
}
diff -Nurb linux-2.6.22-570/arch/i386/kernel/syscall_table.S linux-2.6.22-590/arch/i386/kernel/syscall_table.S
---- linux-2.6.22-570/arch/i386/kernel/syscall_table.S 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/arch/i386/kernel/syscall_table.S 2008-03-18 15:57:51.000000000 -0400
+--- linux-2.6.22-570/arch/i386/kernel/syscall_table.S 2008-03-20 13:25:43.000000000 -0400
++++ linux-2.6.22-590/arch/i386/kernel/syscall_table.S 2008-03-20 13:27:59.000000000 -0400
@@ -323,3 +323,6 @@
.long sys_signalfd
.long sys_timerfd
+ .long sys_frevoke /* 325 */
+ .long sys_fallocate
diff -Nurb linux-2.6.22-570/arch/i386/kernel/traps.c linux-2.6.22-590/arch/i386/kernel/traps.c
---- linux-2.6.22-570/arch/i386/kernel/traps.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/arch/i386/kernel/traps.c 2008-03-18 15:57:52.000000000 -0400
+--- linux-2.6.22-570/arch/i386/kernel/traps.c 2008-03-20 13:25:43.000000000 -0400
++++ linux-2.6.22-590/arch/i386/kernel/traps.c 2008-03-20 13:27:59.000000000 -0400
@@ -97,6 +97,11 @@
int kstack_depth_to_print = 24;
+#endif
diff -Nurb linux-2.6.22-570/arch/i386/kernel/unwind.S linux-2.6.22-590/arch/i386/kernel/unwind.S
--- linux-2.6.22-570/arch/i386/kernel/unwind.S 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/i386/kernel/unwind.S 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/i386/kernel/unwind.S 2008-03-20 13:27:59.000000000 -0400
@@ -0,0 +1,36 @@
+/* Assembler support code for dwarf2 unwinder */
+#include <linux/linkage.h>
+ENDPROC(arch_unwind_init_running)
diff -Nurb linux-2.6.22-570/arch/i386/mach-voyager/voyager_thread.c linux-2.6.22-590/arch/i386/mach-voyager/voyager_thread.c
--- linux-2.6.22-570/arch/i386/mach-voyager/voyager_thread.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/i386/mach-voyager/voyager_thread.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/i386/mach-voyager/voyager_thread.c 2008-03-20 13:27:59.000000000 -0400
@@ -52,7 +52,7 @@
NULL,
};
string, ret);
}
diff -Nurb linux-2.6.22-570/arch/i386/mm/fault.c linux-2.6.22-590/arch/i386/mm/fault.c
---- linux-2.6.22-570/arch/i386/mm/fault.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/arch/i386/mm/fault.c 2008-03-18 15:57:52.000000000 -0400
+--- linux-2.6.22-570/arch/i386/mm/fault.c 2008-03-20 13:25:43.000000000 -0400
++++ linux-2.6.22-590/arch/i386/mm/fault.c 2008-03-20 13:27:59.000000000 -0400
@@ -284,6 +284,8 @@
return 0;
}
* terminate things with extreme prejudice.
diff -Nurb linux-2.6.22-570/arch/ia64/hp/sim/simeth.c linux-2.6.22-590/arch/ia64/hp/sim/simeth.c
--- linux-2.6.22-570/arch/ia64/hp/sim/simeth.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ia64/hp/sim/simeth.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ia64/hp/sim/simeth.c 2008-03-20 13:27:59.000000000 -0400
@@ -300,6 +300,9 @@
return NOTIFY_DONE;
}
/*
diff -Nurb linux-2.6.22-570/arch/ia64/kernel/Makefile linux-2.6.22-590/arch/ia64/kernel/Makefile
--- linux-2.6.22-570/arch/ia64/kernel/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ia64/kernel/Makefile 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ia64/kernel/Makefile 2008-03-20 13:27:59.000000000 -0400
@@ -35,6 +35,7 @@
obj-$(CONFIG_PCI_MSI) += msi_ia64.o
mca_recovery-y += mca_drv.o mca_drv_asm.o
ifneq ($(CONFIG_IA64_ESI),)
diff -Nurb linux-2.6.22-570/arch/ia64/kernel/kgdb-jmp.S linux-2.6.22-590/arch/ia64/kernel/kgdb-jmp.S
--- linux-2.6.22-570/arch/ia64/kernel/kgdb-jmp.S 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/ia64/kernel/kgdb-jmp.S 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ia64/kernel/kgdb-jmp.S 2008-03-20 13:27:59.000000000 -0400
@@ -0,0 +1,238 @@
+/* setjmp() and longjmp() assembler support for kdb on ia64.
+
+END(kgdb_fault_longjmp)
diff -Nurb linux-2.6.22-570/arch/ia64/kernel/kgdb.c linux-2.6.22-590/arch/ia64/kernel/kgdb.c
--- linux-2.6.22-570/arch/ia64/kernel/kgdb.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/ia64/kernel/kgdb.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ia64/kernel/kgdb.c 2008-03-20 13:27:59.000000000 -0400
@@ -0,0 +1,944 @@
+/*
+ *
+};
diff -Nurb linux-2.6.22-570/arch/ia64/kernel/smp.c linux-2.6.22-590/arch/ia64/kernel/smp.c
--- linux-2.6.22-570/arch/ia64/kernel/smp.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ia64/kernel/smp.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ia64/kernel/smp.c 2008-03-20 13:27:59.000000000 -0400
@@ -48,6 +48,7 @@
#include <asm/tlbflush.h>
#include <asm/unistd.h>
* this function sends a 'generic call function' IPI to all other CPUs
* in the system.
diff -Nurb linux-2.6.22-570/arch/ia64/kernel/traps.c linux-2.6.22-590/arch/ia64/kernel/traps.c
---- linux-2.6.22-570/arch/ia64/kernel/traps.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/arch/ia64/kernel/traps.c 2008-03-18 15:57:52.000000000 -0400
+--- linux-2.6.22-570/arch/ia64/kernel/traps.c 2008-03-20 13:25:43.000000000 -0400
++++ linux-2.6.22-590/arch/ia64/kernel/traps.c 2008-03-20 13:27:59.000000000 -0400
@@ -155,8 +155,12 @@
break;
sig = SIGILL; code = __ILL_BREAK;
diff -Nurb linux-2.6.22-570/arch/ia64/mm/extable.c linux-2.6.22-590/arch/ia64/mm/extable.c
--- linux-2.6.22-570/arch/ia64/mm/extable.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ia64/mm/extable.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ia64/mm/extable.c 2008-03-20 13:27:59.000000000 -0400
@@ -6,6 +6,7 @@
*/
}
diff -Nurb linux-2.6.22-570/arch/ia64/mm/fault.c linux-2.6.22-590/arch/ia64/mm/fault.c
---- linux-2.6.22-570/arch/ia64/mm/fault.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/arch/ia64/mm/fault.c 2008-03-18 15:57:52.000000000 -0400
+--- linux-2.6.22-570/arch/ia64/mm/fault.c 2008-03-20 13:25:43.000000000 -0400
++++ linux-2.6.22-590/arch/ia64/mm/fault.c 2008-03-20 13:27:59.000000000 -0400
@@ -255,6 +255,10 @@
*/
bust_spinlocks(1);
printk(KERN_ALERT "Unable to handle kernel NULL pointer dereference (address %016lx)\n", address);
else
diff -Nurb linux-2.6.22-570/arch/mips/Kconfig linux-2.6.22-590/arch/mips/Kconfig
---- linux-2.6.22-570/arch/mips/Kconfig 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/Kconfig 2008-03-18 15:57:52.000000000 -0400
+--- linux-2.6.22-570/arch/mips/Kconfig 2008-03-20 13:25:43.000000000 -0400
++++ linux-2.6.22-590/arch/mips/Kconfig 2008-03-20 13:27:59.000000000 -0400
@@ -30,7 +30,6 @@
select SYS_SUPPORTS_32BIT_KERNEL
select SYS_SUPPORTS_64BIT_KERNEL
bool
diff -Nurb linux-2.6.22-570/arch/mips/Kconfig.debug linux-2.6.22-590/arch/mips/Kconfig.debug
--- linux-2.6.22-570/arch/mips/Kconfig.debug 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/Kconfig.debug 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/Kconfig.debug 2008-03-20 13:27:59.000000000 -0400
@@ -46,28 +46,6 @@
arch/mips/kernel/smtc.c. This debugging option result in significant
overhead so should be disabled in production kernels.
depends on SIBYTE_SB1xxx_SOC
diff -Nurb linux-2.6.22-570/arch/mips/au1000/common/Makefile linux-2.6.22-590/arch/mips/au1000/common/Makefile
--- linux-2.6.22-570/arch/mips/au1000/common/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/au1000/common/Makefile 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/au1000/common/Makefile 2008-03-20 13:27:59.000000000 -0400
@@ -10,5 +10,4 @@
au1xxx_irqmap.o clocks.o platform.o power.o setup.o \
sleeper.o cputable.o dma.o dbdma.o gpio.o
-#endif
diff -Nurb linux-2.6.22-570/arch/mips/basler/excite/Makefile linux-2.6.22-590/arch/mips/basler/excite/Makefile
--- linux-2.6.22-570/arch/mips/basler/excite/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/basler/excite/Makefile 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/basler/excite/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -5,5 +5,4 @@
obj-$(CONFIG_BASLER_EXCITE) += excite_irq.o excite_prom.o excite_setup.o \
excite_device.o excite_procfs.o
-}
diff -Nurb linux-2.6.22-570/arch/mips/basler/excite/excite_irq.c linux-2.6.22-590/arch/mips/basler/excite/excite_irq.c
--- linux-2.6.22-570/arch/mips/basler/excite/excite_irq.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/basler/excite/excite_irq.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/basler/excite/excite_irq.c 2008-03-20 13:28:00.000000000 -0400
@@ -50,10 +50,6 @@
mips_cpu_irq_init();
rm7k_cpu_irq_init();
}
diff -Nurb linux-2.6.22-570/arch/mips/basler/excite/excite_setup.c linux-2.6.22-590/arch/mips/basler/excite/excite_setup.c
--- linux-2.6.22-570/arch/mips/basler/excite/excite_setup.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/basler/excite/excite_setup.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/basler/excite/excite_setup.c 2008-03-20 13:28:00.000000000 -0400
@@ -95,13 +95,13 @@
/* Take the DUART out of reset */
titan_writel(0x00ff1cff, CPRR);
* Set up serial port #0. Do not use autodetection; the result is
diff -Nurb linux-2.6.22-570/arch/mips/ddb5xxx/ddb5477/Makefile linux-2.6.22-590/arch/mips/ddb5xxx/ddb5477/Makefile
--- linux-2.6.22-570/arch/mips/ddb5xxx/ddb5477/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/ddb5xxx/ddb5477/Makefile 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/ddb5xxx/ddb5477/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -5,4 +5,3 @@
obj-y += irq.o irq_5477.o setup.o lcd44780.o
-}
diff -Nurb linux-2.6.22-570/arch/mips/gt64120/momenco_ocelot/Makefile linux-2.6.22-590/arch/mips/gt64120/momenco_ocelot/Makefile
--- linux-2.6.22-570/arch/mips/gt64120/momenco_ocelot/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/gt64120/momenco_ocelot/Makefile 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/gt64120/momenco_ocelot/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -3,5 +3,3 @@
#
-}
diff -Nurb linux-2.6.22-570/arch/mips/jmr3927/rbhma3100/Makefile linux-2.6.22-590/arch/mips/jmr3927/rbhma3100/Makefile
--- linux-2.6.22-570/arch/mips/jmr3927/rbhma3100/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/jmr3927/rbhma3100/Makefile 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/jmr3927/rbhma3100/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -3,4 +3,3 @@
#
-}
diff -Nurb linux-2.6.22-570/arch/mips/kernel/Makefile linux-2.6.22-590/arch/mips/kernel/Makefile
--- linux-2.6.22-570/arch/mips/kernel/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/kernel/Makefile 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/kernel/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -57,7 +57,8 @@
obj-$(CONFIG_MIPS32_N32) += binfmt_elfn32.o scall64-n32.o signal_n32.o
obj-$(CONFIG_MIPS32_O32) += binfmt_elfo32.o scall64-o32.o
obj-$(CONFIG_64BIT) += cpu-bugs64.o
diff -Nurb linux-2.6.22-570/arch/mips/kernel/cpu-probe.c linux-2.6.22-590/arch/mips/kernel/cpu-probe.c
--- linux-2.6.22-570/arch/mips/kernel/cpu-probe.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/kernel/cpu-probe.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/kernel/cpu-probe.c 2008-03-20 13:28:00.000000000 -0400
@@ -177,6 +177,17 @@
cpu_wait = r4k_wait;
-#endif
diff -Nurb linux-2.6.22-570/arch/mips/kernel/irq.c linux-2.6.22-590/arch/mips/kernel/irq.c
--- linux-2.6.22-570/arch/mips/kernel/irq.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/kernel/irq.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/kernel/irq.c 2008-03-20 13:28:00.000000000 -0400
@@ -25,6 +25,10 @@
#include <asm/atomic.h>
#include <asm/system.h>
}
diff -Nurb linux-2.6.22-570/arch/mips/kernel/kgdb-jmp.c linux-2.6.22-590/arch/mips/kernel/kgdb-jmp.c
--- linux-2.6.22-570/arch/mips/kernel/kgdb-jmp.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/mips/kernel/kgdb-jmp.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/kernel/kgdb-jmp.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,110 @@
+/*
+ * arch/mips/kernel/kgdb-jmp.c
+#endif
diff -Nurb linux-2.6.22-570/arch/mips/kernel/kgdb-setjmp.S linux-2.6.22-590/arch/mips/kernel/kgdb-setjmp.S
--- linux-2.6.22-570/arch/mips/kernel/kgdb-setjmp.S 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/mips/kernel/kgdb-setjmp.S 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/kernel/kgdb-setjmp.S 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,28 @@
+/*
+ * arch/mips/kernel/kgdb-jmp.c
+ .end kgdb_fault_setjmp
diff -Nurb linux-2.6.22-570/arch/mips/kernel/kgdb.c linux-2.6.22-590/arch/mips/kernel/kgdb.c
--- linux-2.6.22-570/arch/mips/kernel/kgdb.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/mips/kernel/kgdb.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/kernel/kgdb.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,299 @@
+/*
+ * arch/mips/kernel/kgdb.c
+}
diff -Nurb linux-2.6.22-570/arch/mips/kernel/kgdb_handler.S linux-2.6.22-590/arch/mips/kernel/kgdb_handler.S
--- linux-2.6.22-570/arch/mips/kernel/kgdb_handler.S 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/mips/kernel/kgdb_handler.S 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/kernel/kgdb_handler.S 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,339 @@
+/*
+ * arch/mips/kernel/kgdb_handler.S
+ jr ra
+ .end kgdbfault
diff -Nurb linux-2.6.22-570/arch/mips/kernel/traps.c linux-2.6.22-590/arch/mips/kernel/traps.c
---- linux-2.6.22-570/arch/mips/kernel/traps.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/kernel/traps.c 2008-03-18 15:57:52.000000000 -0400
+--- linux-2.6.22-570/arch/mips/kernel/traps.c 2008-03-20 13:25:43.000000000 -0400
++++ linux-2.6.22-590/arch/mips/kernel/traps.c 2008-03-20 13:28:00.000000000 -0400
@@ -10,6 +10,8 @@
* Kevin D. Kissell, kevink@mips.com and Carsten Langgaard, carstenl@mips.com
* Copyright (C) 2000, 01 MIPS Technologies, Inc.
else
diff -Nurb linux-2.6.22-570/arch/mips/mips-boards/atlas/Makefile linux-2.6.22-590/arch/mips/mips-boards/atlas/Makefile
--- linux-2.6.22-570/arch/mips/mips-boards/atlas/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/mips-boards/atlas/Makefile 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/mips-boards/atlas/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -17,4 +17,3 @@
#
-}
diff -Nurb linux-2.6.22-570/arch/mips/mips-boards/atlas/atlas_setup.c linux-2.6.22-590/arch/mips/mips-boards/atlas/atlas_setup.c
--- linux-2.6.22-570/arch/mips/mips-boards/atlas/atlas_setup.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/mips-boards/atlas/atlas_setup.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/mips-boards/atlas/atlas_setup.c 2008-03-20 13:28:00.000000000 -0400
@@ -37,10 +37,6 @@
extern void mips_time_init(void);
extern unsigned long mips_rtc_get_time(void);
-}
diff -Nurb linux-2.6.22-570/arch/mips/mips-boards/generic/init.c linux-2.6.22-590/arch/mips/mips-boards/generic/init.c
--- linux-2.6.22-570/arch/mips/mips-boards/generic/init.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/mips-boards/generic/init.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/mips-boards/generic/init.c 2008-03-20 13:28:00.000000000 -0400
@@ -37,15 +37,6 @@
#include <asm/mips-boards/malta.h>
void *base;
diff -Nurb linux-2.6.22-570/arch/mips/mips-boards/malta/malta_setup.c linux-2.6.22-590/arch/mips/mips-boards/malta/malta_setup.c
--- linux-2.6.22-570/arch/mips/mips-boards/malta/malta_setup.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/mips-boards/malta/malta_setup.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/mips-boards/malta/malta_setup.c 2008-03-20 13:28:00.000000000 -0400
@@ -39,10 +39,6 @@
extern void mips_time_init(void);
extern unsigned long mips_rtc_get_time(void);
diff -Nurb linux-2.6.22-570/arch/mips/mm/extable.c linux-2.6.22-590/arch/mips/mm/extable.c
--- linux-2.6.22-570/arch/mips/mm/extable.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/mm/extable.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/mm/extable.c 2008-03-20 13:28:00.000000000 -0400
@@ -3,6 +3,7 @@
*/
#include <linux/module.h>
}
diff -Nurb linux-2.6.22-570/arch/mips/momentum/ocelot_c/Makefile linux-2.6.22-590/arch/mips/momentum/ocelot_c/Makefile
--- linux-2.6.22-570/arch/mips/momentum/ocelot_c/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/momentum/ocelot_c/Makefile 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/momentum/ocelot_c/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -4,5 +4,3 @@
obj-y += cpci-irq.o irq.o platform.o prom.o reset.o \
-}
diff -Nurb linux-2.6.22-570/arch/mips/pci/fixup-atlas.c linux-2.6.22-590/arch/mips/pci/fixup-atlas.c
--- linux-2.6.22-570/arch/mips/pci/fixup-atlas.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/pci/fixup-atlas.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/pci/fixup-atlas.c 2008-03-20 13:28:00.000000000 -0400
@@ -68,24 +68,3 @@
{
return 0;
-#endif
diff -Nurb linux-2.6.22-570/arch/mips/philips/pnx8550/common/Makefile linux-2.6.22-590/arch/mips/philips/pnx8550/common/Makefile
--- linux-2.6.22-570/arch/mips/philips/pnx8550/common/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/philips/pnx8550/common/Makefile 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/philips/pnx8550/common/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -24,4 +24,3 @@
obj-y := setup.o prom.o int.o reset.o time.o proc.o platform.o
-}
diff -Nurb linux-2.6.22-570/arch/mips/philips/pnx8550/common/setup.c linux-2.6.22-590/arch/mips/philips/pnx8550/common/setup.c
--- linux-2.6.22-570/arch/mips/philips/pnx8550/common/setup.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/philips/pnx8550/common/setup.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/philips/pnx8550/common/setup.c 2008-03-20 13:28:00.000000000 -0400
@@ -145,16 +145,5 @@
ip3106_baud(UART_BASE, pnx8550_console_port) = 5;
}
}
diff -Nurb linux-2.6.22-570/arch/mips/pmc-sierra/yosemite/Makefile linux-2.6.22-590/arch/mips/pmc-sierra/yosemite/Makefile
--- linux-2.6.22-570/arch/mips/pmc-sierra/yosemite/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/pmc-sierra/yosemite/Makefile 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/pmc-sierra/yosemite/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -4,5 +4,4 @@
obj-y += irq.o i2c-yosemite.o prom.o py-console.o setup.o
-}
diff -Nurb linux-2.6.22-570/arch/mips/pmc-sierra/yosemite/irq.c linux-2.6.22-590/arch/mips/pmc-sierra/yosemite/irq.c
--- linux-2.6.22-570/arch/mips/pmc-sierra/yosemite/irq.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/pmc-sierra/yosemite/irq.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/pmc-sierra/yosemite/irq.c 2008-03-20 13:28:00.000000000 -0400
@@ -137,10 +137,6 @@
}
}
#endif
diff -Nurb linux-2.6.22-570/arch/mips/sgi-ip22/ip22-setup.c linux-2.6.22-590/arch/mips/sgi-ip22/ip22-setup.c
--- linux-2.6.22-570/arch/mips/sgi-ip22/ip22-setup.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/sgi-ip22/ip22-setup.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/sgi-ip22/ip22-setup.c 2008-03-20 13:28:00.000000000 -0400
@@ -101,30 +101,6 @@
add_preferred_console("arc", 0, NULL);
}
ULONG *gfxinfo;
diff -Nurb linux-2.6.22-570/arch/mips/sgi-ip27/Makefile linux-2.6.22-590/arch/mips/sgi-ip27/Makefile
--- linux-2.6.22-570/arch/mips/sgi-ip27/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/sgi-ip27/Makefile 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/sgi-ip27/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -7,5 +7,4 @@
ip27-xtalk.o
-}
diff -Nurb linux-2.6.22-570/arch/mips/sibyte/bcm1480/irq.c linux-2.6.22-590/arch/mips/sibyte/bcm1480/irq.c
--- linux-2.6.22-570/arch/mips/sibyte/bcm1480/irq.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/sibyte/bcm1480/irq.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/sibyte/bcm1480/irq.c 2008-03-20 13:28:00.000000000 -0400
@@ -57,30 +57,6 @@
extern unsigned long ht_eoi_space;
#endif
unsigned long base;
diff -Nurb linux-2.6.22-570/arch/mips/sibyte/cfe/setup.c linux-2.6.22-590/arch/mips/sibyte/cfe/setup.c
--- linux-2.6.22-570/arch/mips/sibyte/cfe/setup.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/sibyte/cfe/setup.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/sibyte/cfe/setup.c 2008-03-20 13:28:00.000000000 -0400
@@ -58,10 +58,6 @@
extern unsigned long initrd_start, initrd_end;
#endif
char *ptr;
diff -Nurb linux-2.6.22-570/arch/mips/sibyte/sb1250/Makefile linux-2.6.22-590/arch/mips/sibyte/sb1250/Makefile
--- linux-2.6.22-570/arch/mips/sibyte/sb1250/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/sibyte/sb1250/Makefile 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/sibyte/sb1250/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -3,3 +3,4 @@
obj-$(CONFIG_SMP) += smp.o
obj-$(CONFIG_SIBYTE_STANDALONE) += prom.o
+obj-$(CONFIG_KGDB_SIBYTE) += kgdb_sibyte.o
diff -Nurb linux-2.6.22-570/arch/mips/sibyte/sb1250/irq.c linux-2.6.22-590/arch/mips/sibyte/sb1250/irq.c
--- linux-2.6.22-570/arch/mips/sibyte/sb1250/irq.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/sibyte/sb1250/irq.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/sibyte/sb1250/irq.c 2008-03-20 13:28:00.000000000 -0400
@@ -29,6 +29,7 @@
#include <asm/signal.h>
#include <asm/system.h>
#endif
diff -Nurb linux-2.6.22-570/arch/mips/sibyte/sb1250/kgdb_sibyte.c linux-2.6.22-590/arch/mips/sibyte/sb1250/kgdb_sibyte.c
--- linux-2.6.22-570/arch/mips/sibyte/sb1250/kgdb_sibyte.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/mips/sibyte/sb1250/kgdb_sibyte.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/sibyte/sb1250/kgdb_sibyte.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,144 @@
+/*
+ * arch/mips/sibyte/sb1250/kgdb_sibyte.c
+};
diff -Nurb linux-2.6.22-570/arch/mips/sibyte/swarm/Makefile linux-2.6.22-590/arch/mips/sibyte/swarm/Makefile
--- linux-2.6.22-570/arch/mips/sibyte/swarm/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/sibyte/swarm/Makefile 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/sibyte/swarm/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -1,3 +1 @@
lib-y = setup.o rtc_xicor1241.o rtc_m41t81.o
-
-
diff -Nurb linux-2.6.22-570/arch/mips/tx4927/common/Makefile linux-2.6.22-590/arch/mips/tx4927/common/Makefile
--- linux-2.6.22-570/arch/mips/tx4927/common/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/tx4927/common/Makefile 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/tx4927/common/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -9,4 +9,3 @@
obj-y += tx4927_prom.o tx4927_setup.o tx4927_irq.o
-}
diff -Nurb linux-2.6.22-570/arch/mips/tx4927/toshiba_rbtx4927/toshiba_rbtx4927_setup.c linux-2.6.22-590/arch/mips/tx4927/toshiba_rbtx4927/toshiba_rbtx4927_setup.c
--- linux-2.6.22-570/arch/mips/tx4927/toshiba_rbtx4927/toshiba_rbtx4927_setup.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/tx4927/toshiba_rbtx4927/toshiba_rbtx4927_setup.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/tx4927/toshiba_rbtx4927/toshiba_rbtx4927_setup.c 2008-03-20 13:28:00.000000000 -0400
@@ -76,7 +76,7 @@
#include <linux/hdreg.h>
#include <linux/ide.h>
argptr = prom_getcmdline();
diff -Nurb linux-2.6.22-570/arch/mips/tx4938/common/Makefile linux-2.6.22-590/arch/mips/tx4938/common/Makefile
--- linux-2.6.22-570/arch/mips/tx4938/common/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/tx4938/common/Makefile 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/tx4938/common/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -7,5 +7,4 @@
#
-
diff -Nurb linux-2.6.22-570/arch/mips/tx4938/toshiba_rbtx4938/setup.c linux-2.6.22-590/arch/mips/tx4938/toshiba_rbtx4938/setup.c
--- linux-2.6.22-570/arch/mips/tx4938/toshiba_rbtx4938/setup.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/mips/tx4938/toshiba_rbtx4938/setup.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/mips/tx4938/toshiba_rbtx4938/setup.c 2008-03-20 13:28:00.000000000 -0400
@@ -30,7 +30,7 @@
#include <asm/io.h>
#include <asm/bootinfo.h>
}
#ifdef CONFIG_SERIAL_TXX9_CONSOLE
diff -Nurb linux-2.6.22-570/arch/powerpc/Kconfig linux-2.6.22-590/arch/powerpc/Kconfig
---- linux-2.6.22-570/arch/powerpc/Kconfig 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/Kconfig 2008-03-18 15:57:52.000000000 -0400
+--- linux-2.6.22-570/arch/powerpc/Kconfig 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/Kconfig 2008-03-20 13:28:00.000000000 -0400
@@ -4,12 +4,7 @@
mainmenu "Linux/PowerPC Kernel Configuration"
help
diff -Nurb linux-2.6.22-570/arch/powerpc/Kconfig.debug linux-2.6.22-590/arch/powerpc/Kconfig.debug
--- linux-2.6.22-570/arch/powerpc/Kconfig.debug 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/Kconfig.debug 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/Kconfig.debug 2008-03-20 13:28:00.000000000 -0400
@@ -41,52 +41,9 @@
This option will add a small amount of overhead to all hypervisor
calls.
depends on PPC64
diff -Nurb linux-2.6.22-570/arch/powerpc/boot/44x.c linux-2.6.22-590/arch/powerpc/boot/44x.c
--- linux-2.6.22-570/arch/powerpc/boot/44x.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/boot/44x.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/boot/44x.c 2008-03-20 13:28:00.000000000 -0400
@@ -38,3 +38,48 @@
dt_fixup_memory(0, memsize);
+}
diff -Nurb linux-2.6.22-570/arch/powerpc/boot/44x.h linux-2.6.22-590/arch/powerpc/boot/44x.h
--- linux-2.6.22-570/arch/powerpc/boot/44x.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/boot/44x.h 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/boot/44x.h 2008-03-20 13:28:00.000000000 -0400
@@ -11,6 +11,9 @@
#define _PPC_BOOT_44X_H_
#endif /* _PPC_BOOT_44X_H_ */
diff -Nurb linux-2.6.22-570/arch/powerpc/boot/Makefile linux-2.6.22-590/arch/powerpc/boot/Makefile
--- linux-2.6.22-570/arch/powerpc/boot/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/boot/Makefile 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/boot/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -43,8 +43,8 @@
src-wlib := string.S crt0.S stdio.c main.c flatdevtree.c flatdevtree_misc.c \
src-boot := $(src-wlib) $(src-plat) empty.c
diff -Nurb linux-2.6.22-570/arch/powerpc/boot/cuboot-83xx.c linux-2.6.22-590/arch/powerpc/boot/cuboot-83xx.c
--- linux-2.6.22-570/arch/powerpc/boot/cuboot-83xx.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/boot/cuboot-83xx.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/boot/cuboot-83xx.c 2008-03-20 13:28:00.000000000 -0400
@@ -12,12 +12,12 @@
#include "ops.h"
platform_ops.fixups = platform_fixups;
diff -Nurb linux-2.6.22-570/arch/powerpc/boot/cuboot-85xx.c linux-2.6.22-590/arch/powerpc/boot/cuboot-85xx.c
--- linux-2.6.22-570/arch/powerpc/boot/cuboot-85xx.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/boot/cuboot-85xx.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/boot/cuboot-85xx.c 2008-03-20 13:28:00.000000000 -0400
@@ -12,12 +12,12 @@
#include "ops.h"
platform_ops.fixups = platform_fixups;
diff -Nurb linux-2.6.22-570/arch/powerpc/boot/cuboot-ebony.c linux-2.6.22-590/arch/powerpc/boot/cuboot-ebony.c
--- linux-2.6.22-570/arch/powerpc/boot/cuboot-ebony.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/boot/cuboot-ebony.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/boot/cuboot-ebony.c 2008-03-20 13:28:00.000000000 -0400
@@ -15,28 +15,16 @@
#include "ops.h"
#include "stdio.h"
}
diff -Nurb linux-2.6.22-570/arch/powerpc/boot/cuboot.c linux-2.6.22-590/arch/powerpc/boot/cuboot.c
--- linux-2.6.22-570/arch/powerpc/boot/cuboot.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/powerpc/boot/cuboot.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/boot/cuboot.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,35 @@
+/*
+ * Compatibility for old (not device tree aware) U-Boot versions
+}
diff -Nurb linux-2.6.22-570/arch/powerpc/boot/cuboot.h linux-2.6.22-590/arch/powerpc/boot/cuboot.h
--- linux-2.6.22-570/arch/powerpc/boot/cuboot.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/powerpc/boot/cuboot.h 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/boot/cuboot.h 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,14 @@
+#ifndef _PPC_BOOT_CUBOOT_H_
+#define _PPC_BOOT_CUBOOT_H_
+#endif /* _PPC_BOOT_CUBOOT_H_ */
diff -Nurb linux-2.6.22-570/arch/powerpc/boot/dcr.h linux-2.6.22-590/arch/powerpc/boot/dcr.h
--- linux-2.6.22-570/arch/powerpc/boot/dcr.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/boot/dcr.h 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/boot/dcr.h 2008-03-20 13:28:00.000000000 -0400
@@ -26,6 +26,43 @@
#define SDRAM_CONFIG_BANK_SIZE(reg) \
(0x00400000 << ((reg & SDRAM_CONFIG_SIZE_MASK) >> 17))
#define DCRN_CPC0_ER 0x0b1
diff -Nurb linux-2.6.22-570/arch/powerpc/boot/dts/ebony.dts linux-2.6.22-590/arch/powerpc/boot/dts/ebony.dts
--- linux-2.6.22-570/arch/powerpc/boot/dts/ebony.dts 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/boot/dts/ebony.dts 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/boot/dts/ebony.dts 2008-03-20 13:28:00.000000000 -0400
@@ -135,11 +135,9 @@
#address-cells = <2>;
#size-cells = <1>;
diff -Nurb linux-2.6.22-570/arch/powerpc/boot/dts/holly.dts linux-2.6.22-590/arch/powerpc/boot/dts/holly.dts
--- linux-2.6.22-570/arch/powerpc/boot/dts/holly.dts 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/boot/dts/holly.dts 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/boot/dts/holly.dts 2008-03-20 13:28:00.000000000 -0400
@@ -46,7 +46,7 @@
tsi109@c0000000 {
};
diff -Nurb linux-2.6.22-570/arch/powerpc/boot/dts/mpc7448hpc2.dts linux-2.6.22-590/arch/powerpc/boot/dts/mpc7448hpc2.dts
--- linux-2.6.22-570/arch/powerpc/boot/dts/mpc7448hpc2.dts 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/boot/dts/mpc7448hpc2.dts 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/boot/dts/mpc7448hpc2.dts 2008-03-20 13:28:00.000000000 -0400
@@ -45,7 +45,7 @@
#address-cells = <1>;
#size-cells = <1>;
#size-cells = <2>;
diff -Nurb linux-2.6.22-570/arch/powerpc/boot/ebony.c linux-2.6.22-590/arch/powerpc/boot/ebony.c
--- linux-2.6.22-570/arch/powerpc/boot/ebony.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/boot/ebony.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/boot/ebony.c 2008-03-20 13:28:00.000000000 -0400
@@ -100,28 +100,13 @@
ibm440gp_fixup_clocks(sysclk, 6 * 1843200);
ibm44x_fixup_memsize();
ft_init(_dtb_start, _dtb_end - _dtb_start, 32);
diff -Nurb linux-2.6.22-570/arch/powerpc/boot/of.c linux-2.6.22-590/arch/powerpc/boot/of.c
--- linux-2.6.22-570/arch/powerpc/boot/of.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/boot/of.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/boot/of.c 2008-03-20 13:28:00.000000000 -0400
@@ -15,8 +15,7 @@
#include "page.h"
#include "ops.h"
loader_info.initrd_addr = a1;
diff -Nurb linux-2.6.22-570/arch/powerpc/boot/of.h linux-2.6.22-590/arch/powerpc/boot/of.h
--- linux-2.6.22-570/arch/powerpc/boot/of.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/powerpc/boot/of.h 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/boot/of.h 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,15 @@
+#ifndef _PPC_BOOT_OF_H_
+#define _PPC_BOOT_OF_H_
+#endif /* _PPC_BOOT_OF_H_ */
diff -Nurb linux-2.6.22-570/arch/powerpc/boot/ofconsole.c linux-2.6.22-590/arch/powerpc/boot/ofconsole.c
--- linux-2.6.22-570/arch/powerpc/boot/ofconsole.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/powerpc/boot/ofconsole.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/boot/ofconsole.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,45 @@
+/*
+ * OF console routines
+}
diff -Nurb linux-2.6.22-570/arch/powerpc/boot/oflib.c linux-2.6.22-590/arch/powerpc/boot/oflib.c
--- linux-2.6.22-570/arch/powerpc/boot/oflib.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/powerpc/boot/oflib.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/boot/oflib.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,172 @@
+/*
+ * Copyright (C) Paul Mackerras 1997.
+}
diff -Nurb linux-2.6.22-570/arch/powerpc/configs/holly_defconfig linux-2.6.22-590/arch/powerpc/configs/holly_defconfig
--- linux-2.6.22-570/arch/powerpc/configs/holly_defconfig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/configs/holly_defconfig 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/configs/holly_defconfig 2008-03-20 13:28:00.000000000 -0400
@@ -190,7 +190,8 @@
# CONFIG_RESOURCES_64BIT is not set
CONFIG_ZONE_DMA_FLAG=1
# CONFIG_WANT_DEVICE_TREE is not set
diff -Nurb linux-2.6.22-570/arch/powerpc/kernel/Makefile linux-2.6.22-590/arch/powerpc/kernel/Makefile
--- linux-2.6.22-570/arch/powerpc/kernel/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/kernel/Makefile 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/kernel/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -12,7 +12,8 @@
obj-y := semaphore.o cputable.o ptrace.o syscalls.o \
obj-$(CONFIG_PCI_MSI) += msi.o
diff -Nurb linux-2.6.22-570/arch/powerpc/kernel/head_32.S linux-2.6.22-590/arch/powerpc/kernel/head_32.S
--- linux-2.6.22-570/arch/powerpc/kernel/head_32.S 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/kernel/head_32.S 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/kernel/head_32.S 2008-03-20 13:28:00.000000000 -0400
@@ -9,7 +9,6 @@
* rewritten by Paul Mackerras.
* Copyright (C) 1996 Paul Mackerras.
#ifdef CONFIG_8260
/* Jump into the system reset for the rom.
diff -Nurb linux-2.6.22-570/arch/powerpc/kernel/irq.c linux-2.6.22-590/arch/powerpc/kernel/irq.c
---- linux-2.6.22-570/arch/powerpc/kernel/irq.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/kernel/irq.c 2008-03-18 15:57:52.000000000 -0400
+--- linux-2.6.22-570/arch/powerpc/kernel/irq.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/kernel/irq.c 2008-03-20 13:28:00.000000000 -0400
@@ -7,7 +7,6 @@
* Copyright (C) 1996-2001 Cort Dougan
* Adapted for Power Macintosh by Paul Mackerras
* modify it under the terms of the GNU General Public License
diff -Nurb linux-2.6.22-570/arch/powerpc/kernel/isa-bridge.c linux-2.6.22-590/arch/powerpc/kernel/isa-bridge.c
--- linux-2.6.22-570/arch/powerpc/kernel/isa-bridge.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/powerpc/kernel/isa-bridge.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/kernel/isa-bridge.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,271 @@
+/*
+ * Routines for tracking a legacy ISA bridge
+arch_initcall(isa_bridge_init);
diff -Nurb linux-2.6.22-570/arch/powerpc/kernel/kgdb.c linux-2.6.22-590/arch/powerpc/kernel/kgdb.c
--- linux-2.6.22-570/arch/powerpc/kernel/kgdb.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/powerpc/kernel/kgdb.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/kernel/kgdb.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,499 @@
+/*
+ * arch/powerpc/kernel/kgdb.c
+arch_initcall(kgdb_arch_init);
diff -Nurb linux-2.6.22-570/arch/powerpc/kernel/kgdb_setjmp32.S linux-2.6.22-590/arch/powerpc/kernel/kgdb_setjmp32.S
--- linux-2.6.22-570/arch/powerpc/kernel/kgdb_setjmp32.S 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/powerpc/kernel/kgdb_setjmp32.S 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/kernel/kgdb_setjmp32.S 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,41 @@
+/*
+ * Copyright (C) 1996 Paul Mackerras
+ blr
diff -Nurb linux-2.6.22-570/arch/powerpc/kernel/kgdb_setjmp64.S linux-2.6.22-590/arch/powerpc/kernel/kgdb_setjmp64.S
--- linux-2.6.22-570/arch/powerpc/kernel/kgdb_setjmp64.S 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/powerpc/kernel/kgdb_setjmp64.S 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/kernel/kgdb_setjmp64.S 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,77 @@
+/*
+ * Copyright (C) 1996 Paul Mackerras
+ blr
diff -Nurb linux-2.6.22-570/arch/powerpc/kernel/legacy_serial.c linux-2.6.22-590/arch/powerpc/kernel/legacy_serial.c
--- linux-2.6.22-570/arch/powerpc/kernel/legacy_serial.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/kernel/legacy_serial.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/kernel/legacy_serial.c 2008-03-20 13:28:00.000000000 -0400
@@ -11,6 +11,9 @@
#include <asm/udbg.h>
#include <asm/pci-bridge.h>
DBG("Registering platform serial ports\n");
diff -Nurb linux-2.6.22-570/arch/powerpc/kernel/misc_32.S linux-2.6.22-590/arch/powerpc/kernel/misc_32.S
---- linux-2.6.22-570/arch/powerpc/kernel/misc_32.S 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/kernel/misc_32.S 2008-03-18 15:57:52.000000000 -0400
+--- linux-2.6.22-570/arch/powerpc/kernel/misc_32.S 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/kernel/misc_32.S 2008-03-20 13:28:00.000000000 -0400
@@ -392,7 +392,7 @@
mtspr SPRN_L1CSR0,r3
isync
mtmsr r0
diff -Nurb linux-2.6.22-570/arch/powerpc/kernel/of_platform.c linux-2.6.22-590/arch/powerpc/kernel/of_platform.c
--- linux-2.6.22-570/arch/powerpc/kernel/of_platform.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/kernel/of_platform.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/kernel/of_platform.c 2008-03-20 13:28:00.000000000 -0400
@@ -427,14 +427,6 @@
/* Process "ranges" property */
pci_process_bridge_OF_ranges(phb, dev->node, 0);
diff -Nurb linux-2.6.22-570/arch/powerpc/kernel/pci_64.c linux-2.6.22-590/arch/powerpc/kernel/pci_64.c
--- linux-2.6.22-570/arch/powerpc/kernel/pci_64.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/kernel/pci_64.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/kernel/pci_64.c 2008-03-20 13:28:00.000000000 -0400
@@ -11,7 +11,7 @@
* 2 of the License, or (at your option) any later version.
*/
}
}
diff -Nurb linux-2.6.22-570/arch/powerpc/kernel/process.c linux-2.6.22-590/arch/powerpc/kernel/process.c
---- linux-2.6.22-570/arch/powerpc/kernel/process.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/kernel/process.c 2008-03-18 15:57:52.000000000 -0400
+--- linux-2.6.22-570/arch/powerpc/kernel/process.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/kernel/process.c 2008-03-20 13:28:00.000000000 -0400
@@ -219,22 +219,26 @@
}
#endif /* CONFIG_SMP */
void
diff -Nurb linux-2.6.22-570/arch/powerpc/kernel/prom_init.c linux-2.6.22-590/arch/powerpc/kernel/prom_init.c
--- linux-2.6.22-570/arch/powerpc/kernel/prom_init.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/kernel/prom_init.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/kernel/prom_init.c 2008-03-20 13:28:00.000000000 -0400
@@ -635,6 +635,7 @@
/* ibm,dynamic-reconfiguration-memory property supported */
#define OV5_DRCONF_MEMORY 0x20
-#endif /* _PPC64_PTRACE_COMMON_H */
diff -Nurb linux-2.6.22-570/arch/powerpc/kernel/ptrace.c linux-2.6.22-590/arch/powerpc/kernel/ptrace.c
--- linux-2.6.22-570/arch/powerpc/kernel/ptrace.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/kernel/ptrace.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/kernel/ptrace.c 2008-03-20 13:28:00.000000000 -0400
@@ -35,11 +35,11 @@
#include <asm/pgtable.h>
#include <asm/system.h>
diff -Nurb linux-2.6.22-570/arch/powerpc/kernel/ptrace32.c linux-2.6.22-590/arch/powerpc/kernel/ptrace32.c
--- linux-2.6.22-570/arch/powerpc/kernel/ptrace32.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/kernel/ptrace32.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/kernel/ptrace32.c 2008-03-20 13:28:00.000000000 -0400
@@ -33,13 +33,55 @@
#include <asm/pgtable.h>
#include <asm/system.h>
ret = ptrace_request(child, request, addr, data);
diff -Nurb linux-2.6.22-570/arch/powerpc/kernel/rtas_pci.c linux-2.6.22-590/arch/powerpc/kernel/rtas_pci.c
--- linux-2.6.22-570/arch/powerpc/kernel/rtas_pci.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/kernel/rtas_pci.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/kernel/rtas_pci.c 2008-03-20 13:28:00.000000000 -0400
@@ -278,10 +278,8 @@
{
struct device_node *node;
__FUNCTION__, b->name);
diff -Nurb linux-2.6.22-570/arch/powerpc/kernel/setup_32.c linux-2.6.22-590/arch/powerpc/kernel/setup_32.c
--- linux-2.6.22-570/arch/powerpc/kernel/setup_32.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/kernel/setup_32.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/kernel/setup_32.c 2008-03-20 13:28:00.000000000 -0400
@@ -45,10 +45,6 @@
#define DBG(fmt...)
panic_timeout = 180;
diff -Nurb linux-2.6.22-570/arch/powerpc/kernel/signal.c linux-2.6.22-590/arch/powerpc/kernel/signal.c
--- linux-2.6.22-570/arch/powerpc/kernel/signal.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/powerpc/kernel/signal.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/kernel/signal.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,180 @@
+/*
+ * Common signal handling code for both 32 and 64 bits
+}
diff -Nurb linux-2.6.22-570/arch/powerpc/kernel/signal.h linux-2.6.22-590/arch/powerpc/kernel/signal.h
--- linux-2.6.22-570/arch/powerpc/kernel/signal.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/powerpc/kernel/signal.h 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/kernel/signal.h 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,55 @@
+/*
+ * Copyright (c) 2007 Benjamin Herrenschmidt, IBM Coproration
+#endif /* _POWERPC_ARCH_SIGNAL_H */
diff -Nurb linux-2.6.22-570/arch/powerpc/kernel/signal_32.c linux-2.6.22-590/arch/powerpc/kernel/signal_32.c
--- linux-2.6.22-570/arch/powerpc/kernel/signal_32.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/kernel/signal_32.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/kernel/signal_32.c 2008-03-20 13:28:00.000000000 -0400
@@ -51,12 +51,11 @@
#include <asm/pgtable.h>
#endif
-}
diff -Nurb linux-2.6.22-570/arch/powerpc/kernel/signal_64.c linux-2.6.22-590/arch/powerpc/kernel/signal_64.c
--- linux-2.6.22-570/arch/powerpc/kernel/signal_64.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/kernel/signal_64.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/kernel/signal_64.c 2008-03-20 13:28:00.000000000 -0400
@@ -34,9 +34,9 @@
#include <asm/syscalls.h>
#include <asm/vdso.h>
-}
-EXPORT_SYMBOL(do_signal);
diff -Nurb linux-2.6.22-570/arch/powerpc/kernel/sys_ppc32.c linux-2.6.22-590/arch/powerpc/kernel/sys_ppc32.c
---- linux-2.6.22-570/arch/powerpc/kernel/sys_ppc32.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/kernel/sys_ppc32.c 2008-03-18 15:57:52.000000000 -0400
+--- linux-2.6.22-570/arch/powerpc/kernel/sys_ppc32.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/kernel/sys_ppc32.c 2008-03-20 13:28:00.000000000 -0400
@@ -773,6 +773,13 @@
return sys_truncate(path, (high << 32) | low);
}
unsigned long low)
{
diff -Nurb linux-2.6.22-570/arch/powerpc/kernel/vdso.c linux-2.6.22-590/arch/powerpc/kernel/vdso.c
---- linux-2.6.22-570/arch/powerpc/kernel/vdso.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/kernel/vdso.c 2008-03-18 15:57:52.000000000 -0400
+--- linux-2.6.22-570/arch/powerpc/kernel/vdso.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/kernel/vdso.c 2008-03-20 13:28:00.000000000 -0400
@@ -671,7 +671,7 @@
/*
* Fill up the "systemcfg" stuff for backward compatiblity
vdso_data->processor = mfspr(SPRN_PVR);
diff -Nurb linux-2.6.22-570/arch/powerpc/mm/44x_mmu.c linux-2.6.22-590/arch/powerpc/mm/44x_mmu.c
--- linux-2.6.22-570/arch/powerpc/mm/44x_mmu.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/mm/44x_mmu.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/mm/44x_mmu.c 2008-03-20 13:28:00.000000000 -0400
@@ -12,7 +12,6 @@
* Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au)
* and Cort Dougan (PReP) (cort@cs.nmt.edu)
* Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds
diff -Nurb linux-2.6.22-570/arch/powerpc/mm/4xx_mmu.c linux-2.6.22-590/arch/powerpc/mm/4xx_mmu.c
--- linux-2.6.22-570/arch/powerpc/mm/4xx_mmu.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/mm/4xx_mmu.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/mm/4xx_mmu.c 2008-03-20 13:28:00.000000000 -0400
@@ -9,7 +9,6 @@
* Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au)
* and Cort Dougan (PReP) (cort@cs.nmt.edu)
* Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds
diff -Nurb linux-2.6.22-570/arch/powerpc/mm/Makefile linux-2.6.22-590/arch/powerpc/mm/Makefile
--- linux-2.6.22-570/arch/powerpc/mm/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/mm/Makefile 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/mm/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -11,8 +11,7 @@
hash-$(CONFIG_PPC_NATIVE) := hash_native_64.o
obj-$(CONFIG_PPC64) += init_64.o pgtable_64.o mmu_context_64.o \
obj-$(CONFIG_40x) += 4xx_mmu.o
obj-$(CONFIG_44x) += 44x_mmu.o
diff -Nurb linux-2.6.22-570/arch/powerpc/mm/fault.c linux-2.6.22-590/arch/powerpc/mm/fault.c
---- linux-2.6.22-570/arch/powerpc/mm/fault.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/mm/fault.c 2008-03-18 15:57:52.000000000 -0400
+--- linux-2.6.22-570/arch/powerpc/mm/fault.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/mm/fault.c 2008-03-20 13:28:00.000000000 -0400
@@ -29,6 +29,7 @@
#include <linux/module.h>
#include <linux/kprobes.h>
switch (regs->trap) {
diff -Nurb linux-2.6.22-570/arch/powerpc/mm/fsl_booke_mmu.c linux-2.6.22-590/arch/powerpc/mm/fsl_booke_mmu.c
--- linux-2.6.22-570/arch/powerpc/mm/fsl_booke_mmu.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/mm/fsl_booke_mmu.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/mm/fsl_booke_mmu.c 2008-03-20 13:28:00.000000000 -0400
@@ -14,7 +14,6 @@
* Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au)
* and Cort Dougan (PReP) (cort@cs.nmt.edu)
* Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds
diff -Nurb linux-2.6.22-570/arch/powerpc/mm/hash_native_64.c linux-2.6.22-590/arch/powerpc/mm/hash_native_64.c
--- linux-2.6.22-570/arch/powerpc/mm/hash_native_64.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/mm/hash_native_64.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/mm/hash_native_64.c 2008-03-20 13:28:00.000000000 -0400
@@ -104,7 +104,7 @@
spin_unlock(&native_tlbie_lock);
}
unsigned long flags;
diff -Nurb linux-2.6.22-570/arch/powerpc/mm/hash_utils_64.c linux-2.6.22-590/arch/powerpc/mm/hash_utils_64.c
--- linux-2.6.22-570/arch/powerpc/mm/hash_utils_64.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/mm/hash_utils_64.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/mm/hash_utils_64.c 2008-03-20 13:28:00.000000000 -0400
@@ -87,7 +87,7 @@
static unsigned long _SDR1;
struct mmu_psize_def mmu_psize_defs[MMU_PAGE_COUNT];
-}
diff -Nurb linux-2.6.22-570/arch/powerpc/mm/init_32.c linux-2.6.22-590/arch/powerpc/mm/init_32.c
--- linux-2.6.22-570/arch/powerpc/mm/init_32.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/mm/init_32.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/mm/init_32.c 2008-03-20 13:28:00.000000000 -0400
@@ -5,7 +5,6 @@
* Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au)
* and Cort Dougan (PReP) (cort@cs.nmt.edu)
* Derived from "arch/i386/mm/init.c"
diff -Nurb linux-2.6.22-570/arch/powerpc/mm/init_64.c linux-2.6.22-590/arch/powerpc/mm/init_64.c
--- linux-2.6.22-570/arch/powerpc/mm/init_64.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/mm/init_64.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/mm/init_64.c 2008-03-20 13:28:00.000000000 -0400
@@ -5,7 +5,6 @@
* Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au)
* and Cort Dougan (PReP) (cort@cs.nmt.edu)
* Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds
diff -Nurb linux-2.6.22-570/arch/powerpc/mm/mem.c linux-2.6.22-590/arch/powerpc/mm/mem.c
--- linux-2.6.22-570/arch/powerpc/mm/mem.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/mm/mem.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/mm/mem.c 2008-03-20 13:28:00.000000000 -0400
@@ -5,7 +5,6 @@
* Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au)
* and Cort Dougan (PReP) (cort@cs.nmt.edu)
* Derived from "arch/i386/mm/init.c"
diff -Nurb linux-2.6.22-570/arch/powerpc/mm/mmu_context_32.c linux-2.6.22-590/arch/powerpc/mm/mmu_context_32.c
--- linux-2.6.22-570/arch/powerpc/mm/mmu_context_32.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/mm/mmu_context_32.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/mm/mmu_context_32.c 2008-03-20 13:28:00.000000000 -0400
@@ -11,7 +11,6 @@
* Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au)
* and Cort Dougan (PReP) (cort@cs.nmt.edu)
* Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds
diff -Nurb linux-2.6.22-570/arch/powerpc/mm/mmu_decl.h linux-2.6.22-590/arch/powerpc/mm/mmu_decl.h
--- linux-2.6.22-570/arch/powerpc/mm/mmu_decl.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/mm/mmu_decl.h 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/mm/mmu_decl.h 2008-03-20 13:28:00.000000000 -0400
@@ -8,7 +8,6 @@
* Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au)
* and Cort Dougan (PReP) (cort@cs.nmt.edu)
#endif
diff -Nurb linux-2.6.22-570/arch/powerpc/mm/pgtable_32.c linux-2.6.22-590/arch/powerpc/mm/pgtable_32.c
--- linux-2.6.22-570/arch/powerpc/mm/pgtable_32.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/mm/pgtable_32.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/mm/pgtable_32.c 2008-03-20 13:28:00.000000000 -0400
@@ -8,7 +8,6 @@
* Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au)
* and Cort Dougan (PReP) (cort@cs.nmt.edu)
static int __change_page_attr(struct page *page, pgprot_t prot)
diff -Nurb linux-2.6.22-570/arch/powerpc/mm/pgtable_64.c linux-2.6.22-590/arch/powerpc/mm/pgtable_64.c
--- linux-2.6.22-570/arch/powerpc/mm/pgtable_64.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/mm/pgtable_64.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/mm/pgtable_64.c 2008-03-20 13:28:00.000000000 -0400
@@ -7,7 +7,6 @@
* Modifications by Paul Mackerras (PowerMac) (paulus@samba.org)
* and Cort Dougan (PReP) (cort@cs.nmt.edu)
-}
diff -Nurb linux-2.6.22-570/arch/powerpc/mm/ppc_mmu_32.c linux-2.6.22-590/arch/powerpc/mm/ppc_mmu_32.c
--- linux-2.6.22-570/arch/powerpc/mm/ppc_mmu_32.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/mm/ppc_mmu_32.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/mm/ppc_mmu_32.c 2008-03-20 13:28:00.000000000 -0400
@@ -11,7 +11,6 @@
* Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au)
* and Cort Dougan (PReP) (cort@cs.nmt.edu)
total_memory >> 20, Hash_size >> 10, Hash);
diff -Nurb linux-2.6.22-570/arch/powerpc/mm/tlb_32.c linux-2.6.22-590/arch/powerpc/mm/tlb_32.c
--- linux-2.6.22-570/arch/powerpc/mm/tlb_32.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/mm/tlb_32.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/mm/tlb_32.c 2008-03-20 13:28:00.000000000 -0400
@@ -11,7 +11,6 @@
* Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au)
* and Cort Dougan (PReP) (cort@cs.nmt.edu)
* Copyright (C) 1991, 1992, 1993, 1994 Linus Torvalds
diff -Nurb linux-2.6.22-570/arch/powerpc/mm/tlb_64.c linux-2.6.22-590/arch/powerpc/mm/tlb_64.c
--- linux-2.6.22-570/arch/powerpc/mm/tlb_64.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/mm/tlb_64.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/mm/tlb_64.c 2008-03-20 13:28:00.000000000 -0400
@@ -8,7 +8,6 @@
* Modifications by Paul Mackerras (PowerMac) (paulus@cs.anu.edu.au)
* and Cort Dougan (PReP) (cort@cs.nmt.edu)
+#endif /* CONFIG_HOTPLUG */
diff -Nurb linux-2.6.22-570/arch/powerpc/platforms/Kconfig linux-2.6.22-590/arch/powerpc/platforms/Kconfig
--- linux-2.6.22-570/arch/powerpc/platforms/Kconfig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/platforms/Kconfig 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/platforms/Kconfig 2008-03-20 13:28:00.000000000 -0400
@@ -16,13 +16,6 @@
bool "Embedded 6xx/7xx/7xxx-based board"
depends on PPC32 && (BROKEN||BROKEN_ON_SMP)
source "arch/powerpc/platforms/pseries/Kconfig"
diff -Nurb linux-2.6.22-570/arch/powerpc/platforms/Kconfig.cputype linux-2.6.22-590/arch/powerpc/platforms/Kconfig.cputype
--- linux-2.6.22-570/arch/powerpc/platforms/Kconfig.cputype 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/powerpc/platforms/Kconfig.cputype 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/platforms/Kconfig.cputype 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,252 @@
+config PPC64
+ bool "64-bit kernel"
- depends on !4xx && !8xx && APUS
diff -Nurb linux-2.6.22-570/arch/powerpc/platforms/cell/io-workarounds.c linux-2.6.22-590/arch/powerpc/platforms/cell/io-workarounds.c
--- linux-2.6.22-570/arch/powerpc/platforms/cell/io-workarounds.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/platforms/cell/io-workarounds.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/platforms/cell/io-workarounds.c 2008-03-20 13:28:00.000000000 -0400
@@ -102,7 +102,7 @@
vaddr = (unsigned long)PCI_FIX_ADDR(addr);
/* Try to find a PTE. If not, clear the paddr, we'll do
diff -Nurb linux-2.6.22-570/arch/powerpc/platforms/cell/spufs/file.c linux-2.6.22-590/arch/powerpc/platforms/cell/spufs/file.c
--- linux-2.6.22-570/arch/powerpc/platforms/cell/spufs/file.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/platforms/cell/spufs/file.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/platforms/cell/spufs/file.c 2008-03-20 13:28:00.000000000 -0400
@@ -28,6 +28,7 @@
#include <linux/pagemap.h>
#include <linux/poll.h>
{ "ibox", &spufs_ibox_fops, 0444, },
diff -Nurb linux-2.6.22-570/arch/powerpc/platforms/cell/spufs/run.c linux-2.6.22-590/arch/powerpc/platforms/cell/spufs/run.c
--- linux-2.6.22-570/arch/powerpc/platforms/cell/spufs/run.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/platforms/cell/spufs/run.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/platforms/cell/spufs/run.c 2008-03-20 13:28:00.000000000 -0400
@@ -142,8 +142,12 @@
runcntl = SPU_RUNCNTL_RUNNABLE;
ctx->ops->runcntl_write(ctx, runcntl);
force_sig(SIGTRAP, current);
diff -Nurb linux-2.6.22-570/arch/powerpc/platforms/iseries/call_hpt.h linux-2.6.22-590/arch/powerpc/platforms/iseries/call_hpt.h
--- linux-2.6.22-570/arch/powerpc/platforms/iseries/call_hpt.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/platforms/iseries/call_hpt.h 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/platforms/iseries/call_hpt.h 2008-03-20 13:28:00.000000000 -0400
@@ -76,24 +76,25 @@
return compressedStatus;
}
}
diff -Nurb linux-2.6.22-570/arch/powerpc/platforms/iseries/htab.c linux-2.6.22-590/arch/powerpc/platforms/iseries/htab.c
--- linux-2.6.22-570/arch/powerpc/platforms/iseries/htab.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/platforms/iseries/htab.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/platforms/iseries/htab.c 2008-03-20 13:28:00.000000000 -0400
@@ -44,7 +44,7 @@
unsigned long vflags, int psize)
{
/*
diff -Nurb linux-2.6.22-570/arch/powerpc/platforms/iseries/pci.c linux-2.6.22-590/arch/powerpc/platforms/iseries/pci.c
--- linux-2.6.22-570/arch/powerpc/platforms/iseries/pci.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/platforms/iseries/pci.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/platforms/iseries/pci.c 2008-03-20 13:28:00.000000000 -0400
@@ -742,6 +742,11 @@
/* Install IO hooks */
ppc_pci_io = iseries_pci_io;
"of device tree\n");
diff -Nurb linux-2.6.22-570/arch/powerpc/platforms/maple/pci.c linux-2.6.22-590/arch/powerpc/platforms/maple/pci.c
--- linux-2.6.22-570/arch/powerpc/platforms/maple/pci.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/platforms/maple/pci.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/platforms/maple/pci.c 2008-03-20 13:28:00.000000000 -0400
@@ -519,23 +519,6 @@
DBG(" <- maple_pci_irq_fixup\n");
}
diff -Nurb linux-2.6.22-570/arch/powerpc/platforms/pasemi/pci.c linux-2.6.22-590/arch/powerpc/platforms/pasemi/pci.c
--- linux-2.6.22-570/arch/powerpc/platforms/pasemi/pci.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/platforms/pasemi/pci.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/platforms/pasemi/pci.c 2008-03-20 13:28:00.000000000 -0400
@@ -150,29 +150,11 @@
printk(KERN_INFO "Found PA-PXP PCI host bridge.\n");
diff -Nurb linux-2.6.22-570/arch/powerpc/platforms/powermac/pci.c linux-2.6.22-590/arch/powerpc/platforms/powermac/pci.c
--- linux-2.6.22-570/arch/powerpc/platforms/powermac/pci.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/platforms/powermac/pci.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/platforms/powermac/pci.c 2008-03-20 13:28:00.000000000 -0400
@@ -1006,19 +1006,6 @@
#endif /* CONFIG_PPC32 */
}
diff -Nurb linux-2.6.22-570/arch/powerpc/platforms/powermac/setup.c linux-2.6.22-590/arch/powerpc/platforms/powermac/setup.c
--- linux-2.6.22-570/arch/powerpc/platforms/powermac/setup.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/platforms/powermac/setup.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/platforms/powermac/setup.c 2008-03-20 13:28:00.000000000 -0400
@@ -98,8 +98,6 @@
int sccdbg;
#endif
smu_init();
diff -Nurb linux-2.6.22-570/arch/powerpc/platforms/ps3/htab.c linux-2.6.22-590/arch/powerpc/platforms/ps3/htab.c
--- linux-2.6.22-570/arch/powerpc/platforms/ps3/htab.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/platforms/ps3/htab.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/platforms/ps3/htab.c 2008-03-20 13:28:00.000000000 -0400
@@ -34,7 +34,7 @@
#define DBG(fmt...) do{if(0)printk(fmt);}while(0)
#endif
DBG("%s:%d: lpar %016lxh, virt %016lxh\n", __func__, __LINE__,
diff -Nurb linux-2.6.22-570/arch/powerpc/platforms/pseries/Makefile linux-2.6.22-590/arch/powerpc/platforms/pseries/Makefile
--- linux-2.6.22-570/arch/powerpc/platforms/pseries/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/platforms/pseries/Makefile 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/platforms/pseries/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -8,7 +8,7 @@
obj-$(CONFIG_SMP) += smp.o
obj-$(CONFIG_XICS) += xics.o
obj-$(CONFIG_PCI_MSI) += msi.o
diff -Nurb linux-2.6.22-570/arch/powerpc/platforms/pseries/eeh.c linux-2.6.22-590/arch/powerpc/platforms/pseries/eeh.c
--- linux-2.6.22-570/arch/powerpc/platforms/pseries/eeh.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/platforms/pseries/eeh.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/platforms/pseries/eeh.c 2008-03-20 13:28:00.000000000 -0400
@@ -1,6 +1,8 @@
/*
* eeh.c
diff -Nurb linux-2.6.22-570/arch/powerpc/platforms/pseries/eeh_cache.c linux-2.6.22-590/arch/powerpc/platforms/pseries/eeh_cache.c
--- linux-2.6.22-570/arch/powerpc/platforms/pseries/eeh_cache.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/platforms/pseries/eeh_cache.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/platforms/pseries/eeh_cache.c 2008-03-20 13:28:00.000000000 -0400
@@ -2,7 +2,8 @@
* eeh_cache.c
* PCI address cache; allows the lookup of PCI devices based on I/O address
#ifdef DEBUG
diff -Nurb linux-2.6.22-570/arch/powerpc/platforms/pseries/eeh_driver.c linux-2.6.22-590/arch/powerpc/platforms/pseries/eeh_driver.c
--- linux-2.6.22-570/arch/powerpc/platforms/pseries/eeh_driver.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/platforms/pseries/eeh_driver.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/platforms/pseries/eeh_driver.c 2008-03-20 13:28:00.000000000 -0400
@@ -1,6 +1,7 @@
/*
* PCI Error Recovery Driver for RPA-compliant PPC64 platform.
#include <linux/interrupt.h>
diff -Nurb linux-2.6.22-570/arch/powerpc/platforms/pseries/eeh_sysfs.c linux-2.6.22-590/arch/powerpc/platforms/pseries/eeh_sysfs.c
--- linux-2.6.22-570/arch/powerpc/platforms/pseries/eeh_sysfs.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/powerpc/platforms/pseries/eeh_sysfs.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/platforms/pseries/eeh_sysfs.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,87 @@
+/*
+ * Sysfs entries for PCI Error Recovery for PAPR-compliant platform.
+
diff -Nurb linux-2.6.22-570/arch/powerpc/platforms/pseries/pci_dlpar.c linux-2.6.22-590/arch/powerpc/platforms/pseries/pci_dlpar.c
--- linux-2.6.22-570/arch/powerpc/platforms/pseries/pci_dlpar.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/platforms/pseries/pci_dlpar.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/platforms/pseries/pci_dlpar.c 2008-03-20 13:28:00.000000000 -0400
@@ -110,8 +110,6 @@
}
}
}
diff -Nurb linux-2.6.22-570/arch/powerpc/platforms/pseries/pseries.h linux-2.6.22-590/arch/powerpc/platforms/pseries/pseries.h
--- linux-2.6.22-570/arch/powerpc/platforms/pseries/pseries.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/platforms/pseries/pseries.h 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/platforms/pseries/pseries.h 2008-03-20 13:28:00.000000000 -0400
@@ -33,6 +33,8 @@
static inline void setup_kexec_cpu_down_mpic(void) { }
#endif
diff -Nurb linux-2.6.22-570/arch/powerpc/platforms/pseries/setup.c linux-2.6.22-590/arch/powerpc/platforms/pseries/setup.c
--- linux-2.6.22-570/arch/powerpc/platforms/pseries/setup.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/platforms/pseries/setup.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/platforms/pseries/setup.c 2008-03-20 13:28:00.000000000 -0400
@@ -399,6 +399,7 @@
* a good time to find other work to dispatch.
*/
diff -Nurb linux-2.6.22-570/arch/powerpc/sysdev/tsi108_dev.c linux-2.6.22-590/arch/powerpc/sysdev/tsi108_dev.c
--- linux-2.6.22-570/arch/powerpc/sysdev/tsi108_dev.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/powerpc/sysdev/tsi108_dev.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/powerpc/sysdev/tsi108_dev.c 2008-03-20 13:28:00.000000000 -0400
@@ -72,12 +72,11 @@
int ret;
sizeof(hw_info));
diff -Nurb linux-2.6.22-570/arch/ppc/8260_io/enet.c linux-2.6.22-590/arch/ppc/8260_io/enet.c
--- linux-2.6.22-570/arch/ppc/8260_io/enet.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/8260_io/enet.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/8260_io/enet.c 2008-03-20 13:28:00.000000000 -0400
@@ -477,9 +477,9 @@
}
else {
}
diff -Nurb linux-2.6.22-570/arch/ppc/8260_io/fcc_enet.c linux-2.6.22-590/arch/ppc/8260_io/fcc_enet.c
--- linux-2.6.22-570/arch/ppc/8260_io/fcc_enet.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/8260_io/fcc_enet.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/8260_io/fcc_enet.c 2008-03-20 13:28:00.000000000 -0400
@@ -734,9 +734,9 @@
}
else {
}
diff -Nurb linux-2.6.22-570/arch/ppc/8xx_io/enet.c linux-2.6.22-590/arch/ppc/8xx_io/enet.c
--- linux-2.6.22-570/arch/ppc/8xx_io/enet.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/8xx_io/enet.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/8xx_io/enet.c 2008-03-20 13:28:00.000000000 -0400
@@ -506,9 +506,9 @@
}
else {
}
diff -Nurb linux-2.6.22-570/arch/ppc/8xx_io/fec.c linux-2.6.22-590/arch/ppc/8xx_io/fec.c
--- linux-2.6.22-570/arch/ppc/8xx_io/fec.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/8xx_io/fec.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/8xx_io/fec.c 2008-03-20 13:28:00.000000000 -0400
@@ -725,7 +725,7 @@
fep->stats.rx_dropped++;
} else {
}
diff -Nurb linux-2.6.22-570/arch/ppc/Kconfig.debug linux-2.6.22-590/arch/ppc/Kconfig.debug
--- linux-2.6.22-570/arch/ppc/Kconfig.debug 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/Kconfig.debug 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/Kconfig.debug 2008-03-20 13:28:00.000000000 -0400
@@ -2,42 +2,6 @@
source "lib/Kconfig.debug"
depends on DEBUG_KERNEL
diff -Nurb linux-2.6.22-570/arch/ppc/amiga/config.c linux-2.6.22-590/arch/ppc/amiga/config.c
--- linux-2.6.22-570/arch/ppc/amiga/config.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/amiga/config.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/amiga/config.c 2008-03-20 13:28:00.000000000 -0400
@@ -753,17 +753,11 @@
void amiga_serial_console_write(struct console *co, const char *s,
unsigned int count)
#ifdef CONFIG_SERIAL_CONSOLE
diff -Nurb linux-2.6.22-570/arch/ppc/kernel/Makefile linux-2.6.22-590/arch/ppc/kernel/Makefile
--- linux-2.6.22-570/arch/ppc/kernel/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/kernel/Makefile 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/kernel/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -14,7 +14,7 @@
obj-$(CONFIG_MODULES) += ppc_ksyms.o
obj-$(CONFIG_PCI) += pci.o
diff -Nurb linux-2.6.22-570/arch/ppc/kernel/kgdb.c linux-2.6.22-590/arch/ppc/kernel/kgdb.c
--- linux-2.6.22-570/arch/ppc/kernel/kgdb.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/ppc/kernel/kgdb.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/kernel/kgdb.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,348 @@
+/*
+ * arch/ppc/kernel/kgdb.c
+arch_initcall(kgdb_arch_init);
diff -Nurb linux-2.6.22-570/arch/ppc/kernel/kgdb_setjmp32.S linux-2.6.22-590/arch/ppc/kernel/kgdb_setjmp32.S
--- linux-2.6.22-570/arch/ppc/kernel/kgdb_setjmp32.S 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/ppc/kernel/kgdb_setjmp32.S 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/kernel/kgdb_setjmp32.S 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,41 @@
+/*
+ * Copyright (C) 1996 Paul Mackerras
+ mr r3,r1
+ blr
diff -Nurb linux-2.6.22-570/arch/ppc/kernel/misc.S linux-2.6.22-590/arch/ppc/kernel/misc.S
---- linux-2.6.22-570/arch/ppc/kernel/misc.S 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/kernel/misc.S 2008-03-18 15:57:52.000000000 -0400
+--- linux-2.6.22-570/arch/ppc/kernel/misc.S 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/kernel/misc.S 2008-03-20 13:28:00.000000000 -0400
@@ -328,7 +328,7 @@
mtspr SPRN_L1CSR0,r3
isync
-module_init(gdb_register_sysrq);
diff -Nurb linux-2.6.22-570/arch/ppc/kernel/setup.c linux-2.6.22-590/arch/ppc/kernel/setup.c
--- linux-2.6.22-570/arch/ppc/kernel/setup.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/kernel/setup.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/kernel/setup.c 2008-03-20 13:28:00.000000000 -0400
@@ -48,10 +48,6 @@
#include <asm/ppc_sys.h>
#endif
icache_bsize = cur_cpu_spec->icache_bsize;
ucache_bsize = 0;
diff -Nurb linux-2.6.22-570/arch/ppc/mm/fault.c linux-2.6.22-590/arch/ppc/mm/fault.c
---- linux-2.6.22-570/arch/ppc/mm/fault.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/mm/fault.c 2008-03-18 15:57:52.000000000 -0400
+--- linux-2.6.22-570/arch/ppc/mm/fault.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/mm/fault.c 2008-03-20 13:28:00.000000000 -0400
@@ -25,6 +25,7 @@
#include <linux/interrupt.h>
#include <linux/highmem.h>
if (debugger_kernel_faults)
diff -Nurb linux-2.6.22-570/arch/ppc/platforms/4xx/bamboo.c linux-2.6.22-590/arch/ppc/platforms/4xx/bamboo.c
--- linux-2.6.22-570/arch/ppc/platforms/4xx/bamboo.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/platforms/4xx/bamboo.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/platforms/4xx/bamboo.c 2008-03-20 13:28:00.000000000 -0400
@@ -30,6 +30,7 @@
#include <linux/serial.h>
#include <linux/serial_core.h>
diff -Nurb linux-2.6.22-570/arch/ppc/platforms/4xx/bubinga.c linux-2.6.22-590/arch/ppc/platforms/4xx/bubinga.c
--- linux-2.6.22-570/arch/ppc/platforms/4xx/bubinga.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/platforms/4xx/bubinga.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/platforms/4xx/bubinga.c 2008-03-20 13:28:00.000000000 -0400
@@ -4,7 +4,7 @@
* Author: SAW (IBM), derived from walnut.c.
* Maintained by MontaVista Software <source@mvista.com>
-
diff -Nurb linux-2.6.22-570/arch/ppc/platforms/4xx/ebony.c linux-2.6.22-590/arch/ppc/platforms/4xx/ebony.c
--- linux-2.6.22-570/arch/ppc/platforms/4xx/ebony.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/platforms/4xx/ebony.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/platforms/4xx/ebony.c 2008-03-20 13:28:00.000000000 -0400
@@ -32,6 +32,7 @@
#include <linux/tty.h>
#include <linux/serial.h>
-
diff -Nurb linux-2.6.22-570/arch/ppc/platforms/4xx/luan.c linux-2.6.22-590/arch/ppc/platforms/4xx/luan.c
--- linux-2.6.22-570/arch/ppc/platforms/4xx/luan.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/platforms/4xx/luan.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/platforms/4xx/luan.c 2008-03-20 13:28:00.000000000 -0400
@@ -30,6 +30,7 @@
#include <linux/tty.h>
#include <linux/serial.h>
}
diff -Nurb linux-2.6.22-570/arch/ppc/platforms/4xx/ocotea.c linux-2.6.22-590/arch/ppc/platforms/4xx/ocotea.c
--- linux-2.6.22-570/arch/ppc/platforms/4xx/ocotea.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/platforms/4xx/ocotea.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/platforms/4xx/ocotea.c 2008-03-20 13:28:00.000000000 -0400
@@ -30,6 +30,7 @@
#include <linux/tty.h>
#include <linux/serial.h>
}
diff -Nurb linux-2.6.22-570/arch/ppc/platforms/4xx/taishan.c linux-2.6.22-590/arch/ppc/platforms/4xx/taishan.c
--- linux-2.6.22-570/arch/ppc/platforms/4xx/taishan.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/platforms/4xx/taishan.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/platforms/4xx/taishan.c 2008-03-20 13:28:00.000000000 -0400
@@ -310,7 +310,7 @@
if (early_serial_setup(&port) != 0)
printk("Early serial init of port 0 failed\n");
diff -Nurb linux-2.6.22-570/arch/ppc/platforms/4xx/xilinx_ml300.c linux-2.6.22-590/arch/ppc/platforms/4xx/xilinx_ml300.c
--- linux-2.6.22-570/arch/ppc/platforms/4xx/xilinx_ml300.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/platforms/4xx/xilinx_ml300.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/platforms/4xx/xilinx_ml300.c 2008-03-20 13:28:00.000000000 -0400
@@ -16,6 +16,8 @@
#include <linux/serial_core.h>
#include <linux/serial_8250.h>
* ppc4xx_find_bridges arch/ppc/syslib/ppc405_pci.c
diff -Nurb linux-2.6.22-570/arch/ppc/platforms/4xx/xilinx_ml403.c linux-2.6.22-590/arch/ppc/platforms/4xx/xilinx_ml403.c
--- linux-2.6.22-570/arch/ppc/platforms/4xx/xilinx_ml403.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/platforms/4xx/xilinx_ml403.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/platforms/4xx/xilinx_ml403.c 2008-03-20 13:28:00.000000000 -0400
@@ -43,9 +43,6 @@
* ppc4xx_map_io arch/ppc/syslib/ppc4xx_setup.c
* start_kernel init/main.c
* ppc4xx_find_bridges arch/ppc/syslib/ppc405_pci.c
diff -Nurb linux-2.6.22-570/arch/ppc/platforms/4xx/yucca.c linux-2.6.22-590/arch/ppc/platforms/4xx/yucca.c
--- linux-2.6.22-570/arch/ppc/platforms/4xx/yucca.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/platforms/4xx/yucca.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/platforms/4xx/yucca.c 2008-03-20 13:28:00.000000000 -0400
@@ -386,7 +386,4 @@
ppc_md.get_irq = NULL; /* Set in ppc4xx_pic_init() */
}
diff -Nurb linux-2.6.22-570/arch/ppc/platforms/83xx/mpc834x_sys.c linux-2.6.22-590/arch/ppc/platforms/83xx/mpc834x_sys.c
--- linux-2.6.22-570/arch/ppc/platforms/83xx/mpc834x_sys.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/platforms/83xx/mpc834x_sys.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/platforms/83xx/mpc834x_sys.c 2008-03-20 13:28:00.000000000 -0400
@@ -42,11 +42,11 @@
#include <asm/pci-bridge.h>
#include <asm/mpc83xx.h>
#endif /* CONFIG_SERIAL_8250 && CONFIG_SERIAL_TEXT_DEBUG */
diff -Nurb linux-2.6.22-570/arch/ppc/platforms/85xx/mpc8540_ads.c linux-2.6.22-590/arch/ppc/platforms/85xx/mpc8540_ads.c
--- linux-2.6.22-570/arch/ppc/platforms/85xx/mpc8540_ads.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/platforms/85xx/mpc8540_ads.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/platforms/85xx/mpc8540_ads.c 2008-03-20 13:28:00.000000000 -0400
@@ -43,11 +43,11 @@
#include <asm/mpc85xx.h>
#include <asm/irq.h>
ppc_md.progress("mpc8540ads_init(): exit", 0);
diff -Nurb linux-2.6.22-570/arch/ppc/platforms/85xx/mpc8560_ads.c linux-2.6.22-590/arch/ppc/platforms/85xx/mpc8560_ads.c
--- linux-2.6.22-570/arch/ppc/platforms/85xx/mpc8560_ads.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/platforms/85xx/mpc8560_ads.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/platforms/85xx/mpc8560_ads.c 2008-03-20 13:28:00.000000000 -0400
@@ -44,7 +44,6 @@
#include <asm/mpc85xx.h>
#include <asm/irq.h>
#include <mm/mmu_decl.h>
diff -Nurb linux-2.6.22-570/arch/ppc/platforms/85xx/mpc85xx_cds_common.c linux-2.6.22-590/arch/ppc/platforms/85xx/mpc85xx_cds_common.c
--- linux-2.6.22-570/arch/ppc/platforms/85xx/mpc85xx_cds_common.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/platforms/85xx/mpc85xx_cds_common.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/platforms/85xx/mpc85xx_cds_common.c 2008-03-20 13:28:00.000000000 -0400
@@ -47,12 +47,12 @@
#include <asm/immap_85xx.h>
#include <asm/cpm2.h>
ppc_md.progress("mpc85xx_cds_init(): exit", 0);
diff -Nurb linux-2.6.22-570/arch/ppc/platforms/85xx/sbc8560.c linux-2.6.22-590/arch/ppc/platforms/85xx/sbc8560.c
--- linux-2.6.22-570/arch/ppc/platforms/85xx/sbc8560.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/platforms/85xx/sbc8560.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/platforms/85xx/sbc8560.c 2008-03-20 13:28:00.000000000 -0400
@@ -29,6 +29,7 @@
#include <linux/initrd.h>
#include <linux/module.h>
ppc_md.progress("sbc8560_init(): exit", 0);
diff -Nurb linux-2.6.22-570/arch/ppc/platforms/85xx/tqm85xx.c linux-2.6.22-590/arch/ppc/platforms/85xx/tqm85xx.c
--- linux-2.6.22-570/arch/ppc/platforms/85xx/tqm85xx.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/platforms/85xx/tqm85xx.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/platforms/85xx/tqm85xx.c 2008-03-20 13:28:00.000000000 -0400
@@ -46,7 +46,6 @@
#include <asm/mpc85xx.h>
#include <asm/irq.h>
if (ppc_md.progress)
diff -Nurb linux-2.6.22-570/arch/ppc/platforms/apus_setup.c linux-2.6.22-590/arch/ppc/platforms/apus_setup.c
--- linux-2.6.22-570/arch/ppc/platforms/apus_setup.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/platforms/apus_setup.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/platforms/apus_setup.c 2008-03-20 13:28:00.000000000 -0400
@@ -598,12 +598,6 @@
ciab.ddra |= (SER_DTR | SER_RTS); /* outputs */
ciab.ddra &= ~(SER_DCD | SER_CTS | SER_DSR); /* inputs */
diff -Nurb linux-2.6.22-570/arch/ppc/platforms/chestnut.c linux-2.6.22-590/arch/ppc/platforms/chestnut.c
--- linux-2.6.22-570/arch/ppc/platforms/chestnut.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/platforms/chestnut.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/platforms/chestnut.c 2008-03-20 13:28:00.000000000 -0400
@@ -34,9 +34,9 @@
#include <asm/io.h>
#include <asm/hw_irq.h>
ppc_md.progress("chestnut_init(): exit", 0);
diff -Nurb linux-2.6.22-570/arch/ppc/platforms/ev64260.c linux-2.6.22-590/arch/ppc/platforms/ev64260.c
--- linux-2.6.22-570/arch/ppc/platforms/ev64260.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/platforms/ev64260.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/platforms/ev64260.c 2008-03-20 13:28:00.000000000 -0400
@@ -330,7 +330,7 @@
port.iotype = UPIO_MEM;
port.flags = STD_COM_FLAGS;
diff -Nurb linux-2.6.22-570/arch/ppc/platforms/hdpu.c linux-2.6.22-590/arch/ppc/platforms/hdpu.c
--- linux-2.6.22-570/arch/ppc/platforms/hdpu.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/platforms/hdpu.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/platforms/hdpu.c 2008-03-20 13:28:00.000000000 -0400
@@ -281,25 +281,6 @@
#if defined(CONFIG_SERIAL_MPSC_CONSOLE)
static void __init hdpu_early_serial_map(void)
diff -Nurb linux-2.6.22-570/arch/ppc/platforms/lopec.c linux-2.6.22-590/arch/ppc/platforms/lopec.c
--- linux-2.6.22-570/arch/ppc/platforms/lopec.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/platforms/lopec.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/platforms/lopec.c 2008-03-20 13:28:00.000000000 -0400
@@ -32,7 +32,8 @@
#include <asm/mpc10x.h>
#include <asm/hw_irq.h>
* Define all of the IRQ senses and polarities. Taken from the
diff -Nurb linux-2.6.22-570/arch/ppc/platforms/pplus.c linux-2.6.22-590/arch/ppc/platforms/pplus.c
--- linux-2.6.22-570/arch/ppc/platforms/pplus.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/platforms/pplus.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/platforms/pplus.c 2008-03-20 13:28:00.000000000 -0400
@@ -35,9 +35,9 @@
#include <asm/hawk.h>
#include <asm/todc.h>
#endif /* CONFIG_SMP */
diff -Nurb linux-2.6.22-570/arch/ppc/platforms/radstone_ppc7d.c linux-2.6.22-590/arch/ppc/platforms/radstone_ppc7d.c
--- linux-2.6.22-570/arch/ppc/platforms/radstone_ppc7d.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/platforms/radstone_ppc7d.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/platforms/radstone_ppc7d.c 2008-03-20 13:28:00.000000000 -0400
@@ -84,7 +84,7 @@
* Serial port code
*****************************************************************************/
* flash probe.
diff -Nurb linux-2.6.22-570/arch/ppc/platforms/sandpoint.c linux-2.6.22-590/arch/ppc/platforms/sandpoint.c
--- linux-2.6.22-570/arch/ppc/platforms/sandpoint.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/platforms/sandpoint.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/platforms/sandpoint.c 2008-03-20 13:28:00.000000000 -0400
@@ -95,9 +95,9 @@
#include <asm/bootinfo.h>
#include <asm/mpc10x.h>
#endif
diff -Nurb linux-2.6.22-570/arch/ppc/platforms/spruce.c linux-2.6.22-590/arch/ppc/platforms/spruce.c
--- linux-2.6.22-570/arch/ppc/platforms/spruce.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/platforms/spruce.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/platforms/spruce.c 2008-03-20 13:28:00.000000000 -0400
@@ -27,6 +27,7 @@
#include <linux/serial.h>
#include <linux/tty.h>
}
diff -Nurb linux-2.6.22-570/arch/ppc/syslib/Makefile linux-2.6.22-590/arch/ppc/syslib/Makefile
--- linux-2.6.22-570/arch/ppc/syslib/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/syslib/Makefile 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/syslib/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -77,7 +77,6 @@
obj-$(CONFIG_8260_PCI9) += m8260_pci_erratum9.o
obj-$(CONFIG_CPM2) += cpm2_common.o cpm2_pic.o
ifeq ($(CONFIG_SERIAL_MPSC_CONSOLE),y)
diff -Nurb linux-2.6.22-570/arch/ppc/syslib/gen550.h linux-2.6.22-590/arch/ppc/syslib/gen550.h
--- linux-2.6.22-570/arch/ppc/syslib/gen550.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/syslib/gen550.h 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/syslib/gen550.h 2008-03-20 13:28:00.000000000 -0400
@@ -11,4 +11,3 @@
extern void gen550_progress(char *, unsigned short);
-}
diff -Nurb linux-2.6.22-570/arch/ppc/syslib/ibm44x_common.c linux-2.6.22-590/arch/ppc/syslib/ibm44x_common.c
--- linux-2.6.22-570/arch/ppc/syslib/ibm44x_common.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/syslib/ibm44x_common.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/syslib/ibm44x_common.c 2008-03-20 13:28:00.000000000 -0400
@@ -192,9 +192,6 @@
#ifdef CONFIG_SERIAL_TEXT_DEBUG
ppc_md.progress = gen550_progress;
* The Abatron BDI JTAG debugger does not tolerate others
diff -Nurb linux-2.6.22-570/arch/ppc/syslib/mv64x60.c linux-2.6.22-590/arch/ppc/syslib/mv64x60.c
--- linux-2.6.22-570/arch/ppc/syslib/mv64x60.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/syslib/mv64x60.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/syslib/mv64x60.c 2008-03-20 13:28:00.000000000 -0400
@@ -241,6 +241,12 @@
.end = MV64x60_IRQ_SDMA_0,
.flags = IORESOURCE_IRQ,
.read = mv64xxx_hs_reg_read,
diff -Nurb linux-2.6.22-570/arch/ppc/syslib/mv64x60_dbg.c linux-2.6.22-590/arch/ppc/syslib/mv64x60_dbg.c
--- linux-2.6.22-570/arch/ppc/syslib/mv64x60_dbg.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/syslib/mv64x60_dbg.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/syslib/mv64x60_dbg.c 2008-03-20 13:28:00.000000000 -0400
@@ -34,7 +34,7 @@
void
mv64x60_progress_init(u32 base)
-#endif /* CONFIG_KGDB */
diff -Nurb linux-2.6.22-570/arch/ppc/syslib/ppc4xx_setup.c linux-2.6.22-590/arch/ppc/syslib/ppc4xx_setup.c
--- linux-2.6.22-570/arch/ppc/syslib/ppc4xx_setup.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/syslib/ppc4xx_setup.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/syslib/ppc4xx_setup.c 2008-03-20 13:28:00.000000000 -0400
@@ -32,7 +32,6 @@
#include <asm/processor.h>
#include <asm/machdep.h>
#include <asm/todc.h>
diff -Nurb linux-2.6.22-570/arch/ppc/syslib/ppc83xx_setup.c linux-2.6.22-590/arch/ppc/syslib/ppc83xx_setup.c
--- linux-2.6.22-570/arch/ppc/syslib/ppc83xx_setup.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/syslib/ppc83xx_setup.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/syslib/ppc83xx_setup.c 2008-03-20 13:28:00.000000000 -0400
@@ -30,12 +30,12 @@
#include <linux/tty.h> /* for linux/serial_core.h */
#include <linux/serial_core.h>
diff -Nurb linux-2.6.22-570/arch/ppc/syslib/ppc85xx_setup.c linux-2.6.22-590/arch/ppc/syslib/ppc85xx_setup.c
--- linux-2.6.22-570/arch/ppc/syslib/ppc85xx_setup.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/ppc/syslib/ppc85xx_setup.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/ppc/syslib/ppc85xx_setup.c 2008-03-20 13:28:00.000000000 -0400
@@ -19,16 +19,17 @@
#include <linux/tty.h> /* for linux/serial_core.h */
#include <linux/serial_core.h>
-
diff -Nurb linux-2.6.22-570/arch/s390/appldata/appldata_net_sum.c linux-2.6.22-590/arch/s390/appldata/appldata_net_sum.c
--- linux-2.6.22-570/arch/s390/appldata/appldata_net_sum.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/s390/appldata/appldata_net_sum.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/s390/appldata/appldata_net_sum.c 2008-03-20 13:28:00.000000000 -0400
@@ -16,6 +16,7 @@
#include <linux/errno.h>
#include <linux/kernel_stat.h>
tx_packets += stats->tx_packets;
diff -Nurb linux-2.6.22-570/arch/s390/kernel/ipl.c linux-2.6.22-590/arch/s390/kernel/ipl.c
--- linux-2.6.22-570/arch/s390/kernel/ipl.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/s390/kernel/ipl.c 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/s390/kernel/ipl.c 2008-03-20 13:28:00.000000000 -0400
@@ -314,7 +314,6 @@
.attr = {
.name = "binary_parameter",
.read = &ipl_scp_data_read,
diff -Nurb linux-2.6.22-570/arch/sh/Kconfig.debug linux-2.6.22-590/arch/sh/Kconfig.debug
--- linux-2.6.22-570/arch/sh/Kconfig.debug 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/sh/Kconfig.debug 2008-03-18 15:57:52.000000000 -0400
++++ linux-2.6.22-590/arch/sh/Kconfig.debug 2008-03-20 13:28:00.000000000 -0400
@@ -78,82 +78,4 @@
on the VM subsystem for higher order allocations. This option
will also use IRQ stacks to compensate for the reduced stackspace.
endmenu
diff -Nurb linux-2.6.22-570/arch/sh/kernel/Makefile linux-2.6.22-590/arch/sh/kernel/Makefile
--- linux-2.6.22-570/arch/sh/kernel/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/sh/kernel/Makefile 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/arch/sh/kernel/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -15,7 +15,7 @@
obj-$(CONFIG_SMP) += smp.o
obj-$(CONFIG_CF_ENABLER) += cf-enabler.o
obj-$(CONFIG_EARLY_PRINTK) += early_printk.o
diff -Nurb linux-2.6.22-570/arch/sh/kernel/cpu/sh3/ex.S linux-2.6.22-590/arch/sh/kernel/cpu/sh3/ex.S
--- linux-2.6.22-570/arch/sh/kernel/cpu/sh3/ex.S 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/sh/kernel/cpu/sh3/ex.S 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/arch/sh/kernel/cpu/sh3/ex.S 2008-03-20 13:28:00.000000000 -0400
@@ -45,7 +45,7 @@
.long exception_error ! reserved_instruction (filled by trap_init) /* 180 */
.long exception_error ! illegal_slot_instruction (filled by trap_init) /*1A0*/
.long exception_none /* 1C0 */ ! Not implemented yet
diff -Nurb linux-2.6.22-570/arch/sh/kernel/kgdb-jmp.S linux-2.6.22-590/arch/sh/kernel/kgdb-jmp.S
--- linux-2.6.22-570/arch/sh/kernel/kgdb-jmp.S 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/sh/kernel/kgdb-jmp.S 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/arch/sh/kernel/kgdb-jmp.S 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,32 @@
+#include <linux/linkage.h>
+
+ nop
diff -Nurb linux-2.6.22-570/arch/sh/kernel/kgdb.c linux-2.6.22-590/arch/sh/kernel/kgdb.c
--- linux-2.6.22-570/arch/sh/kernel/kgdb.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/sh/kernel/kgdb.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/arch/sh/kernel/kgdb.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,363 @@
+/*
+ * arch/sh/kernel/kgdb.c
-#endif
diff -Nurb linux-2.6.22-570/arch/sh/kernel/time.c linux-2.6.22-590/arch/sh/kernel/time.c
--- linux-2.6.22-570/arch/sh/kernel/time.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/sh/kernel/time.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/arch/sh/kernel/time.c 2008-03-20 13:28:00.000000000 -0400
@@ -259,11 +259,4 @@
((sh_hpt_frequency + 500) / 1000) / 1000,
((sh_hpt_frequency + 500) / 1000) % 1000);
}
diff -Nurb linux-2.6.22-570/arch/sh/kernel/traps.c linux-2.6.22-590/arch/sh/kernel/traps.c
--- linux-2.6.22-570/arch/sh/kernel/traps.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/sh/kernel/traps.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/arch/sh/kernel/traps.c 2008-03-20 13:28:00.000000000 -0400
@@ -25,16 +25,10 @@
#include <linux/limits.h>
#include <asm/system.h>
}
diff -Nurb linux-2.6.22-570/arch/sh/mm/extable.c linux-2.6.22-590/arch/sh/mm/extable.c
--- linux-2.6.22-570/arch/sh/mm/extable.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/sh/mm/extable.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/arch/sh/mm/extable.c 2008-03-20 13:28:00.000000000 -0400
@@ -5,6 +5,7 @@
*/
}
diff -Nurb linux-2.6.22-570/arch/sh/mm/fault-nommu.c linux-2.6.22-590/arch/sh/mm/fault-nommu.c
--- linux-2.6.22-570/arch/sh/mm/fault-nommu.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/sh/mm/fault-nommu.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/arch/sh/mm/fault-nommu.c 2008-03-20 13:28:00.000000000 -0400
@@ -28,10 +28,6 @@
#include <asm/mmu_context.h>
#include <asm/cacheflush.h>
return 1;
diff -Nurb linux-2.6.22-570/arch/sh/mm/fault.c linux-2.6.22-590/arch/sh/mm/fault.c
---- linux-2.6.22-570/arch/sh/mm/fault.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/arch/sh/mm/fault.c 2008-03-18 15:57:53.000000000 -0400
+--- linux-2.6.22-570/arch/sh/mm/fault.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/arch/sh/mm/fault.c 2008-03-20 13:28:00.000000000 -0400
@@ -18,7 +18,6 @@
#include <asm/system.h>
#include <asm/mmu_context.h>
* are always mapped, whether it be due to legacy behaviour in
diff -Nurb linux-2.6.22-570/arch/sparc64/kernel/power.c linux-2.6.22-590/arch/sparc64/kernel/power.c
--- linux-2.6.22-570/arch/sparc64/kernel/power.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/sparc64/kernel/power.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/arch/sparc64/kernel/power.c 2008-03-20 13:28:00.000000000 -0400
@@ -13,6 +13,7 @@
#include <linux/interrupt.h>
#include <linux/pm.h>
printk("power: Error, cannot register IRQ handler.\n");
diff -Nurb linux-2.6.22-570/arch/sparc64/solaris/ioctl.c linux-2.6.22-590/arch/sparc64/solaris/ioctl.c
--- linux-2.6.22-570/arch/sparc64/solaris/ioctl.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/sparc64/solaris/ioctl.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/arch/sparc64/solaris/ioctl.c 2008-03-20 13:28:00.000000000 -0400
@@ -28,6 +28,7 @@
#include <linux/compat.h>
diff -Nurb linux-2.6.22-570/arch/um/Kconfig.debug linux-2.6.22-590/arch/um/Kconfig.debug
--- linux-2.6.22-570/arch/um/Kconfig.debug 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/um/Kconfig.debug 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/arch/um/Kconfig.debug 2008-03-20 13:28:00.000000000 -0400
@@ -47,4 +47,13 @@
If you're involved in UML kernel development and want to use gcov,
say Y. If you're unsure, say N.
endmenu
diff -Nurb linux-2.6.22-570/arch/um/defconfig linux-2.6.22-590/arch/um/defconfig
--- linux-2.6.22-570/arch/um/defconfig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/um/defconfig 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/arch/um/defconfig 2008-03-20 13:28:00.000000000 -0400
@@ -527,3 +527,4 @@
# CONFIG_RCU_TORTURE_TEST is not set
# CONFIG_GPROF is not set
# CONFIG_GCOV is not set
+# CONFIG_DEBUG_STACK_USAGE is not set
diff -Nurb linux-2.6.22-570/arch/x86_64/Kconfig linux-2.6.22-590/arch/x86_64/Kconfig
---- linux-2.6.22-570/arch/x86_64/Kconfig 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/arch/x86_64/Kconfig 2008-03-18 15:57:53.000000000 -0400
+--- linux-2.6.22-570/arch/x86_64/Kconfig 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/arch/x86_64/Kconfig 2008-03-20 13:28:00.000000000 -0400
@@ -698,6 +698,8 @@
source "arch/x86_64/kernel/cpufreq/Kconfig"
menu "Bus options (PCI etc.)"
diff -Nurb linux-2.6.22-570/arch/x86_64/Kconfig.debug linux-2.6.22-590/arch/x86_64/Kconfig.debug
--- linux-2.6.22-570/arch/x86_64/Kconfig.debug 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/x86_64/Kconfig.debug 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/arch/x86_64/Kconfig.debug 2008-03-20 13:28:00.000000000 -0400
@@ -55,7 +55,4 @@
This option will slow down process creation somewhat.
-
endmenu
diff -Nurb linux-2.6.22-570/arch/x86_64/Makefile linux-2.6.22-590/arch/x86_64/Makefile
---- linux-2.6.22-570/arch/x86_64/Makefile 2008-03-18 15:57:35.000000000 -0400
-+++ linux-2.6.22-590/arch/x86_64/Makefile 2008-03-18 15:57:53.000000000 -0400
+--- linux-2.6.22-570/arch/x86_64/Makefile 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/arch/x86_64/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -41,7 +41,9 @@
cflags-y += -mcmodel=kernel
cflags-y += -pipe
# -fweb shrinks the kernel a bit, but the difference is very small
# it also messes up debugging, so don't use it for now.
diff -Nurb linux-2.6.22-570/arch/x86_64/ia32/ia32entry.S linux-2.6.22-590/arch/x86_64/ia32/ia32entry.S
---- linux-2.6.22-570/arch/x86_64/ia32/ia32entry.S 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/arch/x86_64/ia32/ia32entry.S 2008-03-18 15:57:53.000000000 -0400
+--- linux-2.6.22-570/arch/x86_64/ia32/ia32entry.S 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/arch/x86_64/ia32/ia32entry.S 2008-03-20 13:28:00.000000000 -0400
@@ -731,4 +731,7 @@
.quad compat_sys_signalfd
.quad compat_sys_timerfd
+ .quad sys_fallocate
ia32_syscall_end:
diff -Nurb linux-2.6.22-570/arch/x86_64/kernel/Makefile linux-2.6.22-590/arch/x86_64/kernel/Makefile
---- linux-2.6.22-570/arch/x86_64/kernel/Makefile 2008-03-18 15:57:35.000000000 -0400
-+++ linux-2.6.22-590/arch/x86_64/kernel/Makefile 2008-03-18 15:57:53.000000000 -0400
+--- linux-2.6.22-570/arch/x86_64/kernel/Makefile 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/arch/x86_64/kernel/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -33,10 +33,12 @@
obj-$(CONFIG_CALGARY_IOMMU) += pci-calgary.o tce.o
obj-$(CONFIG_SWIOTLB) += pci-swiotlb.o
obj-$(CONFIG_PCI) += early-quirks.o
diff -Nurb linux-2.6.22-570/arch/x86_64/kernel/kgdb-jmp.S linux-2.6.22-590/arch/x86_64/kernel/kgdb-jmp.S
--- linux-2.6.22-570/arch/x86_64/kernel/kgdb-jmp.S 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/x86_64/kernel/kgdb-jmp.S 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/arch/x86_64/kernel/kgdb-jmp.S 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,65 @@
+/*
+ * arch/x86_64/kernel/kgdb-jmp.S
+ jmpq *%rdx
diff -Nurb linux-2.6.22-570/arch/x86_64/kernel/kgdb.c linux-2.6.22-590/arch/x86_64/kernel/kgdb.c
--- linux-2.6.22-570/arch/x86_64/kernel/kgdb.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/x86_64/kernel/kgdb.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/arch/x86_64/kernel/kgdb.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,461 @@
+/*
+ *
+};
diff -Nurb linux-2.6.22-570/arch/x86_64/kernel/mce.c linux-2.6.22-590/arch/x86_64/kernel/mce.c
--- linux-2.6.22-570/arch/x86_64/kernel/mce.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/x86_64/kernel/mce.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/arch/x86_64/kernel/mce.c 2008-03-20 13:28:00.000000000 -0400
@@ -174,7 +174,7 @@
if (events != atomic_read(&mce_logged) && trigger[0]) {
/* Small race window, but should be harmless. */
diff -Nurb linux-2.6.22-570/arch/x86_64/kernel/signal.c linux-2.6.22-590/arch/x86_64/kernel/signal.c
--- linux-2.6.22-570/arch/x86_64/kernel/signal.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/x86_64/kernel/signal.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/arch/x86_64/kernel/signal.c 2008-03-20 13:28:00.000000000 -0400
@@ -480,7 +480,7 @@
void signal_fault(struct pt_regs *regs, void __user *frame, char *where)
{
me->comm,me->pid,where,frame,regs->rip,regs->rsp,regs->orig_rax);
diff -Nurb linux-2.6.22-570/arch/x86_64/kernel/traps.c linux-2.6.22-590/arch/x86_64/kernel/traps.c
---- linux-2.6.22-570/arch/x86_64/kernel/traps.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/arch/x86_64/kernel/traps.c 2008-03-18 15:57:53.000000000 -0400
+--- linux-2.6.22-570/arch/x86_64/kernel/traps.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/arch/x86_64/kernel/traps.c 2008-03-20 13:28:00.000000000 -0400
@@ -96,6 +96,11 @@
}
+#endif
diff -Nurb linux-2.6.22-570/arch/x86_64/kernel/unwind.S linux-2.6.22-590/arch/x86_64/kernel/unwind.S
--- linux-2.6.22-570/arch/x86_64/kernel/unwind.S 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/arch/x86_64/kernel/unwind.S 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/arch/x86_64/kernel/unwind.S 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,38 @@
+/* Assembler support for dwarf2 unwinder */
+#include <linux/linkage.h>
+
diff -Nurb linux-2.6.22-570/arch/x86_64/kernel/vmlinux.lds.S linux-2.6.22-590/arch/x86_64/kernel/vmlinux.lds.S
--- linux-2.6.22-570/arch/x86_64/kernel/vmlinux.lds.S 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/arch/x86_64/kernel/vmlinux.lds.S 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/arch/x86_64/kernel/vmlinux.lds.S 2008-03-20 13:28:00.000000000 -0400
@@ -219,7 +219,9 @@
/* Sections to be discarded */
/DISCARD/ : {
STABS_DEBUG
diff -Nurb linux-2.6.22-570/arch/x86_64/mm/fault.c linux-2.6.22-590/arch/x86_64/mm/fault.c
---- linux-2.6.22-570/arch/x86_64/mm/fault.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/arch/x86_64/mm/fault.c 2008-03-18 15:57:53.000000000 -0400
+--- linux-2.6.22-570/arch/x86_64/mm/fault.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/arch/x86_64/mm/fault.c 2008-03-20 13:28:00.000000000 -0400
@@ -221,16 +221,6 @@
return 0;
}
* Oops. The kernel tried to access some bad page. We'll have to
* terminate things with extreme prejudice.
diff -Nurb linux-2.6.22-570/arch/x86_64/mm/init.c linux-2.6.22-590/arch/x86_64/mm/init.c
---- linux-2.6.22-570/arch/x86_64/mm/init.c 2008-03-18 15:57:35.000000000 -0400
-+++ linux-2.6.22-590/arch/x86_64/mm/init.c 2008-03-18 15:57:53.000000000 -0400
+--- linux-2.6.22-570/arch/x86_64/mm/init.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/arch/x86_64/mm/init.c 2008-03-20 13:28:00.000000000 -0400
@@ -697,41 +697,6 @@
return pfn_valid(pte_pfn(*pte));
}
not need special handling anymore. */
diff -Nurb linux-2.6.22-570/creatinst.sh linux-2.6.22-590/creatinst.sh
--- linux-2.6.22-570/creatinst.sh 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/creatinst.sh 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/creatinst.sh 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,12 @@
+rm -fR inst
+mkdir inst
+ssh -i ~/newvici root@vici-03 reboot
diff -Nurb linux-2.6.22-570/crypto/Kconfig linux-2.6.22-590/crypto/Kconfig
--- linux-2.6.22-570/crypto/Kconfig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/crypto/Kconfig 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/crypto/Kconfig 2008-03-20 13:28:00.000000000 -0400
@@ -1,7 +1,17 @@
#
-# Cryptographic API Configuration
config CRYPTO
diff -Nurb linux-2.6.22-570/crypto/Makefile linux-2.6.22-590/crypto/Makefile
--- linux-2.6.22-570/crypto/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/crypto/Makefile 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/crypto/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -50,3 +50,9 @@
obj-$(CONFIG_CRYPTO_CRC32C) += crc32c.o
+obj-$(CONFIG_ASYNC_CORE) += async_tx/
diff -Nurb linux-2.6.22-570/crypto/async_tx/Kconfig linux-2.6.22-590/crypto/async_tx/Kconfig
--- linux-2.6.22-570/crypto/async_tx/Kconfig 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/crypto/async_tx/Kconfig 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/crypto/async_tx/Kconfig 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,16 @@
+config ASYNC_CORE
+ tristate
+
diff -Nurb linux-2.6.22-570/crypto/async_tx/Makefile linux-2.6.22-590/crypto/async_tx/Makefile
--- linux-2.6.22-570/crypto/async_tx/Makefile 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/crypto/async_tx/Makefile 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/crypto/async_tx/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,4 @@
+obj-$(CONFIG_ASYNC_CORE) += async_tx.o
+obj-$(CONFIG_ASYNC_MEMCPY) += async_memcpy.o
+obj-$(CONFIG_ASYNC_XOR) += async_xor.o
diff -Nurb linux-2.6.22-570/crypto/async_tx/async_memcpy.c linux-2.6.22-590/crypto/async_tx/async_memcpy.c
--- linux-2.6.22-570/crypto/async_tx/async_memcpy.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/crypto/async_tx/async_memcpy.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/crypto/async_tx/async_memcpy.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,131 @@
+/*
+ * copy offload engine support
+MODULE_LICENSE("GPL");
diff -Nurb linux-2.6.22-570/crypto/async_tx/async_memset.c linux-2.6.22-590/crypto/async_tx/async_memset.c
--- linux-2.6.22-570/crypto/async_tx/async_memset.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/crypto/async_tx/async_memset.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/crypto/async_tx/async_memset.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,109 @@
+/*
+ * memory fill offload engine support
+MODULE_LICENSE("GPL");
diff -Nurb linux-2.6.22-570/crypto/async_tx/async_tx.c linux-2.6.22-590/crypto/async_tx/async_tx.c
--- linux-2.6.22-570/crypto/async_tx/async_tx.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/crypto/async_tx/async_tx.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/crypto/async_tx/async_tx.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,497 @@
+/*
+ * core routines for the asynchronous memory transfer/transform api
+MODULE_LICENSE("GPL");
diff -Nurb linux-2.6.22-570/crypto/async_tx/async_xor.c linux-2.6.22-590/crypto/async_tx/async_xor.c
--- linux-2.6.22-570/crypto/async_tx/async_xor.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/crypto/async_tx/async_xor.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/crypto/async_tx/async_xor.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,327 @@
+/*
+ * xor offload engine api
+MODULE_LICENSE("GPL");
diff -Nurb linux-2.6.22-570/crypto/xor.c linux-2.6.22-590/crypto/xor.c
--- linux-2.6.22-570/crypto/xor.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/crypto/xor.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/crypto/xor.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,155 @@
+/*
+ * xor.c : Multiple Devices driver for Linux
+module_exit(xor_exit);
diff -Nurb linux-2.6.22-570/drivers/Makefile linux-2.6.22-590/drivers/Makefile
--- linux-2.6.22-570/drivers/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/Makefile 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -70,6 +70,7 @@
obj-$(CONFIG_MCA) += mca/
obj-$(CONFIG_EISA) += eisa/
obj-$(CONFIG_INFINIBAND) += infiniband/
diff -Nurb linux-2.6.22-570/drivers/acpi/Kconfig linux-2.6.22-590/drivers/acpi/Kconfig
--- linux-2.6.22-570/drivers/acpi/Kconfig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/acpi/Kconfig 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/acpi/Kconfig 2008-03-20 13:28:00.000000000 -0400
@@ -124,7 +124,7 @@
config ACPI_VIDEO
default y
diff -Nurb linux-2.6.22-570/drivers/acpi/battery.c linux-2.6.22-590/drivers/acpi/battery.c
--- linux-2.6.22-570/drivers/acpi/battery.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/acpi/battery.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/acpi/battery.c 2008-03-20 13:28:00.000000000 -0400
@@ -43,21 +43,30 @@
#define ACPI_BATTERY_CLASS "battery"
#define ACPI_BATTERY_HID "PNP0C0A"
acpi_unlock_battery_dir(acpi_battery_dir);
diff -Nurb linux-2.6.22-570/drivers/acpi/bay.c linux-2.6.22-590/drivers/acpi/bay.c
--- linux-2.6.22-570/drivers/acpi/bay.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/acpi/bay.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/acpi/bay.c 2008-03-20 13:28:00.000000000 -0400
@@ -288,6 +288,11 @@
new_bay->pdev = pdev;
platform_set_drvdata(pdev, new_bay);
static acpi_status
diff -Nurb linux-2.6.22-570/drivers/acpi/dock.c linux-2.6.22-590/drivers/acpi/dock.c
---- linux-2.6.22-570/drivers/acpi/dock.c 2008-03-18 15:57:35.000000000 -0400
-+++ linux-2.6.22-590/drivers/acpi/dock.c 2008-03-18 15:57:53.000000000 -0400
+--- linux-2.6.22-570/drivers/acpi/dock.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/drivers/acpi/dock.c 2008-03-20 13:28:00.000000000 -0400
@@ -40,8 +40,15 @@
MODULE_DESCRIPTION(ACPI_DOCK_DRIVER_DESCRIPTION);
MODULE_LICENSE("GPL");
* @handle: the dock station handle
diff -Nurb linux-2.6.22-570/drivers/acpi/ec.c linux-2.6.22-590/drivers/acpi/ec.c
--- linux-2.6.22-570/drivers/acpi/ec.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/acpi/ec.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/acpi/ec.c 2008-03-20 13:28:00.000000000 -0400
@@ -34,25 +34,26 @@
#include <linux/proc_fs.h>
#include <linux/seq_file.h>
boot_ec->data_addr = ecdt_ptr->data.address;
diff -Nurb linux-2.6.22-570/drivers/acpi/osl.c linux-2.6.22-590/drivers/acpi/osl.c
--- linux-2.6.22-570/drivers/acpi/osl.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/acpi/osl.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/acpi/osl.c 2008-03-20 13:28:00.000000000 -0400
@@ -77,13 +77,7 @@
#define OSI_STRING_LENGTH_MAX 64 /* arbitrary */
static char osi_additional_string[OSI_STRING_LENGTH_MAX];
};
#endif /* CONFIG_DMI */
diff -Nurb linux-2.6.22-570/drivers/acpi/processor_core.c linux-2.6.22-590/drivers/acpi/processor_core.c
---- linux-2.6.22-570/drivers/acpi/processor_core.c 2008-03-18 15:57:35.000000000 -0400
-+++ linux-2.6.22-590/drivers/acpi/processor_core.c 2008-03-18 15:57:53.000000000 -0400
+--- linux-2.6.22-570/drivers/acpi/processor_core.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/drivers/acpi/processor_core.c 2008-03-20 13:28:00.000000000 -0400
@@ -44,6 +44,7 @@
#include <linux/seq_file.h>
#include <linux/dmi.h>
acpi_processor_ppc_exit();
diff -Nurb linux-2.6.22-570/drivers/acpi/processor_idle.c linux-2.6.22-590/drivers/acpi/processor_idle.c
---- linux-2.6.22-570/drivers/acpi/processor_idle.c 2008-03-18 15:57:35.000000000 -0400
-+++ linux-2.6.22-590/drivers/acpi/processor_idle.c 2008-03-18 15:57:53.000000000 -0400
+--- linux-2.6.22-570/drivers/acpi/processor_idle.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/drivers/acpi/processor_idle.c 2008-03-20 13:28:00.000000000 -0400
@@ -40,6 +40,7 @@
#include <linux/sched.h> /* need_resched() */
#include <linux/latency.h>
+};
diff -Nurb linux-2.6.22-570/drivers/acpi/processor_throttling.c linux-2.6.22-590/drivers/acpi/processor_throttling.c
--- linux-2.6.22-570/drivers/acpi/processor_throttling.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/acpi/processor_throttling.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/acpi/processor_throttling.c 2008-03-20 13:28:00.000000000 -0400
@@ -44,17 +44,231 @@
#define _COMPONENT ACPI_PROCESSOR_COMPONENT
ACPI_MODULE_NAME("processor_throttling");
diff -Nurb linux-2.6.22-570/drivers/acpi/sbs.c linux-2.6.22-590/drivers/acpi/sbs.c
--- linux-2.6.22-570/drivers/acpi/sbs.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/acpi/sbs.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/acpi/sbs.c 2008-03-20 13:28:00.000000000 -0400
@@ -127,7 +127,7 @@
static struct acpi_driver acpi_sbs_driver = {
.name = "sbs",
if (result)
diff -Nurb linux-2.6.22-570/drivers/acpi/system.c linux-2.6.22-590/drivers/acpi/system.c
--- linux-2.6.22-570/drivers/acpi/system.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/acpi/system.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/acpi/system.c 2008-03-20 13:28:00.000000000 -0400
@@ -39,15 +39,12 @@
#define ACPI_SYSTEM_CLASS "system"
subsys_initcall(acpi_system_init);
diff -Nurb linux-2.6.22-570/drivers/acpi/thermal.c linux-2.6.22-590/drivers/acpi/thermal.c
--- linux-2.6.22-570/drivers/acpi/thermal.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/acpi/thermal.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/acpi/thermal.c 2008-03-20 13:28:00.000000000 -0400
@@ -40,6 +40,7 @@
#include <linux/jiffies.h>
#include <linux/kmod.h>
case ACPI_THERMAL_NOTIFY_DEVICES:
diff -Nurb linux-2.6.22-570/drivers/acpi/utilities/uteval.c linux-2.6.22-590/drivers/acpi/utilities/uteval.c
--- linux-2.6.22-570/drivers/acpi/utilities/uteval.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/acpi/utilities/uteval.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/acpi/utilities/uteval.c 2008-03-20 13:28:00.000000000 -0400
@@ -62,16 +62,13 @@
static char *acpi_interfaces_supported[] = {
/* Operating System Vendor Strings */
diff -Nurb linux-2.6.22-570/drivers/acpi/video.c linux-2.6.22-590/drivers/acpi/video.c
--- linux-2.6.22-570/drivers/acpi/video.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/acpi/video.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/acpi/video.c 2008-03-20 13:28:00.000000000 -0400
@@ -33,6 +33,7 @@
#include <linux/seq_file.h>
diff -Nurb linux-2.6.22-570/drivers/atm/idt77252.c linux-2.6.22-590/drivers/atm/idt77252.c
--- linux-2.6.22-570/drivers/atm/idt77252.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/atm/idt77252.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/atm/idt77252.c 2008-03-20 13:28:00.000000000 -0400
@@ -3576,7 +3576,7 @@
* XXX: <hack>
*/
diff -Nurb linux-2.6.22-570/drivers/base/bus.c linux-2.6.22-590/drivers/base/bus.c
--- linux-2.6.22-570/drivers/base/bus.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/base/bus.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/base/bus.c 2008-03-20 13:28:00.000000000 -0400
@@ -562,7 +562,6 @@
bus->drivers_probe_attr.attr.name = "drivers_probe";
retval = bus_create_file(bus, &bus->drivers_autoprobe_attr);
diff -Nurb linux-2.6.22-570/drivers/base/class.c linux-2.6.22-590/drivers/base/class.c
--- linux-2.6.22-570/drivers/base/class.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/base/class.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/base/class.c 2008-03-20 13:28:00.000000000 -0400
@@ -134,6 +134,17 @@
}
}
diff -Nurb linux-2.6.22-570/drivers/base/core.c linux-2.6.22-590/drivers/base/core.c
--- linux-2.6.22-570/drivers/base/core.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/base/core.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/base/core.c 2008-03-20 13:28:00.000000000 -0400
@@ -310,6 +310,9 @@
return count;
}
}
diff -Nurb linux-2.6.22-570/drivers/base/dd.c linux-2.6.22-590/drivers/base/dd.c
--- linux-2.6.22-570/drivers/base/dd.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/base/dd.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/base/dd.c 2008-03-20 13:28:00.000000000 -0400
@@ -296,9 +296,8 @@
{
struct device_driver * drv;
klist_remove(&dev->knode_driver);
diff -Nurb linux-2.6.22-570/drivers/base/firmware_class.c linux-2.6.22-590/drivers/base/firmware_class.c
--- linux-2.6.22-570/drivers/base/firmware_class.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/base/firmware_class.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/base/firmware_class.c 2008-03-20 13:28:00.000000000 -0400
@@ -175,7 +175,7 @@
static DEVICE_ATTR(loading, 0644, firmware_loading_show, firmware_loading_store);
.write = firmware_data_write,
diff -Nurb linux-2.6.22-570/drivers/block/acsi_slm.c linux-2.6.22-590/drivers/block/acsi_slm.c
--- linux-2.6.22-570/drivers/block/acsi_slm.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/block/acsi_slm.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/block/acsi_slm.c 2008-03-20 13:28:00.000000000 -0400
@@ -367,7 +367,7 @@
int length;
int end;
length = slm_getstats( (char *)page, iminor(node) );
diff -Nurb linux-2.6.22-570/drivers/block/aoe/aoecmd.c linux-2.6.22-590/drivers/block/aoe/aoecmd.c
--- linux-2.6.22-570/drivers/block/aoe/aoecmd.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/block/aoe/aoecmd.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/block/aoe/aoecmd.c 2008-03-20 13:28:00.000000000 -0400
@@ -9,6 +9,7 @@
#include <linux/skbuff.h>
#include <linux/netdevice.h>
goto cont;
diff -Nurb linux-2.6.22-570/drivers/block/aoe/aoenet.c linux-2.6.22-590/drivers/block/aoe/aoenet.c
--- linux-2.6.22-570/drivers/block/aoe/aoenet.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/block/aoe/aoenet.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/block/aoe/aoenet.c 2008-03-20 13:28:00.000000000 -0400
@@ -8,6 +8,7 @@
#include <linux/blkdev.h>
#include <linux/netdevice.h>
return 0;
diff -Nurb linux-2.6.22-570/drivers/block/cciss_scsi.c linux-2.6.22-590/drivers/block/cciss_scsi.c
--- linux-2.6.22-570/drivers/block/cciss_scsi.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/block/cciss_scsi.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/block/cciss_scsi.c 2008-03-20 13:28:00.000000000 -0400
@@ -555,7 +555,6 @@
{
struct scsi_cmnd *cmd;
}
diff -Nurb linux-2.6.22-570/drivers/block/loop.c linux-2.6.22-590/drivers/block/loop.c
---- linux-2.6.22-570/drivers/block/loop.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/drivers/block/loop.c 2008-03-18 15:57:53.000000000 -0400
+--- linux-2.6.22-570/drivers/block/loop.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/drivers/block/loop.c 2008-03-20 13:28:00.000000000 -0400
@@ -68,6 +68,7 @@
#include <linux/loop.h>
#include <linux/compat.h>
while (!kthread_should_stop() || lo->lo_bio) {
diff -Nurb linux-2.6.22-570/drivers/block/pktcdvd.c linux-2.6.22-590/drivers/block/pktcdvd.c
--- linux-2.6.22-570/drivers/block/pktcdvd.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/block/pktcdvd.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/block/pktcdvd.c 2008-03-20 13:28:00.000000000 -0400
@@ -146,8 +146,7 @@
**********************************************************/
DECLARE_WAITQUEUE(wait, current);
diff -Nurb linux-2.6.22-570/drivers/char/apm-emulation.c linux-2.6.22-590/drivers/char/apm-emulation.c
--- linux-2.6.22-570/drivers/char/apm-emulation.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/char/apm-emulation.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/char/apm-emulation.c 2008-03-20 13:28:00.000000000 -0400
@@ -20,6 +20,7 @@
#include <linux/sched.h>
#include <linux/pm.h>
#ifdef CONFIG_PROC_FS
diff -Nurb linux-2.6.22-570/drivers/char/hvc_console.c linux-2.6.22-590/drivers/char/hvc_console.c
--- linux-2.6.22-570/drivers/char/hvc_console.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/char/hvc_console.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/char/hvc_console.c 2008-03-20 13:28:00.000000000 -0400
@@ -674,11 +674,12 @@
* calling hvc_poll() who determines whether a console adapter support
* interrupts.
poll_mask = 0;
diff -Nurb linux-2.6.22-570/drivers/char/ipmi/ipmi_msghandler.c linux-2.6.22-590/drivers/char/ipmi/ipmi_msghandler.c
--- linux-2.6.22-570/drivers/char/ipmi/ipmi_msghandler.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/char/ipmi/ipmi_msghandler.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/char/ipmi/ipmi_msghandler.c 2008-03-20 13:28:00.000000000 -0400
@@ -2171,52 +2171,42 @@
int err;
diff -Nurb linux-2.6.22-570/drivers/char/keyboard.c linux-2.6.22-590/drivers/char/keyboard.c
--- linux-2.6.22-570/drivers/char/keyboard.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/char/keyboard.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/char/keyboard.c 2008-03-20 13:28:00.000000000 -0400
@@ -1150,6 +1150,7 @@
sysrq_down = 0;
if (sysrq_down && down && !rep) {
#endif
diff -Nurb linux-2.6.22-570/drivers/connector/connector.c linux-2.6.22-590/drivers/connector/connector.c
--- linux-2.6.22-570/drivers/connector/connector.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/connector/connector.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/connector/connector.c 2008-03-20 13:28:00.000000000 -0400
@@ -446,7 +446,7 @@
dev->id.idx = cn_idx;
dev->id.val = cn_val;
if (!dev->nls)
diff -Nurb linux-2.6.22-570/drivers/cpufreq/cpufreq_stats.c linux-2.6.22-590/drivers/cpufreq/cpufreq_stats.c
--- linux-2.6.22-570/drivers/cpufreq/cpufreq_stats.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/cpufreq/cpufreq_stats.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/cpufreq/cpufreq_stats.c 2008-03-20 13:28:00.000000000 -0400
@@ -25,8 +25,7 @@
#define CPUFREQ_STATDEVICE_ATTR(_name,_mode,_show) \
diff -Nurb linux-2.6.22-570/drivers/cpufreq/cpufreq_userspace.c linux-2.6.22-590/drivers/cpufreq/cpufreq_userspace.c
--- linux-2.6.22-570/drivers/cpufreq/cpufreq_userspace.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/cpufreq/cpufreq_userspace.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/cpufreq/cpufreq_userspace.c 2008-03-20 13:28:00.000000000 -0400
@@ -120,7 +120,7 @@
static struct freq_attr freq_attr_scaling_setspeed =
};
diff -Nurb linux-2.6.22-570/drivers/cpufreq/freq_table.c linux-2.6.22-590/drivers/cpufreq/freq_table.c
--- linux-2.6.22-570/drivers/cpufreq/freq_table.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/cpufreq/freq_table.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/cpufreq/freq_table.c 2008-03-20 13:28:00.000000000 -0400
@@ -199,7 +199,6 @@
struct freq_attr cpufreq_freq_attr_scaling_available_freqs = {
.attr = { .name = "scaling_available_frequencies",
};
diff -Nurb linux-2.6.22-570/drivers/cpuidle/Kconfig linux-2.6.22-590/drivers/cpuidle/Kconfig
--- linux-2.6.22-570/drivers/cpuidle/Kconfig 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/cpuidle/Kconfig 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/cpuidle/Kconfig 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,39 @@
+menu "CPU idle PM support"
+
+endmenu
diff -Nurb linux-2.6.22-570/drivers/cpuidle/Makefile linux-2.6.22-590/drivers/cpuidle/Makefile
--- linux-2.6.22-570/drivers/cpuidle/Makefile 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/cpuidle/Makefile 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/cpuidle/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,5 @@
+#
+# Makefile for cpuidle.
+obj-y += cpuidle.o driver.o governor.o sysfs.o governors/
diff -Nurb linux-2.6.22-570/drivers/cpuidle/cpuidle.c linux-2.6.22-590/drivers/cpuidle/cpuidle.c
--- linux-2.6.22-570/drivers/cpuidle/cpuidle.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/cpuidle/cpuidle.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/cpuidle/cpuidle.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,306 @@
+/*
+ * cpuidle.c - core cpuidle infrastructure
+core_initcall(cpuidle_init);
diff -Nurb linux-2.6.22-570/drivers/cpuidle/cpuidle.h linux-2.6.22-590/drivers/cpuidle/cpuidle.h
--- linux-2.6.22-570/drivers/cpuidle/cpuidle.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/cpuidle/cpuidle.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/cpuidle/cpuidle.h 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,50 @@
+/*
+ * cpuidle.h - The internal header file
+#endif /* __DRIVER_CPUIDLE_H */
diff -Nurb linux-2.6.22-570/drivers/cpuidle/driver.c linux-2.6.22-590/drivers/cpuidle/driver.c
--- linux-2.6.22-570/drivers/cpuidle/driver.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/cpuidle/driver.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/cpuidle/driver.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,276 @@
+/*
+ * driver.c - driver support
+
diff -Nurb linux-2.6.22-570/drivers/cpuidle/governor.c linux-2.6.22-590/drivers/cpuidle/governor.c
--- linux-2.6.22-570/drivers/cpuidle/governor.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/cpuidle/governor.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/cpuidle/governor.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,160 @@
+/*
+ * governor.c - governor support
+EXPORT_SYMBOL_GPL(cpuidle_unregister_governor);
diff -Nurb linux-2.6.22-570/drivers/cpuidle/governors/Makefile linux-2.6.22-590/drivers/cpuidle/governors/Makefile
--- linux-2.6.22-570/drivers/cpuidle/governors/Makefile 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/cpuidle/governors/Makefile 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/cpuidle/governors/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,6 @@
+#
+# Makefile for cpuidle governors.
+obj-$(CONFIG_CPU_IDLE_GOV_MENU) += menu.o
diff -Nurb linux-2.6.22-570/drivers/cpuidle/governors/ladder.c linux-2.6.22-590/drivers/cpuidle/governors/ladder.c
--- linux-2.6.22-570/drivers/cpuidle/governors/ladder.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/cpuidle/governors/ladder.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/cpuidle/governors/ladder.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,227 @@
+/*
+ * ladder.c - the residency ladder algorithm
+module_exit(exit_ladder);
diff -Nurb linux-2.6.22-570/drivers/cpuidle/governors/menu.c linux-2.6.22-590/drivers/cpuidle/governors/menu.c
--- linux-2.6.22-570/drivers/cpuidle/governors/menu.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/cpuidle/governors/menu.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/cpuidle/governors/menu.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,152 @@
+/*
+ * menu.c - the menu idle governor
+module_exit(exit_menu);
diff -Nurb linux-2.6.22-570/drivers/cpuidle/sysfs.c linux-2.6.22-590/drivers/cpuidle/sysfs.c
--- linux-2.6.22-570/drivers/cpuidle/sysfs.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/cpuidle/sysfs.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/cpuidle/sysfs.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,393 @@
+/*
+ * sysfs.c - sysfs support
+}
diff -Nurb linux-2.6.22-570/drivers/dma/Kconfig linux-2.6.22-590/drivers/dma/Kconfig
--- linux-2.6.22-570/drivers/dma/Kconfig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/dma/Kconfig 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/dma/Kconfig 2008-03-20 13:28:00.000000000 -0400
@@ -8,8 +8,8 @@
config DMA_ENGINE
bool "Support for DMA engines"
endmenu
diff -Nurb linux-2.6.22-570/drivers/dma/Makefile linux-2.6.22-590/drivers/dma/Makefile
--- linux-2.6.22-570/drivers/dma/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/dma/Makefile 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/dma/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -1,3 +1,4 @@
obj-$(CONFIG_DMA_ENGINE) += dmaengine.o
obj-$(CONFIG_NET_DMA) += iovlock.o
+obj-$(CONFIG_INTEL_IOP_ADMA) += iop-adma.o
diff -Nurb linux-2.6.22-570/drivers/dma/dmaengine.c linux-2.6.22-590/drivers/dma/dmaengine.c
--- linux-2.6.22-570/drivers/dma/dmaengine.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/dma/dmaengine.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/dma/dmaengine.c 2008-03-20 13:28:00.000000000 -0400
@@ -37,11 +37,11 @@
* Each device has a channels list, which runs unlocked but is never modified
* once the device is registered, it's just setup by the driver.
mutex_init(&dma_list_mutex);
diff -Nurb linux-2.6.22-570/drivers/dma/ioatdma.c linux-2.6.22-590/drivers/dma/ioatdma.c
--- linux-2.6.22-570/drivers/dma/ioatdma.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/dma/ioatdma.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/dma/ioatdma.c 2008-03-20 13:28:00.000000000 -0400
@@ -39,6 +39,7 @@
#define to_ioat_chan(chan) container_of(chan, struct ioat_dma_chan, common)
#define to_ioat_device(dev) container_of(dev, struct ioat_device, common)
diff -Nurb linux-2.6.22-570/drivers/dma/ioatdma.h linux-2.6.22-590/drivers/dma/ioatdma.h
--- linux-2.6.22-570/drivers/dma/ioatdma.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/dma/ioatdma.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/dma/ioatdma.h 2008-03-20 13:28:00.000000000 -0400
@@ -30,9 +30,6 @@
#define IOAT_LOW_COMPLETION_MASK 0xffffffc0
-
diff -Nurb linux-2.6.22-570/drivers/dma/iop-adma.c linux-2.6.22-590/drivers/dma/iop-adma.c
--- linux-2.6.22-570/drivers/dma/iop-adma.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/dma/iop-adma.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/dma/iop-adma.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,1465 @@
+/*
+ * offload engine driver for the Intel Xscale series of i/o processors
+MODULE_LICENSE("GPL");
diff -Nurb linux-2.6.22-570/drivers/edac/edac_mc.c linux-2.6.22-590/drivers/edac/edac_mc.c
--- linux-2.6.22-570/drivers/edac/edac_mc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/edac/edac_mc.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/edac/edac_mc.c 2008-03-20 13:28:00.000000000 -0400
@@ -1906,6 +1906,7 @@
static int edac_kernel_thread(void *arg)
diff -Nurb linux-2.6.22-570/drivers/firmware/dcdbas.c linux-2.6.22-590/drivers/firmware/dcdbas.c
--- linux-2.6.22-570/drivers/firmware/dcdbas.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/firmware/dcdbas.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/firmware/dcdbas.c 2008-03-20 13:28:00.000000000 -0400
@@ -149,8 +149,9 @@
return count;
}
diff -Nurb linux-2.6.22-570/drivers/firmware/dcdbas.h linux-2.6.22-590/drivers/firmware/dcdbas.h
--- linux-2.6.22-570/drivers/firmware/dcdbas.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/firmware/dcdbas.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/firmware/dcdbas.h 2008-03-20 13:28:00.000000000 -0400
@@ -67,8 +67,7 @@
#define DCDBAS_BIN_ATTR_RW(_name) \
struct bin_attribute bin_attr_##_name = { \
}
diff -Nurb linux-2.6.22-570/drivers/firmware/dell_rbu.c linux-2.6.22-590/drivers/firmware/dell_rbu.c
--- linux-2.6.22-570/drivers/firmware/dell_rbu.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/firmware/dell_rbu.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/firmware/dell_rbu.c 2008-03-20 13:28:00.000000000 -0400
@@ -543,8 +543,9 @@
return ret_count;
}
};
diff -Nurb linux-2.6.22-570/drivers/firmware/edd.c linux-2.6.22-590/drivers/firmware/edd.c
--- linux-2.6.22-570/drivers/firmware/edd.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/firmware/edd.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/firmware/edd.c 2008-03-20 13:28:00.000000000 -0400
@@ -74,7 +74,7 @@
#define EDD_DEVICE_ATTR(_name,_mode,_show,_test) \
};
diff -Nurb linux-2.6.22-570/drivers/firmware/efivars.c linux-2.6.22-590/drivers/firmware/efivars.c
--- linux-2.6.22-570/drivers/firmware/efivars.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/firmware/efivars.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/firmware/efivars.c 2008-03-20 13:28:00.000000000 -0400
@@ -131,21 +131,21 @@
#define EFI_ATTR(_name, _mode, _show, _store) \
.store = _store, \
};
diff -Nurb linux-2.6.22-570/drivers/i2c/chips/eeprom.c linux-2.6.22-590/drivers/i2c/chips/eeprom.c
---- linux-2.6.22-570/drivers/i2c/chips/eeprom.c 2008-03-18 15:57:35.000000000 -0400
-+++ linux-2.6.22-590/drivers/i2c/chips/eeprom.c 2008-03-18 15:57:53.000000000 -0400
+--- linux-2.6.22-570/drivers/i2c/chips/eeprom.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/drivers/i2c/chips/eeprom.c 2008-03-20 13:28:00.000000000 -0400
@@ -110,7 +110,8 @@
mutex_unlock(&data->update_lock);
}
.read = eeprom_read,
diff -Nurb linux-2.6.22-570/drivers/i2c/chips/max6875.c linux-2.6.22-590/drivers/i2c/chips/max6875.c
--- linux-2.6.22-570/drivers/i2c/chips/max6875.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/i2c/chips/max6875.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/i2c/chips/max6875.c 2008-03-20 13:28:00.000000000 -0400
@@ -125,8 +125,9 @@
mutex_unlock(&data->update_lock);
}
.size = USER_EEPROM_SIZE,
.read = max6875_read,
diff -Nurb linux-2.6.22-570/drivers/ieee1394/ieee1394_core.c linux-2.6.22-590/drivers/ieee1394/ieee1394_core.c
---- linux-2.6.22-570/drivers/ieee1394/ieee1394_core.c 2008-03-18 15:57:35.000000000 -0400
-+++ linux-2.6.22-590/drivers/ieee1394/ieee1394_core.c 2008-03-18 15:57:53.000000000 -0400
+--- linux-2.6.22-570/drivers/ieee1394/ieee1394_core.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/drivers/ieee1394/ieee1394_core.c 2008-03-20 13:28:00.000000000 -0400
@@ -30,6 +30,7 @@
#include <linux/moduleparam.h>
#include <linux/bitops.h>
INIT_LIST_HEAD(&tmp);
diff -Nurb linux-2.6.22-570/drivers/ieee1394/nodemgr.c linux-2.6.22-590/drivers/ieee1394/nodemgr.c
--- linux-2.6.22-570/drivers/ieee1394/nodemgr.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/ieee1394/nodemgr.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/ieee1394/nodemgr.c 2008-03-20 13:28:00.000000000 -0400
@@ -1669,6 +1669,7 @@
unsigned int g, generation = 0;
int i, reset_cycles = 0;
nodemgr_create_host_dev_files(host);
diff -Nurb linux-2.6.22-570/drivers/ieee1394/sbp2.c linux-2.6.22-590/drivers/ieee1394/sbp2.c
---- linux-2.6.22-570/drivers/ieee1394/sbp2.c 2008-03-18 15:57:35.000000000 -0400
-+++ linux-2.6.22-590/drivers/ieee1394/sbp2.c 2008-03-18 15:57:53.000000000 -0400
+--- linux-2.6.22-570/drivers/ieee1394/sbp2.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/drivers/ieee1394/sbp2.c 2008-03-20 13:28:00.000000000 -0400
@@ -1505,69 +1505,6 @@
}
}
diff -Nurb linux-2.6.22-570/drivers/infiniband/core/addr.c linux-2.6.22-590/drivers/infiniband/core/addr.c
--- linux-2.6.22-570/drivers/infiniband/core/addr.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/infiniband/core/addr.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/infiniband/core/addr.c 2008-03-20 13:28:00.000000000 -0400
@@ -110,7 +110,7 @@
__be32 ip = ((struct sockaddr_in *) addr)->sin_addr.s_addr;
int ret;
diff -Nurb linux-2.6.22-570/drivers/infiniband/core/cma.c linux-2.6.22-590/drivers/infiniband/core/cma.c
--- linux-2.6.22-570/drivers/infiniband/core/cma.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/infiniband/core/cma.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/infiniband/core/cma.c 2008-03-20 13:28:00.000000000 -0400
@@ -1267,7 +1267,7 @@
atomic_inc(&conn_id->dev_remove);
conn_id->state = CMA_CONNECT;
return -ENOMEM;
diff -Nurb linux-2.6.22-570/drivers/infiniband/core/sysfs.c linux-2.6.22-590/drivers/infiniband/core/sysfs.c
--- linux-2.6.22-570/drivers/infiniband/core/sysfs.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/infiniband/core/sysfs.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/infiniband/core/sysfs.c 2008-03-20 13:28:00.000000000 -0400
@@ -479,7 +479,6 @@
element->attr.attr.name = element->name;
diff -Nurb linux-2.6.22-570/drivers/infiniband/ulp/iser/iscsi_iser.c linux-2.6.22-590/drivers/infiniband/ulp/iser/iscsi_iser.c
--- linux-2.6.22-570/drivers/infiniband/ulp/iser/iscsi_iser.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/infiniband/ulp/iser/iscsi_iser.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/infiniband/ulp/iser/iscsi_iser.c 2008-03-20 13:28:00.000000000 -0400
@@ -134,19 +134,9 @@
{
struct iscsi_iser_conn *iser_conn = ctask->conn->dd_data;
.get_stats = iscsi_iser_conn_get_stats,
diff -Nurb linux-2.6.22-570/drivers/infiniband/ulp/iser/iscsi_iser.h linux-2.6.22-590/drivers/infiniband/ulp/iser/iscsi_iser.h
--- linux-2.6.22-570/drivers/infiniband/ulp/iser/iscsi_iser.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/infiniband/ulp/iser/iscsi_iser.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/infiniband/ulp/iser/iscsi_iser.h 2008-03-20 13:28:00.000000000 -0400
@@ -98,7 +98,7 @@
#define ISER_MAX_TX_MISC_PDUS 6 /* NOOP_OUT(2), TEXT(1), *
* SCSI_TMFUNC(2), LOGOUT(1) */
ISER_MAX_RX_MISC_PDUS)
diff -Nurb linux-2.6.22-570/drivers/infiniband/ulp/iser/iser_initiator.c linux-2.6.22-590/drivers/infiniband/ulp/iser/iser_initiator.c
--- linux-2.6.22-570/drivers/infiniband/ulp/iser/iser_initiator.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/infiniband/ulp/iser/iser_initiator.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/infiniband/ulp/iser/iser_initiator.c 2008-03-20 13:28:00.000000000 -0400
@@ -351,18 +351,12 @@
else
data_buf = &iser_ctask->data[ISER_DIR_OUT];
err = iser_prepare_read_cmd(ctask, edtl);
diff -Nurb linux-2.6.22-570/drivers/infiniband/ulp/iser/iser_verbs.c linux-2.6.22-590/drivers/infiniband/ulp/iser/iser_verbs.c
--- linux-2.6.22-570/drivers/infiniband/ulp/iser/iser_verbs.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/infiniband/ulp/iser/iser_verbs.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/infiniband/ulp/iser/iser_verbs.c 2008-03-20 13:28:00.000000000 -0400
@@ -155,8 +155,8 @@
params.max_pages_per_fmr = ISCSI_ISER_SG_TABLESIZE + 1;
/* make the pool size twice the max number of SCSI commands *
params.access = (IB_ACCESS_LOCAL_WRITE |
diff -Nurb linux-2.6.22-570/drivers/infiniband/ulp/srp/ib_srp.c linux-2.6.22-590/drivers/infiniband/ulp/srp/ib_srp.c
--- linux-2.6.22-570/drivers/infiniband/ulp/srp/ib_srp.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/infiniband/ulp/srp/ib_srp.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/infiniband/ulp/srp/ib_srp.c 2008-03-20 13:28:00.000000000 -0400
@@ -455,10 +455,7 @@
struct srp_target_port *target,
struct srp_request *req)
scmnd->host_scribble = (void *) -1L;
diff -Nurb linux-2.6.22-570/drivers/infiniband/ulp/srp/ib_srp.h linux-2.6.22-590/drivers/infiniband/ulp/srp/ib_srp.h
--- linux-2.6.22-570/drivers/infiniband/ulp/srp/ib_srp.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/infiniband/ulp/srp/ib_srp.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/infiniband/ulp/srp/ib_srp.h 2008-03-20 13:28:00.000000000 -0400
@@ -106,11 +106,6 @@
struct srp_iu *cmd;
struct srp_iu *tsk_mgmt;
u8 cmd_done;
diff -Nurb linux-2.6.22-570/drivers/input/gameport/gameport.c linux-2.6.22-590/drivers/input/gameport/gameport.c
--- linux-2.6.22-570/drivers/input/gameport/gameport.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/input/gameport/gameport.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/input/gameport/gameport.c 2008-03-20 13:28:00.000000000 -0400
@@ -445,6 +445,7 @@
static int gameport_thread(void *nothing)
wait_event_interruptible(gameport_wait,
diff -Nurb linux-2.6.22-570/drivers/input/mouse/psmouse.h linux-2.6.22-590/drivers/input/mouse/psmouse.h
--- linux-2.6.22-570/drivers/input/mouse/psmouse.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/input/mouse/psmouse.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/input/mouse/psmouse.h 2008-03-20 13:28:00.000000000 -0400
@@ -118,7 +118,6 @@
.attr = { \
.name = __stringify(_name), \
.store = psmouse_attr_set_helper, \
diff -Nurb linux-2.6.22-570/drivers/input/serio/serio.c linux-2.6.22-590/drivers/input/serio/serio.c
--- linux-2.6.22-570/drivers/input/serio/serio.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/input/serio/serio.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/input/serio/serio.c 2008-03-20 13:28:00.000000000 -0400
@@ -384,6 +384,7 @@
static int serio_thread(void *nothing)
wait_event_interruptible(serio_wait,
diff -Nurb linux-2.6.22-570/drivers/input/touchscreen/ucb1400_ts.c linux-2.6.22-590/drivers/input/touchscreen/ucb1400_ts.c
--- linux-2.6.22-570/drivers/input/touchscreen/ucb1400_ts.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/input/touchscreen/ucb1400_ts.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/input/touchscreen/ucb1400_ts.c 2008-03-20 13:28:00.000000000 -0400
@@ -292,6 +292,7 @@
sched_setscheduler(tsk, SCHED_FIFO, ¶m);
long timeout;
diff -Nurb linux-2.6.22-570/drivers/isdn/divert/divert_procfs.c linux-2.6.22-590/drivers/isdn/divert/divert_procfs.c
--- linux-2.6.22-570/drivers/isdn/divert/divert_procfs.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/isdn/divert/divert_procfs.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/isdn/divert/divert_procfs.c 2008-03-20 13:28:00.000000000 -0400
@@ -17,6 +17,7 @@
#include <linux/fs.h>
#endif
return (0);
diff -Nurb linux-2.6.22-570/drivers/isdn/hardware/eicon/diva_didd.c linux-2.6.22-590/drivers/isdn/hardware/eicon/diva_didd.c
--- linux-2.6.22-570/drivers/isdn/hardware/eicon/diva_didd.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/isdn/hardware/eicon/diva_didd.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/isdn/hardware/eicon/diva_didd.c 2008-03-20 13:28:00.000000000 -0400
@@ -15,6 +15,7 @@
#include <linux/init.h>
#include <linux/kernel.h>
static int DIVA_INIT_FUNCTION divadidd_init(void)
diff -Nurb linux-2.6.22-570/drivers/isdn/hysdn/hysdn_procconf.c linux-2.6.22-590/drivers/isdn/hysdn/hysdn_procconf.c
--- linux-2.6.22-570/drivers/isdn/hysdn/hysdn_procconf.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/isdn/hysdn/hysdn_procconf.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/isdn/hysdn/hysdn_procconf.c 2008-03-20 13:28:00.000000000 -0400
@@ -392,7 +392,7 @@
hysdn_card *card;
unsigned char conf_name[20];
}
diff -Nurb linux-2.6.22-570/drivers/macintosh/therm_adt746x.c linux-2.6.22-590/drivers/macintosh/therm_adt746x.c
--- linux-2.6.22-570/drivers/macintosh/therm_adt746x.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/macintosh/therm_adt746x.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/macintosh/therm_adt746x.c 2008-03-20 13:28:00.000000000 -0400
@@ -335,6 +335,7 @@
{
struct thermostat* th = arg;
msleep_interruptible(2000);
diff -Nurb linux-2.6.22-570/drivers/macintosh/therm_pm72.c linux-2.6.22-590/drivers/macintosh/therm_pm72.c
--- linux-2.6.22-570/drivers/macintosh/therm_pm72.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/macintosh/therm_pm72.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/macintosh/therm_pm72.c 2008-03-20 13:28:00.000000000 -0400
@@ -1770,7 +1770,8 @@
"PATH=/sbin:/usr/sbin:/bin:/usr/bin",
NULL };
diff -Nurb linux-2.6.22-570/drivers/macintosh/windfarm_core.c linux-2.6.22-590/drivers/macintosh/windfarm_core.c
--- linux-2.6.22-570/drivers/macintosh/windfarm_core.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/macintosh/windfarm_core.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/macintosh/windfarm_core.c 2008-03-20 13:28:00.000000000 -0400
@@ -80,7 +80,8 @@
"PATH=/sbin:/usr/sbin:/bin:/usr/bin",
NULL };
new_sr->attr.store = NULL;
diff -Nurb linux-2.6.22-570/drivers/md/Kconfig linux-2.6.22-590/drivers/md/Kconfig
--- linux-2.6.22-570/drivers/md/Kconfig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/md/Kconfig 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/md/Kconfig 2008-03-20 13:28:00.000000000 -0400
@@ -109,6 +109,8 @@
config MD_RAID456
tristate "RAID-4/RAID-5/RAID-6 mode"
endif
diff -Nurb linux-2.6.22-570/drivers/md/Makefile linux-2.6.22-590/drivers/md/Makefile
--- linux-2.6.22-570/drivers/md/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/md/Makefile 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/md/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -17,7 +17,7 @@
hostprogs-y := mktables
$(obj)/raid6int1.c: $(src)/raid6int.uc $(src)/unroll.pl FORCE
diff -Nurb linux-2.6.22-570/drivers/md/dm-netlink.c linux-2.6.22-590/drivers/md/dm-netlink.c
--- linux-2.6.22-570/drivers/md/dm-netlink.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/md/dm-netlink.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/md/dm-netlink.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,103 @@
+/*
+ * Device Mapper Netlink Support (dm-netlink)
+}
diff -Nurb linux-2.6.22-570/drivers/md/dm-netlink.h linux-2.6.22-590/drivers/md/dm-netlink.h
--- linux-2.6.22-570/drivers/md/dm-netlink.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/md/dm-netlink.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/md/dm-netlink.h 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,50 @@
+/*
+ * Device Mapper Netlink Support
+
+#endif /* DM_NETLINK_H */
diff -Nurb linux-2.6.22-570/drivers/md/dm.c linux-2.6.22-590/drivers/md/dm.c
---- linux-2.6.22-570/drivers/md/dm.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/drivers/md/dm.c 2008-03-18 15:57:53.000000000 -0400
+--- linux-2.6.22-570/drivers/md/dm.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/drivers/md/dm.c 2008-03-20 13:28:00.000000000 -0400
@@ -7,6 +7,7 @@
#include "dm.h"
static int __init dm_init(void)
diff -Nurb linux-2.6.22-570/drivers/md/md.c linux-2.6.22-590/drivers/md/md.c
--- linux-2.6.22-570/drivers/md/md.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/md/md.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/md/md.c 2008-03-20 13:28:00.000000000 -0400
@@ -4642,7 +4642,6 @@
* many dirty RAID5 blocks.
*/
static int get_ro(char *buffer, struct kernel_param *kp)
diff -Nurb linux-2.6.22-570/drivers/md/raid5.c linux-2.6.22-590/drivers/md/raid5.c
--- linux-2.6.22-570/drivers/md/raid5.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/md/raid5.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/md/raid5.c 2008-03-20 13:28:00.000000000 -0400
@@ -52,6 +52,7 @@
#include "raid6.h"
-module_exit(xor_exit);
diff -Nurb linux-2.6.22-570/drivers/media/dvb/dvb-core/dvb_frontend.c linux-2.6.22-590/drivers/media/dvb/dvb-core/dvb_frontend.c
--- linux-2.6.22-570/drivers/media/dvb/dvb-core/dvb_frontend.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/media/dvb/dvb-core/dvb_frontend.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/media/dvb/dvb-core/dvb_frontend.c 2008-03-20 13:28:00.000000000 -0400
@@ -523,6 +523,7 @@
dvb_frontend_init(fe);
restart:
diff -Nurb linux-2.6.22-570/drivers/media/video/cx88/cx88-tvaudio.c linux-2.6.22-590/drivers/media/video/cx88/cx88-tvaudio.c
--- linux-2.6.22-570/drivers/media/video/cx88/cx88-tvaudio.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/media/video/cx88/cx88-tvaudio.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/media/video/cx88/cx88-tvaudio.c 2008-03-20 13:28:00.000000000 -0400
@@ -906,6 +906,7 @@
u32 mode = 0;
if (kthread_should_stop())
diff -Nurb linux-2.6.22-570/drivers/media/video/msp3400-kthreads.c linux-2.6.22-590/drivers/media/video/msp3400-kthreads.c
--- linux-2.6.22-570/drivers/media/video/msp3400-kthreads.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/media/video/msp3400-kthreads.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/media/video/msp3400-kthreads.c 2008-03-20 13:28:00.000000000 -0400
@@ -23,6 +23,7 @@
#include <linux/module.h>
#include <linux/slab.h>
msp_sleep(state, -1);
diff -Nurb linux-2.6.22-570/drivers/media/video/tvaudio.c linux-2.6.22-590/drivers/media/video/tvaudio.c
--- linux-2.6.22-570/drivers/media/video/tvaudio.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/media/video/tvaudio.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/media/video/tvaudio.c 2008-03-20 13:28:00.000000000 -0400
@@ -271,7 +271,7 @@
struct CHIPDESC *desc = chiplist + chip->type;
if (!kthread_should_stop())
diff -Nurb linux-2.6.22-570/drivers/media/video/video-buf-dvb.c linux-2.6.22-590/drivers/media/video/video-buf-dvb.c
--- linux-2.6.22-570/drivers/media/video/video-buf-dvb.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/media/video/video-buf-dvb.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/media/video/video-buf-dvb.c 2008-03-20 13:28:00.000000000 -0400
@@ -47,6 +47,7 @@
int err;
for (;;) {
diff -Nurb linux-2.6.22-570/drivers/media/video/vivi.c linux-2.6.22-590/drivers/media/video/vivi.c
--- linux-2.6.22-570/drivers/media/video/vivi.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/media/video/vivi.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/media/video/vivi.c 2008-03-20 13:28:00.000000000 -0400
@@ -573,6 +573,7 @@
dprintk(1,"thread started\n");
-#endif /* _LINUX_COMPAT_H */
diff -Nurb linux-2.6.22-570/drivers/message/fusion/lsi/mpi.h linux-2.6.22-590/drivers/message/fusion/lsi/mpi.h
--- linux-2.6.22-570/drivers/message/fusion/lsi/mpi.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/message/fusion/lsi/mpi.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/message/fusion/lsi/mpi.h 2008-03-20 13:28:00.000000000 -0400
@@ -1,12 +1,12 @@
/*
- * Copyright (c) 2000-2006 LSI Logic Corporation.
#define MPI_HEADER_VERSION_UNIT_SHIFT (8)
diff -Nurb linux-2.6.22-570/drivers/message/fusion/lsi/mpi_cnfg.h linux-2.6.22-590/drivers/message/fusion/lsi/mpi_cnfg.h
--- linux-2.6.22-570/drivers/message/fusion/lsi/mpi_cnfg.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/message/fusion/lsi/mpi_cnfg.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/message/fusion/lsi/mpi_cnfg.h 2008-03-20 13:28:00.000000000 -0400
@@ -1,12 +1,12 @@
/*
- * Copyright (c) 2000-2006 LSI Logic Corporation.
diff -Nurb linux-2.6.22-570/drivers/message/fusion/lsi/mpi_history.txt linux-2.6.22-590/drivers/message/fusion/lsi/mpi_history.txt
--- linux-2.6.22-570/drivers/message/fusion/lsi/mpi_history.txt 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/message/fusion/lsi/mpi_history.txt 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/message/fusion/lsi/mpi_history.txt 2008-03-20 13:28:00.000000000 -0400
@@ -3,28 +3,28 @@
MPI Header File Change History
==============================
-
diff -Nurb linux-2.6.22-570/drivers/message/fusion/lsi/mpi_init.h linux-2.6.22-590/drivers/message/fusion/lsi/mpi_init.h
--- linux-2.6.22-570/drivers/message/fusion/lsi/mpi_init.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/message/fusion/lsi/mpi_init.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/message/fusion/lsi/mpi_init.h 2008-03-20 13:28:00.000000000 -0400
@@ -1,12 +1,12 @@
/*
- * Copyright (c) 2000-2006 LSI Logic Corporation.
{
diff -Nurb linux-2.6.22-570/drivers/message/fusion/lsi/mpi_ioc.h linux-2.6.22-590/drivers/message/fusion/lsi/mpi_ioc.h
--- linux-2.6.22-570/drivers/message/fusion/lsi/mpi_ioc.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/message/fusion/lsi/mpi_ioc.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/message/fusion/lsi/mpi_ioc.h 2008-03-20 13:28:00.000000000 -0400
@@ -1,12 +1,12 @@
/*
- * Copyright (c) 2000-2006 LSI Logic Corporation.
{
diff -Nurb linux-2.6.22-570/drivers/message/fusion/lsi/mpi_raid.h linux-2.6.22-590/drivers/message/fusion/lsi/mpi_raid.h
--- linux-2.6.22-570/drivers/message/fusion/lsi/mpi_raid.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/message/fusion/lsi/mpi_raid.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/message/fusion/lsi/mpi_raid.h 2008-03-20 13:28:00.000000000 -0400
@@ -1,12 +1,12 @@
/*
- * Copyright (c) 2001-2005 LSI Logic Corporation.
/* RAID Action reply message */
diff -Nurb linux-2.6.22-570/drivers/message/fusion/mptbase.c linux-2.6.22-590/drivers/message/fusion/mptbase.c
--- linux-2.6.22-570/drivers/message/fusion/mptbase.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/message/fusion/mptbase.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/message/fusion/mptbase.c 2008-03-20 13:28:00.000000000 -0400
@@ -6,7 +6,7 @@
* running LSI Logic Fusion MPT (Message Passing Technology) firmware.
*
/*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=*/
diff -Nurb linux-2.6.22-570/drivers/message/fusion/mptbase.h linux-2.6.22-590/drivers/message/fusion/mptbase.h
--- linux-2.6.22-570/drivers/message/fusion/mptbase.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/message/fusion/mptbase.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/message/fusion/mptbase.h 2008-03-20 13:28:00.000000000 -0400
@@ -6,7 +6,7 @@
* running LSI Logic Fusion MPT (Message Passing Technology) firmware.
*
#define show_mptmod_ver(s,ver) \
diff -Nurb linux-2.6.22-570/drivers/message/fusion/mptctl.c linux-2.6.22-590/drivers/message/fusion/mptctl.c
--- linux-2.6.22-570/drivers/message/fusion/mptctl.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/message/fusion/mptctl.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/message/fusion/mptctl.c 2008-03-20 13:28:00.000000000 -0400
@@ -5,7 +5,7 @@
* running LSI Logic Fusion MPT (Message Passing Technology) firmware.
*
/*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=*/
diff -Nurb linux-2.6.22-570/drivers/message/fusion/mptctl.h linux-2.6.22-590/drivers/message/fusion/mptctl.h
--- linux-2.6.22-570/drivers/message/fusion/mptctl.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/message/fusion/mptctl.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/message/fusion/mptctl.h 2008-03-20 13:28:00.000000000 -0400
@@ -6,7 +6,7 @@
* running LSI Logic Fusion MPT (Message Passing Technology) firmware.
*
/*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=*/
diff -Nurb linux-2.6.22-570/drivers/message/fusion/mptfc.c linux-2.6.22-590/drivers/message/fusion/mptfc.c
--- linux-2.6.22-570/drivers/message/fusion/mptfc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/message/fusion/mptfc.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/message/fusion/mptfc.c 2008-03-20 13:28:00.000000000 -0400
@@ -4,7 +4,7 @@
* running LSI Logic Fusion MPT (Message Passing Technology) firmware.
*
#include <linux/init.h>
diff -Nurb linux-2.6.22-570/drivers/message/fusion/mptlan.c linux-2.6.22-590/drivers/message/fusion/mptlan.c
--- linux-2.6.22-570/drivers/message/fusion/mptlan.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/message/fusion/mptlan.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/message/fusion/mptlan.c 2008-03-20 13:28:00.000000000 -0400
@@ -5,7 +5,7 @@
* running LSI Logic Fusion MPT (Message Passing Technology) firmware.
*
/*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=*/
diff -Nurb linux-2.6.22-570/drivers/message/fusion/mptlan.h linux-2.6.22-590/drivers/message/fusion/mptlan.h
--- linux-2.6.22-570/drivers/message/fusion/mptlan.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/message/fusion/mptlan.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/message/fusion/mptlan.h 2008-03-20 13:28:00.000000000 -0400
@@ -5,7 +5,7 @@
* running LSI Logic Fusion MPT (Message Passing Technology) firmware.
*
/*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=*/
diff -Nurb linux-2.6.22-570/drivers/message/fusion/mptsas.c linux-2.6.22-590/drivers/message/fusion/mptsas.c
--- linux-2.6.22-570/drivers/message/fusion/mptsas.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/message/fusion/mptsas.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/message/fusion/mptsas.c 2008-03-20 13:28:00.000000000 -0400
@@ -4,7 +4,7 @@
* running LSI Logic Fusion MPT (Message Passing Technology) firmware.
*
/*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=*/
diff -Nurb linux-2.6.22-570/drivers/message/fusion/mptscsih.c linux-2.6.22-590/drivers/message/fusion/mptscsih.c
--- linux-2.6.22-570/drivers/message/fusion/mptscsih.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/message/fusion/mptscsih.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/message/fusion/mptscsih.c 2008-03-20 13:28:00.000000000 -0400
@@ -4,7 +4,7 @@
* running LSI Logic Fusion MPT (Message Passing Technology) firmware.
*
diff -Nurb linux-2.6.22-570/drivers/message/fusion/mptscsih.h linux-2.6.22-590/drivers/message/fusion/mptscsih.h
--- linux-2.6.22-570/drivers/message/fusion/mptscsih.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/message/fusion/mptscsih.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/message/fusion/mptscsih.h 2008-03-20 13:28:00.000000000 -0400
@@ -6,7 +6,7 @@
* running LSI Logic Fusion MPT (Message Passing Technology) firmware.
*
/*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=*/
diff -Nurb linux-2.6.22-570/drivers/message/fusion/mptspi.c linux-2.6.22-590/drivers/message/fusion/mptspi.c
--- linux-2.6.22-570/drivers/message/fusion/mptspi.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/message/fusion/mptspi.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/message/fusion/mptspi.c 2008-03-20 13:28:00.000000000 -0400
@@ -4,7 +4,7 @@
* running LSI Logic Fusion MPT (Message Passing Technology) firmware.
*
#include <linux/init.h>
diff -Nurb linux-2.6.22-570/drivers/message/i2o/i2o_scsi.c linux-2.6.22-590/drivers/message/i2o/i2o_scsi.c
--- linux-2.6.22-570/drivers/message/i2o/i2o_scsi.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/message/i2o/i2o_scsi.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/message/i2o/i2o_scsi.c 2008-03-20 13:28:00.000000000 -0400
@@ -377,12 +377,8 @@
osm_err("SCSI error %08x\n", error);
diff -Nurb linux-2.6.22-570/drivers/mfd/ucb1x00-ts.c linux-2.6.22-590/drivers/mfd/ucb1x00-ts.c
--- linux-2.6.22-570/drivers/mfd/ucb1x00-ts.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/mfd/ucb1x00-ts.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/mfd/ucb1x00-ts.c 2008-03-20 13:28:00.000000000 -0400
@@ -209,6 +209,7 @@
DECLARE_WAITQUEUE(wait, tsk);
int valid = 0;
unsigned int x, y, p;
diff -Nurb linux-2.6.22-570/drivers/misc/asus-laptop.c linux-2.6.22-590/drivers/misc/asus-laptop.c
--- linux-2.6.22-570/drivers/misc/asus-laptop.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/misc/asus-laptop.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/misc/asus-laptop.c 2008-03-20 13:28:00.000000000 -0400
@@ -737,8 +737,7 @@
struct device_attribute dev_attr_##_name = { \
.attr = { \
}
diff -Nurb linux-2.6.22-570/drivers/mmc/card/Kconfig linux-2.6.22-590/drivers/mmc/card/Kconfig
--- linux-2.6.22-570/drivers/mmc/card/Kconfig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/mmc/card/Kconfig 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/mmc/card/Kconfig 2008-03-20 13:28:00.000000000 -0400
@@ -14,3 +14,21 @@
mount the filesystem. Almost everyone wishing MMC support
should say Y or M here.
+
diff -Nurb linux-2.6.22-570/drivers/mmc/card/block.c linux-2.6.22-590/drivers/mmc/card/block.c
--- linux-2.6.22-570/drivers/mmc/card/block.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/mmc/card/block.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/mmc/card/block.c 2008-03-20 13:28:00.000000000 -0400
@@ -262,7 +262,9 @@
}
req->rq_disk->disk_name, brq.cmd.error);
diff -Nurb linux-2.6.22-570/drivers/mmc/card/queue.c linux-2.6.22-590/drivers/mmc/card/queue.c
--- linux-2.6.22-570/drivers/mmc/card/queue.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/mmc/card/queue.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/mmc/card/queue.c 2008-03-20 13:28:00.000000000 -0400
@@ -11,12 +11,15 @@
*/
#include <linux/module.h>
+
diff -Nurb linux-2.6.22-570/drivers/mmc/card/queue.h linux-2.6.22-590/drivers/mmc/card/queue.h
--- linux-2.6.22-570/drivers/mmc/card/queue.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/mmc/card/queue.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/mmc/card/queue.h 2008-03-20 13:28:00.000000000 -0400
@@ -14,6 +14,9 @@
void *data;
struct request_queue *queue;
#endif
diff -Nurb linux-2.6.22-570/drivers/mmc/core/Kconfig linux-2.6.22-590/drivers/mmc/core/Kconfig
--- linux-2.6.22-570/drivers/mmc/core/Kconfig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/mmc/core/Kconfig 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/mmc/core/Kconfig 2008-03-20 13:28:00.000000000 -0400
@@ -14,3 +14,16 @@
This option is usually just for embedded systems which use
a MMC/SD card for rootfs. Most people should say N here.
+
diff -Nurb linux-2.6.22-570/drivers/mmc/core/Makefile linux-2.6.22-590/drivers/mmc/core/Makefile
--- linux-2.6.22-570/drivers/mmc/core/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/mmc/core/Makefile 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/mmc/core/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -7,5 +7,6 @@
endif
diff -Nurb linux-2.6.22-570/drivers/mmc/core/bus.c linux-2.6.22-590/drivers/mmc/core/bus.c
--- linux-2.6.22-570/drivers/mmc/core/bus.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/mmc/core/bus.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/mmc/core/bus.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,245 @@
+/*
+ * linux/drivers/mmc/core/bus.c
+
diff -Nurb linux-2.6.22-570/drivers/mmc/core/bus.h linux-2.6.22-590/drivers/mmc/core/bus.h
--- linux-2.6.22-570/drivers/mmc/core/bus.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/mmc/core/bus.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/mmc/core/bus.h 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,22 @@
+/*
+ * linux/drivers/mmc/core/bus.h
+
diff -Nurb linux-2.6.22-570/drivers/mmc/core/core.c linux-2.6.22-590/drivers/mmc/core/core.c
--- linux-2.6.22-570/drivers/mmc/core/core.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/mmc/core/core.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/mmc/core/core.c 2008-03-20 13:28:00.000000000 -0400
@@ -27,7 +27,9 @@
#include <linux/mmc/sd.h>
MODULE_LICENSE("GPL");
diff -Nurb linux-2.6.22-570/drivers/mmc/core/core.h linux-2.6.22-590/drivers/mmc/core/core.h
--- linux-2.6.22-570/drivers/mmc/core/core.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/mmc/core/core.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/mmc/core/core.h 2008-03-20 13:28:00.000000000 -0400
@@ -54,8 +54,6 @@
u32 mmc_select_voltage(struct mmc_host *host, u32 ocr);
void mmc_set_timing(struct mmc_host *host, unsigned int timing);
diff -Nurb linux-2.6.22-570/drivers/mmc/core/host.c linux-2.6.22-590/drivers/mmc/core/host.c
--- linux-2.6.22-570/drivers/mmc/core/host.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/mmc/core/host.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/mmc/core/host.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,156 @@
+/*
+ * linux/drivers/mmc/core/host.c
+
diff -Nurb linux-2.6.22-570/drivers/mmc/core/host.h linux-2.6.22-590/drivers/mmc/core/host.h
--- linux-2.6.22-570/drivers/mmc/core/host.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/mmc/core/host.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/mmc/core/host.h 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,18 @@
+/*
+ * linux/drivers/mmc/core/host.h
+
diff -Nurb linux-2.6.22-570/drivers/mmc/core/lock.c linux-2.6.22-590/drivers/mmc/core/lock.c
--- linux-2.6.22-570/drivers/mmc/core/lock.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/mmc/core/lock.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/mmc/core/lock.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,199 @@
+/*
+ * linux/drivers/mmc/core/lock.h
+
diff -Nurb linux-2.6.22-570/drivers/mmc/core/lock.h linux-2.6.22-590/drivers/mmc/core/lock.h
--- linux-2.6.22-570/drivers/mmc/core/lock.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/mmc/core/lock.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/mmc/core/lock.h 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,51 @@
+/*
+ * linux/drivers/mmc/core/lock.h
+#endif
diff -Nurb linux-2.6.22-570/drivers/mmc/core/mmc.c linux-2.6.22-590/drivers/mmc/core/mmc.c
--- linux-2.6.22-570/drivers/mmc/core/mmc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/mmc/core/mmc.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/mmc/core/mmc.c 2008-03-20 13:28:00.000000000 -0400
@@ -18,6 +18,8 @@
#include "core.h"
diff -Nurb linux-2.6.22-570/drivers/mmc/core/mmc_ops.c linux-2.6.22-590/drivers/mmc/core/mmc_ops.c
--- linux-2.6.22-570/drivers/mmc/core/mmc_ops.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/mmc/core/mmc_ops.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/mmc/core/mmc_ops.c 2008-03-20 13:28:00.000000000 -0400
@@ -2,6 +2,8 @@
* linux/drivers/mmc/mmc_ops.h
*
+
diff -Nurb linux-2.6.22-570/drivers/mmc/core/mmc_ops.h linux-2.6.22-590/drivers/mmc/core/mmc_ops.h
--- linux-2.6.22-570/drivers/mmc/core/mmc_ops.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/mmc/core/mmc_ops.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/mmc/core/mmc_ops.h 2008-03-20 13:28:00.000000000 -0400
@@ -12,6 +12,8 @@
#ifndef _MMC_MMC_OPS_H
#define _MMC_MMC_OPS_H
diff -Nurb linux-2.6.22-570/drivers/mmc/core/sd.c linux-2.6.22-590/drivers/mmc/core/sd.c
--- linux-2.6.22-570/drivers/mmc/core/sd.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/mmc/core/sd.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/mmc/core/sd.c 2008-03-20 13:28:00.000000000 -0400
@@ -19,11 +19,11 @@
#include "core.h"
diff -Nurb linux-2.6.22-570/drivers/mmc/core/sysfs.c linux-2.6.22-590/drivers/mmc/core/sysfs.c
--- linux-2.6.22-570/drivers/mmc/core/sysfs.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/mmc/core/sysfs.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/mmc/core/sysfs.c 2008-03-20 13:28:00.000000000 -0400
@@ -2,6 +2,7 @@
* linux/drivers/mmc/core/sysfs.c
*
-module_exit(mmc_exit);
diff -Nurb linux-2.6.22-570/drivers/mmc/core/sysfs.h linux-2.6.22-590/drivers/mmc/core/sysfs.h
--- linux-2.6.22-570/drivers/mmc/core/sysfs.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/mmc/core/sysfs.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/mmc/core/sysfs.h 2008-03-20 13:28:00.000000000 -0400
@@ -11,17 +11,16 @@
#ifndef _MMC_CORE_SYSFS_H
#define _MMC_CORE_SYSFS_H
#endif
diff -Nurb linux-2.6.22-570/drivers/mmc/host/sdhci.c linux-2.6.22-590/drivers/mmc/host/sdhci.c
--- linux-2.6.22-570/drivers/mmc/host/sdhci.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/mmc/host/sdhci.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/mmc/host/sdhci.c 2008-03-20 13:28:00.000000000 -0400
@@ -70,6 +70,14 @@
.driver_data = SDHCI_QUIRK_SINGLE_POWER_WRITE,
},
},
diff -Nurb linux-2.6.22-570/drivers/mtd/mtd_blkdevs.c linux-2.6.22-590/drivers/mtd/mtd_blkdevs.c
--- linux-2.6.22-570/drivers/mtd/mtd_blkdevs.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/mtd/mtd_blkdevs.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/mtd/mtd_blkdevs.c 2008-03-20 13:28:00.000000000 -0400
@@ -16,6 +16,7 @@
#include <linux/mtd/mtd.h>
#include <linux/blkdev.h>
while (!kthread_should_stop()) {
diff -Nurb linux-2.6.22-570/drivers/mtd/ubi/wl.c linux-2.6.22-590/drivers/mtd/ubi/wl.c
--- linux-2.6.22-570/drivers/mtd/ubi/wl.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/mtd/ubi/wl.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/mtd/ubi/wl.c 2008-03-20 13:28:00.000000000 -0400
@@ -1346,6 +1346,7 @@
ubi_msg("background thread \"%s\" started, PID %d",
ubi->bgt_name, current->pid);
diff -Nurb linux-2.6.22-570/drivers/net/3c523.c linux-2.6.22-590/drivers/net/3c523.c
--- linux-2.6.22-570/drivers/net/3c523.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/3c523.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/3c523.c 2008-03-20 13:28:00.000000000 -0400
@@ -990,7 +990,7 @@
if (skb != NULL) {
skb_reserve(skb, 2); /* 16 byte alignment */
dev->last_rx = jiffies;
diff -Nurb linux-2.6.22-570/drivers/net/7990.c linux-2.6.22-590/drivers/net/7990.c
--- linux-2.6.22-570/drivers/net/7990.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/7990.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/7990.c 2008-03-20 13:28:00.000000000 -0400
@@ -333,9 +333,9 @@
skb_reserve (skb, 2); /* 16 byte align */
dev->last_rx = jiffies;
diff -Nurb linux-2.6.22-570/drivers/net/8139too.c linux-2.6.22-590/drivers/net/8139too.c
--- linux-2.6.22-570/drivers/net/8139too.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/8139too.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/8139too.c 2008-03-20 13:28:00.000000000 -0400
@@ -2017,7 +2017,7 @@
#if RX_BUF_IDX == 3
wrap_copy(skb, rx_ring, ring_offset+4, pkt_size);
skb_put (skb, pkt_size);
diff -Nurb linux-2.6.22-570/drivers/net/Kconfig linux-2.6.22-590/drivers/net/Kconfig
---- linux-2.6.22-570/drivers/net/Kconfig 2008-03-18 15:57:37.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/Kconfig 2008-03-18 15:57:53.000000000 -0400
+--- linux-2.6.22-570/drivers/net/Kconfig 2008-03-20 13:25:41.000000000 -0400
++++ linux-2.6.22-590/drivers/net/Kconfig 2008-03-20 13:28:00.000000000 -0400
@@ -119,6 +119,20 @@
If you don't know what to use this for, you don't need it.
tristate "iSeries Virtual Ethernet driver support"
depends on PPC_ISERIES
diff -Nurb linux-2.6.22-570/drivers/net/Makefile linux-2.6.22-590/drivers/net/Makefile
---- linux-2.6.22-570/drivers/net/Makefile 2008-03-18 15:57:37.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/Makefile 2008-03-18 15:57:53.000000000 -0400
+--- linux-2.6.22-570/drivers/net/Makefile 2008-03-20 13:25:41.000000000 -0400
++++ linux-2.6.22-590/drivers/net/Makefile 2008-03-20 13:28:00.000000000 -0400
@@ -186,6 +186,7 @@
obj-$(CONFIG_MACMACE) += macmace.o
obj-$(CONFIG_MAC89x0) += mac89x0.o
+
diff -Nurb linux-2.6.22-570/drivers/net/a2065.c linux-2.6.22-590/drivers/net/a2065.c
--- linux-2.6.22-570/drivers/net/a2065.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/a2065.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/a2065.c 2008-03-20 13:28:00.000000000 -0400
@@ -322,9 +322,9 @@
skb_reserve (skb, 2); /* 16 byte align */
dev->last_rx = jiffies;
diff -Nurb linux-2.6.22-570/drivers/net/ariadne.c linux-2.6.22-590/drivers/net/ariadne.c
--- linux-2.6.22-570/drivers/net/ariadne.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/ariadne.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/ariadne.c 2008-03-20 13:28:00.000000000 -0400
@@ -746,7 +746,7 @@
skb_reserve(skb,2); /* 16 byte align */
printk(KERN_DEBUG "RX pkt type 0x%04x from ",
diff -Nurb linux-2.6.22-570/drivers/net/arm/ep93xx_eth.c linux-2.6.22-590/drivers/net/arm/ep93xx_eth.c
--- linux-2.6.22-570/drivers/net/arm/ep93xx_eth.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/arm/ep93xx_eth.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/arm/ep93xx_eth.c 2008-03-20 13:28:00.000000000 -0400
@@ -258,7 +258,7 @@
skb_reserve(skb, 2);
dma_sync_single(NULL, ep->descs->rdesc[entry].buf_addr,
diff -Nurb linux-2.6.22-570/drivers/net/au1000_eth.c linux-2.6.22-590/drivers/net/au1000_eth.c
--- linux-2.6.22-570/drivers/net/au1000_eth.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/au1000_eth.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/au1000_eth.c 2008-03-20 13:28:00.000000000 -0400
@@ -1205,8 +1205,8 @@
continue;
}
netif_rx(skb); /* pass the packet to upper layers */
diff -Nurb linux-2.6.22-570/drivers/net/bnx2.c linux-2.6.22-590/drivers/net/bnx2.c
--- linux-2.6.22-570/drivers/net/bnx2.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/bnx2.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/bnx2.c 2008-03-20 13:28:00.000000000 -0400
@@ -6490,10 +6490,10 @@
memcpy(dev->perm_addr, bp->mac_addr, 6);
bp->name = board_info[ent->driver_data].name;
#endif
diff -Nurb linux-2.6.22-570/drivers/net/bonding/bond_3ad.c linux-2.6.22-590/drivers/net/bonding/bond_3ad.c
--- linux-2.6.22-570/drivers/net/bonding/bond_3ad.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/bonding/bond_3ad.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/bonding/bond_3ad.c 2008-03-20 13:28:00.000000000 -0400
@@ -29,6 +29,7 @@
#include <linux/ethtool.h>
#include <linux/if_bonding.h>
diff -Nurb linux-2.6.22-570/drivers/net/bonding/bond_alb.c linux-2.6.22-590/drivers/net/bonding/bond_alb.c
--- linux-2.6.22-570/drivers/net/bonding/bond_alb.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/bonding/bond_alb.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/bonding/bond_alb.c 2008-03-20 13:28:00.000000000 -0400
@@ -345,6 +345,9 @@
struct arp_pkt *arp = (struct arp_pkt *)skb->data;
int res = NET_RX_DROP;
goto out;
diff -Nurb linux-2.6.22-570/drivers/net/bonding/bond_main.c linux-2.6.22-590/drivers/net/bonding/bond_main.c
---- linux-2.6.22-570/drivers/net/bonding/bond_main.c 2008-03-18 15:57:36.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/bonding/bond_main.c 2008-03-18 15:57:53.000000000 -0400
+--- linux-2.6.22-570/drivers/net/bonding/bond_main.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/drivers/net/bonding/bond_main.c 2008-03-20 13:28:00.000000000 -0400
@@ -75,6 +75,7 @@
#include <linux/if_vlan.h>
#include <linux/if_bonding.h>
diff -Nurb linux-2.6.22-570/drivers/net/bonding/bond_sysfs.c linux-2.6.22-590/drivers/net/bonding/bond_sysfs.c
--- linux-2.6.22-570/drivers/net/bonding/bond_sysfs.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/bonding/bond_sysfs.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/bonding/bond_sysfs.c 2008-03-20 13:28:00.000000000 -0400
@@ -35,6 +35,7 @@
#include <linux/ctype.h>
#include <linux/inet.h>
": %s: Interface %s does not exist!\n",
diff -Nurb linux-2.6.22-570/drivers/net/dl2k.c linux-2.6.22-590/drivers/net/dl2k.c
--- linux-2.6.22-570/drivers/net/dl2k.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/dl2k.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/dl2k.c 2008-03-20 13:28:00.000000000 -0400
@@ -866,9 +866,9 @@
PCI_DMA_FROMDEVICE);
/* 16 byte align the IP header */
desc->fraginfo &
diff -Nurb linux-2.6.22-570/drivers/net/dummy.c linux-2.6.22-590/drivers/net/dummy.c
--- linux-2.6.22-570/drivers/net/dummy.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/dummy.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/dummy.c 2008-03-20 13:28:00.000000000 -0400
@@ -34,11 +34,17 @@
#include <linux/etherdevice.h>
#include <linux/init.h>
+MODULE_ALIAS_RTNL_LINK("dummy");
diff -Nurb linux-2.6.22-570/drivers/net/eepro100.c linux-2.6.22-590/drivers/net/eepro100.c
--- linux-2.6.22-570/drivers/net/eepro100.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/eepro100.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/eepro100.c 2008-03-20 13:28:00.000000000 -0400
@@ -1801,7 +1801,7 @@
#if 1 || USE_IP_CSUM
skb_copy_from_linear_data(sp->rx_skbuff[entry],
diff -Nurb linux-2.6.22-570/drivers/net/epic100.c linux-2.6.22-590/drivers/net/epic100.c
--- linux-2.6.22-570/drivers/net/epic100.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/epic100.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/epic100.c 2008-03-20 13:28:00.000000000 -0400
@@ -1201,7 +1201,7 @@
ep->rx_ring[entry].bufaddr,
ep->rx_buf_sz,
ep->rx_ring[entry].bufaddr,
diff -Nurb linux-2.6.22-570/drivers/net/eql.c linux-2.6.22-590/drivers/net/eql.c
--- linux-2.6.22-570/drivers/net/eql.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/eql.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/eql.c 2008-03-20 13:28:00.000000000 -0400
@@ -116,6 +116,7 @@
#include <linux/init.h>
#include <linux/timer.h>
diff -Nurb linux-2.6.22-570/drivers/net/etun.c linux-2.6.22-590/drivers/net/etun.c
--- linux-2.6.22-570/drivers/net/etun.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/net/etun.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/etun.c 2008-03-20 13:28:00.000000000 -0400
@@ -0,0 +1,489 @@
+/*
+ * ETUN - Universal ETUN device driver.
+MODULE_LICENSE("GPL");
diff -Nurb linux-2.6.22-570/drivers/net/fealnx.c linux-2.6.22-590/drivers/net/fealnx.c
--- linux-2.6.22-570/drivers/net/fealnx.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/fealnx.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/fealnx.c 2008-03-20 13:28:00.000000000 -0400
@@ -1727,8 +1727,8 @@
/* Call copy + cksum if available. */
memcpy(skb_put(skb, pkt_len),
diff -Nurb linux-2.6.22-570/drivers/net/fec.c linux-2.6.22-590/drivers/net/fec.c
--- linux-2.6.22-570/drivers/net/fec.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/fec.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/fec.c 2008-03-20 13:28:00.000000000 -0400
@@ -648,7 +648,7 @@
fep->stats.rx_dropped++;
} else {
}
diff -Nurb linux-2.6.22-570/drivers/net/hamachi.c linux-2.6.22-590/drivers/net/hamachi.c
--- linux-2.6.22-570/drivers/net/hamachi.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/hamachi.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/hamachi.c 2008-03-20 13:28:00.000000000 -0400
@@ -1575,8 +1575,8 @@
PCI_DMA_FROMDEVICE);
/* Call copy + cksum if available. */
memcpy(skb_put(skb, pkt_len), hmp->rx_ring_dma
diff -Nurb linux-2.6.22-570/drivers/net/hamradio/baycom_epp.c linux-2.6.22-590/drivers/net/hamradio/baycom_epp.c
--- linux-2.6.22-570/drivers/net/hamradio/baycom_epp.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/hamradio/baycom_epp.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/hamradio/baycom_epp.c 2008-03-20 13:28:01.000000000 -0400
@@ -320,7 +320,7 @@
sprintf(portarg, "%ld", bc->pdev->port->base);
printk(KERN_DEBUG "%s: %s -s -p %s -m %s\n", bc_drvname, eppconfig_path, portarg, modearg);
/* ---------------------------------------------------------------------- */
diff -Nurb linux-2.6.22-570/drivers/net/hamradio/bpqether.c linux-2.6.22-590/drivers/net/hamradio/bpqether.c
--- linux-2.6.22-570/drivers/net/hamradio/bpqether.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/hamradio/bpqether.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/hamradio/bpqether.c 2008-03-20 13:28:01.000000000 -0400
@@ -83,6 +83,7 @@
#include <net/ip.h>
while (!list_empty(&bpq_devices)) {
diff -Nurb linux-2.6.22-570/drivers/net/hamradio/scc.c linux-2.6.22-590/drivers/net/hamradio/scc.c
--- linux-2.6.22-570/drivers/net/hamradio/scc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/hamradio/scc.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/hamradio/scc.c 2008-03-20 13:28:01.000000000 -0400
@@ -174,6 +174,7 @@
#include <linux/seq_file.h>
#include <linux/bitops.h>
MODULE_AUTHOR("Joerg Reuter <jreuter@yaina.de>");
diff -Nurb linux-2.6.22-570/drivers/net/hamradio/yam.c linux-2.6.22-590/drivers/net/hamradio/yam.c
--- linux-2.6.22-570/drivers/net/hamradio/yam.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/hamradio/yam.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/hamradio/yam.c 2008-03-20 13:28:01.000000000 -0400
@@ -61,6 +61,7 @@
#include <linux/etherdevice.h>
#include <linux/skbuff.h>
/* --------------------------------------------------------------------- */
diff -Nurb linux-2.6.22-570/drivers/net/ibmveth.c linux-2.6.22-590/drivers/net/ibmveth.c
--- linux-2.6.22-570/drivers/net/ibmveth.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/ibmveth.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/ibmveth.c 2008-03-20 13:28:01.000000000 -0400
@@ -47,6 +47,7 @@
#include <linux/mm.h>
#include <linux/ethtool.h>
static ATTR(active, 0644);
diff -Nurb linux-2.6.22-570/drivers/net/ifb.c linux-2.6.22-590/drivers/net/ifb.c
--- linux-2.6.22-570/drivers/net/ifb.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/ifb.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/ifb.c 2008-03-20 13:28:01.000000000 -0400
@@ -33,12 +33,15 @@
#include <linux/etherdevice.h>
#include <linux/init.h>
+MODULE_ALIAS_RTNL_LINK("ifb");
diff -Nurb linux-2.6.22-570/drivers/net/ixp2000/ixpdev.c linux-2.6.22-590/drivers/net/ixp2000/ixpdev.c
--- linux-2.6.22-570/drivers/net/ixp2000/ixpdev.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/ixp2000/ixpdev.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/ixp2000/ixpdev.c 2008-03-20 13:28:01.000000000 -0400
@@ -111,7 +111,7 @@
skb = dev_alloc_skb(desc->pkt_length + 2);
if (likely(skb != NULL)) {
diff -Nurb linux-2.6.22-570/drivers/net/kgdboe.c linux-2.6.22-590/drivers/net/kgdboe.c
--- linux-2.6.22-570/drivers/net/kgdboe.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/net/kgdboe.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/kgdboe.c 2008-03-20 13:28:01.000000000 -0400
@@ -0,0 +1,294 @@
+/*
+ * drivers/net/kgdboe.c
+ "[tgt-port]@<tgt-ip>/<tgt-macaddr>\n");
diff -Nurb linux-2.6.22-570/drivers/net/lance.c linux-2.6.22-590/drivers/net/lance.c
--- linux-2.6.22-570/drivers/net/lance.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/lance.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/lance.c 2008-03-20 13:28:01.000000000 -0400
@@ -1186,9 +1186,9 @@
}
skb_reserve(skb,2); /* 16 byte align */
dev->last_rx = jiffies;
diff -Nurb linux-2.6.22-570/drivers/net/loopback.c linux-2.6.22-590/drivers/net/loopback.c
--- linux-2.6.22-570/drivers/net/loopback.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/loopback.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/loopback.c 2008-03-20 13:28:01.000000000 -0400
@@ -57,6 +57,7 @@
#include <linux/ip.h>
#include <linux/tcp.h>
-
-EXPORT_SYMBOL(loopback_dev);
diff -Nurb linux-2.6.22-570/drivers/net/natsemi.c linux-2.6.22-590/drivers/net/natsemi.c
---- linux-2.6.22-570/drivers/net/natsemi.c 2008-03-18 15:57:36.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/natsemi.c 2008-03-18 15:57:53.000000000 -0400
+--- linux-2.6.22-570/drivers/net/natsemi.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/drivers/net/natsemi.c 2008-03-20 13:28:01.000000000 -0400
@@ -2357,8 +2357,8 @@
np->rx_dma[entry],
buflen,
np->rx_dma[entry],
diff -Nurb linux-2.6.22-570/drivers/net/ni52.c linux-2.6.22-590/drivers/net/ni52.c
--- linux-2.6.22-570/drivers/net/ni52.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/ni52.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/ni52.c 2008-03-20 13:28:01.000000000 -0400
@@ -936,7 +936,7 @@
{
skb_reserve(skb,2);
dev->last_rx = jiffies;
diff -Nurb linux-2.6.22-570/drivers/net/ni65.c linux-2.6.22-590/drivers/net/ni65.c
--- linux-2.6.22-570/drivers/net/ni65.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/ni65.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/ni65.c 2008-03-20 13:28:01.000000000 -0400
@@ -1096,7 +1096,7 @@
#ifdef RCV_VIA_SKB
if( (unsigned long) (skb->data + R_BUF_SIZE) > 0x1000000) {
p->stats.rx_bytes += len;
diff -Nurb linux-2.6.22-570/drivers/net/pci-skeleton.c linux-2.6.22-590/drivers/net/pci-skeleton.c
--- linux-2.6.22-570/drivers/net/pci-skeleton.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/pci-skeleton.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/pci-skeleton.c 2008-03-20 13:28:01.000000000 -0400
@@ -1567,7 +1567,7 @@
if (skb) {
skb_reserve (skb, 2); /* 16 byte align the IP fields. */
skb->protocol = eth_type_trans (skb, dev);
diff -Nurb linux-2.6.22-570/drivers/net/pcnet32.c linux-2.6.22-590/drivers/net/pcnet32.c
--- linux-2.6.22-570/drivers/net/pcnet32.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/pcnet32.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/pcnet32.c 2008-03-20 13:28:01.000000000 -0400
@@ -1235,9 +1235,9 @@
lp->rx_dma_addr[entry],
pkt_len,
pkt_len,
diff -Nurb linux-2.6.22-570/drivers/net/pppoe.c linux-2.6.22-590/drivers/net/pppoe.c
--- linux-2.6.22-570/drivers/net/pppoe.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/pppoe.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/pppoe.c 2008-03-20 13:28:01.000000000 -0400
@@ -78,6 +78,7 @@
#include <linux/proc_fs.h>
#include <linux/seq_file.h>
diff -Nurb linux-2.6.22-570/drivers/net/pppox.c linux-2.6.22-590/drivers/net/pppox.c
--- linux-2.6.22-570/drivers/net/pppox.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/pppox.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/pppox.c 2008-03-20 13:28:01.000000000 -0400
@@ -107,10 +107,13 @@
EXPORT_SYMBOL(pppox_ioctl);
module_put(pppox_protos[protocol]->owner);
out:
diff -Nurb linux-2.6.22-570/drivers/net/r8169.c linux-2.6.22-590/drivers/net/r8169.c
---- linux-2.6.22-570/drivers/net/r8169.c 2008-03-18 15:57:36.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/r8169.c 2008-03-18 15:57:53.000000000 -0400
+--- linux-2.6.22-570/drivers/net/r8169.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/drivers/net/r8169.c 2008-03-20 13:28:01.000000000 -0400
@@ -2492,7 +2492,7 @@
skb = dev_alloc_skb(pkt_size + align);
if (skb) {
ret = 0;
diff -Nurb linux-2.6.22-570/drivers/net/saa9730.c linux-2.6.22-590/drivers/net/saa9730.c
--- linux-2.6.22-570/drivers/net/saa9730.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/saa9730.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/saa9730.c 2008-03-20 13:28:01.000000000 -0400
@@ -690,9 +690,9 @@
lp->stats.rx_packets++;
skb_reserve(skb, 2); /* 16 byte align */
dev->last_rx = jiffies;
diff -Nurb linux-2.6.22-570/drivers/net/sgiseeq.c linux-2.6.22-590/drivers/net/sgiseeq.c
--- linux-2.6.22-570/drivers/net/sgiseeq.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/sgiseeq.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/sgiseeq.c 2008-03-20 13:28:01.000000000 -0400
@@ -320,7 +320,7 @@
skb_put(skb, len);
/* We don't want to receive our own packets */
diff -Nurb linux-2.6.22-570/drivers/net/shaper.c linux-2.6.22-590/drivers/net/shaper.c
--- linux-2.6.22-570/drivers/net/shaper.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/shaper.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/shaper.c 2008-03-20 13:28:01.000000000 -0400
@@ -86,6 +86,7 @@
#include <net/dst.h>
if(sh->dev)
diff -Nurb linux-2.6.22-570/drivers/net/sis190.c linux-2.6.22-590/drivers/net/sis190.c
--- linux-2.6.22-570/drivers/net/sis190.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/sis190.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/sis190.c 2008-03-20 13:28:01.000000000 -0400
@@ -548,7 +548,7 @@
skb = dev_alloc_skb(pkt_size + NET_IP_ALIGN);
if (skb) {
ret = 0;
diff -Nurb linux-2.6.22-570/drivers/net/starfire.c linux-2.6.22-590/drivers/net/starfire.c
--- linux-2.6.22-570/drivers/net/starfire.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/starfire.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/starfire.c 2008-03-20 13:28:01.000000000 -0400
@@ -1456,7 +1456,7 @@
pci_dma_sync_single_for_cpu(np->pci_dev,
np->rx_info[entry].mapping,
pkt_len, PCI_DMA_FROMDEVICE);
diff -Nurb linux-2.6.22-570/drivers/net/sun3_82586.c linux-2.6.22-590/drivers/net/sun3_82586.c
--- linux-2.6.22-570/drivers/net/sun3_82586.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/sun3_82586.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/sun3_82586.c 2008-03-20 13:28:01.000000000 -0400
@@ -777,7 +777,7 @@
{
skb_reserve(skb,2);
p->stats.rx_packets++;
diff -Nurb linux-2.6.22-570/drivers/net/sun3lance.c linux-2.6.22-590/drivers/net/sun3lance.c
--- linux-2.6.22-570/drivers/net/sun3lance.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/sun3lance.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/sun3lance.c 2008-03-20 13:28:01.000000000 -0400
@@ -853,10 +853,9 @@
skb_reserve( skb, 2 ); /* 16 byte align */
netif_rx( skb );
diff -Nurb linux-2.6.22-570/drivers/net/sunbmac.c linux-2.6.22-590/drivers/net/sunbmac.c
--- linux-2.6.22-570/drivers/net/sunbmac.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/sunbmac.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/sunbmac.c 2008-03-20 13:28:01.000000000 -0400
@@ -860,7 +860,7 @@
sbus_dma_sync_single_for_cpu(bp->bigmac_sdev,
this->rx_addr, len,
SBUS_DMA_FROMDEVICE);
diff -Nurb linux-2.6.22-570/drivers/net/sundance.c linux-2.6.22-590/drivers/net/sundance.c
--- linux-2.6.22-570/drivers/net/sundance.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/sundance.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/sundance.c 2008-03-20 13:28:01.000000000 -0400
@@ -1313,7 +1313,7 @@
np->rx_buf_sz,
PCI_DMA_FROMDEVICE);
np->rx_buf_sz,
diff -Nurb linux-2.6.22-570/drivers/net/sunlance.c linux-2.6.22-590/drivers/net/sunlance.c
--- linux-2.6.22-570/drivers/net/sunlance.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/sunlance.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/sunlance.c 2008-03-20 13:28:01.000000000 -0400
@@ -549,9 +549,9 @@
skb_reserve(skb, 2); /* 16 byte align */
dev->last_rx = jiffies;
diff -Nurb linux-2.6.22-570/drivers/net/sunqe.c linux-2.6.22-590/drivers/net/sunqe.c
--- linux-2.6.22-570/drivers/net/sunqe.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/sunqe.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/sunqe.c 2008-03-20 13:28:01.000000000 -0400
@@ -439,8 +439,8 @@
} else {
skb_reserve(skb, 2);
qep->dev->last_rx = jiffies;
diff -Nurb linux-2.6.22-570/drivers/net/tg3.c linux-2.6.22-590/drivers/net/tg3.c
--- linux-2.6.22-570/drivers/net/tg3.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/tg3.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/tg3.c 2008-03-20 13:28:01.000000000 -0400
@@ -11944,12 +11944,11 @@
* checksumming.
*/
tp->tg3_flags &= ~TG3_FLAG_RX_CHECKSUMS;
diff -Nurb linux-2.6.22-570/drivers/net/tokenring/lanstreamer.c linux-2.6.22-590/drivers/net/tokenring/lanstreamer.c
--- linux-2.6.22-570/drivers/net/tokenring/lanstreamer.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/tokenring/lanstreamer.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/tokenring/lanstreamer.c 2008-03-20 13:28:01.000000000 -0400
@@ -250,7 +250,7 @@
#if STREAMER_NETWORK_MONITOR
#ifdef CONFIG_PROC_FS
#endif
diff -Nurb linux-2.6.22-570/drivers/net/tokenring/olympic.c linux-2.6.22-590/drivers/net/tokenring/olympic.c
--- linux-2.6.22-570/drivers/net/tokenring/olympic.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/tokenring/olympic.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/tokenring/olympic.c 2008-03-20 13:28:01.000000000 -0400
@@ -101,6 +101,7 @@
#include <linux/bitops.h>
#include <linux/jiffies.h>
iounmap(olympic_priv->olympic_mmio) ;
diff -Nurb linux-2.6.22-570/drivers/net/tulip/interrupt.c linux-2.6.22-590/drivers/net/tulip/interrupt.c
--- linux-2.6.22-570/drivers/net/tulip/interrupt.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/tulip/interrupt.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/tulip/interrupt.c 2008-03-20 13:28:01.000000000 -0400
@@ -197,8 +197,8 @@
tp->rx_buffers[entry].mapping,
pkt_len, PCI_DMA_FROMDEVICE);
memcpy(skb_put(skb, pkt_len),
diff -Nurb linux-2.6.22-570/drivers/net/tulip/winbond-840.c linux-2.6.22-590/drivers/net/tulip/winbond-840.c
--- linux-2.6.22-570/drivers/net/tulip/winbond-840.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/tulip/winbond-840.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/tulip/winbond-840.c 2008-03-20 13:28:01.000000000 -0400
@@ -1232,7 +1232,7 @@
pci_dma_sync_single_for_cpu(np->pci_dev,np->rx_addr[entry],
np->rx_skbuff[entry]->len,
np->rx_skbuff[entry]->len,
diff -Nurb linux-2.6.22-570/drivers/net/tulip/xircom_cb.c linux-2.6.22-590/drivers/net/tulip/xircom_cb.c
--- linux-2.6.22-570/drivers/net/tulip/xircom_cb.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/tulip/xircom_cb.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/tulip/xircom_cb.c 2008-03-20 13:28:01.000000000 -0400
@@ -1208,7 +1208,7 @@
goto out;
}
netif_rx(skb);
diff -Nurb linux-2.6.22-570/drivers/net/tulip/xircom_tulip_cb.c linux-2.6.22-590/drivers/net/tulip/xircom_tulip_cb.c
--- linux-2.6.22-570/drivers/net/tulip/xircom_tulip_cb.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/tulip/xircom_tulip_cb.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/tulip/xircom_tulip_cb.c 2008-03-20 13:28:01.000000000 -0400
@@ -1242,8 +1242,8 @@
&& (skb = dev_alloc_skb(pkt_len + 2)) != NULL) {
skb_reserve(skb, 2); /* 16 byte align the IP header */
memcpy(skb_put(skb, pkt_len),
diff -Nurb linux-2.6.22-570/drivers/net/tun.c linux-2.6.22-590/drivers/net/tun.c
--- linux-2.6.22-570/drivers/net/tun.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/tun.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/tun.c 2008-03-20 13:28:01.000000000 -0400
@@ -62,6 +62,7 @@
#include <linux/if_ether.h>
#include <linux/if_tun.h>
if (tun->dev->flags & IFF_UP) {
diff -Nurb linux-2.6.22-570/drivers/net/typhoon.c linux-2.6.22-590/drivers/net/typhoon.c
--- linux-2.6.22-570/drivers/net/typhoon.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/typhoon.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/typhoon.c 2008-03-20 13:28:01.000000000 -0400
@@ -1703,7 +1703,7 @@
pci_dma_sync_single_for_cpu(tp->pdev, dma_addr,
PKT_BUF_SZ,
PCI_DMA_FROMDEVICE);
diff -Nurb linux-2.6.22-570/drivers/net/usb/catc.c linux-2.6.22-590/drivers/net/usb/catc.c
--- linux-2.6.22-570/drivers/net/usb/catc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/usb/catc.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/usb/catc.c 2008-03-20 13:28:01.000000000 -0400
@@ -255,7 +255,7 @@
if (!(skb = dev_alloc_skb(pkt_len)))
return;
skb->protocol = eth_type_trans(skb, catc->netdev);
diff -Nurb linux-2.6.22-570/drivers/net/usb/kaweth.c linux-2.6.22-590/drivers/net/usb/kaweth.c
--- linux-2.6.22-570/drivers/net/usb/kaweth.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/usb/kaweth.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/usb/kaweth.c 2008-03-20 13:28:01.000000000 -0400
@@ -635,7 +635,7 @@
skb_reserve(skb, 2); /* Align IP on 16 byte boundaries */
diff -Nurb linux-2.6.22-570/drivers/net/via-rhine.c linux-2.6.22-590/drivers/net/via-rhine.c
--- linux-2.6.22-570/drivers/net/via-rhine.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/via-rhine.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/via-rhine.c 2008-03-20 13:28:01.000000000 -0400
@@ -1492,9 +1492,9 @@
rp->rx_buf_sz,
PCI_DMA_FROMDEVICE);
rp->rx_skbuff_dma[entry],
diff -Nurb linux-2.6.22-570/drivers/net/wan/dlci.c linux-2.6.22-590/drivers/net/wan/dlci.c
--- linux-2.6.22-570/drivers/net/wan/dlci.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/wan/dlci.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/wan/dlci.c 2008-03-20 13:28:01.000000000 -0400
@@ -361,7 +361,7 @@
diff -Nurb linux-2.6.22-570/drivers/net/wan/hdlc.c linux-2.6.22-590/drivers/net/wan/hdlc.c
--- linux-2.6.22-570/drivers/net/wan/hdlc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/wan/hdlc.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/wan/hdlc.c 2008-03-20 13:28:01.000000000 -0400
@@ -36,6 +36,7 @@
#include <linux/rtnetlink.h>
#include <linux/notifier.h>
diff -Nurb linux-2.6.22-570/drivers/net/wan/lapbether.c linux-2.6.22-590/drivers/net/wan/lapbether.c
--- linux-2.6.22-570/drivers/net/wan/lapbether.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/wan/lapbether.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/wan/lapbether.c 2008-03-20 13:28:01.000000000 -0400
@@ -91,6 +91,9 @@
int len, err;
struct lapbethdev *lapbeth;
diff -Nurb linux-2.6.22-570/drivers/net/wan/sbni.c linux-2.6.22-590/drivers/net/wan/sbni.c
--- linux-2.6.22-570/drivers/net/wan/sbni.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/wan/sbni.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/wan/sbni.c 2008-03-20 13:28:01.000000000 -0400
@@ -54,6 +54,7 @@
#include <linux/init.h>
#include <linux/delay.h>
"device %s\n", dev->name, slave_name );
diff -Nurb linux-2.6.22-570/drivers/net/wan/syncppp.c linux-2.6.22-590/drivers/net/wan/syncppp.c
--- linux-2.6.22-570/drivers/net/wan/syncppp.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/wan/syncppp.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/wan/syncppp.c 2008-03-20 13:28:01.000000000 -0400
@@ -51,6 +51,7 @@
#include <linux/spinlock.h>
#include <linux/rcupdate.h>
sppp_input(dev,skb);
diff -Nurb linux-2.6.22-570/drivers/net/wireless/airo.c linux-2.6.22-590/drivers/net/wireless/airo.c
--- linux-2.6.22-570/drivers/net/wireless/airo.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/wireless/airo.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/wireless/airo.c 2008-03-20 13:28:01.000000000 -0400
@@ -3079,6 +3079,7 @@
struct airo_info *ai = dev->priv;
int locked;
try_to_freeze();
diff -Nurb linux-2.6.22-570/drivers/net/wireless/hostap/hostap_main.c linux-2.6.22-590/drivers/net/wireless/hostap/hostap_main.c
--- linux-2.6.22-570/drivers/net/wireless/hostap/hostap_main.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/wireless/hostap/hostap_main.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/wireless/hostap/hostap_main.c 2008-03-20 13:28:01.000000000 -0400
@@ -24,6 +24,7 @@
#include <linux/rtnetlink.h>
#include <linux/wireless.h>
diff -Nurb linux-2.6.22-570/drivers/net/wireless/libertas/main.c linux-2.6.22-590/drivers/net/wireless/libertas/main.c
--- linux-2.6.22-570/drivers/net/wireless/libertas/main.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/wireless/libertas/main.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/wireless/libertas/main.c 2008-03-20 13:28:01.000000000 -0400
@@ -613,6 +613,7 @@
init_waitqueue_entry(&wait, current);
"currenttxskb=%p dnld_sent=%d\n",
diff -Nurb linux-2.6.22-570/drivers/net/wireless/strip.c linux-2.6.22-590/drivers/net/wireless/strip.c
--- linux-2.6.22-570/drivers/net/wireless/strip.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/wireless/strip.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/wireless/strip.c 2008-03-20 13:28:01.000000000 -0400
@@ -107,6 +107,7 @@
#include <linux/serialP.h>
#include <linux/rcupdate.h>
printk(KERN_ERR "STRIP: can't unregister line discipline (err = %d)\n", i);
diff -Nurb linux-2.6.22-570/drivers/net/wireless/wl3501_cs.c linux-2.6.22-590/drivers/net/wireless/wl3501_cs.c
--- linux-2.6.22-570/drivers/net/wireless/wl3501_cs.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/wireless/wl3501_cs.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/wireless/wl3501_cs.c 2008-03-20 13:28:01.000000000 -0400
@@ -1011,7 +1011,7 @@
} else {
skb->dev = dev;
skb->protocol = eth_type_trans(skb, dev);
diff -Nurb linux-2.6.22-570/drivers/net/xen-netfront.c linux-2.6.22-590/drivers/net/xen-netfront.c
--- linux-2.6.22-570/drivers/net/xen-netfront.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/net/xen-netfront.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/xen-netfront.c 2008-03-20 13:28:01.000000000 -0400
@@ -0,0 +1,1995 @@
+/*
+ * Virtual network driver for conversing with remote driver backends.
+MODULE_LICENSE("GPL");
diff -Nurb linux-2.6.22-570/drivers/net/yellowfin.c linux-2.6.22-590/drivers/net/yellowfin.c
--- linux-2.6.22-570/drivers/net/yellowfin.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/net/yellowfin.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/net/yellowfin.c 2008-03-20 13:28:01.000000000 -0400
@@ -1137,7 +1137,7 @@
if (skb == NULL)
break;
yp->rx_buf_sz,
diff -Nurb linux-2.6.22-570/drivers/parisc/led.c linux-2.6.22-590/drivers/parisc/led.c
--- linux-2.6.22-570/drivers/parisc/led.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/parisc/led.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/parisc/led.c 2008-03-20 13:28:01.000000000 -0400
@@ -359,7 +359,7 @@
* for reading should be OK */
read_lock(&dev_base_lock);
if (!in_dev || !in_dev->ifa_list)
diff -Nurb linux-2.6.22-570/drivers/parisc/pdc_stable.c linux-2.6.22-590/drivers/parisc/pdc_stable.c
--- linux-2.6.22-570/drivers/parisc/pdc_stable.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/parisc/pdc_stable.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/parisc/pdc_stable.c 2008-03-20 13:28:01.000000000 -0400
@@ -121,14 +121,14 @@
#define PDCS_ATTR(_name, _mode, _show, _store) \
};
diff -Nurb linux-2.6.22-570/drivers/pci/hotplug/acpiphp_ibm.c linux-2.6.22-590/drivers/pci/hotplug/acpiphp_ibm.c
--- linux-2.6.22-570/drivers/pci/hotplug/acpiphp_ibm.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/pci/hotplug/acpiphp_ibm.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/pci/hotplug/acpiphp_ibm.c 2008-03-20 13:28:01.000000000 -0400
@@ -106,6 +106,7 @@
static void ibm_handle_events(acpi_handle handle, u32 event, void *context);
static int ibm_get_table_from_acpi(char **bufp);
int bytes_read = -EINVAL;
diff -Nurb linux-2.6.22-570/drivers/pci/hotplug/rpadlpar_core.c linux-2.6.22-590/drivers/pci/hotplug/rpadlpar_core.c
--- linux-2.6.22-570/drivers/pci/hotplug/rpadlpar_core.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/pci/hotplug/rpadlpar_core.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/pci/hotplug/rpadlpar_core.c 2008-03-20 13:28:01.000000000 -0400
@@ -159,8 +159,8 @@
/* Claim new bus resources */
pcibios_claim_one_bus(dev->bus);
return -ERANGE;
diff -Nurb linux-2.6.22-570/drivers/pci/pci-sysfs.c linux-2.6.22-590/drivers/pci/pci-sysfs.c
--- linux-2.6.22-570/drivers/pci/pci-sysfs.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/pci/pci-sysfs.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/pci/pci-sysfs.c 2008-03-20 13:28:01.000000000 -0400
@@ -213,7 +213,8 @@
};
rom_attr->write = pci_write_rom;
retval = sysfs_create_bin_file(&pdev->dev.kobj, rom_attr);
diff -Nurb linux-2.6.22-570/drivers/pci/probe.c linux-2.6.22-590/drivers/pci/probe.c
---- linux-2.6.22-570/drivers/pci/probe.c 2008-03-18 15:57:36.000000000 -0400
-+++ linux-2.6.22-590/drivers/pci/probe.c 2008-03-18 15:57:53.000000000 -0400
+--- linux-2.6.22-570/drivers/pci/probe.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/drivers/pci/probe.c 2008-03-20 13:28:01.000000000 -0400
@@ -39,7 +39,6 @@
b->legacy_io->attr.name = "legacy_io";
b->legacy_io->size = 0xffff;
class_device_create_bin_file(&b->class_dev, b->legacy_mem);
}
diff -Nurb linux-2.6.22-570/drivers/pcmcia/cs.c linux-2.6.22-590/drivers/pcmcia/cs.c
---- linux-2.6.22-570/drivers/pcmcia/cs.c 2008-03-18 15:57:36.000000000 -0400
-+++ linux-2.6.22-590/drivers/pcmcia/cs.c 2008-03-18 15:57:53.000000000 -0400
+--- linux-2.6.22-570/drivers/pcmcia/cs.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/drivers/pcmcia/cs.c 2008-03-20 13:28:01.000000000 -0400
@@ -654,6 +654,7 @@
add_wait_queue(&skt->thread_wait, &wait);
complete(&skt->thread_done);
unsigned int events;
diff -Nurb linux-2.6.22-570/drivers/pcmcia/socket_sysfs.c linux-2.6.22-590/drivers/pcmcia/socket_sysfs.c
--- linux-2.6.22-570/drivers/pcmcia/socket_sysfs.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/pcmcia/socket_sysfs.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/pcmcia/socket_sysfs.c 2008-03-20 13:28:01.000000000 -0400
@@ -283,7 +283,9 @@
return (ret);
}
.write = pccard_store_cis,
diff -Nurb linux-2.6.22-570/drivers/pnp/driver.c linux-2.6.22-590/drivers/pnp/driver.c
--- linux-2.6.22-570/drivers/pnp/driver.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/pnp/driver.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/pnp/driver.c 2008-03-20 13:28:01.000000000 -0400
@@ -167,6 +167,8 @@
return error;
}
if (error)
diff -Nurb linux-2.6.22-570/drivers/pnp/pnpacpi/core.c linux-2.6.22-590/drivers/pnp/pnpacpi/core.c
--- linux-2.6.22-570/drivers/pnp/pnpacpi/core.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/pnp/pnpacpi/core.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/pnp/pnpacpi/core.c 2008-03-20 13:28:01.000000000 -0400
@@ -119,11 +119,23 @@
return ACPI_FAILURE(status) ? -ENODEV : 0;
}
static int __init pnpacpi_add_device(struct acpi_device *device)
diff -Nurb linux-2.6.22-570/drivers/pnp/pnpbios/core.c linux-2.6.22-590/drivers/pnp/pnpbios/core.c
--- linux-2.6.22-570/drivers/pnp/pnpbios/core.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/pnp/pnpbios/core.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/pnp/pnpbios/core.c 2008-03-20 13:28:01.000000000 -0400
@@ -147,7 +147,7 @@
info->location_id, info->serial, info->capabilities);
envp[i] = NULL;
int status;
diff -Nurb linux-2.6.22-570/drivers/rapidio/rio-sysfs.c linux-2.6.22-590/drivers/rapidio/rio-sysfs.c
--- linux-2.6.22-570/drivers/rapidio/rio-sysfs.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/rapidio/rio-sysfs.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/rapidio/rio-sysfs.c 2008-03-20 13:28:01.000000000 -0400
@@ -67,7 +67,8 @@
};
.read = rio_read_config,
diff -Nurb linux-2.6.22-570/drivers/rtc/rtc-ds1553.c linux-2.6.22-590/drivers/rtc/rtc-ds1553.c
--- linux-2.6.22-570/drivers/rtc/rtc-ds1553.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/rtc/rtc-ds1553.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/rtc/rtc-ds1553.c 2008-03-20 13:28:01.000000000 -0400
@@ -258,8 +258,9 @@
.ioctl = ds1553_rtc_ioctl,
};
.read = ds1553_nvram_read,
diff -Nurb linux-2.6.22-570/drivers/rtc/rtc-ds1742.c linux-2.6.22-590/drivers/rtc/rtc-ds1742.c
--- linux-2.6.22-570/drivers/rtc/rtc-ds1742.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/rtc/rtc-ds1742.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/rtc/rtc-ds1742.c 2008-03-20 13:28:01.000000000 -0400
@@ -127,8 +127,9 @@
.set_time = ds1742_rtc_set_time,
};
.write = ds1742_nvram_write,
diff -Nurb linux-2.6.22-570/drivers/s390/cio/chp.c linux-2.6.22-590/drivers/s390/cio/chp.c
--- linux-2.6.22-570/drivers/s390/cio/chp.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/s390/cio/chp.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/s390/cio/chp.c 2008-03-20 13:28:01.000000000 -0400
@@ -141,8 +141,9 @@
/*
* Channel measurement related functions
.read = chp_measurement_read,
diff -Nurb linux-2.6.22-570/drivers/s390/net/qeth_main.c linux-2.6.22-590/drivers/s390/net/qeth_main.c
--- linux-2.6.22-570/drivers/s390/net/qeth_main.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/s390/net/qeth_main.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/s390/net/qeth_main.c 2008-03-20 13:28:01.000000000 -0400
@@ -8127,7 +8127,7 @@
neigh->parms = neigh_parms_clone(parms);
rcu_read_unlock();
neigh->output = neigh->ops->queue_xmit;
diff -Nurb linux-2.6.22-570/drivers/s390/net/qeth_sys.c linux-2.6.22-590/drivers/s390/net/qeth_sys.c
--- linux-2.6.22-570/drivers/s390/net/qeth_sys.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/s390/net/qeth_sys.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/s390/net/qeth_sys.c 2008-03-20 13:28:01.000000000 -0400
@@ -991,7 +991,7 @@
#define QETH_DEVICE_ATTR(_id,_name,_mode,_show,_store) \
};
diff -Nurb linux-2.6.22-570/drivers/s390/scsi/zfcp_aux.c linux-2.6.22-590/drivers/s390/scsi/zfcp_aux.c
--- linux-2.6.22-570/drivers/s390/scsi/zfcp_aux.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/s390/scsi/zfcp_aux.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/s390/scsi/zfcp_aux.c 2008-03-20 13:28:01.000000000 -0400
@@ -815,9 +815,7 @@
struct zfcp_unit *
zfcp_unit_enqueue(struct zfcp_port *port, fcp_lun_t fcp_lun)
atomic_set_mask(ZFCP_STATUS_COMMON_RUNNING, &unit->status);
diff -Nurb linux-2.6.22-570/drivers/s390/scsi/zfcp_erp.c linux-2.6.22-590/drivers/s390/scsi/zfcp_erp.c
--- linux-2.6.22-570/drivers/s390/scsi/zfcp_erp.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/s390/scsi/zfcp_erp.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/s390/scsi/zfcp_erp.c 2008-03-20 13:28:01.000000000 -0400
@@ -1986,6 +1986,10 @@
failed_openfcp:
zfcp_close_fsf(erp_action->adapter);
ZFCP_LOG_INFO("error: exchange of configuration data for "
diff -Nurb linux-2.6.22-570/drivers/sbus/char/bbc_envctrl.c linux-2.6.22-590/drivers/sbus/char/bbc_envctrl.c
--- linux-2.6.22-570/drivers/sbus/char/bbc_envctrl.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/sbus/char/bbc_envctrl.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/sbus/char/bbc_envctrl.c 2008-03-20 13:28:01.000000000 -0400
@@ -7,6 +7,7 @@
#include <linux/kthread.h>
#include <linux/delay.h>
diff -Nurb linux-2.6.22-570/drivers/sbus/char/envctrl.c linux-2.6.22-590/drivers/sbus/char/envctrl.c
--- linux-2.6.22-570/drivers/sbus/char/envctrl.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/sbus/char/envctrl.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/sbus/char/envctrl.c 2008-03-20 13:28:01.000000000 -0400
@@ -26,6 +26,7 @@
#include <linux/ioport.h>
#include <linux/miscdevice.h>
printk(KERN_CRIT "kenvctrld: WARNING: system shutdown failed!\n");
inprog = 0; /* unlikely to succeed, but we could try again */
diff -Nurb linux-2.6.22-570/drivers/scsi/3w-9xxx.c linux-2.6.22-590/drivers/scsi/3w-9xxx.c
---- linux-2.6.22-570/drivers/scsi/3w-9xxx.c 2008-03-18 15:57:36.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/3w-9xxx.c 2008-03-18 15:57:53.000000000 -0400
+--- linux-2.6.22-570/drivers/scsi/3w-9xxx.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/3w-9xxx.c 2008-03-20 13:28:01.000000000 -0400
@@ -1307,22 +1307,26 @@
wake_up(&tw_dev->ioctl_wqueue);
}
/* scsi_host_template initializer */
diff -Nurb linux-2.6.22-570/drivers/scsi/3w-xxxx.c linux-2.6.22-590/drivers/scsi/3w-xxxx.c
--- linux-2.6.22-570/drivers/scsi/3w-xxxx.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/3w-xxxx.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/3w-xxxx.c 2008-03-20 13:28:01.000000000 -0400
@@ -1274,12 +1274,8 @@
dprintk(KERN_WARNING "3w-xxxx: tw_map_scsi_sg_data()\n");
diff -Nurb linux-2.6.22-570/drivers/scsi/53c700.c linux-2.6.22-590/drivers/scsi/53c700.c
--- linux-2.6.22-570/drivers/scsi/53c700.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/53c700.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/53c700.c 2008-03-20 13:28:01.000000000 -0400
@@ -585,16 +585,8 @@
struct NCR_700_command_slot *slot)
{
DEBUG((" scatter block %d: move %d[%08x] from 0x%lx\n",
diff -Nurb linux-2.6.22-570/drivers/scsi/53c700.h linux-2.6.22-590/drivers/scsi/53c700.h
--- linux-2.6.22-570/drivers/scsi/53c700.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/53c700.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/53c700.h 2008-03-20 13:28:01.000000000 -0400
@@ -177,6 +177,7 @@
__u8 state;
#define NCR_700_FLAG_AUTOSENSE 0x01
-#undef Ent_wait_reselect
diff -Nurb linux-2.6.22-570/drivers/scsi/BusLogic.c linux-2.6.22-590/drivers/scsi/BusLogic.c
--- linux-2.6.22-570/drivers/scsi/BusLogic.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/BusLogic.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/BusLogic.c 2008-03-20 13:28:01.000000000 -0400
@@ -304,16 +304,8 @@
static void BusLogic_DeallocateCCB(struct BusLogic_CCB *CCB)
{
case READ_10:
diff -Nurb linux-2.6.22-570/drivers/scsi/Kconfig linux-2.6.22-590/drivers/scsi/Kconfig
--- linux-2.6.22-570/drivers/scsi/Kconfig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/Kconfig 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/Kconfig 2008-03-20 13:28:01.000000000 -0400
@@ -739,7 +739,7 @@
config SCSI_IBMMCA
depends on SUN3 && SCSI
diff -Nurb linux-2.6.22-570/drivers/scsi/Makefile linux-2.6.22-590/drivers/scsi/Makefile
--- linux-2.6.22-570/drivers/scsi/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/Makefile 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/Makefile 2008-03-20 13:28:01.000000000 -0400
@@ -37,7 +37,8 @@
obj-$(CONFIG_ISCSI_TCP) += libiscsi.o iscsi_tcp.o
diff -Nurb linux-2.6.22-570/drivers/scsi/NCR5380.c linux-2.6.22-590/drivers/scsi/NCR5380.c
--- linux-2.6.22-570/drivers/scsi/NCR5380.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/NCR5380.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/NCR5380.c 2008-03-20 13:28:01.000000000 -0400
@@ -347,7 +347,7 @@
if((r & bit) == val)
return 0;
struct NCR5380_hostdata *hostdata;
diff -Nurb linux-2.6.22-570/drivers/scsi/NCR5380.h linux-2.6.22-590/drivers/scsi/NCR5380.h
--- linux-2.6.22-570/drivers/scsi/NCR5380.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/NCR5380.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/NCR5380.h 2008-03-20 13:28:01.000000000 -0400
@@ -299,7 +299,7 @@
static irqreturn_t NCR5380_intr(int irq, void *dev_id);
#endif
static int NCR5380_select(struct Scsi_Host *instance, Scsi_Cmnd * cmd, int tag);
diff -Nurb linux-2.6.22-570/drivers/scsi/NCR53c406a.c linux-2.6.22-590/drivers/scsi/NCR53c406a.c
--- linux-2.6.22-570/drivers/scsi/NCR53c406a.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/NCR53c406a.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/NCR53c406a.c 2008-03-20 13:28:01.000000000 -0400
@@ -698,7 +698,7 @@
int i;
#endif /* USE_PIO */
diff -Nurb linux-2.6.22-570/drivers/scsi/a100u2w.c linux-2.6.22-590/drivers/scsi/a100u2w.c
--- linux-2.6.22-570/drivers/scsi/a100u2w.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/a100u2w.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/a100u2w.c 2008-03-20 13:28:01.000000000 -0400
@@ -19,27 +19,6 @@
* along with this program; see the file COPYING. If not, write to
* the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
scsi_host_put(shost);
diff -Nurb linux-2.6.22-570/drivers/scsi/a100u2w.h linux-2.6.22-590/drivers/scsi/a100u2w.h
--- linux-2.6.22-570/drivers/scsi/a100u2w.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/a100u2w.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/a100u2w.h 2008-03-20 13:28:01.000000000 -0400
@@ -18,27 +18,6 @@
* along with this program; see the file COPYING. If not, write to
* the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
-#define ORC_WRLONG( adr,data) outl( (ULONG)(data), (int)(adr))
diff -Nurb linux-2.6.22-570/drivers/scsi/a4000t.c linux-2.6.22-590/drivers/scsi/a4000t.c
--- linux-2.6.22-570/drivers/scsi/a4000t.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/scsi/a4000t.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/a4000t.c 2008-03-20 13:28:01.000000000 -0400
@@ -0,0 +1,143 @@
+/*
+ * Detection routine for the NCR53c710 based Amiga SCSI Controllers for Linux.
+module_exit(a4000t_scsi_exit);
diff -Nurb linux-2.6.22-570/drivers/scsi/aacraid/aachba.c linux-2.6.22-590/drivers/scsi/aacraid/aachba.c
--- linux-2.6.22-570/drivers/scsi/aacraid/aachba.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/aacraid/aachba.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/aacraid/aachba.c 2008-03-20 13:28:01.000000000 -0400
@@ -169,6 +169,18 @@
module_param(acbsize, int, S_IRUGO|S_IWUSR);
MODULE_PARM_DESC(acbsize, "Request a specific adapter control block (FIB) size. Valid values are 512, 2048, 4096 and 8192. Default is to use suggestion from Firmware.");
diff -Nurb linux-2.6.22-570/drivers/scsi/aacraid/aacraid.h linux-2.6.22-590/drivers/scsi/aacraid/aacraid.h
--- linux-2.6.22-570/drivers/scsi/aacraid/aacraid.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/aacraid/aacraid.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/aacraid/aacraid.h 2008-03-20 13:28:01.000000000 -0400
@@ -12,8 +12,8 @@
*----------------------------------------------------------------------------*/
+extern int check_reset;
diff -Nurb linux-2.6.22-570/drivers/scsi/aacraid/commsup.c linux-2.6.22-590/drivers/scsi/aacraid/commsup.c
--- linux-2.6.22-570/drivers/scsi/aacraid/commsup.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/aacraid/commsup.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/aacraid/commsup.c 2008-03-20 13:28:01.000000000 -0400
@@ -1021,7 +1021,7 @@
}
if (dev->queues)
remove_wait_queue(&dev->queues->queue[HostNormCmdQueue].cmdready, &wait);
diff -Nurb linux-2.6.22-570/drivers/scsi/aacraid/linit.c linux-2.6.22-590/drivers/scsi/aacraid/linit.c
---- linux-2.6.22-570/drivers/scsi/aacraid/linit.c 2008-03-18 15:57:36.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/aacraid/linit.c 2008-03-18 15:57:53.000000000 -0400
+--- linux-2.6.22-570/drivers/scsi/aacraid/linit.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/aacraid/linit.c 2008-03-20 13:28:01.000000000 -0400
@@ -39,10 +39,8 @@
#include <linux/pci.h>
#include <linux/slab.h>
error = pci_register_driver(&aac_pci_driver);
diff -Nurb linux-2.6.22-570/drivers/scsi/aacraid/rx.c linux-2.6.22-590/drivers/scsi/aacraid/rx.c
--- linux-2.6.22-570/drivers/scsi/aacraid/rx.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/aacraid/rx.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/aacraid/rx.c 2008-03-20 13:28:01.000000000 -0400
@@ -464,6 +464,8 @@
{
u32 var;
* Fill in the common function dispatch table.
diff -Nurb linux-2.6.22-570/drivers/scsi/advansys.c linux-2.6.22-590/drivers/scsi/advansys.c
--- linux-2.6.22-570/drivers/scsi/advansys.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/advansys.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/advansys.c 2008-03-20 13:28:01.000000000 -0400
@@ -798,7 +798,6 @@
#include <scsi/scsi_tcq.h>
#include <scsi/scsi.h>
-#endif /* _ADVANSYS_H */
diff -Nurb linux-2.6.22-570/drivers/scsi/aha152x.c linux-2.6.22-590/drivers/scsi/aha152x.c
--- linux-2.6.22-570/drivers/scsi/aha152x.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/aha152x.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/aha152x.c 2008-03-20 13:28:01.000000000 -0400
@@ -240,6 +240,7 @@
#include <linux/io.h>
#include <linux/blkdev.h>
SCpnt->use_sg = old_use_sg;
diff -Nurb linux-2.6.22-570/drivers/scsi/aha1740.c linux-2.6.22-590/drivers/scsi/aha1740.c
--- linux-2.6.22-570/drivers/scsi/aha1740.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/aha1740.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/aha1740.c 2008-03-20 13:28:01.000000000 -0400
@@ -271,19 +271,7 @@
continue;
}
host->ecb[ecbno].ses = 1; /* Suppress underrun errors */
diff -Nurb linux-2.6.22-570/drivers/scsi/aic7xxx/aic79xx_osm.c linux-2.6.22-590/drivers/scsi/aic7xxx/aic79xx_osm.c
--- linux-2.6.22-570/drivers/scsi/aic7xxx/aic79xx_osm.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/aic7xxx/aic79xx_osm.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/aic7xxx/aic79xx_osm.c 2008-03-20 13:28:01.000000000 -0400
@@ -376,21 +376,10 @@
ahd_linux_unmap_scb(struct ahd_softc *ahd, struct scb *scb)
{
LIST_INSERT_HEAD(&ahd->pending_scbs, scb, pending_links);
diff -Nurb linux-2.6.22-570/drivers/scsi/aic7xxx/aic79xx_osm.h linux-2.6.22-590/drivers/scsi/aic7xxx/aic79xx_osm.h
--- linux-2.6.22-570/drivers/scsi/aic7xxx/aic79xx_osm.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/aic7xxx/aic79xx_osm.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/aic7xxx/aic79xx_osm.h 2008-03-20 13:28:01.000000000 -0400
@@ -781,7 +781,7 @@
static __inline
void ahd_set_residual(struct scb *scb, u_long resid)
static __inline
diff -Nurb linux-2.6.22-570/drivers/scsi/aic7xxx/aic7xxx_osm.c linux-2.6.22-590/drivers/scsi/aic7xxx/aic7xxx_osm.c
--- linux-2.6.22-570/drivers/scsi/aic7xxx/aic7xxx_osm.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/aic7xxx/aic7xxx_osm.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/aic7xxx/aic7xxx_osm.c 2008-03-20 13:28:01.000000000 -0400
@@ -402,18 +402,8 @@
cmd = scb->io_ctx;
scb->hscb->dataptr = 0;
diff -Nurb linux-2.6.22-570/drivers/scsi/aic7xxx/aic7xxx_osm.h linux-2.6.22-590/drivers/scsi/aic7xxx/aic7xxx_osm.h
--- linux-2.6.22-570/drivers/scsi/aic7xxx/aic7xxx_osm.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/aic7xxx/aic7xxx_osm.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/aic7xxx/aic7xxx_osm.h 2008-03-20 13:28:01.000000000 -0400
@@ -751,7 +751,7 @@
static __inline
void ahc_set_residual(struct scb *scb, u_long resid)
static __inline
diff -Nurb linux-2.6.22-570/drivers/scsi/aic7xxx_old.c linux-2.6.22-590/drivers/scsi/aic7xxx_old.c
--- linux-2.6.22-570/drivers/scsi/aic7xxx_old.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/aic7xxx_old.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/aic7xxx_old.c 2008-03-20 13:28:01.000000000 -0400
@@ -2690,17 +2690,8 @@
struct aic7xxx_scb *scbp;
unsigned char queue_depth;
-#endif /* AMIGA7XX_H */
diff -Nurb linux-2.6.22-570/drivers/scsi/arcmsr/arcmsr.h linux-2.6.22-590/drivers/scsi/arcmsr/arcmsr.h
--- linux-2.6.22-570/drivers/scsi/arcmsr/arcmsr.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/arcmsr/arcmsr.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/arcmsr/arcmsr.h 2008-03-20 13:28:01.000000000 -0400
@@ -48,9 +48,10 @@
#define ARCMSR_MAX_OUTSTANDING_CMD 256
-
diff -Nurb linux-2.6.22-570/drivers/scsi/arcmsr/arcmsr_attr.c linux-2.6.22-590/drivers/scsi/arcmsr/arcmsr_attr.c
--- linux-2.6.22-570/drivers/scsi/arcmsr/arcmsr_attr.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/arcmsr/arcmsr_attr.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/arcmsr/arcmsr_attr.c 2008-03-20 13:28:01.000000000 -0400
@@ -59,8 +59,9 @@
struct class_device_attribute *arcmsr_host_attrs[];
.write = arcmsr_sysfs_iop_message_clear,
diff -Nurb linux-2.6.22-570/drivers/scsi/arcmsr/arcmsr_hba.c linux-2.6.22-590/drivers/scsi/arcmsr/arcmsr_hba.c
--- linux-2.6.22-570/drivers/scsi/arcmsr/arcmsr_hba.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/arcmsr/arcmsr_hba.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/arcmsr/arcmsr_hba.c 2008-03-20 13:28:01.000000000 -0400
@@ -57,6 +57,7 @@
#include <linux/dma-mapping.h>
#include <linux/timer.h>
-#endif /* BVME6000_SCSI_H */
diff -Nurb linux-2.6.22-570/drivers/scsi/bvme6000_scsi.c linux-2.6.22-590/drivers/scsi/bvme6000_scsi.c
--- linux-2.6.22-570/drivers/scsi/bvme6000_scsi.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/scsi/bvme6000_scsi.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/bvme6000_scsi.c 2008-03-20 13:28:01.000000000 -0400
@@ -0,0 +1,135 @@
+/*
+ * Detection routine for the NCR53c710 based BVME6000 SCSI Controllers for Linux.
+module_exit(bvme6000_scsi_exit);
diff -Nurb linux-2.6.22-570/drivers/scsi/dpt_i2o.c linux-2.6.22-590/drivers/scsi/dpt_i2o.c
--- linux-2.6.22-570/drivers/scsi/dpt_i2o.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/dpt_i2o.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/dpt_i2o.c 2008-03-20 13:28:01.000000000 -0400
@@ -2078,12 +2078,13 @@
u32 *lenptr;
int direction;
diff -Nurb linux-2.6.22-570/drivers/scsi/eata.c linux-2.6.22-590/drivers/scsi/eata.c
--- linux-2.6.22-570/drivers/scsi/eata.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/eata.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/eata.c 2008-03-20 13:28:01.000000000 -0400
@@ -1609,8 +1609,9 @@
static void map_dma(unsigned int i, struct hostdata *ha)
if (!DEV2H(cpp->data_len))
pci_dir = PCI_DMA_BIDIRECTIONAL;
diff -Nurb linux-2.6.22-570/drivers/scsi/esp_scsi.c linux-2.6.22-590/drivers/scsi/esp_scsi.c
---- linux-2.6.22-570/drivers/scsi/esp_scsi.c 2008-03-18 15:57:36.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/esp_scsi.c 2008-03-18 15:57:53.000000000 -0400
+--- linux-2.6.22-570/drivers/scsi/esp_scsi.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/esp_scsi.c 2008-03-20 13:28:01.000000000 -0400
@@ -324,17 +324,14 @@
static void esp_map_dma(struct esp *esp, struct scsi_cmnd *cmd)
{
tp->nego_goal_width = (width ? 1 : 0);
diff -Nurb linux-2.6.22-570/drivers/scsi/esp_scsi.h linux-2.6.22-590/drivers/scsi/esp_scsi.h
--- linux-2.6.22-570/drivers/scsi/esp_scsi.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/esp_scsi.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/esp_scsi.h 2008-03-20 13:28:01.000000000 -0400
@@ -517,8 +517,6 @@
struct sbus_dma *dma;
};
* 1) Allocate the host and private area using scsi_host_alloc()
diff -Nurb linux-2.6.22-570/drivers/scsi/fdomain.c linux-2.6.22-590/drivers/scsi/fdomain.c
--- linux-2.6.22-570/drivers/scsi/fdomain.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/fdomain.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/fdomain.c 2008-03-20 13:28:01.000000000 -0400
@@ -410,6 +410,8 @@
static char * fdomain = NULL;
module_param(fdomain, charp, 0);
SCpnt->SCp.have_data_in,
diff -Nurb linux-2.6.22-570/drivers/scsi/gdth.c linux-2.6.22-590/drivers/scsi/gdth.c
--- linux-2.6.22-570/drivers/scsi/gdth.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/gdth.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/gdth.c 2008-03-20 13:28:01.000000000 -0400
@@ -876,7 +876,7 @@
/* Vortex only makes RAID controllers.
* We do not really want to specify all 550 ids here, so wildcard match.
*(ulong32 *)&rtc[4], *(ulong32 *)&rtc[8]));
/* 3. send to controller firmware */
diff -Nurb linux-2.6.22-570/drivers/scsi/hptiop.c linux-2.6.22-590/drivers/scsi/hptiop.c
---- linux-2.6.22-570/drivers/scsi/hptiop.c 2008-03-18 15:57:36.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/hptiop.c 2008-03-18 15:57:53.000000000 -0400
+--- linux-2.6.22-570/drivers/scsi/hptiop.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/hptiop.c 2008-03-20 13:28:02.000000000 -0400
@@ -339,20 +339,8 @@
scp = hba->reqs[tag].scp;
req->lun = scp->device->lun;
diff -Nurb linux-2.6.22-570/drivers/scsi/ibmmca.c linux-2.6.22-590/drivers/scsi/ibmmca.c
--- linux-2.6.22-570/drivers/scsi/ibmmca.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/ibmmca.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/ibmmca.c 2008-03-20 13:28:02.000000000 -0400
@@ -31,14 +31,21 @@
#include <linux/mca.h>
#include <linux/spinlock.h>
-#endif /* _IBMMCA_H */
diff -Nurb linux-2.6.22-570/drivers/scsi/ibmvscsi/ibmvscsi.c linux-2.6.22-590/drivers/scsi/ibmvscsi/ibmvscsi.c
--- linux-2.6.22-570/drivers/scsi/ibmvscsi/ibmvscsi.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/ibmvscsi/ibmvscsi.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/ibmvscsi/ibmvscsi.c 2008-03-20 13:28:02.000000000 -0400
@@ -173,8 +173,7 @@
}
}
diff -Nurb linux-2.6.22-570/drivers/scsi/ibmvscsi/ibmvscsi.h linux-2.6.22-590/drivers/scsi/ibmvscsi/ibmvscsi.h
--- linux-2.6.22-570/drivers/scsi/ibmvscsi/ibmvscsi.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/ibmvscsi/ibmvscsi.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/ibmvscsi/ibmvscsi.h 2008-03-20 13:28:02.000000000 -0400
@@ -45,6 +45,7 @@
#define MAX_INDIRECT_BUFS 10
dma_addr_t ext_list_token;
diff -Nurb linux-2.6.22-570/drivers/scsi/ibmvscsi/rpa_vscsi.c linux-2.6.22-590/drivers/scsi/ibmvscsi/rpa_vscsi.c
--- linux-2.6.22-570/drivers/scsi/ibmvscsi/rpa_vscsi.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/ibmvscsi/rpa_vscsi.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/ibmvscsi/rpa_vscsi.c 2008-03-20 13:28:02.000000000 -0400
@@ -177,7 +177,7 @@
memset(&hostdata->madapter_info, 0x00,
sizeof(hostdata->madapter_info));
}
diff -Nurb linux-2.6.22-570/drivers/scsi/initio.c linux-2.6.22-590/drivers/scsi/initio.c
--- linux-2.6.22-570/drivers/scsi/initio.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/initio.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/initio.c 2008-03-20 13:28:02.000000000 -0400
@@ -3,7 +3,8 @@
*
* Copyright (c) 1994-1998 Initio Corporation
+module_exit(initio_exit_driver);
diff -Nurb linux-2.6.22-570/drivers/scsi/initio.h linux-2.6.22-590/drivers/scsi/initio.h
--- linux-2.6.22-570/drivers/scsi/initio.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/initio.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/initio.h 2008-03-20 13:28:02.000000000 -0400
@@ -4,6 +4,8 @@
* Copyright (c) 1994-1998 Initio Corporation
* All rights reserved.
#define SCSI_ABORT_PENDING 2
diff -Nurb linux-2.6.22-570/drivers/scsi/ipr.c linux-2.6.22-590/drivers/scsi/ipr.c
--- linux-2.6.22-570/drivers/scsi/ipr.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/ipr.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/ipr.c 2008-03-20 13:28:02.000000000 -0400
@@ -540,32 +540,6 @@
}
} else
diff -Nurb linux-2.6.22-570/drivers/scsi/ips.c linux-2.6.22-590/drivers/scsi/ips.c
--- linux-2.6.22-570/drivers/scsi/ips.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/ips.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/ips.c 2008-03-20 13:28:02.000000000 -0400
@@ -211,19 +211,6 @@
#warning "This driver has only been tested on the x86/ia64/x86_64 platforms"
#endif
/*
diff -Nurb linux-2.6.22-570/drivers/scsi/ips.h linux-2.6.22-590/drivers/scsi/ips.h
--- linux-2.6.22-570/drivers/scsi/ips.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/ips.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/ips.h 2008-03-20 13:28:02.000000000 -0400
@@ -58,10 +58,6 @@
/*
* Some handy macros
* Raid Command Formats
diff -Nurb linux-2.6.22-570/drivers/scsi/iscsi_tcp.c linux-2.6.22-590/drivers/scsi/iscsi_tcp.c
--- linux-2.6.22-570/drivers/scsi/iscsi_tcp.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/iscsi_tcp.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/iscsi_tcp.c 2008-03-20 13:28:02.000000000 -0400
@@ -29,14 +29,15 @@
#include <linux/types.h>
#include <linux/list.h>
.get_stats = iscsi_conn_get_stats,
diff -Nurb linux-2.6.22-570/drivers/scsi/iscsi_tcp.h linux-2.6.22-590/drivers/scsi/iscsi_tcp.h
--- linux-2.6.22-570/drivers/scsi/iscsi_tcp.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/iscsi_tcp.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/iscsi_tcp.h 2008-03-20 13:28:02.000000000 -0400
@@ -29,11 +29,12 @@
#define IN_PROGRESS_HEADER_GATHER 0x1
#define IN_PROGRESS_DATA_RECV 0x2
struct iscsi_queue r2tpool;
diff -Nurb linux-2.6.22-570/drivers/scsi/jazz_esp.c linux-2.6.22-590/drivers/scsi/jazz_esp.c
--- linux-2.6.22-570/drivers/scsi/jazz_esp.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/jazz_esp.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/jazz_esp.c 2008-03-20 13:28:02.000000000 -0400
@@ -1,6 +1,6 @@
/* jazz_esp.c: ESP front-end for MIPS JAZZ systems.
*
esp->dev = dev;
diff -Nurb linux-2.6.22-570/drivers/scsi/libiscsi.c linux-2.6.22-590/drivers/scsi/libiscsi.c
--- linux-2.6.22-570/drivers/scsi/libiscsi.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/libiscsi.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/libiscsi.c 2008-03-20 13:28:02.000000000 -0400
@@ -22,7 +22,6 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
MODULE_LICENSE("GPL");
diff -Nurb linux-2.6.22-570/drivers/scsi/libsas/sas_expander.c linux-2.6.22-590/drivers/scsi/libsas/sas_expander.c
--- linux-2.6.22-570/drivers/scsi/libsas/sas_expander.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/libsas/sas_expander.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/libsas/sas_expander.c 2008-03-20 13:28:02.000000000 -0400
@@ -38,8 +38,10 @@
#if 0
struct expander_device *ex = &dev->ex_dev;
diff -Nurb linux-2.6.22-570/drivers/scsi/libsas/sas_scsi_host.c linux-2.6.22-590/drivers/scsi/libsas/sas_scsi_host.c
--- linux-2.6.22-570/drivers/scsi/libsas/sas_scsi_host.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/libsas/sas_scsi_host.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/libsas/sas_scsi_host.c 2008-03-20 13:28:02.000000000 -0400
@@ -40,6 +40,7 @@
#include <linux/err.h>
schedule();
diff -Nurb linux-2.6.22-570/drivers/scsi/lpfc/Makefile linux-2.6.22-590/drivers/scsi/lpfc/Makefile
--- linux-2.6.22-570/drivers/scsi/lpfc/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/lpfc/Makefile 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/lpfc/Makefile 2008-03-20 13:28:02.000000000 -0400
@@ -1,7 +1,7 @@
#/*******************************************************************
# * This file is part of the Emulex Linux Device Driver for *
+ lpfc_vport.o lpfc_debugfs.o
diff -Nurb linux-2.6.22-570/drivers/scsi/lpfc/lpfc.h linux-2.6.22-590/drivers/scsi/lpfc/lpfc.h
--- linux-2.6.22-570/drivers/scsi/lpfc/lpfc.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc.h 2008-03-20 13:28:02.000000000 -0400
@@ -19,8 +19,9 @@
* included with this package. *
*******************************************************************/
+
diff -Nurb linux-2.6.22-570/drivers/scsi/lpfc/lpfc_attr.c linux-2.6.22-590/drivers/scsi/lpfc/lpfc_attr.c
--- linux-2.6.22-570/drivers/scsi/lpfc/lpfc_attr.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_attr.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_attr.c 2008-03-20 13:28:02.000000000 -0400
@@ -39,6 +39,7 @@
#include "lpfc_version.h"
#include "lpfc_compat.h"
lpfc_nodev_tmo_init(phba, lpfc_nodev_tmo);
diff -Nurb linux-2.6.22-570/drivers/scsi/lpfc/lpfc_crtn.h linux-2.6.22-590/drivers/scsi/lpfc/lpfc_crtn.h
--- linux-2.6.22-570/drivers/scsi/lpfc/lpfc_crtn.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_crtn.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_crtn.h 2008-03-20 13:28:02.000000000 -0400
@@ -23,92 +23,114 @@
struct fc_rport;
void lpfc_dump_mem(struct lpfc_hba *, LPFC_MBOXQ_t *, uint16_t);
#define HBA_EVENT_LINK_UP 2
diff -Nurb linux-2.6.22-570/drivers/scsi/lpfc/lpfc_ct.c linux-2.6.22-590/drivers/scsi/lpfc/lpfc_ct.c
--- linux-2.6.22-570/drivers/scsi/lpfc/lpfc_ct.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_ct.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_ct.c 2008-03-20 13:28:02.000000000 -0400
@@ -40,6 +40,8 @@
#include "lpfc_logmsg.h"
#include "lpfc_crtn.h"
lpfc_vpd_t *vp = &phba->vpd;
diff -Nurb linux-2.6.22-570/drivers/scsi/lpfc/lpfc_debugfs.c linux-2.6.22-590/drivers/scsi/lpfc/lpfc_debugfs.c
--- linux-2.6.22-570/drivers/scsi/lpfc/lpfc_debugfs.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_debugfs.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_debugfs.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,508 @@
+/*******************************************************************
+ * This file is part of the Emulex Linux Device Driver for *
+
diff -Nurb linux-2.6.22-570/drivers/scsi/lpfc/lpfc_debugfs.h linux-2.6.22-590/drivers/scsi/lpfc/lpfc_debugfs.h
--- linux-2.6.22-570/drivers/scsi/lpfc/lpfc_debugfs.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_debugfs.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_debugfs.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,50 @@
+/*******************************************************************
+ * This file is part of the Emulex Linux Device Driver for *
+#endif /* H_LPFC_DEBUG_FS */
diff -Nurb linux-2.6.22-570/drivers/scsi/lpfc/lpfc_disc.h linux-2.6.22-590/drivers/scsi/lpfc/lpfc_disc.h
--- linux-2.6.22-570/drivers/scsi/lpfc/lpfc_disc.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_disc.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_disc.h 2008-03-20 13:28:02.000000000 -0400
@@ -36,21 +36,23 @@
LPFC_EVT_WARM_START,
LPFC_EVT_KILL,
* The Port Login (PLOGI) list and Address Discovery (ADISC) list are used
diff -Nurb linux-2.6.22-570/drivers/scsi/lpfc/lpfc_els.c linux-2.6.22-590/drivers/scsi/lpfc/lpfc_els.c
--- linux-2.6.22-570/drivers/scsi/lpfc/lpfc_els.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_els.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_els.c 2008-03-20 13:28:02.000000000 -0400
@@ -35,38 +35,38 @@
#include "lpfc.h"
#include "lpfc_logmsg.h"
+
diff -Nurb linux-2.6.22-570/drivers/scsi/lpfc/lpfc_hbadisc.c linux-2.6.22-590/drivers/scsi/lpfc/lpfc_hbadisc.c
--- linux-2.6.22-570/drivers/scsi/lpfc/lpfc_hbadisc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_hbadisc.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_hbadisc.c 2008-03-20 13:28:02.000000000 -0400
@@ -36,6 +36,8 @@
#include "lpfc.h"
#include "lpfc_logmsg.h"
struct lpfc_nodelist *
diff -Nurb linux-2.6.22-570/drivers/scsi/lpfc/lpfc_hw.h linux-2.6.22-590/drivers/scsi/lpfc/lpfc_hw.h
--- linux-2.6.22-570/drivers/scsi/lpfc/lpfc_hw.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_hw.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_hw.h 2008-03-20 13:28:02.000000000 -0400
@@ -59,6 +59,12 @@
#define SLI2_IOCB_CMD_R3XTRA_ENTRIES 24
#define SLI2_IOCB_RSP_R3XTRA_ENTRIES 32
+}
diff -Nurb linux-2.6.22-570/drivers/scsi/lpfc/lpfc_init.c linux-2.6.22-590/drivers/scsi/lpfc/lpfc_init.c
--- linux-2.6.22-570/drivers/scsi/lpfc/lpfc_init.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_init.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_init.c 2008-03-20 13:28:02.000000000 -0400
@@ -27,6 +27,7 @@
#include <linux/kthread.h>
#include <linux/pci.h>
module_init(lpfc_init);
diff -Nurb linux-2.6.22-570/drivers/scsi/lpfc/lpfc_logmsg.h linux-2.6.22-590/drivers/scsi/lpfc/lpfc_logmsg.h
--- linux-2.6.22-570/drivers/scsi/lpfc/lpfc_logmsg.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_logmsg.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_logmsg.h 2008-03-20 13:28:02.000000000 -0400
@@ -30,6 +30,7 @@
#define LOG_SLI 0x800 /* SLI events */
#define LOG_FCP_ERROR 0x1000 /* log errors, not underruns */
#define lpfc_printf_log(phba, level, mask, fmt, arg...) \
diff -Nurb linux-2.6.22-570/drivers/scsi/lpfc/lpfc_mbox.c linux-2.6.22-590/drivers/scsi/lpfc/lpfc_mbox.c
--- linux-2.6.22-570/drivers/scsi/lpfc/lpfc_mbox.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_mbox.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_mbox.c 2008-03-20 13:28:02.000000000 -0400
@@ -82,6 +82,22 @@
}
{
diff -Nurb linux-2.6.22-570/drivers/scsi/lpfc/lpfc_mem.c linux-2.6.22-590/drivers/scsi/lpfc/lpfc_mem.c
--- linux-2.6.22-570/drivers/scsi/lpfc/lpfc_mem.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_mem.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_mem.c 2008-03-20 13:28:02.000000000 -0400
@@ -1,7 +1,7 @@
/*******************************************************************
* This file is part of the Emulex Linux Device Driver for *
+
diff -Nurb linux-2.6.22-570/drivers/scsi/lpfc/lpfc_nportdisc.c linux-2.6.22-590/drivers/scsi/lpfc/lpfc_nportdisc.c
--- linux-2.6.22-570/drivers/scsi/lpfc/lpfc_nportdisc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_nportdisc.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_nportdisc.c 2008-03-20 13:28:02.000000000 -0400
@@ -1,4 +1,4 @@
-/*******************************************************************
+ /*******************************************************************
lpfc_nlp_put(ndlp);
diff -Nurb linux-2.6.22-570/drivers/scsi/lpfc/lpfc_scsi.c linux-2.6.22-590/drivers/scsi/lpfc/lpfc_scsi.c
--- linux-2.6.22-570/drivers/scsi/lpfc/lpfc_scsi.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_scsi.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_scsi.c 2008-03-20 13:28:02.000000000 -0400
@@ -37,10 +37,158 @@
#include "lpfc.h"
#include "lpfc_logmsg.h"
};
diff -Nurb linux-2.6.22-570/drivers/scsi/lpfc/lpfc_scsi.h linux-2.6.22-590/drivers/scsi/lpfc/lpfc_scsi.h
--- linux-2.6.22-570/drivers/scsi/lpfc/lpfc_scsi.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_scsi.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_scsi.h 2008-03-20 13:28:02.000000000 -0400
@@ -1,7 +1,7 @@
/*******************************************************************
* This file is part of the Emulex Linux Device Driver for *
uint32_t timeout;
diff -Nurb linux-2.6.22-570/drivers/scsi/lpfc/lpfc_sli.c linux-2.6.22-590/drivers/scsi/lpfc/lpfc_sli.c
--- linux-2.6.22-570/drivers/scsi/lpfc/lpfc_sli.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_sli.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_sli.c 2008-03-20 13:28:02.000000000 -0400
@@ -38,23 +38,25 @@
#include "lpfc_crtn.h"
#include "lpfc_logmsg.h"
status);
diff -Nurb linux-2.6.22-570/drivers/scsi/lpfc/lpfc_sli.h linux-2.6.22-590/drivers/scsi/lpfc/lpfc_sli.h
--- linux-2.6.22-570/drivers/scsi/lpfc/lpfc_sli.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_sli.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_sli.h 2008-03-20 13:28:02.000000000 -0400
@@ -20,6 +20,7 @@
/* forward declaration for LPFC_IOCB_t's use */
#define LPFC_MBOX_TMO_FLASH_CMD 300 /* Sec tmo for outstanding FLASH write
diff -Nurb linux-2.6.22-570/drivers/scsi/lpfc/lpfc_version.h linux-2.6.22-590/drivers/scsi/lpfc/lpfc_version.h
--- linux-2.6.22-570/drivers/scsi/lpfc/lpfc_version.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_version.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_version.h 2008-03-20 13:28:02.000000000 -0400
@@ -18,7 +18,7 @@
* included with this package. *
*******************************************************************/
diff -Nurb linux-2.6.22-570/drivers/scsi/lpfc/lpfc_vport.c linux-2.6.22-590/drivers/scsi/lpfc/lpfc_vport.c
--- linux-2.6.22-570/drivers/scsi/lpfc/lpfc_vport.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_vport.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_vport.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,523 @@
+/*******************************************************************
+ * This file is part of the Emulex Linux Device Driver for *
+EXPORT_SYMBOL(lpfc_vport_delete);
diff -Nurb linux-2.6.22-570/drivers/scsi/lpfc/lpfc_vport.h linux-2.6.22-590/drivers/scsi/lpfc/lpfc_vport.h
--- linux-2.6.22-570/drivers/scsi/lpfc/lpfc_vport.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_vport.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/lpfc/lpfc_vport.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,113 @@
+/*******************************************************************
+ * This file is part of the Emulex Linux Device Driver for *
+#endif /* H_LPFC_VPORT */
diff -Nurb linux-2.6.22-570/drivers/scsi/mac53c94.c linux-2.6.22-590/drivers/scsi/mac53c94.c
--- linux-2.6.22-570/drivers/scsi/mac53c94.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/mac53c94.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/mac53c94.c 2008-03-20 13:28:02.000000000 -0400
@@ -77,7 +77,7 @@
for (i = 0; i < cmd->cmd_len; ++i)
printk(" %.2x", cmd->cmnd[i]);
st_le16(&dcmds->command, DBDMA_STOP);
diff -Nurb linux-2.6.22-570/drivers/scsi/megaraid/megaraid_mbox.c linux-2.6.22-590/drivers/scsi/megaraid/megaraid_mbox.c
--- linux-2.6.22-570/drivers/scsi/megaraid/megaraid_mbox.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/megaraid/megaraid_mbox.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/megaraid/megaraid_mbox.c 2008-03-20 13:28:02.000000000 -0400
@@ -1378,8 +1378,6 @@
{
struct scatterlist *sgl;
pdev_index = (scb->dev_channel * 16) +
diff -Nurb linux-2.6.22-570/drivers/scsi/megaraid/megaraid_sas.c linux-2.6.22-590/drivers/scsi/megaraid/megaraid_sas.c
--- linux-2.6.22-570/drivers/scsi/megaraid/megaraid_sas.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/megaraid/megaraid_sas.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/megaraid/megaraid_sas.c 2008-03-20 13:28:02.000000000 -0400
@@ -433,34 +433,15 @@
int sge_count;
struct scatterlist *os_sgl;
diff -Nurb linux-2.6.22-570/drivers/scsi/megaraid.c linux-2.6.22-590/drivers/scsi/megaraid.c
--- linux-2.6.22-570/drivers/scsi/megaraid.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/megaraid.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/megaraid.c 2008-03-20 13:28:02.000000000 -0400
@@ -523,10 +523,8 @@
/*
* filter the internal and ioctl commands
scb->state |= SCB_ACTIVE;
diff -Nurb linux-2.6.22-570/drivers/scsi/mesh.c linux-2.6.22-590/drivers/scsi/mesh.c
--- linux-2.6.22-570/drivers/scsi/mesh.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/mesh.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/mesh.c 2008-03-20 13:28:02.000000000 -0400
@@ -421,7 +421,7 @@
for (i = 0; i < cmd->cmd_len; ++i)
printk(" %x", cmd->cmnd[i]);
-#endif /* MVME16x_SCSI_H */
diff -Nurb linux-2.6.22-570/drivers/scsi/mvme16x_scsi.c linux-2.6.22-590/drivers/scsi/mvme16x_scsi.c
--- linux-2.6.22-570/drivers/scsi/mvme16x_scsi.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/scsi/mvme16x_scsi.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/mvme16x_scsi.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,158 @@
+/*
+ * Detection routine for the NCR53c710 based MVME16x SCSI Controllers for Linux.
+module_exit(mvme16x_scsi_exit);
diff -Nurb linux-2.6.22-570/drivers/scsi/nsp32.c linux-2.6.22-590/drivers/scsi/nsp32.c
--- linux-2.6.22-570/drivers/scsi/nsp32.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/nsp32.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/nsp32.c 2008-03-20 13:28:02.000000000 -0400
@@ -49,10 +49,6 @@
#include <scsi/scsi_host.h>
#include <scsi/scsi_ioctl.h>
.id_table = nsp32_pci_table,
diff -Nurb linux-2.6.22-570/drivers/scsi/pcmcia/sym53c500_cs.c linux-2.6.22-590/drivers/scsi/pcmcia/sym53c500_cs.c
--- linux-2.6.22-570/drivers/scsi/pcmcia/sym53c500_cs.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/pcmcia/sym53c500_cs.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/pcmcia/sym53c500_cs.c 2008-03-20 13:28:02.000000000 -0400
@@ -370,8 +370,6 @@
DEB(unsigned char seq_reg;)
unsigned char status, int_reg;
printk("cmd[%d]=%02x ", i, SCpnt->cmnd[i]));
diff -Nurb linux-2.6.22-570/drivers/scsi/qla2xxx/qla_attr.c linux-2.6.22-590/drivers/scsi/qla2xxx/qla_attr.c
--- linux-2.6.22-570/drivers/scsi/qla2xxx/qla_attr.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/qla2xxx/qla_attr.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/qla2xxx/qla_attr.c 2008-03-20 13:28:02.000000000 -0400
@@ -11,8 +11,9 @@
/* SYSFS attributes --------------------------------------------------------- */
.read = qla2x00_sysfs_read_sfp,
diff -Nurb linux-2.6.22-570/drivers/scsi/qla2xxx/qla_dbg.c linux-2.6.22-590/drivers/scsi/qla2xxx/qla_dbg.c
--- linux-2.6.22-570/drivers/scsi/qla2xxx/qla_dbg.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/qla2xxx/qla_dbg.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/qla2xxx/qla_dbg.c 2008-03-20 13:28:02.000000000 -0400
@@ -1411,9 +1411,9 @@
printk("0x%02x ", cmd->cmnd[i]);
}
printk(" serial_number=%lx, SP=%p\n", cmd->serial_number, sp);
diff -Nurb linux-2.6.22-570/drivers/scsi/qla2xxx/qla_iocb.c linux-2.6.22-590/drivers/scsi/qla2xxx/qla_iocb.c
--- linux-2.6.22-570/drivers/scsi/qla2xxx/qla_iocb.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/qla2xxx/qla_iocb.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/qla2xxx/qla_iocb.c 2008-03-20 13:28:02.000000000 -0400
@@ -155,6 +155,8 @@
uint32_t *cur_dsd;
scsi_qla_host_t *ha;
return QLA_FUNCTION_FAILED;
diff -Nurb linux-2.6.22-570/drivers/scsi/qla2xxx/qla_isr.c linux-2.6.22-590/drivers/scsi/qla2xxx/qla_isr.c
--- linux-2.6.22-570/drivers/scsi/qla2xxx/qla_isr.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/qla2xxx/qla_isr.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/qla2xxx/qla_isr.c 2008-03-20 13:28:02.000000000 -0400
@@ -889,11 +889,11 @@
}
if (scsi_status & (SS_RESIDUAL_UNDER | SS_RESIDUAL_OVER)) {
static struct qla_init_msix_entry imsix_entries[QLA_MSIX_ENTRIES] = {
diff -Nurb linux-2.6.22-570/drivers/scsi/qla2xxx/qla_os.c linux-2.6.22-590/drivers/scsi/qla2xxx/qla_os.c
--- linux-2.6.22-570/drivers/scsi/qla2xxx/qla_os.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/qla2xxx/qla_os.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/qla2xxx/qla_os.c 2008-03-20 13:28:02.000000000 -0400
@@ -2426,13 +2426,7 @@
struct scsi_cmnd *cmd = sp->cmd;
CMD_SP(cmd) = NULL;
diff -Nurb linux-2.6.22-570/drivers/scsi/qla4xxx/ql4_dbg.c linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_dbg.c
--- linux-2.6.22-570/drivers/scsi/qla4xxx/ql4_dbg.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_dbg.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_dbg.c 2008-03-20 13:28:02.000000000 -0400
@@ -6,176 +6,9 @@
*/
-#endif /* 0 */
diff -Nurb linux-2.6.22-570/drivers/scsi/qla4xxx/ql4_def.h linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_def.h
--- linux-2.6.22-570/drivers/scsi/qla4xxx/ql4_def.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_def.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_def.h 2008-03-20 13:28:02.000000000 -0400
@@ -122,8 +122,7 @@
#define ISCSI_IPADDR_SIZE 4 /* IP address size */
#endif /*_QLA4XXX_H */
diff -Nurb linux-2.6.22-570/drivers/scsi/qla4xxx/ql4_fw.h linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_fw.h
--- linux-2.6.22-570/drivers/scsi/qla4xxx/ql4_fw.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_fw.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_fw.h 2008-03-20 13:28:02.000000000 -0400
@@ -20,143 +20,23 @@
*************************************************************************/
/*************************************************************************/
diff -Nurb linux-2.6.22-570/drivers/scsi/qla4xxx/ql4_glbl.h linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_glbl.h
--- linux-2.6.22-570/drivers/scsi/qla4xxx/ql4_glbl.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_glbl.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_glbl.h 2008-03-20 13:28:02.000000000 -0400
@@ -8,6 +8,9 @@
#ifndef __QLA4x_GBL_H
#define __QLA4x_GBL_H
extern int ql4xdiscoverywait;
diff -Nurb linux-2.6.22-570/drivers/scsi/qla4xxx/ql4_init.c linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_init.c
--- linux-2.6.22-570/drivers/scsi/qla4xxx/ql4_init.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_init.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_init.c 2008-03-20 13:28:02.000000000 -0400
@@ -6,6 +6,9 @@
*/
ha->fw_ddb_index_map[fw_ddb_index] =
diff -Nurb linux-2.6.22-570/drivers/scsi/qla4xxx/ql4_iocb.c linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_iocb.c
--- linux-2.6.22-570/drivers/scsi/qla4xxx/ql4_iocb.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_iocb.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_iocb.c 2008-03-20 13:28:02.000000000 -0400
@@ -6,6 +6,10 @@
*/
return QLA_ERROR;
diff -Nurb linux-2.6.22-570/drivers/scsi/qla4xxx/ql4_isr.c linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_isr.c
--- linux-2.6.22-570/drivers/scsi/qla4xxx/ql4_isr.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_isr.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_isr.c 2008-03-20 13:28:02.000000000 -0400
@@ -6,6 +6,9 @@
*/
diff -Nurb linux-2.6.22-570/drivers/scsi/qla4xxx/ql4_mbx.c linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_mbx.c
--- linux-2.6.22-570/drivers/scsi/qla4xxx/ql4_mbx.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_mbx.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_mbx.c 2008-03-20 13:28:02.000000000 -0400
@@ -6,6 +6,9 @@
*/
diff -Nurb linux-2.6.22-570/drivers/scsi/qla4xxx/ql4_nvram.c linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_nvram.c
--- linux-2.6.22-570/drivers/scsi/qla4xxx/ql4_nvram.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_nvram.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_nvram.c 2008-03-20 13:28:02.000000000 -0400
@@ -6,6 +6,9 @@
*/
{
diff -Nurb linux-2.6.22-570/drivers/scsi/qla4xxx/ql4_os.c linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_os.c
--- linux-2.6.22-570/drivers/scsi/qla4xxx/ql4_os.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_os.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_os.c 2008-03-20 13:28:02.000000000 -0400
@@ -10,6 +10,10 @@
#include <scsi/scsicam.h>
diff -Nurb linux-2.6.22-570/drivers/scsi/qla4xxx/ql4_version.h linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_version.h
--- linux-2.6.22-570/drivers/scsi/qla4xxx/ql4_version.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_version.h 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/qla4xxx/ql4_version.h 2008-03-20 13:28:02.000000000 -0400
@@ -5,4 +5,5 @@
* See LICENSE.qla4xxx for copyright and licensing details.
*/
+
diff -Nurb linux-2.6.22-570/drivers/scsi/qlogicfas408.c linux-2.6.22-590/drivers/scsi/qlogicfas408.c
--- linux-2.6.22-570/drivers/scsi/qlogicfas408.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/qlogicfas408.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/qlogicfas408.c 2008-03-20 13:28:02.000000000 -0400
@@ -265,8 +265,6 @@
unsigned int message; /* scsi returned message */
unsigned int phase; /* recorded scsi phase */
rtrc(2)
diff -Nurb linux-2.6.22-570/drivers/scsi/scsi_debug.c linux-2.6.22-590/drivers/scsi/scsi_debug.c
--- linux-2.6.22-570/drivers/scsi/scsi_debug.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/scsi_debug.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/scsi_debug.c 2008-03-20 13:28:02.000000000 -0400
@@ -2405,7 +2405,7 @@
MODULE_PARM_DESC(delay, "# of jiffies to delay response(def=1)");
MODULE_PARM_DESC(dev_size_mb, "size in MB of ram shared by devs(def=8)");
MODULE_PARM_DESC(no_lun_0, "no LU number 0 (def=0 -> have lun 0)");
diff -Nurb linux-2.6.22-570/drivers/scsi/scsi_error.c linux-2.6.22-590/drivers/scsi/scsi_error.c
--- linux-2.6.22-570/drivers/scsi/scsi_error.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/scsi_error.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/scsi_error.c 2008-03-20 13:28:02.000000000 -0400
@@ -18,12 +18,13 @@
#include <linux/sched.h>
#include <linux/timer.h>
* counted against the load average as a running process.
diff -Nurb linux-2.6.22-570/drivers/scsi/scsi_lib.c linux-2.6.22-590/drivers/scsi/scsi_lib.c
--- linux-2.6.22-570/drivers/scsi/scsi_lib.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/scsi_lib.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/scsi_lib.c 2008-03-20 13:28:02.000000000 -0400
@@ -2290,3 +2290,41 @@
kunmap_atomic(virt, KM_BIO_SRC_IRQ);
}
+EXPORT_SYMBOL(scsi_dma_unmap);
diff -Nurb linux-2.6.22-570/drivers/scsi/scsi_netlink.c linux-2.6.22-590/drivers/scsi/scsi_netlink.c
--- linux-2.6.22-570/drivers/scsi/scsi_netlink.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/scsi_netlink.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/scsi_netlink.c 2008-03-20 13:28:02.000000000 -0400
@@ -167,7 +167,7 @@
return;
}
if (!scsi_nl_sock) {
diff -Nurb linux-2.6.22-570/drivers/scsi/scsi_scan.c linux-2.6.22-590/drivers/scsi/scsi_scan.c
--- linux-2.6.22-570/drivers/scsi/scsi_scan.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/scsi_scan.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/scsi_scan.c 2008-03-20 13:28:02.000000000 -0400
@@ -1213,7 +1213,7 @@
* Given a struct scsi_lun of: 0a 04 0b 03 00 00 00 00, this function returns
* the integer: 0x0b030a04
* int_to_scsilun: reverts an int into a scsi_lun
diff -Nurb linux-2.6.22-570/drivers/scsi/scsi_sysfs.c linux-2.6.22-590/drivers/scsi/scsi_sysfs.c
--- linux-2.6.22-570/drivers/scsi/scsi_sysfs.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/scsi_sysfs.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/scsi_sysfs.c 2008-03-20 13:28:02.000000000 -0400
@@ -293,30 +293,18 @@
{
struct device_driver *drv = dev->driver;
struct bus_type scsi_bus_type = {
diff -Nurb linux-2.6.22-570/drivers/scsi/scsi_transport_fc.c linux-2.6.22-590/drivers/scsi/scsi_transport_fc.c
--- linux-2.6.22-570/drivers/scsi/scsi_transport_fc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/scsi_transport_fc.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/scsi_transport_fc.c 2008-03-20 13:28:02.000000000 -0400
@@ -19,9 +19,10 @@
*
* ========
diff -Nurb linux-2.6.22-570/drivers/scsi/scsi_transport_iscsi.c linux-2.6.22-590/drivers/scsi/scsi_transport_iscsi.c
--- linux-2.6.22-570/drivers/scsi/scsi_transport_iscsi.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/scsi_transport_iscsi.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/scsi_transport_iscsi.c 2008-03-20 13:28:02.000000000 -0400
@@ -30,9 +30,9 @@
#include <scsi/scsi_transport_iscsi.h>
#include <scsi/iscsi_if.h>
err = -ENOBUFS;
diff -Nurb linux-2.6.22-570/drivers/scsi/sd.c linux-2.6.22-590/drivers/scsi/sd.c
--- linux-2.6.22-570/drivers/scsi/sd.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/sd.c 2008-03-18 15:57:53.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/sd.c 2008-03-20 13:28:02.000000000 -0400
@@ -1515,7 +1515,7 @@
if (!scsi_device_online(sdp))
goto out;
"allocation failure.\n");
diff -Nurb linux-2.6.22-570/drivers/scsi/sg.c linux-2.6.22-590/drivers/scsi/sg.c
--- linux-2.6.22-570/drivers/scsi/sg.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/sg.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/sg.c 2008-03-20 13:28:02.000000000 -0400
@@ -1842,7 +1842,7 @@
int blk_size = buff_size;
struct page *p = NULL;
++blk_size; /* don't know why */
diff -Nurb linux-2.6.22-570/drivers/scsi/stex.c linux-2.6.22-590/drivers/scsi/stex.c
--- linux-2.6.22-570/drivers/scsi/stex.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/stex.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/stex.c 2008-03-20 13:28:02.000000000 -0400
@@ -395,53 +395,34 @@
static int stex_map_sg(struct st_hba *hba,
struct req_msg *req, struct st_ccb *ccb)
result = FAILED;
diff -Nurb linux-2.6.22-570/drivers/scsi/sun_esp.c linux-2.6.22-590/drivers/scsi/sun_esp.c
--- linux-2.6.22-570/drivers/scsi/sun_esp.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/sun_esp.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/sun_esp.c 2008-03-20 13:28:02.000000000 -0400
@@ -493,7 +493,7 @@
goto fail;
esp->dev = esp_dev;
diff -Nurb linux-2.6.22-570/drivers/scsi/sym53c416.c linux-2.6.22-590/drivers/scsi/sym53c416.c
--- linux-2.6.22-570/drivers/scsi/sym53c416.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/sym53c416.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/sym53c416.c 2008-03-20 13:28:02.000000000 -0400
@@ -332,8 +332,7 @@
int i;
unsigned long flags = 0;
printk(KERN_WARNING "sym53c416: Underflow, read %d bytes, request for %d bytes.\n", tot_trans, current_command->underflow);
diff -Nurb linux-2.6.22-570/drivers/scsi/tmscsim.c linux-2.6.22-590/drivers/scsi/tmscsim.c
--- linux-2.6.22-570/drivers/scsi/tmscsim.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/tmscsim.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/tmscsim.c 2008-03-20 13:28:02.000000000 -0400
@@ -457,27 +457,20 @@
error = 1;
DEBUG1(printk("%s(): Mapped sense buffer %p at %x\n", __FUNCTION__, pcmd->sense_buffer, cmdp->saved_dma_handle));
/* Add to free list */
diff -Nurb linux-2.6.22-570/drivers/scsi/tmscsim.h linux-2.6.22-590/drivers/scsi/tmscsim.h
--- linux-2.6.22-570/drivers/scsi/tmscsim.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/tmscsim.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/tmscsim.h 2008-03-20 13:28:02.000000000 -0400
@@ -258,13 +258,6 @@
#define H_BAD_CCB_OR_SG 0x1A
#define H_ABORT 0x0FF
#define SET_RES_TARGET_LNX(who, tgt) do { who &= ~RES_TARGET_LNX; who |= (int)(tgt) << 1; } while (0)
diff -Nurb linux-2.6.22-570/drivers/scsi/u14-34f.c linux-2.6.22-590/drivers/scsi/u14-34f.c
--- linux-2.6.22-570/drivers/scsi/u14-34f.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/u14-34f.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/u14-34f.c 2008-03-20 13:28:02.000000000 -0400
@@ -1111,7 +1111,7 @@
static void map_dma(unsigned int i, unsigned int j) {
unsigned int data_len = 0;
diff -Nurb linux-2.6.22-570/drivers/scsi/ultrastor.c linux-2.6.22-590/drivers/scsi/ultrastor.c
--- linux-2.6.22-570/drivers/scsi/ultrastor.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/ultrastor.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/ultrastor.c 2008-03-20 13:28:02.000000000 -0400
@@ -675,16 +675,15 @@
static inline void build_sg_list(struct mscp *mscp, struct scsi_cmnd *SCpnt)
my_mscp->scsi_command_link_id = 0; /*???*/
diff -Nurb linux-2.6.22-570/drivers/scsi/wd7000.c linux-2.6.22-590/drivers/scsi/wd7000.c
--- linux-2.6.22-570/drivers/scsi/wd7000.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/scsi/wd7000.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/wd7000.c 2008-03-20 13:28:02.000000000 -0400
@@ -1091,6 +1091,7 @@
unchar *cdb = (unchar *) SCpnt->cmnd;
unchar idlun;
/* FIXME: drop lock and yield here ? */
diff -Nurb linux-2.6.22-570/drivers/scsi/zorro7xx.c linux-2.6.22-590/drivers/scsi/zorro7xx.c
--- linux-2.6.22-570/drivers/scsi/zorro7xx.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/scsi/zorro7xx.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/scsi/zorro7xx.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,180 @@
+/*
+ * Detection routine for the NCR53c710 based Amiga SCSI Controllers for Linux.
+module_exit(zorro7xx_scsi_exit);
diff -Nurb linux-2.6.22-570/drivers/serial/8250.c linux-2.6.22-590/drivers/serial/8250.c
--- linux-2.6.22-570/drivers/serial/8250.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/serial/8250.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/serial/8250.c 2008-03-20 13:28:02.000000000 -0400
@@ -2845,6 +2845,25 @@
}
EXPORT_SYMBOL(serial8250_unregister_port);
int ret, i;
diff -Nurb linux-2.6.22-570/drivers/serial/8250_kgdb.c linux-2.6.22-590/drivers/serial/8250_kgdb.c
--- linux-2.6.22-570/drivers/serial/8250_kgdb.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/serial/8250_kgdb.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/serial/8250_kgdb.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,515 @@
+/*
+ * 8250 interface for kgdb.
+early_param("kgdb8250", kgdb8250_opt);
+#endif /* ! CONFIG_KGDB_8250_MODULE */
diff -Nurb linux-2.6.22-570/drivers/serial/Kconfig linux-2.6.22-590/drivers/serial/Kconfig
---- linux-2.6.22-570/drivers/serial/Kconfig 2008-03-18 15:57:36.000000000 -0400
-+++ linux-2.6.22-590/drivers/serial/Kconfig 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/drivers/serial/Kconfig 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/drivers/serial/Kconfig 2008-03-20 13:28:02.000000000 -0400
@@ -107,7 +107,7 @@
config SERIAL_8250_NR_UARTS
Set this to the number of serial ports you want the driver
diff -Nurb linux-2.6.22-570/drivers/serial/Makefile linux-2.6.22-590/drivers/serial/Makefile
--- linux-2.6.22-570/drivers/serial/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/serial/Makefile 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/serial/Makefile 2008-03-20 13:28:02.000000000 -0400
@@ -23,6 +23,7 @@
obj-$(CONFIG_SERIAL_8250_AU1X00) += 8250_au1x00.o
obj-$(CONFIG_SERIAL_AMBA_PL010) += amba-pl010.o
+obj-$(CONFIG_KGDB_8250) += 8250_kgdb.o
diff -Nurb linux-2.6.22-570/drivers/serial/amba-pl011.c linux-2.6.22-590/drivers/serial/amba-pl011.c
--- linux-2.6.22-570/drivers/serial/amba-pl011.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/serial/amba-pl011.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/serial/amba-pl011.c 2008-03-20 13:28:02.000000000 -0400
@@ -332,7 +332,7 @@
/*
* Allocate the IRQ
diff -Nurb linux-2.6.22-570/drivers/serial/cpm_uart/Makefile linux-2.6.22-590/drivers/serial/cpm_uart/Makefile
--- linux-2.6.22-570/drivers/serial/cpm_uart/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/serial/cpm_uart/Makefile 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/serial/cpm_uart/Makefile 2008-03-20 13:28:02.000000000 -0400
@@ -7,5 +7,6 @@
# Select the correct platform objects.
cpm_uart-objs-$(CONFIG_CPM2) += cpm_uart_cpm2.o
cpm_uart-objs := cpm_uart_core.o $(cpm_uart-objs-y)
diff -Nurb linux-2.6.22-570/drivers/serial/cpm_uart/cpm_uart.h linux-2.6.22-590/drivers/serial/cpm_uart/cpm_uart.h
--- linux-2.6.22-570/drivers/serial/cpm_uart/cpm_uart.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/serial/cpm_uart/cpm_uart.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/serial/cpm_uart/cpm_uart.h 2008-03-20 13:28:02.000000000 -0400
@@ -50,6 +50,41 @@
#define SCC_WAIT_CLOSING 100
#endif /* CPM_UART_H */
diff -Nurb linux-2.6.22-570/drivers/serial/cpm_uart/cpm_uart_core.c linux-2.6.22-590/drivers/serial/cpm_uart/cpm_uart_core.c
--- linux-2.6.22-570/drivers/serial/cpm_uart/cpm_uart_core.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/serial/cpm_uart/cpm_uart_core.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/serial/cpm_uart/cpm_uart_core.c 2008-03-20 13:28:02.000000000 -0400
@@ -1073,22 +1073,17 @@
return 0;
}
if (cpm_uart_ports[con].set_lineif)
diff -Nurb linux-2.6.22-570/drivers/serial/cpm_uart/cpm_uart_cpm1.c linux-2.6.22-590/drivers/serial/cpm_uart/cpm_uart_cpm1.c
--- linux-2.6.22-570/drivers/serial/cpm_uart/cpm_uart_cpm1.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/serial/cpm_uart/cpm_uart_cpm1.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/serial/cpm_uart/cpm_uart_cpm1.c 2008-03-20 13:28:02.000000000 -0400
@@ -53,6 +53,7 @@
{
ushort val;
cpm_uart_ports[UART_SMC1].smcp = &cpmp->cp_smc[0];
diff -Nurb linux-2.6.22-570/drivers/serial/cpm_uart/cpm_uart_cpm2.c linux-2.6.22-590/drivers/serial/cpm_uart/cpm_uart_cpm2.c
--- linux-2.6.22-570/drivers/serial/cpm_uart/cpm_uart_cpm2.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/serial/cpm_uart/cpm_uart_cpm2.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/serial/cpm_uart/cpm_uart_cpm2.c 2008-03-20 13:28:02.000000000 -0400
@@ -289,6 +289,10 @@
#endif
pr_debug("CPM uart[-]:init portdesc\n");
cpm_uart_ports[UART_SMC1].smcp = (smc_t *) cpm2_map(im_smc[0]);
diff -Nurb linux-2.6.22-570/drivers/serial/cpm_uart/cpm_uart_kgdb.c linux-2.6.22-590/drivers/serial/cpm_uart/cpm_uart_kgdb.c
--- linux-2.6.22-570/drivers/serial/cpm_uart/cpm_uart_kgdb.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/serial/cpm_uart/cpm_uart_kgdb.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/serial/cpm_uart/cpm_uart_kgdb.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,185 @@
+/*
+ * drivers/serial/cpm_uart/cpm_uart_kgdb.c
+
diff -Nurb linux-2.6.22-570/drivers/serial/mpsc_kgdb.c linux-2.6.22-590/drivers/serial/mpsc_kgdb.c
--- linux-2.6.22-570/drivers/serial/mpsc_kgdb.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/serial/mpsc_kgdb.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/serial/mpsc_kgdb.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,345 @@
+/*
+ * drivers/serial/mpsc_kgdb.c
+};
diff -Nurb linux-2.6.22-570/drivers/serial/pl011_kgdb.c linux-2.6.22-590/drivers/serial/pl011_kgdb.c
--- linux-2.6.22-570/drivers/serial/pl011_kgdb.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/serial/pl011_kgdb.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/serial/pl011_kgdb.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,111 @@
+/*
+ * driver/serial/pl011_kgdb.c
+};
diff -Nurb linux-2.6.22-570/drivers/serial/pxa.c linux-2.6.22-590/drivers/serial/pxa.c
--- linux-2.6.22-570/drivers/serial/pxa.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/serial/pxa.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/serial/pxa.c 2008-03-20 13:28:02.000000000 -0400
@@ -42,6 +42,9 @@
#include <linux/tty.h>
#include <linux/tty_flip.h>
#endif
diff -Nurb linux-2.6.22-570/drivers/serial/serial_core.c linux-2.6.22-590/drivers/serial/serial_core.c
--- linux-2.6.22-570/drivers/serial/serial_core.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/serial/serial_core.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/serial/serial_core.c 2008-03-20 13:28:02.000000000 -0400
@@ -33,6 +33,7 @@
#include <linux/serial.h> /* for serial_state and serial_icounter_struct */
#include <linux/delay.h>
mutex_unlock(&port_mutex);
diff -Nurb linux-2.6.22-570/drivers/serial/serial_txx9.c linux-2.6.22-590/drivers/serial/serial_txx9.c
--- linux-2.6.22-570/drivers/serial/serial_txx9.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/serial/serial_txx9.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/serial/serial_txx9.c 2008-03-20 13:28:02.000000000 -0400
@@ -40,6 +40,10 @@
static char *serial_version = "1.09";
static char *serial_name = "TX39/49 Serial driver";
uart_remove_one_port(&serial_txx9_reg, &uart->port);
diff -Nurb linux-2.6.22-570/drivers/serial/serial_txx9_kgdb.c linux-2.6.22-590/drivers/serial/serial_txx9_kgdb.c
--- linux-2.6.22-570/drivers/serial/serial_txx9_kgdb.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/drivers/serial/serial_txx9_kgdb.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/serial/serial_txx9_kgdb.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,150 @@
+/*
+ * drivers/serial/serial_txx9_kgdb.c
+};
diff -Nurb linux-2.6.22-570/drivers/serial/sh-sci.c linux-2.6.22-590/drivers/serial/sh-sci.c
--- linux-2.6.22-570/drivers/serial/sh-sci.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/serial/sh-sci.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/serial/sh-sci.c 2008-03-20 13:28:02.000000000 -0400
@@ -118,7 +118,8 @@
do {
status = sci_in(port, SCxSR);
* FIXME: Most of this can go away.. at the moment, we rely on
diff -Nurb linux-2.6.22-570/drivers/spi/at25.c linux-2.6.22-590/drivers/spi/at25.c
--- linux-2.6.22-570/drivers/spi/at25.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/spi/at25.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/spi/at25.c 2008-03-20 13:28:02.000000000 -0400
@@ -111,7 +111,8 @@
}
at25->bin.size = at25->chip.byte_len;
diff -Nurb linux-2.6.22-570/drivers/usb/atm/cxacru.c linux-2.6.22-590/drivers/usb/atm/cxacru.c
--- linux-2.6.22-570/drivers/usb/atm/cxacru.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/usb/atm/cxacru.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/usb/atm/cxacru.c 2008-03-20 13:28:02.000000000 -0400
@@ -171,7 +171,7 @@
struct delayed_work poll_work;
u32 card_info[CXINF_MAX];
static ssize_t cxacru_sysfs_store_adsl_state(struct device *dev,
diff -Nurb linux-2.6.22-570/drivers/usb/atm/ueagle-atm.c linux-2.6.22-590/drivers/usb/atm/ueagle-atm.c
--- linux-2.6.22-570/drivers/usb/atm/ueagle-atm.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/usb/atm/ueagle-atm.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/usb/atm/ueagle-atm.c 2008-03-20 13:28:02.000000000 -0400
@@ -1168,6 +1168,7 @@
struct uea_softc *sc = data;
int ret = -EAGAIN;
if (ret < 0 || sc->reset)
diff -Nurb linux-2.6.22-570/drivers/usb/core/config.c linux-2.6.22-590/drivers/usb/core/config.c
--- linux-2.6.22-570/drivers/usb/core/config.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/usb/core/config.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/usb/core/config.c 2008-03-20 13:28:02.000000000 -0400
@@ -274,6 +274,7 @@
struct usb_descriptor_header *header;
int len, retval;
dev_warn(ddev, "config %d contains an unexpected "
diff -Nurb linux-2.6.22-570/drivers/usb/core/devices.c linux-2.6.22-590/drivers/usb/core/devices.c
--- linux-2.6.22-570/drivers/usb/core/devices.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/usb/core/devices.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/usb/core/devices.c 2008-03-20 13:28:02.000000000 -0400
@@ -102,6 +102,10 @@
/* C: #Ifs=dd Cfg#=dd Atr=xx MPwr=dddmA */
"C:%c #Ifs=%2d Cfg#=%2d Atr=%02x MxPwr=%3dmA\n";
intfc = config->intf_cache[i];
interface = config->interface[i];
diff -Nurb linux-2.6.22-570/drivers/usb/core/hub.c linux-2.6.22-590/drivers/usb/core/hub.c
---- linux-2.6.22-570/drivers/usb/core/hub.c 2008-03-18 15:57:36.000000000 -0400
-+++ linux-2.6.22-590/drivers/usb/core/hub.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/drivers/usb/core/hub.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/drivers/usb/core/hub.c 2008-03-20 13:28:02.000000000 -0400
@@ -2831,6 +2831,7 @@
static int hub_thread(void *__unused)
hub_events();
wait_event_interruptible(khubd_wait,
diff -Nurb linux-2.6.22-570/drivers/usb/core/message.c linux-2.6.22-590/drivers/usb/core/message.c
---- linux-2.6.22-570/drivers/usb/core/message.c 2008-03-18 15:57:36.000000000 -0400
-+++ linux-2.6.22-590/drivers/usb/core/message.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/drivers/usb/core/message.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/drivers/usb/core/message.c 2008-03-20 13:28:02.000000000 -0400
@@ -1409,6 +1409,36 @@
.uevent = usb_if_uevent,
};
alt = usb_altnum_to_altsetting(intf, 0);
diff -Nurb linux-2.6.22-570/drivers/usb/core/sysfs.c linux-2.6.22-590/drivers/usb/core/sysfs.c
--- linux-2.6.22-570/drivers/usb/core/sysfs.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/usb/core/sysfs.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/usb/core/sysfs.c 2008-03-20 13:28:02.000000000 -0400
@@ -424,6 +424,25 @@
sysfs_remove_group(&dev->kobj, &dev_attr_grp);
}
}
diff -Nurb linux-2.6.22-570/drivers/usb/gadget/file_storage.c linux-2.6.22-590/drivers/usb/gadget/file_storage.c
--- linux-2.6.22-570/drivers/usb/gadget/file_storage.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/usb/gadget/file_storage.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/usb/gadget/file_storage.c 2008-03-20 13:28:02.000000000 -0400
@@ -3434,6 +3434,9 @@
allow_signal(SIGKILL);
allow_signal(SIGUSR1);
* that expects a __user pointer and it will work okay. */
diff -Nurb linux-2.6.22-570/drivers/usb/storage/usb.c linux-2.6.22-590/drivers/usb/storage/usb.c
--- linux-2.6.22-570/drivers/usb/storage/usb.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/usb/storage/usb.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/usb/storage/usb.c 2008-03-20 13:28:02.000000000 -0400
@@ -301,8 +301,6 @@
struct us_data *us = (struct us_data *)__us;
struct Scsi_Host *host = us_to_host(us);
printk(KERN_DEBUG "usb-storage: waiting for device "
diff -Nurb linux-2.6.22-570/drivers/video/Kconfig linux-2.6.22-590/drivers/video/Kconfig
--- linux-2.6.22-570/drivers/video/Kconfig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/video/Kconfig 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/video/Kconfig 2008-03-20 13:28:02.000000000 -0400
@@ -12,6 +12,13 @@
tristate
default n
---help---
diff -Nurb linux-2.6.22-570/drivers/video/Makefile linux-2.6.22-590/drivers/video/Makefile
--- linux-2.6.22-570/drivers/video/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/video/Makefile 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/video/Makefile 2008-03-20 13:28:02.000000000 -0400
@@ -122,3 +122,6 @@
# the test framebuffer is last
+obj-$(CONFIG_VIDEO_OUTPUT_CONTROL) += output.o
diff -Nurb linux-2.6.22-570/drivers/video/aty/radeon_base.c linux-2.6.22-590/drivers/video/aty/radeon_base.c
--- linux-2.6.22-570/drivers/video/aty/radeon_base.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/video/aty/radeon_base.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/video/aty/radeon_base.c 2008-03-20 13:28:02.000000000 -0400
@@ -2102,7 +2102,9 @@
}
.size = EDID_LENGTH,
diff -Nurb linux-2.6.22-570/drivers/video/backlight/backlight.c linux-2.6.22-590/drivers/video/backlight/backlight.c
--- linux-2.6.22-570/drivers/video/backlight/backlight.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/video/backlight/backlight.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/video/backlight/backlight.c 2008-03-20 13:28:02.000000000 -0400
@@ -172,7 +172,7 @@
#define DECLARE_ATTR(_name,_mode,_show,_store) \
}
diff -Nurb linux-2.6.22-570/drivers/video/backlight/lcd.c linux-2.6.22-590/drivers/video/backlight/lcd.c
--- linux-2.6.22-570/drivers/video/backlight/lcd.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/video/backlight/lcd.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/video/backlight/lcd.c 2008-03-20 13:28:02.000000000 -0400
@@ -157,7 +157,7 @@
#define DECLARE_ATTR(_name,_mode,_show,_store) \
}
diff -Nurb linux-2.6.22-570/drivers/video/ps3fb.c linux-2.6.22-590/drivers/video/ps3fb.c
--- linux-2.6.22-570/drivers/video/ps3fb.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/video/ps3fb.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/video/ps3fb.c 2008-03-20 13:28:02.000000000 -0400
@@ -812,6 +812,7 @@
static int ps3fbd(void *arg)
set_current_state(TASK_INTERRUPTIBLE);
diff -Nurb linux-2.6.22-570/drivers/w1/slaves/w1_ds2433.c linux-2.6.22-590/drivers/w1/slaves/w1_ds2433.c
--- linux-2.6.22-570/drivers/w1/slaves/w1_ds2433.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/w1/slaves/w1_ds2433.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/w1/slaves/w1_ds2433.c 2008-03-20 13:28:02.000000000 -0400
@@ -91,8 +91,9 @@
}
#endif /* CONFIG_W1_SLAVE_DS2433_CRC */
.read = w1_f23_read_bin,
diff -Nurb linux-2.6.22-570/drivers/w1/slaves/w1_therm.c linux-2.6.22-590/drivers/w1/slaves/w1_therm.c
--- linux-2.6.22-570/drivers/w1/slaves/w1_therm.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/w1/slaves/w1_therm.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/w1/slaves/w1_therm.c 2008-03-20 13:28:02.000000000 -0400
@@ -42,13 +42,13 @@
{}
};
struct w1_master *dev = sl->master;
diff -Nurb linux-2.6.22-570/drivers/w1/w1.c linux-2.6.22-590/drivers/w1/w1.c
--- linux-2.6.22-570/drivers/w1/w1.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/w1/w1.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/w1/w1.c 2008-03-20 13:28:02.000000000 -0400
@@ -105,7 +105,9 @@
return sprintf(buf, "%s\n", sl->name);
}
diff -Nurb linux-2.6.22-570/drivers/zorro/zorro-sysfs.c linux-2.6.22-590/drivers/zorro/zorro-sysfs.c
--- linux-2.6.22-570/drivers/zorro/zorro-sysfs.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/drivers/zorro/zorro-sysfs.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/drivers/zorro/zorro-sysfs.c 2008-03-20 13:28:02.000000000 -0400
@@ -49,8 +49,9 @@
static DEVICE_ATTR(resource, S_IRUGO, zorro_show_resource, NULL);
.read = zorro_read_config,
diff -Nurb linux-2.6.22-570/ed linux-2.6.22-590/ed
--- linux-2.6.22-570/ed 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/ed 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/ed 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,6 @@
+vi -o ./fs/proc/proc_misc.c ./fs/proc/proc_misc.c.rej
+vi -o ./fs/proc/array.c ./fs/proc/array.c.rej
+vi -o ./kernel/fork.c ./kernel/fork.c.rej
diff -Nurb linux-2.6.22-570/edit linux-2.6.22-590/edit
--- linux-2.6.22-570/edit 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/edit 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/edit 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,19 @@
+vi -o ./fs/proc/root.c ./fs/proc/root.c.rej
+vi -o ./include/linux/nsproxy.h ./include/linux/nsproxy.h.rej
+vi -o ./net/unix/af_unix.c ./net/unix/af_unix.c.rej
diff -Nurb linux-2.6.22-570/fs/Kconfig linux-2.6.22-590/fs/Kconfig
--- linux-2.6.22-570/fs/Kconfig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/Kconfig 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/Kconfig 2008-03-20 13:28:02.000000000 -0400
@@ -1030,6 +1030,41 @@
endmenu
depends on BLOCK && EXPERIMENTAL
diff -Nurb linux-2.6.22-570/fs/Makefile linux-2.6.22-590/fs/Makefile
--- linux-2.6.22-570/fs/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/Makefile 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/Makefile 2008-03-20 13:28:02.000000000 -0400
@@ -19,6 +19,7 @@
obj-y += no-block.o
endif
+obj-$(CONFIG_UNION_FS) += unionfs/
diff -Nurb linux-2.6.22-570/fs/afs/netdevices.c linux-2.6.22-590/fs/afs/netdevices.c
--- linux-2.6.22-570/fs/afs/netdevices.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/afs/netdevices.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/afs/netdevices.c 2008-03-20 13:28:02.000000000 -0400
@@ -8,6 +8,7 @@
#include <linux/inetdevice.h>
#include <linux/netdevice.h>
idev = __in_dev_get_rtnl(dev);
diff -Nurb linux-2.6.22-570/fs/buffer.c linux-2.6.22-590/fs/buffer.c
--- linux-2.6.22-570/fs/buffer.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/buffer.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/buffer.c 2008-03-20 13:28:02.000000000 -0400
@@ -982,7 +982,7 @@
struct buffer_head *bh;
get_cpu_var(bh_accounting).nr++;
diff -Nurb linux-2.6.22-570/fs/cifs/cifsfs.c linux-2.6.22-590/fs/cifs/cifsfs.c
--- linux-2.6.22-570/fs/cifs/cifsfs.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/cifs/cifsfs.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/cifs/cifsfs.c 2008-03-20 13:28:02.000000000 -0400
@@ -849,6 +849,7 @@
__u16 netfid;
int rc;
continue;
diff -Nurb linux-2.6.22-570/fs/cifs/connect.c linux-2.6.22-590/fs/cifs/connect.c
--- linux-2.6.22-570/fs/cifs/connect.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/cifs/connect.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/cifs/connect.c 2008-03-20 13:28:02.000000000 -0400
@@ -363,6 +363,7 @@
GFP_KERNEL);
}
continue;
diff -Nurb linux-2.6.22-570/fs/compat_ioctl.c linux-2.6.22-590/fs/compat_ioctl.c
--- linux-2.6.22-570/fs/compat_ioctl.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/compat_ioctl.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/compat_ioctl.c 2008-03-20 13:28:02.000000000 -0400
@@ -319,22 +319,21 @@
static int dev_ifname32(unsigned int fd, unsigned int cmd, unsigned long arg)
static int dev_ifconf(unsigned int fd, unsigned int cmd, unsigned long arg)
diff -Nurb linux-2.6.22-570/fs/configfs/configfs_internal.h linux-2.6.22-590/fs/configfs/configfs_internal.h
--- linux-2.6.22-570/fs/configfs/configfs_internal.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/configfs/configfs_internal.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/configfs/configfs_internal.h 2008-03-20 13:28:02.000000000 -0400
@@ -29,6 +29,7 @@
struct configfs_dirent {
struct list_head s_links;
diff -Nurb linux-2.6.22-570/fs/configfs/dir.c linux-2.6.22-590/fs/configfs/dir.c
--- linux-2.6.22-570/fs/configfs/dir.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/configfs/dir.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/configfs/dir.c 2008-03-20 13:28:02.000000000 -0400
@@ -355,6 +355,10 @@
/* Mark that we've taken i_mutex */
sd->s_type |= CONFIGFS_USET_DROPPING;
diff -Nurb linux-2.6.22-570/fs/configfs/file.c linux-2.6.22-590/fs/configfs/file.c
--- linux-2.6.22-570/fs/configfs/file.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/configfs/file.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/configfs/file.c 2008-03-20 13:28:02.000000000 -0400
@@ -27,19 +27,26 @@
#include <linux/fs.h>
#include <linux/module.h>
return 0;
diff -Nurb linux-2.6.22-570/fs/configfs/item.c linux-2.6.22-590/fs/configfs/item.c
--- linux-2.6.22-570/fs/configfs/item.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/configfs/item.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/configfs/item.c 2008-03-20 13:28:02.000000000 -0400
@@ -62,7 +62,6 @@
* dynamically allocated string that @item->ci_name points to.
* Otherwise, use the static @item->ci_namebuf array.
EXPORT_SYMBOL(config_item_get);
diff -Nurb linux-2.6.22-570/fs/drop_caches.c linux-2.6.22-590/fs/drop_caches.c
--- linux-2.6.22-570/fs/drop_caches.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/drop_caches.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/drop_caches.c 2008-03-20 13:28:02.000000000 -0400
@@ -3,6 +3,7 @@
*/
void drop_pagecache(void)
{
diff -Nurb linux-2.6.22-570/fs/ecryptfs/inode.c linux-2.6.22-590/fs/ecryptfs/inode.c
---- linux-2.6.22-570/fs/ecryptfs/inode.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/fs/ecryptfs/inode.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/ecryptfs/inode.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/fs/ecryptfs/inode.c 2008-03-20 13:28:02.000000000 -0400
@@ -280,7 +280,9 @@
int rc = 0;
struct dentry *lower_dir_dentry;
rc = PTR_ERR(lower_dentry);
diff -Nurb linux-2.6.22-570/fs/ecryptfs/main.c linux-2.6.22-590/fs/ecryptfs/main.c
--- linux-2.6.22-570/fs/ecryptfs/main.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/ecryptfs/main.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/ecryptfs/main.c 2008-03-20 13:28:02.000000000 -0400
@@ -840,8 +840,6 @@
goto out;
}
if (rc) {
printk(KERN_ERR "sysfs registration failed\n");
diff -Nurb linux-2.6.22-570/fs/exec.c linux-2.6.22-590/fs/exec.c
---- linux-2.6.22-570/fs/exec.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/fs/exec.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/exec.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/fs/exec.c 2008-03-20 13:28:02.000000000 -0400
@@ -861,9 +861,9 @@
current->sas_ss_sp = current->sas_ss_size = 0;
if (retval < 0)
diff -Nurb linux-2.6.22-570/fs/gfs2/ops_address.c linux-2.6.22-590/fs/gfs2/ops_address.c
--- linux-2.6.22-570/fs/gfs2/ops_address.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/gfs2/ops_address.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/gfs2/ops_address.c 2008-03-20 13:28:02.000000000 -0400
@@ -250,7 +250,7 @@
if (file) {
gf = file->private_data;
gfs2_holder_init(ip->i_gl, LM_ST_SHARED, GL_ATIME|LM_FLAG_TRY_1CB, &gh);
diff -Nurb linux-2.6.22-570/fs/gfs2/ops_file.c linux-2.6.22-590/fs/gfs2/ops_file.c
--- linux-2.6.22-570/fs/gfs2/ops_file.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/gfs2/ops_file.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/gfs2/ops_file.c 2008-03-20 13:28:02.000000000 -0400
@@ -364,6 +364,8 @@
else
vma->vm_ops = &gfs2_vm_ops_private;
return error;
diff -Nurb linux-2.6.22-570/fs/gfs2/ops_vm.c linux-2.6.22-590/fs/gfs2/ops_vm.c
--- linux-2.6.22-570/fs/gfs2/ops_vm.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/gfs2/ops_vm.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/gfs2/ops_vm.c 2008-03-20 13:28:02.000000000 -0400
@@ -27,13 +27,13 @@
#include "trans.h"
#include "util.h"
};
diff -Nurb linux-2.6.22-570/fs/inode.c linux-2.6.22-590/fs/inode.c
---- linux-2.6.22-570/fs/inode.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/fs/inode.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/inode.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/fs/inode.c 2008-03-20 13:28:02.000000000 -0400
@@ -149,7 +149,7 @@
mapping->a_ops = &empty_aops;
mapping->host = inode;
{
diff -Nurb linux-2.6.22-570/fs/jbd/journal.c linux-2.6.22-590/fs/jbd/journal.c
--- linux-2.6.22-570/fs/jbd/journal.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/jbd/journal.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/jbd/journal.c 2008-03-20 13:28:02.000000000 -0400
@@ -1710,7 +1710,7 @@
journal_head_cache = kmem_cache_create("journal_head",
sizeof(struct journal_head),
if (jbd_handle_cache == NULL) {
diff -Nurb linux-2.6.22-570/fs/jbd/revoke.c linux-2.6.22-590/fs/jbd/revoke.c
--- linux-2.6.22-570/fs/jbd/revoke.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/jbd/revoke.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/jbd/revoke.c 2008-03-20 13:28:02.000000000 -0400
@@ -169,13 +169,17 @@
{
revoke_record_cache = kmem_cache_create("revoke_record",
revoke_record_cache = NULL;
diff -Nurb linux-2.6.22-570/fs/jffs2/background.c linux-2.6.22-590/fs/jffs2/background.c
--- linux-2.6.22-570/fs/jffs2/background.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/jffs2/background.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/jffs2/background.c 2008-03-20 13:28:02.000000000 -0400
@@ -81,6 +81,7 @@
set_user_nice(current, 10);
diff -Nurb linux-2.6.22-570/fs/lockd/host.c linux-2.6.22-590/fs/lockd/host.c
--- linux-2.6.22-570/fs/lockd/host.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/lockd/host.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/lockd/host.c 2008-03-20 13:28:02.000000000 -0400
@@ -161,15 +161,9 @@
*/
nsm_unmonitor(host);
diff -Nurb linux-2.6.22-570/fs/lockd/mon.c linux-2.6.22-590/fs/lockd/mon.c
--- linux-2.6.22-570/fs/lockd/mon.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/lockd/mon.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/lockd/mon.c 2008-03-20 13:28:02.000000000 -0400
@@ -61,6 +61,7 @@
status);
else
return rpc_create(&args);
diff -Nurb linux-2.6.22-570/fs/lockd/svc.c linux-2.6.22-590/fs/lockd/svc.c
--- linux-2.6.22-570/fs/lockd/svc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/lockd/svc.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/lockd/svc.c 2008-03-20 13:28:02.000000000 -0400
@@ -25,6 +25,7 @@
#include <linux/smp.h>
#include <linux/smp_lock.h>
unlock_kernel();
module_put_and_exit(0);
diff -Nurb linux-2.6.22-570/fs/namei.c linux-2.6.22-590/fs/namei.c
---- linux-2.6.22-570/fs/namei.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/fs/namei.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/namei.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/fs/namei.c 2008-03-20 13:28:02.000000000 -0400
@@ -1386,7 +1386,8 @@
return 0;
}
EXPORT_SYMBOL(page_put_link);
EXPORT_SYMBOL(page_readlink);
diff -Nurb linux-2.6.22-570/fs/namespace.c linux-2.6.22-590/fs/namespace.c
---- linux-2.6.22-570/fs/namespace.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/fs/namespace.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/namespace.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/fs/namespace.c 2008-03-20 13:28:02.000000000 -0400
@@ -1538,7 +1538,7 @@
new_ns = kmalloc(sizeof(struct mnt_namespace), GFP_KERNEL);
struct mnt_namespace *new_ns;
diff -Nurb linux-2.6.22-570/fs/ncpfs/mmap.c linux-2.6.22-590/fs/ncpfs/mmap.c
--- linux-2.6.22-570/fs/ncpfs/mmap.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/ncpfs/mmap.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/ncpfs/mmap.c 2008-03-20 13:28:02.000000000 -0400
@@ -25,8 +25,8 @@
/*
* Fill in the supplied page for mmap
}
diff -Nurb linux-2.6.22-570/fs/nfs/callback.c linux-2.6.22-590/fs/nfs/callback.c
--- linux-2.6.22-570/fs/nfs/callback.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/nfs/callback.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/nfs/callback.c 2008-03-20 13:28:02.000000000 -0400
@@ -14,6 +14,7 @@
#include <linux/sunrpc/svcsock.h>
#include <linux/nfs_fs.h>
complete(&nfs_callback_info.started);
diff -Nurb linux-2.6.22-570/fs/nfs/client.c linux-2.6.22-590/fs/nfs/client.c
---- linux-2.6.22-570/fs/nfs/client.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/fs/nfs/client.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/nfs/client.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/fs/nfs/client.c 2008-03-20 13:28:02.000000000 -0400
@@ -102,19 +102,10 @@
int nfsversion)
{
diff -Nurb linux-2.6.22-570/fs/nfs/delegation.c linux-2.6.22-590/fs/nfs/delegation.c
--- linux-2.6.22-570/fs/nfs/delegation.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/nfs/delegation.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/nfs/delegation.c 2008-03-20 13:28:02.000000000 -0400
@@ -74,7 +74,7 @@
continue;
get_nfs_open_context(ctx);
put_nfs_open_context(ctx);
diff -Nurb linux-2.6.22-570/fs/nfs/delegation.h linux-2.6.22-590/fs/nfs/delegation.h
--- linux-2.6.22-570/fs/nfs/delegation.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/nfs/delegation.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/nfs/delegation.h 2008-03-20 13:28:02.000000000 -0400
@@ -39,7 +39,7 @@
/* NFSv4 delegation-related procedures */
int nfs4_copy_delegation_stateid(nfs4_stateid *dst, struct inode *inode);
diff -Nurb linux-2.6.22-570/fs/nfs/dir.c linux-2.6.22-590/fs/nfs/dir.c
---- linux-2.6.22-570/fs/nfs/dir.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/fs/nfs/dir.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/nfs/dir.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/fs/nfs/dir.c 2008-03-20 13:28:02.000000000 -0400
@@ -898,14 +898,13 @@
return (nd->intent.open.flags & O_EXCL) != 0;
}
}
diff -Nurb linux-2.6.22-570/fs/nfs/direct.c linux-2.6.22-590/fs/nfs/direct.c
--- linux-2.6.22-570/fs/nfs/direct.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/nfs/direct.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/nfs/direct.c 2008-03-20 13:28:02.000000000 -0400
@@ -266,7 +266,7 @@
static ssize_t nfs_direct_read_schedule(struct nfs_direct_req *dreq, unsigned long user_addr, size_t count, loff_t pos)
{
retval = generic_write_checks(file, &pos, &count, 0);
if (retval)
diff -Nurb linux-2.6.22-570/fs/nfs/inode.c linux-2.6.22-590/fs/nfs/inode.c
---- linux-2.6.22-570/fs/nfs/inode.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/fs/nfs/inode.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/nfs/inode.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/fs/nfs/inode.c 2008-03-20 13:28:02.000000000 -0400
@@ -466,14 +466,14 @@
ctx = kmalloc(sizeof(*ctx), GFP_KERNEL);
nfs4_init_once(nfsi);
diff -Nurb linux-2.6.22-570/fs/nfs/mount_clnt.c linux-2.6.22-590/fs/nfs/mount_clnt.c
--- linux-2.6.22-570/fs/nfs/mount_clnt.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/nfs/mount_clnt.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/nfs/mount_clnt.c 2008-03-20 13:28:02.000000000 -0400
@@ -69,6 +69,7 @@
msg.rpc_proc = &mnt_clnt->cl_procinfo[MNTPROC_MNT];
return rpc_create(&args);
diff -Nurb linux-2.6.22-570/fs/nfs/nfs3proc.c linux-2.6.22-590/fs/nfs/nfs3proc.c
--- linux-2.6.22-570/fs/nfs/nfs3proc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/nfs/nfs3proc.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/nfs/nfs3proc.c 2008-03-20 13:28:02.000000000 -0400
@@ -335,9 +335,7 @@
* not sure this buys us anything (and I'd have
* to revamp the NFSv3 XDR code) */
if (status != 0)
diff -Nurb linux-2.6.22-570/fs/nfs/nfs4_fs.h linux-2.6.22-590/fs/nfs/nfs4_fs.h
--- linux-2.6.22-570/fs/nfs/nfs4_fs.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/nfs/nfs4_fs.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/nfs/nfs4_fs.h 2008-03-20 13:28:02.000000000 -0400
@@ -165,7 +165,7 @@
extern int nfs4_proc_setclientid_confirm(struct nfs_client *, struct rpc_cred *);
extern int nfs4_proc_async_renew(struct nfs_client *, struct rpc_cred *);
#endif /* __LINUX_FS_NFS_NFS4_FS.H */
diff -Nurb linux-2.6.22-570/fs/nfs/nfs4proc.c linux-2.6.22-590/fs/nfs/nfs4proc.c
--- linux-2.6.22-570/fs/nfs/nfs4proc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/nfs/nfs4proc.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/nfs/nfs4proc.c 2008-03-20 13:28:02.000000000 -0400
@@ -214,14 +214,14 @@
}
out:
diff -Nurb linux-2.6.22-570/fs/nfs/nfs4state.c linux-2.6.22-590/fs/nfs/nfs4state.c
--- linux-2.6.22-570/fs/nfs/nfs4state.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/nfs/nfs4state.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/nfs/nfs4state.c 2008-03-20 13:28:02.000000000 -0400
@@ -341,7 +341,7 @@
/*
* Close the current file.
/*
diff -Nurb linux-2.6.22-570/fs/nfs/nfs4xdr.c linux-2.6.22-590/fs/nfs/nfs4xdr.c
--- linux-2.6.22-570/fs/nfs/nfs4xdr.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/nfs/nfs4xdr.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/nfs/nfs4xdr.c 2008-03-20 13:28:02.000000000 -0400
@@ -3269,7 +3269,7 @@
static int decode_open(struct xdr_stream *xdr, struct nfs_openres *res)
{
dprintk("%s: Bitmap too large! Length = %u\n", __FUNCTION__, bmlen);
diff -Nurb linux-2.6.22-570/fs/nfs/pagelist.c linux-2.6.22-590/fs/nfs/pagelist.c
--- linux-2.6.22-570/fs/nfs/pagelist.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/nfs/pagelist.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/nfs/pagelist.c 2008-03-20 13:28:02.000000000 -0400
@@ -85,9 +85,8 @@
req->wb_offset = offset;
req->wb_pgbase = offset;
return res;
diff -Nurb linux-2.6.22-570/fs/nfs/read.c linux-2.6.22-590/fs/nfs/read.c
--- linux-2.6.22-570/fs/nfs/read.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/nfs/read.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/nfs/read.c 2008-03-20 13:28:02.000000000 -0400
@@ -145,8 +145,8 @@
unlock_page(req->wb_page);
int nfs_readpages(struct file *filp, struct address_space *mapping,
diff -Nurb linux-2.6.22-570/fs/nfs/super.c linux-2.6.22-590/fs/nfs/super.c
---- linux-2.6.22-570/fs/nfs/super.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/fs/nfs/super.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/nfs/super.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/fs/nfs/super.c 2008-03-20 13:28:02.000000000 -0400
@@ -292,6 +292,7 @@
{ NFS_MOUNT_NONLM, ",nolock", "" },
{ NFS_MOUNT_NOACL, ",noacl", "" },
goto out_err_nosb;
diff -Nurb linux-2.6.22-570/fs/nfs/write.c linux-2.6.22-590/fs/nfs/write.c
--- linux-2.6.22-570/fs/nfs/write.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/nfs/write.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/nfs/write.c 2008-03-20 13:28:02.000000000 -0400
@@ -117,7 +117,7 @@
if (PagePrivate(page)) {
req = (struct nfs_page *)page_private(page);
diff -Nurb linux-2.6.22-570/fs/nfsd/nfs4callback.c linux-2.6.22-590/fs/nfsd/nfs4callback.c
--- linux-2.6.22-570/fs/nfsd/nfs4callback.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/nfsd/nfs4callback.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/nfsd/nfs4callback.c 2008-03-20 13:28:02.000000000 -0400
@@ -429,29 +429,23 @@
goto out_err;
}
cb->cb_client = NULL;
diff -Nurb linux-2.6.22-570/fs/nfsd/nfs4state.c linux-2.6.22-590/fs/nfsd/nfs4state.c
--- linux-2.6.22-570/fs/nfsd/nfs4state.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/nfsd/nfs4state.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/nfsd/nfs4state.c 2008-03-20 13:28:02.000000000 -0400
@@ -378,7 +378,6 @@
if (clnt) {
clp->cl_callback.cb_client = NULL;
diff -Nurb linux-2.6.22-570/fs/nfsd/nfssvc.c linux-2.6.22-590/fs/nfsd/nfssvc.c
--- linux-2.6.22-570/fs/nfsd/nfssvc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/nfsd/nfssvc.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/nfsd/nfssvc.c 2008-03-20 13:28:02.000000000 -0400
@@ -19,6 +19,7 @@
#include <linux/slab.h>
#include <linux/smp.h>
* The main request loop
diff -Nurb linux-2.6.22-570/fs/ocfs2/alloc.c linux-2.6.22-590/fs/ocfs2/alloc.c
--- linux-2.6.22-570/fs/ocfs2/alloc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/alloc.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/alloc.c 2008-03-20 13:28:02.000000000 -0400
@@ -50,6 +50,8 @@
#include "buffer_head_io.h"
brelse(tc->tc_last_eb_bh);
diff -Nurb linux-2.6.22-570/fs/ocfs2/alloc.h linux-2.6.22-590/fs/ocfs2/alloc.h
--- linux-2.6.22-570/fs/ocfs2/alloc.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/alloc.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/alloc.h 2008-03-20 13:28:02.000000000 -0400
@@ -34,7 +34,13 @@
u32 cpos,
u64 start_blk,
/*
* Helper function to look at the # of clusters in an extent record.
diff -Nurb linux-2.6.22-570/fs/ocfs2/aops.c linux-2.6.22-590/fs/ocfs2/aops.c
---- linux-2.6.22-570/fs/ocfs2/aops.c 2008-03-18 15:57:36.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/aops.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/ocfs2/aops.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/aops.c 2008-03-20 13:28:02.000000000 -0400
@@ -232,7 +232,7 @@
* might now be discovering a truncate that hit on another node.
* block_read_full_page->get_block freaks out if it is asked to read
const struct address_space_operations ocfs2_aops = {
diff -Nurb linux-2.6.22-570/fs/ocfs2/aops.h linux-2.6.22-590/fs/ocfs2/aops.h
--- linux-2.6.22-570/fs/ocfs2/aops.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/aops.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/aops.h 2008-03-20 13:28:02.000000000 -0400
@@ -42,57 +42,22 @@
int (*fn)( handle_t *handle,
struct buffer_head *bh));
#define ocfs2_iocb_is_rw_locked(iocb) \
diff -Nurb linux-2.6.22-570/fs/ocfs2/cluster/heartbeat.c linux-2.6.22-590/fs/ocfs2/cluster/heartbeat.c
--- linux-2.6.22-570/fs/ocfs2/cluster/heartbeat.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/cluster/heartbeat.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/cluster/heartbeat.c 2008-03-20 13:28:02.000000000 -0400
@@ -1335,6 +1335,7 @@
ret = wait_event_interruptible(o2hb_steady_queue,
atomic_read(®->hr_steady_iterations) == 0);
list_del_init(&hc->hc_item);
diff -Nurb linux-2.6.22-570/fs/ocfs2/cluster/heartbeat.h linux-2.6.22-590/fs/ocfs2/cluster/heartbeat.h
--- linux-2.6.22-570/fs/ocfs2/cluster/heartbeat.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/cluster/heartbeat.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/cluster/heartbeat.h 2008-03-20 13:28:02.000000000 -0400
@@ -69,8 +69,10 @@
o2hb_cb_func *func,
void *data,
void o2hb_init(void);
diff -Nurb linux-2.6.22-570/fs/ocfs2/cluster/masklog.c linux-2.6.22-590/fs/ocfs2/cluster/masklog.c
--- linux-2.6.22-570/fs/ocfs2/cluster/masklog.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/cluster/masklog.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/cluster/masklog.c 2008-03-20 13:28:02.000000000 -0400
@@ -74,7 +74,6 @@
#define define_mask(_name) { \
.attr = { \
.mask = ML_##_name, \
diff -Nurb linux-2.6.22-570/fs/ocfs2/cluster/nodemanager.c linux-2.6.22-590/fs/ocfs2/cluster/nodemanager.c
--- linux-2.6.22-570/fs/ocfs2/cluster/nodemanager.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/cluster/nodemanager.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/cluster/nodemanager.c 2008-03-20 13:28:02.000000000 -0400
@@ -900,6 +900,46 @@
},
};
if (ocfs2_table_header)
diff -Nurb linux-2.6.22-570/fs/ocfs2/cluster/nodemanager.h linux-2.6.22-590/fs/ocfs2/cluster/nodemanager.h
--- linux-2.6.22-570/fs/ocfs2/cluster/nodemanager.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/cluster/nodemanager.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/cluster/nodemanager.h 2008-03-20 13:28:02.000000000 -0400
@@ -77,4 +77,9 @@
void o2nm_node_get(struct o2nm_node *node);
void o2nm_node_put(struct o2nm_node *node);
#endif /* O2CLUSTER_NODEMANAGER_H */
diff -Nurb linux-2.6.22-570/fs/ocfs2/cluster/tcp.c linux-2.6.22-590/fs/ocfs2/cluster/tcp.c
--- linux-2.6.22-570/fs/ocfs2/cluster/tcp.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/cluster/tcp.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/cluster/tcp.c 2008-03-20 13:28:02.000000000 -0400
@@ -261,14 +261,12 @@
static void o2net_complete_nodes_nsw(struct o2net_node *nn)
o2net_unregister_hb_callbacks();
diff -Nurb linux-2.6.22-570/fs/ocfs2/dir.c linux-2.6.22-590/fs/ocfs2/dir.c
--- linux-2.6.22-570/fs/ocfs2/dir.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/dir.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/dir.c 2008-03-20 13:28:02.000000000 -0400
@@ -368,7 +368,7 @@
u32 offset = OCFS2_I(dir)->ip_clusters;
if (status < 0) {
diff -Nurb linux-2.6.22-570/fs/ocfs2/dlm/dlmdomain.c linux-2.6.22-590/fs/ocfs2/dlm/dlmdomain.c
--- linux-2.6.22-570/fs/ocfs2/dlm/dlmdomain.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/dlm/dlmdomain.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/dlm/dlmdomain.c 2008-03-20 13:28:02.000000000 -0400
@@ -1128,8 +1128,8 @@
static void dlm_unregister_domain_handlers(struct dlm_ctxt *dlm)
diff -Nurb linux-2.6.22-570/fs/ocfs2/dlm/dlmmaster.c linux-2.6.22-590/fs/ocfs2/dlm/dlmmaster.c
--- linux-2.6.22-570/fs/ocfs2/dlm/dlmmaster.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/dlm/dlmmaster.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/dlm/dlmmaster.c 2008-03-20 13:28:02.000000000 -0400
@@ -192,25 +192,20 @@
static void dlm_dump_mles(struct dlm_ctxt *dlm)
{
mle->type != DLM_MLE_MIGRATION);
diff -Nurb linux-2.6.22-570/fs/ocfs2/dlm/dlmrecovery.c linux-2.6.22-590/fs/ocfs2/dlm/dlmrecovery.c
--- linux-2.6.22-570/fs/ocfs2/dlm/dlmrecovery.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/dlm/dlmrecovery.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/dlm/dlmrecovery.c 2008-03-20 13:28:02.000000000 -0400
@@ -158,8 +158,7 @@
struct dlm_ctxt *dlm =
container_of(work, struct dlm_ctxt, dispatched_work);
list_del_init(&lock->list);
dlm_lock_put(lock);
diff -Nurb linux-2.6.22-570/fs/ocfs2/dlmglue.c linux-2.6.22-590/fs/ocfs2/dlmglue.c
---- linux-2.6.22-570/fs/ocfs2/dlmglue.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/dlmglue.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/ocfs2/dlmglue.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/dlmglue.c 2008-03-20 13:28:02.000000000 -0400
@@ -600,15 +600,13 @@
static void lockres_set_flags(struct ocfs2_lock_res *lockres,
unsigned long newflags)
diff -Nurb linux-2.6.22-570/fs/ocfs2/endian.h linux-2.6.22-590/fs/ocfs2/endian.h
--- linux-2.6.22-570/fs/ocfs2/endian.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/endian.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/endian.h 2008-03-20 13:28:02.000000000 -0400
@@ -32,6 +32,11 @@
*var = cpu_to_le32(le32_to_cpu(*var) + val);
}
*var = cpu_to_le32(le32_to_cpu(*var) & val);
diff -Nurb linux-2.6.22-570/fs/ocfs2/extent_map.c linux-2.6.22-590/fs/ocfs2/extent_map.c
--- linux-2.6.22-570/fs/ocfs2/extent_map.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/extent_map.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/extent_map.c 2008-03-20 13:28:02.000000000 -0400
@@ -109,17 +109,14 @@
*/
void ocfs2_extent_map_trunc(struct inode *inode, unsigned int cpos)
u32 *p_cluster, u32 *num_clusters,
unsigned int *extent_flags)
diff -Nurb linux-2.6.22-570/fs/ocfs2/file.c linux-2.6.22-590/fs/ocfs2/file.c
---- linux-2.6.22-570/fs/ocfs2/file.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/file.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/ocfs2/file.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/file.c 2008-03-20 13:28:02.000000000 -0400
@@ -326,9 +326,6 @@
(unsigned long long)OCFS2_I(inode)->ip_blkno,
(unsigned long long)new_i_size);
static ssize_t __ocfs2_file_splice_write(struct pipe_inode_info *pipe,
diff -Nurb linux-2.6.22-570/fs/ocfs2/file.h linux-2.6.22-590/fs/ocfs2/file.h
--- linux-2.6.22-570/fs/ocfs2/file.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/file.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/file.h 2008-03-20 13:28:02.000000000 -0400
@@ -39,15 +39,16 @@
};
int ocfs2_do_extend_allocation(struct ocfs2_super *osb,
#endif /* OCFS2_FILE_H */
diff -Nurb linux-2.6.22-570/fs/ocfs2/heartbeat.c linux-2.6.22-590/fs/ocfs2/heartbeat.c
--- linux-2.6.22-570/fs/ocfs2/heartbeat.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/heartbeat.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/heartbeat.c 2008-03-20 13:28:02.000000000 -0400
@@ -157,16 +157,16 @@
if (ocfs2_mount_local(osb))
return 0;
mlog_errno(ret);
}
diff -Nurb linux-2.6.22-570/fs/ocfs2/ioctl.c linux-2.6.22-590/fs/ocfs2/ioctl.c
---- linux-2.6.22-570/fs/ocfs2/ioctl.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/ioctl.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/ocfs2/ioctl.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/ioctl.c 2008-03-20 13:28:02.000000000 -0400
@@ -14,6 +14,7 @@
#include "ocfs2.h"
#include "alloc.h"
}
diff -Nurb linux-2.6.22-570/fs/ocfs2/journal.c linux-2.6.22-590/fs/ocfs2/journal.c
--- linux-2.6.22-570/fs/ocfs2/journal.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/journal.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/journal.c 2008-03-20 13:28:02.000000000 -0400
@@ -722,8 +722,7 @@
container_of(work, struct ocfs2_journal, j_recovery_work);
struct ocfs2_super *osb = journal->j_osb;
mlog(0, "Complete recovery for slot %d\n", item->lri_slot);
diff -Nurb linux-2.6.22-570/fs/ocfs2/mmap.c linux-2.6.22-590/fs/ocfs2/mmap.c
--- linux-2.6.22-570/fs/ocfs2/mmap.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/mmap.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/mmap.c 2008-03-20 13:28:02.000000000 -0400
@@ -37,38 +37,48 @@
#include "ocfs2.h"
}
diff -Nurb linux-2.6.22-570/fs/ocfs2/namei.c linux-2.6.22-590/fs/ocfs2/namei.c
---- linux-2.6.22-570/fs/ocfs2/namei.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/namei.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/ocfs2/namei.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/namei.c 2008-03-20 13:28:02.000000000 -0400
@@ -1684,7 +1684,7 @@
u32 offset = 0;
handle, data_ac, NULL,
NULL);
diff -Nurb linux-2.6.22-570/fs/ocfs2/ocfs2.h linux-2.6.22-590/fs/ocfs2/ocfs2.h
---- linux-2.6.22-570/fs/ocfs2/ocfs2.h 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/ocfs2.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/ocfs2/ocfs2.h 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/ocfs2.h 2008-03-20 13:28:02.000000000 -0400
@@ -220,6 +220,7 @@
u16 max_slots;
s16 node_num;
* in parallel so we want the transitions to be atomic. this also
* means that any future flags osb_flags must be protected by spinlock
diff -Nurb linux-2.6.22-570/fs/ocfs2/ocfs2_fs.h linux-2.6.22-590/fs/ocfs2/ocfs2_fs.h
---- linux-2.6.22-570/fs/ocfs2/ocfs2_fs.h 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/ocfs2_fs.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/ocfs2/ocfs2_fs.h 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/ocfs2_fs.h 2008-03-20 13:28:02.000000000 -0400
@@ -88,7 +88,7 @@
#define OCFS2_FEATURE_COMPAT_SUPP OCFS2_FEATURE_COMPAT_BACKUP_SB
#define OCFS2_FEATURE_INCOMPAT_SUPP (OCFS2_FEATURE_INCOMPAT_LOCAL_MOUNT \
#define OCFS2_JOURNAL_DIRTY_FL (0x00000001) /* Journal needs recovery */
diff -Nurb linux-2.6.22-570/fs/ocfs2/slot_map.c linux-2.6.22-590/fs/ocfs2/slot_map.c
--- linux-2.6.22-570/fs/ocfs2/slot_map.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/slot_map.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/slot_map.c 2008-03-20 13:28:02.000000000 -0400
@@ -121,17 +121,25 @@
return ret;
}
mlog(ML_ERROR, "no free slots available!\n");
diff -Nurb linux-2.6.22-570/fs/ocfs2/suballoc.c linux-2.6.22-590/fs/ocfs2/suballoc.c
--- linux-2.6.22-570/fs/ocfs2/suballoc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/suballoc.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/suballoc.c 2008-03-20 13:28:02.000000000 -0400
@@ -98,14 +98,6 @@
u16 chain);
static inline int ocfs2_block_group_reasonably_empty(struct ocfs2_group_desc *bg,
struct buffer_head *bitmap_bh,
diff -Nurb linux-2.6.22-570/fs/ocfs2/suballoc.h linux-2.6.22-590/fs/ocfs2/suballoc.h
--- linux-2.6.22-570/fs/ocfs2/suballoc.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/suballoc.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/suballoc.h 2008-03-20 13:28:02.000000000 -0400
@@ -86,20 +86,29 @@
u32 *cluster_start,
u32 *num_clusters);
u64 bg_blkno)
{
diff -Nurb linux-2.6.22-570/fs/ocfs2/super.c linux-2.6.22-590/fs/ocfs2/super.c
---- linux-2.6.22-570/fs/ocfs2/super.c 2008-03-18 15:57:48.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/super.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/ocfs2/super.c 2008-03-20 13:25:53.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/super.c 2008-03-20 13:28:02.000000000 -0400
@@ -82,7 +82,8 @@
MODULE_LICENSE("GPL");
status = 1;
diff -Nurb linux-2.6.22-570/fs/ocfs2/super.h linux-2.6.22-590/fs/ocfs2/super.h
--- linux-2.6.22-570/fs/ocfs2/super.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/ocfs2/super.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/ocfs2/super.h 2008-03-20 13:28:02.000000000 -0400
@@ -45,4 +45,6 @@
#define ocfs2_abort(sb, fmt, args...) __ocfs2_abort(sb, __PRETTY_FUNCTION__, fmt, ##args)
+
#endif /* OCFS2_SUPER_H */
diff -Nurb linux-2.6.22-570/fs/open.c linux-2.6.22-590/fs/open.c
---- linux-2.6.22-570/fs/open.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/fs/open.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/open.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/fs/open.c 2008-03-20 13:28:02.000000000 -0400
@@ -362,6 +362,92 @@
#endif
* switching the fsuid/fsgid around to the real ones.
diff -Nurb linux-2.6.22-570/fs/partitions/check.c linux-2.6.22-590/fs/partitions/check.c
--- linux-2.6.22-570/fs/partitions/check.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/partitions/check.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/partitions/check.c 2008-03-20 13:28:02.000000000 -0400
@@ -397,7 +397,6 @@
static struct attribute addpartattr = {
.name = "whole_disk",
sysfs_create_file(&p->kobj, &addpartattr);
diff -Nurb linux-2.6.22-570/fs/proc/Makefile linux-2.6.22-590/fs/proc/Makefile
--- linux-2.6.22-570/fs/proc/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/proc/Makefile 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/proc/Makefile 2008-03-20 13:28:02.000000000 -0400
@@ -11,6 +11,7 @@
proc_tty.o proc_misc.o
proc-$(CONFIG_PROC_VMCORE) += vmcore.o
proc-$(CONFIG_PROC_DEVICETREE) += proc_devtree.o
diff -Nurb linux-2.6.22-570/fs/proc/array.c linux-2.6.22-590/fs/proc/array.c
---- linux-2.6.22-570/fs/proc/array.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/fs/proc/array.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/proc/array.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/fs/proc/array.c 2008-03-20 13:28:02.000000000 -0400
@@ -291,6 +291,15 @@
return buffer;
}
start_time = nsec_to_clock_t(start_time);
diff -Nurb linux-2.6.22-570/fs/proc/base.c linux-2.6.22-590/fs/proc/base.c
---- linux-2.6.22-570/fs/proc/base.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/fs/proc/base.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/proc/base.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/fs/proc/base.c 2008-03-20 13:28:02.000000000 -0400
@@ -67,7 +67,7 @@
#include <linux/mount.h>
#include <linux/security.h>
REG("oom_adj", S_IRUGO|S_IWUSR, oom_adjust),
#ifdef CONFIG_AUDITSYSCALL
diff -Nurb linux-2.6.22-570/fs/proc/generic.c linux-2.6.22-590/fs/proc/generic.c
---- linux-2.6.22-570/fs/proc/generic.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/fs/proc/generic.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/proc/generic.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/fs/proc/generic.c 2008-03-20 13:28:02.000000000 -0400
@@ -74,7 +74,7 @@
nbytes = MAX_NON_LFS - pos;
while ((nbytes > 0) && !eof) {
diff -Nurb linux-2.6.22-570/fs/proc/internal.h linux-2.6.22-590/fs/proc/internal.h
---- linux-2.6.22-570/fs/proc/internal.h 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/fs/proc/internal.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/proc/internal.h 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/fs/proc/internal.h 2008-03-20 13:28:02.000000000 -0400
@@ -17,6 +17,11 @@
#else
static inline void proc_sys_init(void) { }
void free_proc_entry(struct proc_dir_entry *de);
diff -Nurb linux-2.6.22-570/fs/proc/proc_misc.c linux-2.6.22-590/fs/proc/proc_misc.c
---- linux-2.6.22-570/fs/proc/proc_misc.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/fs/proc/proc_misc.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/proc/proc_misc.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/fs/proc/proc_misc.c 2008-03-20 13:28:02.000000000 -0400
@@ -122,6 +122,7 @@
cputime_t idletime = cputime_add(init_task.utime, init_task.stime);
int j;
diff -Nurb linux-2.6.22-570/fs/proc/proc_net.c linux-2.6.22-590/fs/proc/proc_net.c
--- linux-2.6.22-570/fs/proc/proc_net.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/fs/proc/proc_net.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/proc/proc_net.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,154 @@
+/*
+ * linux/fs/proc/net.c
+ return register_pernet_subsys(&proc_net_ns_ops);
+}
diff -Nurb linux-2.6.22-570/fs/proc/root.c linux-2.6.22-590/fs/proc/root.c
---- linux-2.6.22-570/fs/proc/root.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/fs/proc/root.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/proc/root.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/fs/proc/root.c 2008-03-20 13:28:02.000000000 -0400
@@ -21,11 +21,11 @@
#include "internal.h"
EXPORT_SYMBOL(proc_root_driver);
diff -Nurb linux-2.6.22-570/fs/proc/task_mmu.c linux-2.6.22-590/fs/proc/task_mmu.c
--- linux-2.6.22-570/fs/proc/task_mmu.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/proc/task_mmu.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/proc/task_mmu.c 2008-03-20 13:28:02.000000000 -0400
@@ -5,6 +5,7 @@
#include <linux/highmem.h>
#include <linux/ptrace.h>
+#endif
diff -Nurb linux-2.6.22-570/fs/ramfs/inode.c linux-2.6.22-590/fs/ramfs/inode.c
--- linux-2.6.22-570/fs/ramfs/inode.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/ramfs/inode.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/ramfs/inode.c 2008-03-20 13:28:02.000000000 -0400
@@ -60,6 +60,7 @@
inode->i_blocks = 0;
inode->i_mapping->a_ops = &ramfs_aops;
default:
diff -Nurb linux-2.6.22-570/fs/revoke.c linux-2.6.22-590/fs/revoke.c
--- linux-2.6.22-570/fs/revoke.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/fs/revoke.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/revoke.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,777 @@
+/*
+ * fs/revoke.c - Invalidate all current open file descriptors of an inode.
+late_initcall(revokefs_init);
diff -Nurb linux-2.6.22-570/fs/revoked_inode.c linux-2.6.22-590/fs/revoked_inode.c
--- linux-2.6.22-570/fs/revoked_inode.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/fs/revoked_inode.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/revoked_inode.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,417 @@
+/*
+ * fs/revoked_inode.c
+ inode->i_mapping->a_ops = &revoked_aops;
+}
diff -Nurb linux-2.6.22-570/fs/splice.c linux-2.6.22-590/fs/splice.c
---- linux-2.6.22-570/fs/splice.c 2008-03-18 15:57:36.000000000 -0400
-+++ linux-2.6.22-590/fs/splice.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/splice.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/fs/splice.c 2008-03-20 13:28:02.000000000 -0400
@@ -28,6 +28,7 @@
#include <linux/module.h>
#include <linux/syscalls.h>
if (spd.nr_pages <= 0)
diff -Nurb linux-2.6.22-570/fs/stack.c linux-2.6.22-590/fs/stack.c
--- linux-2.6.22-570/fs/stack.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/stack.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/stack.c 2008-03-20 13:28:02.000000000 -0400
@@ -1,8 +1,20 @@
+/*
+ * Copyright (c) 2006-2007 Erez Zadok
void fsstack_copy_attr_all(struct inode *dest, const struct inode *src,
diff -Nurb linux-2.6.22-570/fs/sync.c linux-2.6.22-590/fs/sync.c
--- linux-2.6.22-570/fs/sync.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/sync.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/sync.c 2008-03-20 13:28:02.000000000 -0400
@@ -174,6 +174,9 @@
* already-instantiated disk blocks, there are no guarantees here that the data
* will be available after a crash.
{
diff -Nurb linux-2.6.22-570/fs/sysfs/bin.c linux-2.6.22-590/fs/sysfs/bin.c
--- linux-2.6.22-570/fs/sysfs/bin.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/sysfs/bin.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/sysfs/bin.c 2008-03-20 13:28:02.000000000 -0400
@@ -20,29 +20,41 @@
#include "sysfs.h"
__FUNCTION__, attr->attr.name);
diff -Nurb linux-2.6.22-570/fs/sysfs/dir.c linux-2.6.22-590/fs/sysfs/dir.c
--- linux-2.6.22-570/fs/sysfs/dir.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/sysfs/dir.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/sysfs/dir.c 2008-03-20 13:28:02.000000000 -0400
@@ -9,21 +9,442 @@
#include <linux/module.h>
#include <linux/kobject.h>
- .readdir = sysfs_readdir,
-};
diff -Nurb linux-2.6.22-570/fs/sysfs/file.c linux-2.6.22-590/fs/sysfs/file.c
---- linux-2.6.22-570/fs/sysfs/file.c 2008-03-18 15:57:36.000000000 -0400
-+++ linux-2.6.22-590/fs/sysfs/file.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/sysfs/file.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/fs/sysfs/file.c 2008-03-20 13:28:02.000000000 -0400
@@ -50,29 +50,15 @@
.store = subsys_attr_store,
};
EXPORT_SYMBOL_GPL(sysfs_remove_file_from_group);
diff -Nurb linux-2.6.22-570/fs/sysfs/group.c linux-2.6.22-590/fs/sysfs/group.c
--- linux-2.6.22-570/fs/sysfs/group.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/sysfs/group.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/sysfs/group.c 2008-03-20 13:28:02.000000000 -0400
@@ -13,31 +13,29 @@
#include <linux/dcache.h>
#include <linux/namei.h>
diff -Nurb linux-2.6.22-570/fs/sysfs/inode.c linux-2.6.22-590/fs/sysfs/inode.c
--- linux-2.6.22-570/fs/sysfs/inode.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/sysfs/inode.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/sysfs/inode.c 2008-03-20 13:28:02.000000000 -0400
@@ -34,16 +34,6 @@
.setattr = sysfs_setattr,
};
+ return -ENOENT;
}
diff -Nurb linux-2.6.22-570/fs/sysfs/mount.c linux-2.6.22-590/fs/sysfs/mount.c
---- linux-2.6.22-570/fs/sysfs/mount.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/fs/sysfs/mount.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/sysfs/mount.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/fs/sysfs/mount.c 2008-03-20 13:28:02.000000000 -0400
@@ -17,28 +17,18 @@
struct super_block * sysfs_sb = NULL;
struct kmem_cache *sysfs_dir_cachep;
return 0;
diff -Nurb linux-2.6.22-570/fs/sysfs/symlink.c linux-2.6.22-590/fs/sysfs/symlink.c
--- linux-2.6.22-570/fs/sysfs/symlink.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/sysfs/symlink.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/sysfs/symlink.c 2008-03-20 13:28:02.000000000 -0400
@@ -11,71 +11,49 @@
#include "sysfs.h"
static void *sysfs_follow_link(struct dentry *dentry, struct nameidata *nd)
diff -Nurb linux-2.6.22-570/fs/sysfs/sysfs.h linux-2.6.22-590/fs/sysfs/sysfs.h
--- linux-2.6.22-570/fs/sysfs/sysfs.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/sysfs/sysfs.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/sysfs/sysfs.h 2008-03-20 13:28:02.000000000 -0400
@@ -1,9 +1,40 @@
+struct sysfs_elem_dir {
+ struct kobject * kobj;
-}
diff -Nurb linux-2.6.22-570/fs/unionfs/Makefile linux-2.6.22-590/fs/unionfs/Makefile
--- linux-2.6.22-570/fs/unionfs/Makefile 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/fs/unionfs/Makefile 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/unionfs/Makefile 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,7 @@
+obj-$(CONFIG_UNION_FS) += unionfs.o
+
+unionfs-$(CONFIG_UNION_FS_XATTR) += xattr.o
diff -Nurb linux-2.6.22-570/fs/unionfs/commonfops.c linux-2.6.22-590/fs/unionfs/commonfops.c
--- linux-2.6.22-570/fs/unionfs/commonfops.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/fs/unionfs/commonfops.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/unionfs/commonfops.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,748 @@
+/*
+ * Copyright (c) 2003-2007 Erez Zadok
+}
diff -Nurb linux-2.6.22-570/fs/unionfs/copyup.c linux-2.6.22-590/fs/unionfs/copyup.c
--- linux-2.6.22-570/fs/unionfs/copyup.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/fs/unionfs/copyup.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/unionfs/copyup.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,806 @@
+/*
+ * Copyright (c) 2003-2007 Erez Zadok
+}
diff -Nurb linux-2.6.22-570/fs/unionfs/dentry.c linux-2.6.22-590/fs/unionfs/dentry.c
--- linux-2.6.22-570/fs/unionfs/dentry.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/fs/unionfs/dentry.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/unionfs/dentry.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,353 @@
+/*
+ * Copyright (c) 2003-2007 Erez Zadok
+};
diff -Nurb linux-2.6.22-570/fs/unionfs/dirfops.c linux-2.6.22-590/fs/unionfs/dirfops.c
--- linux-2.6.22-570/fs/unionfs/dirfops.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/fs/unionfs/dirfops.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/unionfs/dirfops.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,276 @@
+/*
+ * Copyright (c) 2003-2007 Erez Zadok
+};
diff -Nurb linux-2.6.22-570/fs/unionfs/dirhelper.c linux-2.6.22-590/fs/unionfs/dirhelper.c
--- linux-2.6.22-570/fs/unionfs/dirhelper.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/fs/unionfs/dirhelper.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/unionfs/dirhelper.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,273 @@
+/*
+ * Copyright (c) 2003-2007 Erez Zadok
+}
diff -Nurb linux-2.6.22-570/fs/unionfs/fanout.h linux-2.6.22-590/fs/unionfs/fanout.h
--- linux-2.6.22-570/fs/unionfs/fanout.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/fs/unionfs/fanout.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/unionfs/fanout.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,308 @@
+/*
+ * Copyright (c) 2003-2007 Erez Zadok
+#endif /* _FANOUT_H */
diff -Nurb linux-2.6.22-570/fs/unionfs/file.c linux-2.6.22-590/fs/unionfs/file.c
--- linux-2.6.22-570/fs/unionfs/file.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/fs/unionfs/file.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/unionfs/file.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,149 @@
+/*
+ * Copyright (c) 2003-2007 Erez Zadok
+};
diff -Nurb linux-2.6.22-570/fs/unionfs/inode.c linux-2.6.22-590/fs/unionfs/inode.c
--- linux-2.6.22-570/fs/unionfs/inode.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/fs/unionfs/inode.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/unionfs/inode.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,1138 @@
+/*
+ * Copyright (c) 2003-2007 Erez Zadok
+};
diff -Nurb linux-2.6.22-570/fs/unionfs/lookup.c linux-2.6.22-590/fs/unionfs/lookup.c
--- linux-2.6.22-570/fs/unionfs/lookup.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/fs/unionfs/lookup.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/unionfs/lookup.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,549 @@
+/*
+ * Copyright (c) 2003-2007 Erez Zadok
+}
diff -Nurb linux-2.6.22-570/fs/unionfs/main.c linux-2.6.22-590/fs/unionfs/main.c
--- linux-2.6.22-570/fs/unionfs/main.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/fs/unionfs/main.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/unionfs/main.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,729 @@
+/*
+ * Copyright (c) 2003-2007 Erez Zadok
+module_exit(exit_unionfs_fs);
diff -Nurb linux-2.6.22-570/fs/unionfs/mmap.c linux-2.6.22-590/fs/unionfs/mmap.c
--- linux-2.6.22-570/fs/unionfs/mmap.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/fs/unionfs/mmap.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/unionfs/mmap.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,348 @@
+/*
+ * Copyright (c) 2003-2007 Erez Zadok
+};
diff -Nurb linux-2.6.22-570/fs/unionfs/rdstate.c linux-2.6.22-590/fs/unionfs/rdstate.c
--- linux-2.6.22-570/fs/unionfs/rdstate.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/fs/unionfs/rdstate.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/unionfs/rdstate.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,282 @@
+/*
+ * Copyright (c) 2003-2007 Erez Zadok
+}
diff -Nurb linux-2.6.22-570/fs/unionfs/rename.c linux-2.6.22-590/fs/unionfs/rename.c
--- linux-2.6.22-570/fs/unionfs/rename.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/fs/unionfs/rename.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/unionfs/rename.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,477 @@
+/*
+ * Copyright (c) 2003-2007 Erez Zadok
+}
diff -Nurb linux-2.6.22-570/fs/unionfs/sioq.c linux-2.6.22-590/fs/unionfs/sioq.c
--- linux-2.6.22-570/fs/unionfs/sioq.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/fs/unionfs/sioq.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/unionfs/sioq.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,118 @@
+/*
+ * Copyright (c) 2003-2007 Erez Zadok
+}
diff -Nurb linux-2.6.22-570/fs/unionfs/sioq.h linux-2.6.22-590/fs/unionfs/sioq.h
--- linux-2.6.22-570/fs/unionfs/sioq.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/fs/unionfs/sioq.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/unionfs/sioq.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,91 @@
+/*
+ * Copyright (c) 2003-2007 Erez Zadok
+#endif /* _SIOQ_H */
diff -Nurb linux-2.6.22-570/fs/unionfs/subr.c linux-2.6.22-590/fs/unionfs/subr.c
--- linux-2.6.22-570/fs/unionfs/subr.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/fs/unionfs/subr.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/unionfs/subr.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,238 @@
+/*
+ * Copyright (c) 2003-2007 Erez Zadok
+}
diff -Nurb linux-2.6.22-570/fs/unionfs/super.c linux-2.6.22-590/fs/unionfs/super.c
--- linux-2.6.22-570/fs/unionfs/super.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/fs/unionfs/super.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/unionfs/super.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,1002 @@
+/*
+ * Copyright (c) 2003-2007 Erez Zadok
+};
diff -Nurb linux-2.6.22-570/fs/unionfs/union.h linux-2.6.22-590/fs/unionfs/union.h
--- linux-2.6.22-570/fs/unionfs/union.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/fs/unionfs/union.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/unionfs/union.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,467 @@
+/*
+ * Copyright (c) 2003-2007 Erez Zadok
+#endif /* not _UNION_H_ */
diff -Nurb linux-2.6.22-570/fs/unionfs/unlink.c linux-2.6.22-590/fs/unionfs/unlink.c
--- linux-2.6.22-570/fs/unionfs/unlink.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/fs/unionfs/unlink.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/unionfs/unlink.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,176 @@
+/*
+ * Copyright (c) 2003-2007 Erez Zadok
+}
diff -Nurb linux-2.6.22-570/fs/unionfs/xattr.c linux-2.6.22-590/fs/unionfs/xattr.c
--- linux-2.6.22-570/fs/unionfs/xattr.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/fs/unionfs/xattr.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/unionfs/xattr.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,161 @@
+/*
+ * Copyright (c) 2003-2007 Erez Zadok
+}
diff -Nurb linux-2.6.22-570/fs/xfs/linux-2.6/xfs_file.c linux-2.6.22-590/fs/xfs/linux-2.6/xfs_file.c
--- linux-2.6.22-570/fs/xfs/linux-2.6/xfs_file.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/fs/xfs/linux-2.6/xfs_file.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/fs/xfs/linux-2.6/xfs_file.c 2008-03-20 13:28:02.000000000 -0400
@@ -246,18 +246,19 @@
#ifdef CONFIG_XFS_DMAPI
.mprotect = xfs_vm_mprotect,
#endif
diff -Nurb linux-2.6.22-570/fs/xfs/linux-2.6/xfs_super.c linux-2.6.22-590/fs/xfs/linux-2.6/xfs_super.c
---- linux-2.6.22-570/fs/xfs/linux-2.6/xfs_super.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/fs/xfs/linux-2.6/xfs_super.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/fs/xfs/linux-2.6/xfs_super.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/fs/xfs/linux-2.6/xfs_super.c 2008-03-20 13:28:02.000000000 -0400
@@ -570,6 +570,7 @@
bhv_vfs_sync_work_t *work, *n;
LIST_HEAD (tmp);
timeleft = schedule_timeout_interruptible(timeleft);
diff -Nurb linux-2.6.22-570/include/acpi/acmacros.h linux-2.6.22-590/include/acpi/acmacros.h
--- linux-2.6.22-570/include/acpi/acmacros.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/acpi/acmacros.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/acpi/acmacros.h 2008-03-20 13:28:02.000000000 -0400
@@ -486,6 +486,8 @@
#define ACPI_FUNCTION_NAME(name)
#endif
#define ACPI_DEBUG_EXEC(a) a
diff -Nurb linux-2.6.22-570/include/acpi/acoutput.h linux-2.6.22-590/include/acpi/acoutput.h
--- linux-2.6.22-570/include/acpi/acoutput.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/acpi/acoutput.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/acpi/acoutput.h 2008-03-20 13:28:02.000000000 -0400
@@ -178,8 +178,8 @@
/* Defaults for debug_level, debug and normal */
#endif /* __ACOUTPUT_H__ */
diff -Nurb linux-2.6.22-570/include/acpi/platform/acenv.h linux-2.6.22-590/include/acpi/platform/acenv.h
--- linux-2.6.22-570/include/acpi/platform/acenv.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/acpi/platform/acenv.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/acpi/platform/acenv.h 2008-03-20 13:28:02.000000000 -0400
@@ -136,7 +136,7 @@
/*! [Begin] no source code translation */
#elif defined(_AED_EFI)
diff -Nurb linux-2.6.22-570/include/acpi/platform/aclinux.h linux-2.6.22-590/include/acpi/platform/aclinux.h
--- linux-2.6.22-570/include/acpi/platform/aclinux.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/acpi/platform/aclinux.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/acpi/platform/aclinux.h 2008-03-20 13:28:02.000000000 -0400
@@ -91,7 +91,10 @@
#define ACPI_USE_NATIVE_DIVIDE
#endif
#endif /* __KERNEL__ */
diff -Nurb linux-2.6.22-570/include/acpi/processor.h linux-2.6.22-590/include/acpi/processor.h
---- linux-2.6.22-570/include/acpi/processor.h 2008-03-18 15:57:36.000000000 -0400
-+++ linux-2.6.22-590/include/acpi/processor.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/acpi/processor.h 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/include/acpi/processor.h 2008-03-20 13:28:02.000000000 -0400
@@ -21,6 +21,8 @@
#define ACPI_PSD_REV0_REVISION 0 /* Support for _PSD as in ACPI 3.0 */
#define ACPI_PSD_REV0_ENTRIES 5
diff -Nurb linux-2.6.22-570/include/asm-alpha/page.h linux-2.6.22-590/include/asm-alpha/page.h
--- linux-2.6.22-570/include/asm-alpha/page.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-alpha/page.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-alpha/page.h 2008-03-20 13:28:02.000000000 -0400
@@ -17,7 +17,8 @@
extern void clear_page(void *page);
#define clear_user_page(page, vaddr, pg) clear_page(page)
extern void copy_page(void * _to, void * _from);
diff -Nurb linux-2.6.22-570/include/asm-arm/arch-iop13xx/adma.h linux-2.6.22-590/include/asm-arm/arch-iop13xx/adma.h
--- linux-2.6.22-570/include/asm-arm/arch-iop13xx/adma.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/include/asm-arm/arch-iop13xx/adma.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-arm/arch-iop13xx/adma.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,544 @@
+/*
+ * Copyright(c) 2006, Intel Corporation.
+#endif /* _ADMA_H */
diff -Nurb linux-2.6.22-570/include/asm-arm/arch-iop13xx/iop13xx.h linux-2.6.22-590/include/asm-arm/arch-iop13xx/iop13xx.h
--- linux-2.6.22-570/include/asm-arm/arch-iop13xx/iop13xx.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-arm/arch-iop13xx/iop13xx.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-arm/arch-iop13xx/iop13xx.h 2008-03-20 13:28:02.000000000 -0400
@@ -166,12 +166,22 @@
#define IOP13XX_INIT_I2C_1 (1 << 1)
#define IOP13XX_INIT_I2C_2 (1 << 2)
#define IOP13XX_XBG_BECSR IOP13XX_REG_ADDR32(0x178c)
diff -Nurb linux-2.6.22-570/include/asm-arm/arch-iop32x/adma.h linux-2.6.22-590/include/asm-arm/arch-iop32x/adma.h
--- linux-2.6.22-570/include/asm-arm/arch-iop32x/adma.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/include/asm-arm/arch-iop32x/adma.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-arm/arch-iop32x/adma.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,5 @@
+#ifndef IOP32X_ADMA_H
+#define IOP32X_ADMA_H
+
diff -Nurb linux-2.6.22-570/include/asm-arm/arch-iop33x/adma.h linux-2.6.22-590/include/asm-arm/arch-iop33x/adma.h
--- linux-2.6.22-570/include/asm-arm/arch-iop33x/adma.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/include/asm-arm/arch-iop33x/adma.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-arm/arch-iop33x/adma.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,5 @@
+#ifndef IOP33X_ADMA_H
+#define IOP33X_ADMA_H
+
diff -Nurb linux-2.6.22-570/include/asm-arm/hardware/iop3xx-adma.h linux-2.6.22-590/include/asm-arm/hardware/iop3xx-adma.h
--- linux-2.6.22-570/include/asm-arm/hardware/iop3xx-adma.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/include/asm-arm/hardware/iop3xx-adma.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-arm/hardware/iop3xx-adma.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,891 @@
+/*
+ * Copyright © 2006, Intel Corporation.
+#endif /* _ADMA_H */
diff -Nurb linux-2.6.22-570/include/asm-arm/hardware/iop3xx.h linux-2.6.22-590/include/asm-arm/hardware/iop3xx.h
--- linux-2.6.22-570/include/asm-arm/hardware/iop3xx.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-arm/hardware/iop3xx.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-arm/hardware/iop3xx.h 2008-03-20 13:28:02.000000000 -0400
@@ -144,24 +144,9 @@
#define IOP3XX_IAR (volatile u32 *)IOP3XX_REG_ADDR(0x0380)
diff -Nurb linux-2.6.22-570/include/asm-arm/hardware/iop_adma.h linux-2.6.22-590/include/asm-arm/hardware/iop_adma.h
--- linux-2.6.22-570/include/asm-arm/hardware/iop_adma.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/include/asm-arm/hardware/iop_adma.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-arm/hardware/iop_adma.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,120 @@
+/*
+ * Copyright © 2006, Intel Corporation.
+#endif
diff -Nurb linux-2.6.22-570/include/asm-arm/kgdb.h linux-2.6.22-590/include/asm-arm/kgdb.h
--- linux-2.6.22-570/include/asm-arm/kgdb.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/include/asm-arm/kgdb.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-arm/kgdb.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,103 @@
+/*
+ * include/asm-arm/kgdb.h
+#endif /* __ASM_KGDB_H__ */
diff -Nurb linux-2.6.22-570/include/asm-arm/system.h linux-2.6.22-590/include/asm-arm/system.h
--- linux-2.6.22-570/include/asm-arm/system.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-arm/system.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-arm/system.h 2008-03-20 13:28:02.000000000 -0400
@@ -360,6 +360,41 @@
extern void disable_hlt(void);
extern void enable_hlt(void);
#define arch_align_stack(x) (x)
diff -Nurb linux-2.6.22-570/include/asm-cris/page.h linux-2.6.22-590/include/asm-cris/page.h
--- linux-2.6.22-570/include/asm-cris/page.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-cris/page.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-cris/page.h 2008-03-20 13:28:02.000000000 -0400
@@ -20,7 +20,8 @@
#define clear_user_page(page, vaddr, pg) clear_page(page)
#define copy_user_page(to, from, vaddr, pg) copy_page(to, from)
/*
diff -Nurb linux-2.6.22-570/include/asm-generic/kgdb.h linux-2.6.22-590/include/asm-generic/kgdb.h
--- linux-2.6.22-570/include/asm-generic/kgdb.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/include/asm-generic/kgdb.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-generic/kgdb.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,100 @@
+/*
+ * include/asm-generic/kgdb.h
+#endif /* __ASM_GENERIC_KGDB_H__ */
diff -Nurb linux-2.6.22-570/include/asm-generic/vmlinux.lds.h linux-2.6.22-590/include/asm-generic/vmlinux.lds.h
--- linux-2.6.22-570/include/asm-generic/vmlinux.lds.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-generic/vmlinux.lds.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-generic/vmlinux.lds.h 2008-03-20 13:28:02.000000000 -0400
@@ -127,6 +127,8 @@
*(__ksymtab_strings) \
} \
the beginning of the section so we begin them at 0. */
diff -Nurb linux-2.6.22-570/include/asm-h8300/page.h linux-2.6.22-590/include/asm-h8300/page.h
--- linux-2.6.22-570/include/asm-h8300/page.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-h8300/page.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-h8300/page.h 2008-03-20 13:28:02.000000000 -0400
@@ -22,7 +22,8 @@
#define clear_user_page(page, vaddr, pg) clear_page(page)
#define copy_user_page(to, from, vaddr, pg) copy_page(to, from)
/*
diff -Nurb linux-2.6.22-570/include/asm-i386/kdebug.h linux-2.6.22-590/include/asm-i386/kdebug.h
--- linux-2.6.22-570/include/asm-i386/kdebug.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-i386/kdebug.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-i386/kdebug.h 2008-03-20 13:28:02.000000000 -0400
@@ -28,6 +28,7 @@
DIE_CALL,
DIE_NMI_IPI,
#endif
diff -Nurb linux-2.6.22-570/include/asm-i386/kgdb.h linux-2.6.22-590/include/asm-i386/kgdb.h
--- linux-2.6.22-570/include/asm-i386/kgdb.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/include/asm-i386/kgdb.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-i386/kgdb.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,51 @@
+#ifdef __KERNEL__
+#ifndef _ASM_KGDB_H_
+#endif /* __KERNEL__ */
diff -Nurb linux-2.6.22-570/include/asm-i386/page.h linux-2.6.22-590/include/asm-i386/page.h
--- linux-2.6.22-570/include/asm-i386/page.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-i386/page.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-i386/page.h 2008-03-20 13:28:02.000000000 -0400
@@ -34,7 +34,8 @@
#define clear_user_page(page, vaddr, pg) clear_page(page)
#define copy_user_page(to, from, vaddr, pg) copy_page(to, from)
/*
diff -Nurb linux-2.6.22-570/include/asm-i386/unistd.h linux-2.6.22-590/include/asm-i386/unistd.h
--- linux-2.6.22-570/include/asm-i386/unistd.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-i386/unistd.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-i386/unistd.h 2008-03-20 13:28:02.000000000 -0400
@@ -329,10 +329,13 @@
#define __NR_signalfd 321
#define __NR_timerfd 322
#define __ARCH_WANT_OLD_READDIR
diff -Nurb linux-2.6.22-570/include/asm-i386/unwind.h linux-2.6.22-590/include/asm-i386/unwind.h
--- linux-2.6.22-570/include/asm-i386/unwind.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-i386/unwind.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-i386/unwind.h 2008-03-20 13:28:02.000000000 -0400
@@ -1,6 +1,95 @@
#ifndef _ASM_I386_UNWIND_H
#define _ASM_I386_UNWIND_H
#endif /* _ASM_I386_UNWIND_H */
diff -Nurb linux-2.6.22-570/include/asm-ia64/kdebug.h linux-2.6.22-590/include/asm-ia64/kdebug.h
--- linux-2.6.22-570/include/asm-ia64/kdebug.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-ia64/kdebug.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-ia64/kdebug.h 2008-03-20 13:28:02.000000000 -0400
@@ -69,6 +69,7 @@
DIE_KDEBUG_LEAVE,
DIE_KDUMP_ENTER,
#endif
diff -Nurb linux-2.6.22-570/include/asm-ia64/kgdb.h linux-2.6.22-590/include/asm-ia64/kgdb.h
--- linux-2.6.22-570/include/asm-ia64/kgdb.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/include/asm-ia64/kgdb.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-ia64/kgdb.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,37 @@
+#ifdef __KERNEL__
+#ifndef _ASM_KGDB_H_
+#endif /* __KERNEL__ */
diff -Nurb linux-2.6.22-570/include/asm-ia64/page.h linux-2.6.22-590/include/asm-ia64/page.h
--- linux-2.6.22-570/include/asm-ia64/page.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-ia64/page.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-ia64/page.h 2008-03-20 13:28:02.000000000 -0400
@@ -87,9 +87,10 @@
} while (0)
page; \
diff -Nurb linux-2.6.22-570/include/asm-ia64/processor.h linux-2.6.22-590/include/asm-ia64/processor.h
--- linux-2.6.22-570/include/asm-ia64/processor.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-ia64/processor.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-ia64/processor.h 2008-03-20 13:28:02.000000000 -0400
@@ -295,9 +295,9 @@
regs->ar_bspstore = current->thread.rbs_bot; \
regs->ar_fpsr = FPSR_DEFAULT; \
* uid/privileges. \
diff -Nurb linux-2.6.22-570/include/asm-m32r/page.h linux-2.6.22-590/include/asm-m32r/page.h
--- linux-2.6.22-570/include/asm-m32r/page.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-m32r/page.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-m32r/page.h 2008-03-20 13:28:02.000000000 -0400
@@ -15,7 +15,8 @@
#define clear_user_page(page, vaddr, pg) clear_page(page)
#define copy_user_page(to, from, vaddr, pg) copy_page(to, from)
/*
diff -Nurb linux-2.6.22-570/include/asm-m68knommu/page.h linux-2.6.22-590/include/asm-m68knommu/page.h
--- linux-2.6.22-570/include/asm-m68knommu/page.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-m68knommu/page.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-m68knommu/page.h 2008-03-20 13:28:02.000000000 -0400
@@ -22,7 +22,8 @@
#define clear_user_page(page, vaddr, pg) clear_page(page)
#define copy_user_page(to, from, vaddr, pg) copy_page(to, from)
/*
diff -Nurb linux-2.6.22-570/include/asm-mips/asmmacro-32.h linux-2.6.22-590/include/asm-mips/asmmacro-32.h
--- linux-2.6.22-570/include/asm-mips/asmmacro-32.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-mips/asmmacro-32.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-mips/asmmacro-32.h 2008-03-20 13:28:02.000000000 -0400
@@ -11,6 +11,28 @@
#include <asm/regdef.h>
#include <asm/fpregdef.h>
lwc1 $f0, THREAD_FPR0(\thread)
diff -Nurb linux-2.6.22-570/include/asm-mips/asmmacro-64.h linux-2.6.22-590/include/asm-mips/asmmacro-64.h
--- linux-2.6.22-570/include/asm-mips/asmmacro-64.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-mips/asmmacro-64.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-mips/asmmacro-64.h 2008-03-20 13:28:02.000000000 -0400
@@ -12,6 +12,7 @@
#include <asm/regdef.h>
#include <asm/fpregdef.h>
LONG_S s1, THREAD_REG17(\thread)
diff -Nurb linux-2.6.22-570/include/asm-mips/kdebug.h linux-2.6.22-590/include/asm-mips/kdebug.h
--- linux-2.6.22-570/include/asm-mips/kdebug.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-mips/kdebug.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-mips/kdebug.h 2008-03-20 13:28:02.000000000 -0400
@@ -1 +1,30 @@
-#include <asm-generic/kdebug.h>
+/*
+#endif /* _MIPS_KDEBUG_H */
diff -Nurb linux-2.6.22-570/include/asm-mips/kgdb.h linux-2.6.22-590/include/asm-mips/kgdb.h
--- linux-2.6.22-570/include/asm-mips/kgdb.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/include/asm-mips/kgdb.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-mips/kgdb.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,41 @@
+#ifdef __KERNEL__
+#ifndef _ASM_KGDB_H_
+#endif /* __KERNEL__ */
diff -Nurb linux-2.6.22-570/include/asm-mips/ptrace.h linux-2.6.22-590/include/asm-mips/ptrace.h
--- linux-2.6.22-570/include/asm-mips/ptrace.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-mips/ptrace.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-mips/ptrace.h 2008-03-20 13:28:02.000000000 -0400
@@ -28,7 +28,7 @@
* system call/exception. As usual the registers k0/k1 aren't being saved.
*/
#endif
diff -Nurb linux-2.6.22-570/include/asm-powerpc/cputable.h linux-2.6.22-590/include/asm-powerpc/cputable.h
--- linux-2.6.22-570/include/asm-powerpc/cputable.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-powerpc/cputable.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-powerpc/cputable.h 2008-03-20 13:28:02.000000000 -0400
@@ -111,7 +111,7 @@
/* CPU kernel features */
#ifdef __powerpc64__
diff -Nurb linux-2.6.22-570/include/asm-powerpc/floppy.h linux-2.6.22-590/include/asm-powerpc/floppy.h
--- linux-2.6.22-570/include/asm-powerpc/floppy.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-powerpc/floppy.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-powerpc/floppy.h 2008-03-20 13:28:02.000000000 -0400
@@ -29,7 +29,7 @@
#define fd_free_irq() free_irq(FLOPPY_IRQ, NULL);
prev_addr = addr;
diff -Nurb linux-2.6.22-570/include/asm-powerpc/io.h linux-2.6.22-590/include/asm-powerpc/io.h
--- linux-2.6.22-570/include/asm-powerpc/io.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-powerpc/io.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-powerpc/io.h 2008-03-20 13:28:02.000000000 -0400
@@ -607,9 +607,9 @@
*
* * iounmap undoes such a mapping and can be hooked
#define mmio_read32be(addr) readl_be(addr)
diff -Nurb linux-2.6.22-570/include/asm-powerpc/kgdb.h linux-2.6.22-590/include/asm-powerpc/kgdb.h
--- linux-2.6.22-570/include/asm-powerpc/kgdb.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/include/asm-powerpc/kgdb.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-powerpc/kgdb.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,75 @@
+/*
+ * include/asm-powerpc/kgdb.h
+#endif /* __KERNEL__ */
diff -Nurb linux-2.6.22-570/include/asm-powerpc/lppaca.h linux-2.6.22-590/include/asm-powerpc/lppaca.h
--- linux-2.6.22-570/include/asm-powerpc/lppaca.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-powerpc/lppaca.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-powerpc/lppaca.h 2008-03-20 13:28:02.000000000 -0400
@@ -98,7 +98,7 @@
u64 saved_gpr5; // Saved GPR5 x30-x37
volatile u32 saved_decr; // Saved Decr Value x3C-x3F
diff -Nurb linux-2.6.22-570/include/asm-powerpc/mmu-hash32.h linux-2.6.22-590/include/asm-powerpc/mmu-hash32.h
--- linux-2.6.22-570/include/asm-powerpc/mmu-hash32.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/include/asm-powerpc/mmu-hash32.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-powerpc/mmu-hash32.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,91 @@
+#ifndef _ASM_POWERPC_MMU_HASH32_H_
+#define _ASM_POWERPC_MMU_HASH32_H_
+#endif /* _ASM_POWERPC_MMU_HASH32_H_ */
diff -Nurb linux-2.6.22-570/include/asm-powerpc/mmu-hash64.h linux-2.6.22-590/include/asm-powerpc/mmu-hash64.h
--- linux-2.6.22-570/include/asm-powerpc/mmu-hash64.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-powerpc/mmu-hash64.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-powerpc/mmu-hash64.h 2008-03-20 13:28:02.000000000 -0400
@@ -103,12 +103,12 @@
#ifndef __ASSEMBLY__
diff -Nurb linux-2.6.22-570/include/asm-powerpc/mmu.h linux-2.6.22-590/include/asm-powerpc/mmu.h
--- linux-2.6.22-570/include/asm-powerpc/mmu.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-powerpc/mmu.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-powerpc/mmu.h 2008-03-20 13:28:02.000000000 -0400
@@ -5,6 +5,9 @@
#ifdef CONFIG_PPC64
/* 64-bit classic hash table MMU */
# include <asm/mmu-44x.h>
diff -Nurb linux-2.6.22-570/include/asm-powerpc/pci-bridge.h linux-2.6.22-590/include/asm-powerpc/pci-bridge.h
--- linux-2.6.22-570/include/asm-powerpc/pci-bridge.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-powerpc/pci-bridge.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-powerpc/pci-bridge.h 2008-03-20 13:28:02.000000000 -0400
@@ -31,6 +31,7 @@
int last_busno;
#define PCI_PROBE_NORMAL 0 /* Do normal PCI probing */
diff -Nurb linux-2.6.22-570/include/asm-powerpc/pci.h linux-2.6.22-590/include/asm-powerpc/pci.h
--- linux-2.6.22-570/include/asm-powerpc/pci.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-powerpc/pci.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-powerpc/pci.h 2008-03-20 13:28:02.000000000 -0400
@@ -220,10 +220,6 @@
return root;
}
diff -Nurb linux-2.6.22-570/include/asm-powerpc/pgtable-ppc32.h linux-2.6.22-590/include/asm-powerpc/pgtable-ppc32.h
--- linux-2.6.22-570/include/asm-powerpc/pgtable-ppc32.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-powerpc/pgtable-ppc32.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-powerpc/pgtable-ppc32.h 2008-03-20 13:28:02.000000000 -0400
@@ -6,11 +6,7 @@
#ifndef __ASSEMBLY__
#include <linux/sched.h>
*/
diff -Nurb linux-2.6.22-570/include/asm-powerpc/pgtable-ppc64.h linux-2.6.22-590/include/asm-powerpc/pgtable-ppc64.h
--- linux-2.6.22-570/include/asm-powerpc/pgtable-ppc64.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-powerpc/pgtable-ppc64.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-powerpc/pgtable-ppc64.h 2008-03-20 13:28:02.000000000 -0400
@@ -7,11 +7,7 @@
#ifndef __ASSEMBLY__
/*
diff -Nurb linux-2.6.22-570/include/asm-powerpc/pgtable.h linux-2.6.22-590/include/asm-powerpc/pgtable.h
--- linux-2.6.22-570/include/asm-powerpc/pgtable.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-powerpc/pgtable.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-powerpc/pgtable.h 2008-03-20 13:28:02.000000000 -0400
@@ -2,6 +2,13 @@
#define _ASM_POWERPC_PGTABLE_H
#ifdef __KERNEL__
diff -Nurb linux-2.6.22-570/include/asm-powerpc/ppc-pci.h linux-2.6.22-590/include/asm-powerpc/ppc-pci.h
--- linux-2.6.22-570/include/asm-powerpc/ppc-pci.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-powerpc/ppc-pci.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-powerpc/ppc-pci.h 2008-03-20 13:28:02.000000000 -0400
@@ -26,7 +26,7 @@
extern void find_and_init_phbs(void);
#else /* CONFIG_PCI */
diff -Nurb linux-2.6.22-570/include/asm-powerpc/ptrace.h linux-2.6.22-590/include/asm-powerpc/ptrace.h
--- linux-2.6.22-570/include/asm-powerpc/ptrace.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-powerpc/ptrace.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-powerpc/ptrace.h 2008-03-20 13:28:02.000000000 -0400
@@ -92,6 +92,11 @@
set_thread_flag(TIF_NOERROR); \
} while(0)
#define PPC_PTRACE_GETFPREGS 0x97 /* Get FPRs 0 - 31 */
diff -Nurb linux-2.6.22-570/include/asm-powerpc/syscalls.h linux-2.6.22-590/include/asm-powerpc/syscalls.h
--- linux-2.6.22-570/include/asm-powerpc/syscalls.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-powerpc/syscalls.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-powerpc/syscalls.h 2008-03-20 13:28:02.000000000 -0400
@@ -43,16 +43,9 @@
asmlinkage long sys_rt_sigsuspend(sigset_t __user *unewset,
#endif /* __KERNEL__ */
#endif /* __ASM_POWERPC_SYSCALLS_H */
diff -Nurb linux-2.6.22-570/include/asm-powerpc/systbl.h linux-2.6.22-590/include/asm-powerpc/systbl.h
---- linux-2.6.22-570/include/asm-powerpc/systbl.h 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/include/asm-powerpc/systbl.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/asm-powerpc/systbl.h 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/include/asm-powerpc/systbl.h 2008-03-20 13:28:02.000000000 -0400
@@ -312,3 +312,4 @@
COMPAT_SYS_SPU(timerfd)
SYSCALL_SPU(eventfd)
+COMPAT_SYS(fallocate)
diff -Nurb linux-2.6.22-570/include/asm-powerpc/thread_info.h linux-2.6.22-590/include/asm-powerpc/thread_info.h
--- linux-2.6.22-570/include/asm-powerpc/thread_info.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-powerpc/thread_info.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-powerpc/thread_info.h 2008-03-20 13:28:02.000000000 -0400
@@ -113,8 +113,8 @@
#define TIF_POLLING_NRFLAG 4 /* true if poll_idle() is polling
TIF_NEED_RESCHED */
#define _TIF_USER_WORK_MASK (_TIF_NOTIFY_RESUME | _TIF_SIGPENDING | \
diff -Nurb linux-2.6.22-570/include/asm-powerpc/tlbflush.h linux-2.6.22-590/include/asm-powerpc/tlbflush.h
--- linux-2.6.22-570/include/asm-powerpc/tlbflush.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-powerpc/tlbflush.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-powerpc/tlbflush.h 2008-03-20 13:28:02.000000000 -0400
@@ -155,6 +155,11 @@
{
}
/*
diff -Nurb linux-2.6.22-570/include/asm-powerpc/unistd.h linux-2.6.22-590/include/asm-powerpc/unistd.h
---- linux-2.6.22-570/include/asm-powerpc/unistd.h 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/include/asm-powerpc/unistd.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/asm-powerpc/unistd.h 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/include/asm-powerpc/unistd.h 2008-03-20 13:28:02.000000000 -0400
@@ -331,10 +331,11 @@
#define __NR_timerfd 306
#define __NR_eventfd 307
#define NR_syscalls __NR_syscalls
diff -Nurb linux-2.6.22-570/include/asm-ppc/kgdb.h linux-2.6.22-590/include/asm-ppc/kgdb.h
--- linux-2.6.22-570/include/asm-ppc/kgdb.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-ppc/kgdb.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-ppc/kgdb.h 2008-03-20 13:28:02.000000000 -0400
@@ -1,57 +1,18 @@
-/*
- * kgdb.h: Defines and declarations for serial line source level
#endif /* __KERNEL__ */
diff -Nurb linux-2.6.22-570/include/asm-ppc/machdep.h linux-2.6.22-590/include/asm-ppc/machdep.h
--- linux-2.6.22-570/include/asm-ppc/machdep.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-ppc/machdep.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-ppc/machdep.h 2008-03-20 13:28:02.000000000 -0400
@@ -72,9 +72,7 @@
unsigned long (*find_end_of_memory)(void);
void (*setup_io_mappings)(void);
void (*nvram_write_val)(int addr, unsigned char val);
diff -Nurb linux-2.6.22-570/include/asm-ppc/mv64x60.h linux-2.6.22-590/include/asm-ppc/mv64x60.h
--- linux-2.6.22-570/include/asm-ppc/mv64x60.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-ppc/mv64x60.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-ppc/mv64x60.h 2008-03-20 13:28:02.000000000 -0400
@@ -348,6 +348,8 @@
void mv64x60_progress_init(u32 base);
gt64260_32bit_windows[MV64x60_32BIT_WIN_COUNT];
diff -Nurb linux-2.6.22-570/include/asm-ppc/mv64x60_defs.h linux-2.6.22-590/include/asm-ppc/mv64x60_defs.h
--- linux-2.6.22-570/include/asm-ppc/mv64x60_defs.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-ppc/mv64x60_defs.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-ppc/mv64x60_defs.h 2008-03-20 13:28:02.000000000 -0400
@@ -57,7 +57,8 @@
#define MV64x60_IRQ_I2C 37
#define MV64x60_IRQ_BRG 39
#define MV64x60_IRQ_P0_GPP_8_15 57
diff -Nurb linux-2.6.22-570/include/asm-s390/page.h linux-2.6.22-590/include/asm-s390/page.h
--- linux-2.6.22-570/include/asm-s390/page.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-s390/page.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-s390/page.h 2008-03-20 13:28:02.000000000 -0400
@@ -64,7 +64,8 @@
#define clear_user_page(page, vaddr, pg) clear_page(page)
#define copy_user_page(to, from, vaddr, pg) copy_page(to, from)
/*
diff -Nurb linux-2.6.22-570/include/asm-sh/kgdb.h linux-2.6.22-590/include/asm-sh/kgdb.h
--- linux-2.6.22-570/include/asm-sh/kgdb.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-sh/kgdb.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-sh/kgdb.h 2008-03-20 13:28:02.000000000 -0400
@@ -2,78 +2,41 @@
* May be copied or modified under the terms of the GNU General Public
* License. See linux/COPYING for more information.
#endif
diff -Nurb linux-2.6.22-570/include/asm-sh/system.h linux-2.6.22-590/include/asm-sh/system.h
--- linux-2.6.22-570/include/asm-sh/system.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-sh/system.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-sh/system.h 2008-03-20 13:28:02.000000000 -0400
@@ -264,6 +264,45 @@
#define instruction_size(insn) (2)
#endif
*/
diff -Nurb linux-2.6.22-570/include/asm-um/thread_info.h linux-2.6.22-590/include/asm-um/thread_info.h
--- linux-2.6.22-570/include/asm-um/thread_info.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-um/thread_info.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-um/thread_info.h 2008-03-20 13:28:02.000000000 -0400
@@ -52,10 +52,21 @@
return ti;
}
diff -Nurb linux-2.6.22-570/include/asm-x86_64/kdebug.h linux-2.6.22-590/include/asm-x86_64/kdebug.h
--- linux-2.6.22-570/include/asm-x86_64/kdebug.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-x86_64/kdebug.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-x86_64/kdebug.h 2008-03-20 13:28:02.000000000 -0400
@@ -23,6 +23,7 @@
DIE_CALL,
DIE_NMI_IPI,
extern void printk_address(unsigned long address);
diff -Nurb linux-2.6.22-570/include/asm-x86_64/kgdb.h linux-2.6.22-590/include/asm-x86_64/kgdb.h
--- linux-2.6.22-570/include/asm-x86_64/kgdb.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/include/asm-x86_64/kgdb.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-x86_64/kgdb.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,52 @@
+#ifdef __KERNEL__
+#ifndef _ASM_KGDB_H_
+#endif /* __KERNEL__ */
diff -Nurb linux-2.6.22-570/include/asm-x86_64/page.h linux-2.6.22-590/include/asm-x86_64/page.h
--- linux-2.6.22-570/include/asm-x86_64/page.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-x86_64/page.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-x86_64/page.h 2008-03-20 13:28:02.000000000 -0400
@@ -48,7 +48,8 @@
#define clear_user_page(page, vaddr, pg) clear_page(page)
#define copy_user_page(to, from, vaddr, pg) copy_page(to, from)
* These are used to make use of C type-checking..
diff -Nurb linux-2.6.22-570/include/asm-x86_64/proto.h linux-2.6.22-590/include/asm-x86_64/proto.h
--- linux-2.6.22-570/include/asm-x86_64/proto.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-x86_64/proto.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-x86_64/proto.h 2008-03-20 13:28:02.000000000 -0400
@@ -75,8 +75,6 @@
extern void early_quirks(void);
extern void check_efer(void);
extern unsigned long table_start, table_end;
diff -Nurb linux-2.6.22-570/include/asm-x86_64/system.h linux-2.6.22-590/include/asm-x86_64/system.h
--- linux-2.6.22-570/include/asm-x86_64/system.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-x86_64/system.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-x86_64/system.h 2008-03-20 13:28:02.000000000 -0400
@@ -22,7 +22,9 @@
/* Save restore flags to clear handle leaking NT */
: [next] "S" (next), [prev] "D" (prev), \
[threadrsp] "i" (offsetof(struct task_struct, thread.rsp)), \
diff -Nurb linux-2.6.22-570/include/asm-x86_64/unistd.h linux-2.6.22-590/include/asm-x86_64/unistd.h
---- linux-2.6.22-570/include/asm-x86_64/unistd.h 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/include/asm-x86_64/unistd.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/asm-x86_64/unistd.h 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/include/asm-x86_64/unistd.h 2008-03-20 13:28:02.000000000 -0400
@@ -630,6 +630,8 @@
__SYSCALL(__NR_timerfd, sys_timerfd)
#define __NR_eventfd 284
#define __ARCH_WANT_OLD_READDIR
diff -Nurb linux-2.6.22-570/include/asm-x86_64/unwind.h linux-2.6.22-590/include/asm-x86_64/unwind.h
--- linux-2.6.22-570/include/asm-x86_64/unwind.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/asm-x86_64/unwind.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/asm-x86_64/unwind.h 2008-03-20 13:28:02.000000000 -0400
@@ -1,6 +1,100 @@
#ifndef _ASM_X86_64_UNWIND_H
#define _ASM_X86_64_UNWIND_H
+
#endif /* _ASM_X86_64_UNWIND_H */
diff -Nurb linux-2.6.22-570/include/linux/Kbuild linux-2.6.22-590/include/linux/Kbuild
---- linux-2.6.22-570/include/linux/Kbuild 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/include/linux/Kbuild 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/linux/Kbuild 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/include/linux/Kbuild 2008-03-20 13:28:02.000000000 -0400
@@ -91,7 +91,6 @@
header-y += in_route.h
header-y += ioctl.h
header-y += irda.h
diff -Nurb linux-2.6.22-570/include/linux/acpi.h linux-2.6.22-590/include/linux/acpi.h
--- linux-2.6.22-570/include/linux/acpi.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/acpi.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/acpi.h 2008-03-20 13:28:02.000000000 -0400
@@ -206,11 +206,8 @@
{
return max_cstate;
static inline void acpi_set_cstate_limit(unsigned int new_limit) { return; }
diff -Nurb linux-2.6.22-570/include/linux/async_tx.h linux-2.6.22-590/include/linux/async_tx.h
--- linux-2.6.22-570/include/linux/async_tx.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/include/linux/async_tx.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/async_tx.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,156 @@
+/*
+ * Copyright © 2006, Intel Corporation.
+#endif /* _ASYNC_TX_H_ */
diff -Nurb linux-2.6.22-570/include/linux/configfs.h linux-2.6.22-590/include/linux/configfs.h
--- linux-2.6.22-570/include/linux/configfs.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/configfs.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/configfs.h 2008-03-20 13:28:02.000000000 -0400
@@ -75,7 +75,6 @@
extern void config_item_init_type_name(struct config_item *item,
const char *name,
#endif /* _CONFIGFS_H_ */
diff -Nurb linux-2.6.22-570/include/linux/container.h linux-2.6.22-590/include/linux/container.h
--- linux-2.6.22-570/include/linux/container.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/include/linux/container.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/container.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,295 @@
+#ifndef _LINUX_CONTAINER_H
+#define _LINUX_CONTAINER_H
+#endif /* _LINUX_CONTAINER_H */
diff -Nurb linux-2.6.22-570/include/linux/container_subsys.h linux-2.6.22-590/include/linux/container_subsys.h
--- linux-2.6.22-570/include/linux/container_subsys.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/include/linux/container_subsys.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/container_subsys.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,32 @@
+/* Add subsystem definitions of the form SUBSYS(<name>) in this
+ * file. Surround each one by a line of comment markers so that
+/* */
diff -Nurb linux-2.6.22-570/include/linux/cpu_acct.h linux-2.6.22-590/include/linux/cpu_acct.h
--- linux-2.6.22-570/include/linux/cpu_acct.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/include/linux/cpu_acct.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/cpu_acct.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,14 @@
+
+#ifndef _LINUX_CPU_ACCT_H
+#endif
diff -Nurb linux-2.6.22-570/include/linux/cpuidle.h linux-2.6.22-590/include/linux/cpuidle.h
--- linux-2.6.22-570/include/linux/cpuidle.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/include/linux/cpuidle.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/cpuidle.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,189 @@
+/*
+ * cpuidle.h - a generic framework for CPU idle power management
+#endif /* _LINUX_CPUIDLE_H */
diff -Nurb linux-2.6.22-570/include/linux/cpuset.h linux-2.6.22-590/include/linux/cpuset.h
--- linux-2.6.22-570/include/linux/cpuset.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/cpuset.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/cpuset.h 2008-03-20 13:28:02.000000000 -0400
@@ -11,6 +11,7 @@
#include <linux/sched.h>
#include <linux/cpumask.h>
#endif /* _LINUX_CPUSET_H */
diff -Nurb linux-2.6.22-570/include/linux/device.h linux-2.6.22-590/include/linux/device.h
--- linux-2.6.22-570/include/linux/device.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/device.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/device.h 2008-03-20 13:28:02.000000000 -0400
@@ -200,6 +200,8 @@
int (*suspend)(struct device *, pm_message_t state);
* its driver.
diff -Nurb linux-2.6.22-570/include/linux/dmaengine.h linux-2.6.22-590/include/linux/dmaengine.h
--- linux-2.6.22-570/include/linux/dmaengine.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/dmaengine.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/dmaengine.h 2008-03-20 13:28:02.000000000 -0400
@@ -21,29 +21,40 @@
#ifndef DMAENGINE_H
#define DMAENGINE_H
#endif /* DMAENGINE_H */
diff -Nurb linux-2.6.22-570/include/linux/etherdevice.h linux-2.6.22-590/include/linux/etherdevice.h
--- linux-2.6.22-570/include/linux/etherdevice.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/etherdevice.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/etherdevice.h 2008-03-20 13:28:02.000000000 -0400
@@ -40,12 +40,6 @@
struct hh_cache *hh);
* is_zero_ether_addr - Determine if give Ethernet address is all zeros.
diff -Nurb linux-2.6.22-570/include/linux/freezer.h linux-2.6.22-590/include/linux/freezer.h
--- linux-2.6.22-570/include/linux/freezer.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/freezer.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/freezer.h 2008-03-20 13:28:02.000000000 -0400
@@ -115,6 +115,14 @@
return !!(p->flags & PF_FREEZER_SKIP);
}
+static inline void set_freezable(void) {}
#endif
diff -Nurb linux-2.6.22-570/include/linux/fs.h linux-2.6.22-590/include/linux/fs.h
---- linux-2.6.22-570/include/linux/fs.h 2008-03-18 15:57:43.000000000 -0400
-+++ linux-2.6.22-590/include/linux/fs.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/linux/fs.h 2008-03-20 13:25:51.000000000 -0400
++++ linux-2.6.22-590/include/linux/fs.h 2008-03-20 13:28:02.000000000 -0400
@@ -283,6 +283,17 @@
#define SYNC_FILE_RANGE_WRITE 2
#define SYNC_FILE_RANGE_WAIT_AFTER 4
#endif /* _LINUX_FS_H */
diff -Nurb linux-2.6.22-570/include/linux/fs_stack.h linux-2.6.22-590/include/linux/fs_stack.h
--- linux-2.6.22-570/include/linux/fs_stack.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/fs_stack.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/fs_stack.h 2008-03-20 13:28:02.000000000 -0400
@@ -1,7 +1,19 @@
+/*
+ * Copyright (c) 2006-2007 Erez Zadok
static inline void fsstack_copy_attr_atime(struct inode *dest,
diff -Nurb linux-2.6.22-570/include/linux/gfp.h linux-2.6.22-590/include/linux/gfp.h
--- linux-2.6.22-570/include/linux/gfp.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/gfp.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/gfp.h 2008-03-20 13:28:02.000000000 -0400
@@ -30,6 +30,9 @@
* cannot handle allocation failures.
*
* it. The alloc_page*() variants return 'struct page *' and as such
diff -Nurb linux-2.6.22-570/include/linux/highmem.h linux-2.6.22-590/include/linux/highmem.h
--- linux-2.6.22-570/include/linux/highmem.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/highmem.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/highmem.h 2008-03-20 13:28:02.000000000 -0400
@@ -73,10 +73,27 @@
}
void *kaddr = kmap_atomic(page, KM_USER0);
diff -Nurb linux-2.6.22-570/include/linux/hugetlb.h linux-2.6.22-590/include/linux/hugetlb.h
--- linux-2.6.22-570/include/linux/hugetlb.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/hugetlb.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/hugetlb.h 2008-03-20 13:28:02.000000000 -0400
@@ -15,6 +15,7 @@
}
diff -Nurb linux-2.6.22-570/include/linux/idr.h linux-2.6.22-590/include/linux/idr.h
--- linux-2.6.22-570/include/linux/idr.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/idr.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/idr.h 2008-03-20 13:28:02.000000000 -0400
@@ -83,4 +83,33 @@
void idr_destroy(struct idr *idp);
void idr_init(struct idr *idp);
#endif /* __IDR_H__ */
diff -Nurb linux-2.6.22-570/include/linux/if_bridge.h linux-2.6.22-590/include/linux/if_bridge.h
--- linux-2.6.22-570/include/linux/if_bridge.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/if_bridge.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/if_bridge.h 2008-03-20 13:28:02.000000000 -0400
@@ -104,7 +104,7 @@
#include <linux/netdevice.h>
extern int (*br_should_route_hook)(struct sk_buff **pskb);
diff -Nurb linux-2.6.22-570/include/linux/if_link.h linux-2.6.22-590/include/linux/if_link.h
--- linux-2.6.22-570/include/linux/if_link.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/if_link.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/if_link.h 2008-03-20 13:28:02.000000000 -0400
@@ -76,6 +76,8 @@
#define IFLA_WEIGHT IFLA_WEIGHT
IFLA_OPERSTATE,
#endif /* _LINUX_IF_LINK_H */
diff -Nurb linux-2.6.22-570/include/linux/if_pppox.h linux-2.6.22-590/include/linux/if_pppox.h
--- linux-2.6.22-570/include/linux/if_pppox.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/if_pppox.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/if_pppox.h 2008-03-20 13:28:02.000000000 -0400
@@ -160,7 +160,7 @@
struct module;
struct module *owner;
diff -Nurb linux-2.6.22-570/include/linux/if_tun.h linux-2.6.22-590/include/linux/if_tun.h
--- linux-2.6.22-570/include/linux/if_tun.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/if_tun.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/if_tun.h 2008-03-20 13:28:02.000000000 -0400
@@ -36,6 +36,7 @@
unsigned long flags;
int attached;
#define IFF_TUN 0x0001
diff -Nurb linux-2.6.22-570/include/linux/if_vlan.h linux-2.6.22-590/include/linux/if_vlan.h
--- linux-2.6.22-570/include/linux/if_vlan.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/if_vlan.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/if_vlan.h 2008-03-20 13:28:02.000000000 -0400
@@ -62,7 +62,7 @@
#define VLAN_VID_MASK 0xfff
VLAN_NAME_TYPE_RAW_PLUS_VID, /* name will look like: eth1.0005 */
diff -Nurb linux-2.6.22-570/include/linux/inetdevice.h linux-2.6.22-590/include/linux/inetdevice.h
--- linux-2.6.22-570/include/linux/inetdevice.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/inetdevice.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/inetdevice.h 2008-03-20 13:28:02.000000000 -0400
@@ -17,8 +17,6 @@
DECLARE_BITMAP(state, __NET_IPV4_CONF_MAX - 1);
};
static __inline__ int inet_ifa_match(__be32 addr, struct in_ifaddr *ifa)
{
diff -Nurb linux-2.6.22-570/include/linux/init_task.h linux-2.6.22-590/include/linux/init_task.h
---- linux-2.6.22-570/include/linux/init_task.h 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/include/linux/init_task.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/linux/init_task.h 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/include/linux/init_task.h 2008-03-20 13:28:02.000000000 -0400
@@ -8,6 +8,8 @@
#include <linux/lockdep.h>
#include <linux/ipc.h>
#define INIT_SIGHAND(sighand) { \
diff -Nurb linux-2.6.22-570/include/linux/io.h linux-2.6.22-590/include/linux/io.h
--- linux-2.6.22-570/include/linux/io.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/io.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/io.h 2008-03-20 13:28:02.000000000 -0400
@@ -63,32 +63,7 @@
void __iomem * devm_ioremap_nocache(struct device *dev, unsigned long offset,
unsigned long size);
-#endif /* _LINUX_IP_MP_ALG_H */
-
diff -Nurb linux-2.6.22-570/include/linux/ipc.h linux-2.6.22-590/include/linux/ipc.h
---- linux-2.6.22-570/include/linux/ipc.h 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/include/linux/ipc.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/linux/ipc.h 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/include/linux/ipc.h 2008-03-20 13:28:02.000000000 -0400
@@ -93,6 +93,7 @@
#ifdef CONFIG_SYSVIPC
-
diff -Nurb linux-2.6.22-570/include/linux/ipv6.h linux-2.6.22-590/include/linux/ipv6.h
--- linux-2.6.22-570/include/linux/ipv6.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/ipv6.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/ipv6.h 2008-03-20 13:28:02.000000000 -0400
@@ -247,7 +247,7 @@
__u16 lastopt;
__u32 nhoff;
diff -Nurb linux-2.6.22-570/include/linux/kgdb.h linux-2.6.22-590/include/linux/kgdb.h
--- linux-2.6.22-570/include/linux/kgdb.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/include/linux/kgdb.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/kgdb.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,291 @@
+/*
+ * include/linux/kgdb.h
+#endif /* __KERNEL__ */
diff -Nurb linux-2.6.22-570/include/linux/kmod.h linux-2.6.22-590/include/linux/kmod.h
--- linux-2.6.22-570/include/linux/kmod.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/kmod.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/kmod.h 2008-03-20 13:28:02.000000000 -0400
@@ -36,13 +36,57 @@
#define try_then_request_module(x, mod...) ((x) ?: (request_module(mod), (x)))
extern void usermodehelper_init(void);
diff -Nurb linux-2.6.22-570/include/linux/kobject.h linux-2.6.22-590/include/linux/kobject.h
--- linux-2.6.22-570/include/linux/kobject.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/kobject.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/kobject.h 2008-03-20 13:28:02.000000000 -0400
@@ -55,7 +55,7 @@
struct kobject * parent;
struct kset * kset;
extern int __must_check kobject_register(struct kobject *);
diff -Nurb linux-2.6.22-570/include/linux/ktime.h linux-2.6.22-590/include/linux/ktime.h
--- linux-2.6.22-570/include/linux/ktime.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/ktime.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/ktime.h 2008-03-20 13:28:02.000000000 -0400
@@ -279,6 +279,16 @@
return (s64) tv.tv_sec * USEC_PER_SEC + tv.tv_usec;
}
* The resolution of the clocks. The resolution value is returned in
* the clock_getres() system call to give application programmers an
diff -Nurb linux-2.6.22-570/include/linux/magic.h linux-2.6.22-590/include/linux/magic.h
---- linux-2.6.22-570/include/linux/magic.h 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/include/linux/magic.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/linux/magic.h 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/include/linux/magic.h 2008-03-20 13:28:02.000000000 -0400
@@ -36,8 +36,12 @@
#define REISERFS_SUPER_MAGIC_STRING "ReIsErFs"
#define REISER2FS_SUPER_MAGIC_STRING "ReIsEr2Fs"
#endif /* __LINUX_MAGIC_H__ */
diff -Nurb linux-2.6.22-570/include/linux/mempolicy.h linux-2.6.22-590/include/linux/mempolicy.h
--- linux-2.6.22-570/include/linux/mempolicy.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/mempolicy.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/mempolicy.h 2008-03-20 13:28:02.000000000 -0400
@@ -148,18 +148,10 @@
const nodemask_t *new);
extern void mpol_rebind_mm(struct mm_struct *mm, nodemask_t *new);
static inline int do_migrate_pages(struct mm_struct *mm,
diff -Nurb linux-2.6.22-570/include/linux/mm.h linux-2.6.22-590/include/linux/mm.h
--- linux-2.6.22-570/include/linux/mm.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/mm.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/mm.h 2008-03-20 13:28:02.000000000 -0400
@@ -42,6 +42,8 @@
#define nth_page(page,n) pfn_to_page(page_to_pfn((page)) + (n))
diff -Nurb linux-2.6.22-570/include/linux/mmc/card.h linux-2.6.22-590/include/linux/mmc/card.h
--- linux-2.6.22-570/include/linux/mmc/card.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/mmc/card.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/mmc/card.h 2008-03-20 13:28:02.000000000 -0400
@@ -72,6 +72,7 @@
#define MMC_STATE_READONLY (1<<1) /* card is read-only */
#define MMC_STATE_HIGHSPEED (1<<2) /* card is in high speed mode */
#define mmc_card_id(c) ((c)->dev.bus_id)
diff -Nurb linux-2.6.22-570/include/linux/mmc/mmc.h linux-2.6.22-590/include/linux/mmc/mmc.h
--- linux-2.6.22-570/include/linux/mmc/mmc.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/mmc/mmc.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/mmc/mmc.h 2008-03-20 13:28:02.000000000 -0400
@@ -253,5 +253,13 @@
#define MMC_SWITCH_MODE_CLEAR_BITS 0x02 /* Clear bits which are 1 in value */
#define MMC_SWITCH_MODE_WRITE_BYTE 0x03 /* Set target to value */
diff -Nurb linux-2.6.22-570/include/linux/mmzone.h linux-2.6.22-590/include/linux/mmzone.h
--- linux-2.6.22-570/include/linux/mmzone.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/mmzone.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/mmzone.h 2008-03-20 13:28:02.000000000 -0400
@@ -13,6 +13,7 @@
#include <linux/init.h>
#include <linux/seqlock.h>
#ifdef CONFIG_SPARSEMEM_EXTREME
diff -Nurb linux-2.6.22-570/include/linux/mnt_namespace.h linux-2.6.22-590/include/linux/mnt_namespace.h
--- linux-2.6.22-570/include/linux/mnt_namespace.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/mnt_namespace.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/mnt_namespace.h 2008-03-20 13:28:02.000000000 -0400
@@ -14,7 +14,7 @@
int event;
};
diff -Nurb linux-2.6.22-570/include/linux/module.h linux-2.6.22-590/include/linux/module.h
--- linux-2.6.22-570/include/linux/module.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/module.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/module.h 2008-03-20 13:28:02.000000000 -0400
@@ -227,8 +227,17 @@
MODULE_STATE_LIVE,
MODULE_STATE_COMING,
struct module_param_attrs *param_attrs;
diff -Nurb linux-2.6.22-570/include/linux/namei.h linux-2.6.22-590/include/linux/namei.h
--- linux-2.6.22-570/include/linux/namei.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/namei.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/namei.h 2008-03-20 13:28:02.000000000 -0400
@@ -3,6 +3,7 @@
#include <linux/dcache.h>
+
#endif /* _LINUX_NAMEI_H */
diff -Nurb linux-2.6.22-570/include/linux/net.h linux-2.6.22-590/include/linux/net.h
---- linux-2.6.22-570/include/linux/net.h 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/include/linux/net.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/linux/net.h 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/include/linux/net.h 2008-03-20 13:28:02.000000000 -0400
@@ -23,6 +23,7 @@
struct poll_table_struct;
};
diff -Nurb linux-2.6.22-570/include/linux/netdevice.h linux-2.6.22-590/include/linux/netdevice.h
---- linux-2.6.22-570/include/linux/netdevice.h 2008-03-18 15:57:36.000000000 -0400
-+++ linux-2.6.22-590/include/linux/netdevice.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/linux/netdevice.h 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/include/linux/netdevice.h 2008-03-20 13:28:02.000000000 -0400
@@ -39,6 +39,7 @@
#include <linux/percpu.h>
#include <linux/dmaengine.h>
extern int weight_p;
diff -Nurb linux-2.6.22-570/include/linux/netfilter/x_tables.h linux-2.6.22-590/include/linux/netfilter/x_tables.h
--- linux-2.6.22-570/include/linux/netfilter/x_tables.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/netfilter/x_tables.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/netfilter/x_tables.h 2008-03-20 13:28:02.000000000 -0400
@@ -289,7 +289,7 @@
unsigned int size, const char *table, unsigned int hook,
unsigned short proto, int inv_proto);
extern int xt_proto_init(int af);
diff -Nurb linux-2.6.22-570/include/linux/netfilter.h linux-2.6.22-590/include/linux/netfilter.h
--- linux-2.6.22-570/include/linux/netfilter.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/netfilter.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/netfilter.h 2008-03-20 13:28:02.000000000 -0400
@@ -362,11 +362,6 @@
#endif
}
#define NF_HOOK_COND(pf, hook, skb, indev, outdev, okfn, cond) (okfn)(skb)
diff -Nurb linux-2.6.22-570/include/linux/netfilter_ipv4/ip_tables.h linux-2.6.22-590/include/linux/netfilter_ipv4/ip_tables.h
--- linux-2.6.22-570/include/linux/netfilter_ipv4/ip_tables.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/netfilter_ipv4/ip_tables.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/netfilter_ipv4/ip_tables.h 2008-03-20 13:28:02.000000000 -0400
@@ -292,7 +292,7 @@
#include <linux/init.h>
extern void ipt_init(void) __init;
diff -Nurb linux-2.6.22-570/include/linux/netfilter_ipv4.h linux-2.6.22-590/include/linux/netfilter_ipv4.h
--- linux-2.6.22-570/include/linux/netfilter_ipv4.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/netfilter_ipv4.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/netfilter_ipv4.h 2008-03-20 13:28:02.000000000 -0400
@@ -75,7 +75,7 @@
#define SO_ORIGINAL_DST 80
extern __sum16 nf_ip_checksum(struct sk_buff *skb, unsigned int hook,
unsigned int dataoff, u_int8_t protocol);
diff -Nurb linux-2.6.22-570/include/linux/netlink.h linux-2.6.22-590/include/linux/netlink.h
---- linux-2.6.22-570/include/linux/netlink.h 2008-03-18 15:57:36.000000000 -0400
-+++ linux-2.6.22-590/include/linux/netlink.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/linux/netlink.h 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/include/linux/netlink.h 2008-03-20 13:28:02.000000000 -0400
@@ -21,12 +21,14 @@
#define NETLINK_DNRTMSG 14 /* DECnet routing messages */
#define NETLINK_KOBJECT_UEVENT 15 /* Kernel messages to userspace */
};
diff -Nurb linux-2.6.22-570/include/linux/netpoll.h linux-2.6.22-590/include/linux/netpoll.h
--- linux-2.6.22-570/include/linux/netpoll.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/netpoll.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/netpoll.h 2008-03-20 13:28:02.000000000 -0400
@@ -16,7 +16,7 @@
struct net_device *dev;
char dev_name[IFNAMSIZ];
u16 local_port, remote_port;
diff -Nurb linux-2.6.22-570/include/linux/nfs4.h linux-2.6.22-590/include/linux/nfs4.h
--- linux-2.6.22-570/include/linux/nfs4.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/nfs4.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/nfs4.h 2008-03-20 13:28:02.000000000 -0400
@@ -15,6 +15,7 @@
#include <linux/types.h>
#define NFS4_FHSIZE 128
diff -Nurb linux-2.6.22-570/include/linux/nfs4_mount.h linux-2.6.22-590/include/linux/nfs4_mount.h
--- linux-2.6.22-570/include/linux/nfs4_mount.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/nfs4_mount.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/nfs4_mount.h 2008-03-20 13:28:02.000000000 -0400
@@ -65,6 +65,7 @@
#define NFS4_MOUNT_NOCTO 0x0010 /* 1 */
#define NFS4_MOUNT_NOAC 0x0020 /* 1 */
#endif
diff -Nurb linux-2.6.22-570/include/linux/nfs_fs.h linux-2.6.22-590/include/linux/nfs_fs.h
--- linux-2.6.22-570/include/linux/nfs_fs.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/nfs_fs.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/nfs_fs.h 2008-03-20 13:28:02.000000000 -0400
@@ -30,7 +30,9 @@
#ifdef __KERNEL__
/* Open contexts for shared mmap writes */
diff -Nurb linux-2.6.22-570/include/linux/nfs_fs_sb.h linux-2.6.22-590/include/linux/nfs_fs_sb.h
--- linux-2.6.22-570/include/linux/nfs_fs_sb.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/nfs_fs_sb.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/nfs_fs_sb.h 2008-03-20 13:28:02.000000000 -0400
@@ -16,7 +16,6 @@
#define NFS_CS_INITING 1 /* busy initialising */
int cl_nfsversion; /* NFS protocol version */
#define NFS_CS_IDMAP 2 /* - idmap started */
#define NFS_CS_RENEWD 3 /* - renewd started */
diff -Nurb linux-2.6.22-570/include/linux/nfs_mount.h linux-2.6.22-590/include/linux/nfs_mount.h
---- linux-2.6.22-570/include/linux/nfs_mount.h 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/include/linux/nfs_mount.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/linux/nfs_mount.h 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/include/linux/nfs_mount.h 2008-03-20 13:28:02.000000000 -0400
@@ -62,6 +62,7 @@
#define NFS_MOUNT_STRICTLOCK 0x1000 /* reserved for NFSv4 */
#define NFS_MOUNT_SECFLAVOUR 0x2000 /* 5 */
diff -Nurb linux-2.6.22-570/include/linux/nfs_page.h linux-2.6.22-590/include/linux/nfs_page.h
--- linux-2.6.22-570/include/linux/nfs_page.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/nfs_page.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/nfs_page.h 2008-03-20 13:28:02.000000000 -0400
@@ -16,12 +16,13 @@
#include <linux/sunrpc/auth.h>
#include <linux/nfs_xdr.h>
static inline struct nfs_page *
diff -Nurb linux-2.6.22-570/include/linux/nfs_xdr.h linux-2.6.22-590/include/linux/nfs_xdr.h
--- linux-2.6.22-570/include/linux/nfs_xdr.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/nfs_xdr.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/nfs_xdr.h 2008-03-20 13:28:02.000000000 -0400
@@ -144,6 +144,7 @@
nfs4_stateid delegation;
__u32 do_recall;
/*
diff -Nurb linux-2.6.22-570/include/linux/nsproxy.h linux-2.6.22-590/include/linux/nsproxy.h
---- linux-2.6.22-570/include/linux/nsproxy.h 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/include/linux/nsproxy.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/linux/nsproxy.h 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/include/linux/nsproxy.h 2008-03-20 13:28:02.000000000 -0400
@@ -10,6 +10,12 @@
struct ipc_namespace;
struct pid_namespace;
void free_nsproxy(struct nsproxy *ns);
diff -Nurb linux-2.6.22-570/include/linux/pageblock-flags.h linux-2.6.22-590/include/linux/pageblock-flags.h
--- linux-2.6.22-570/include/linux/pageblock-flags.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/include/linux/pageblock-flags.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/pageblock-flags.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,52 @@
+/*
+ * Macros for manipulating and testing flags related to a
+
+#endif /* PAGEBLOCK_FLAGS_H */
diff -Nurb linux-2.6.22-570/include/linux/pci_ids.h linux-2.6.22-590/include/linux/pci_ids.h
---- linux-2.6.22-570/include/linux/pci_ids.h 2008-03-18 15:57:36.000000000 -0400
-+++ linux-2.6.22-590/include/linux/pci_ids.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/linux/pci_ids.h 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/include/linux/pci_ids.h 2008-03-20 13:28:02.000000000 -0400
@@ -2003,6 +2003,7 @@
#define PCI_VENDOR_ID_ENE 0x1524
#define PCI_DEVICE_ID_ENE_1410 0x1410
diff -Nurb linux-2.6.22-570/include/linux/pid_namespace.h linux-2.6.22-590/include/linux/pid_namespace.h
--- linux-2.6.22-570/include/linux/pid_namespace.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/pid_namespace.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/pid_namespace.h 2008-03-20 13:28:02.000000000 -0400
@@ -29,7 +29,7 @@
kref_get(&ns->kref);
}
static inline void put_pid_ns(struct pid_namespace *ns)
diff -Nurb linux-2.6.22-570/include/linux/pnp.h linux-2.6.22-590/include/linux/pnp.h
--- linux-2.6.22-570/include/linux/pnp.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/pnp.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/pnp.h 2008-03-20 13:28:02.000000000 -0400
@@ -335,6 +335,10 @@
int (*set)(struct pnp_dev *dev, struct pnp_resource_table *res);
int (*disable)(struct pnp_dev *dev);
struct device dev; /* link to driver model */
diff -Nurb linux-2.6.22-570/include/linux/prctl.h linux-2.6.22-590/include/linux/prctl.h
--- linux-2.6.22-570/include/linux/prctl.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/prctl.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/prctl.h 2008-03-20 13:28:02.000000000 -0400
@@ -59,4 +59,8 @@
# define PR_ENDIAN_LITTLE 1 /* True little endian mode */
# define PR_ENDIAN_PPC_LITTLE 2 /* "PowerPC" pseudo little endian */
+
#endif /* _LINUX_PRCTL_H */
diff -Nurb linux-2.6.22-570/include/linux/proc_fs.h linux-2.6.22-590/include/linux/proc_fs.h
---- linux-2.6.22-570/include/linux/proc_fs.h 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/include/linux/proc_fs.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/linux/proc_fs.h 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/include/linux/proc_fs.h 2008-03-20 13:28:02.000000000 -0400
@@ -86,8 +86,6 @@
extern struct proc_dir_entry proc_root;
struct proc_dir_entry *parent,const char *dest) {return NULL;}
diff -Nurb linux-2.6.22-570/include/linux/raid/raid5.h linux-2.6.22-590/include/linux/raid/raid5.h
--- linux-2.6.22-570/include/linux/raid/raid5.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/raid/raid5.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/raid/raid5.h 2008-03-20 13:28:02.000000000 -0400
@@ -116,13 +116,46 @@
* attach a request to an active stripe (add_stripe_bh())
* lockdev attach-buffer unlockdev
* To improve write throughput, we need to delay the handling of some
diff -Nurb linux-2.6.22-570/include/linux/raid/xor.h linux-2.6.22-590/include/linux/raid/xor.h
--- linux-2.6.22-570/include/linux/raid/xor.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/raid/xor.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/raid/xor.h 2008-03-20 13:28:02.000000000 -0400
@@ -3,9 +3,10 @@
#include <linux/raid/md.h>
struct xor_block_template *next;
diff -Nurb linux-2.6.22-570/include/linux/reboot.h linux-2.6.22-590/include/linux/reboot.h
--- linux-2.6.22-570/include/linux/reboot.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/reboot.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/reboot.h 2008-03-20 13:28:02.000000000 -0400
@@ -67,6 +67,11 @@
void ctrl_alt_del(void);
*/
diff -Nurb linux-2.6.22-570/include/linux/revoked_fs_i.h linux-2.6.22-590/include/linux/revoked_fs_i.h
--- linux-2.6.22-570/include/linux/revoked_fs_i.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/include/linux/revoked_fs_i.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/revoked_fs_i.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,18 @@
+#ifndef _LINUX_REVOKED_FS_I_H
+#define _LINUX_REVOKED_FS_I_H
+#endif
diff -Nurb linux-2.6.22-570/include/linux/rtnetlink.h linux-2.6.22-590/include/linux/rtnetlink.h
--- linux-2.6.22-570/include/linux/rtnetlink.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/rtnetlink.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/rtnetlink.h 2008-03-20 13:28:02.000000000 -0400
@@ -261,7 +261,7 @@
RTA_FLOW,
RTA_CACHEINFO,
({ if (start) \
skb_trim(skb, (unsigned char *) (start) - (skb)->data); \
diff -Nurb linux-2.6.22-570/include/linux/sched.h linux-2.6.22-590/include/linux/sched.h
---- linux-2.6.22-570/include/linux/sched.h 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/include/linux/sched.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/linux/sched.h 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/include/linux/sched.h 2008-03-20 13:28:02.000000000 -0400
@@ -26,7 +26,9 @@
#define CLONE_STOPPED 0x02000000 /* Start in stopped state */
#define CLONE_NEWUTS 0x04000000 /* New utsname group? */
* It must not be nested with write_lock_irq(&tasklist_lock),
diff -Nurb linux-2.6.22-570/include/linux/seccomp.h linux-2.6.22-590/include/linux/seccomp.h
--- linux-2.6.22-570/include/linux/seccomp.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/seccomp.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/seccomp.h 2008-03-20 13:28:02.000000000 -0400
@@ -4,8 +4,6 @@
#ifdef CONFIG_SECCOMP
#endif /* _LINUX_SECCOMP_H */
diff -Nurb linux-2.6.22-570/include/linux/security.h linux-2.6.22-590/include/linux/security.h
--- linux-2.6.22-570/include/linux/security.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/security.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/security.h 2008-03-20 13:28:02.000000000 -0400
@@ -71,6 +71,7 @@
extern int cap_netlink_send(struct sock *sk, struct sk_buff *skb);
extern int cap_netlink_recv(struct sk_buff *skb, int cap);
}
diff -Nurb linux-2.6.22-570/include/linux/serial_8250.h linux-2.6.22-590/include/linux/serial_8250.h
--- linux-2.6.22-570/include/linux/serial_8250.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/serial_8250.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/serial_8250.h 2008-03-20 13:28:02.000000000 -0400
@@ -57,6 +57,7 @@
int serial8250_register_port(struct uart_port *);
diff -Nurb linux-2.6.22-570/include/linux/signal.h linux-2.6.22-590/include/linux/signal.h
--- linux-2.6.22-570/include/linux/signal.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/signal.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/signal.h 2008-03-20 13:28:02.000000000 -0400
@@ -238,12 +238,15 @@
extern int __group_send_sig_info(int, struct siginfo *, struct task_struct *);
extern long do_sigpending(void __user *, unsigned long);
* In POSIX a signal is sent either to a specific thread (Linux task)
* or to the process as a whole (Linux thread group). How the signal
diff -Nurb linux-2.6.22-570/include/linux/skbuff.h linux-2.6.22-590/include/linux/skbuff.h
---- linux-2.6.22-570/include/linux/skbuff.h 2008-03-18 15:57:42.000000000 -0400
-+++ linux-2.6.22-590/include/linux/skbuff.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/linux/skbuff.h 2008-03-20 13:25:49.000000000 -0400
++++ linux-2.6.22-590/include/linux/skbuff.h 2008-03-20 13:28:02.000000000 -0400
@@ -147,8 +147,8 @@
/* We divide dataref into two halves. The higher 16 bits hold references
* @headroom: needed headroom
diff -Nurb linux-2.6.22-570/include/linux/slab.h linux-2.6.22-590/include/linux/slab.h
--- linux-2.6.22-570/include/linux/slab.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/slab.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/slab.h 2008-03-20 13:28:02.000000000 -0400
@@ -26,12 +26,14 @@
#define SLAB_HWCACHE_ALIGN 0x00002000UL /* Align objs on cache lines */
#define SLAB_CACHE_DMA 0x00004000UL /* Use GFP_DMA memory */
* struct kmem_cache related prototypes
*/
diff -Nurb linux-2.6.22-570/include/linux/socket.h linux-2.6.22-590/include/linux/socket.h
---- linux-2.6.22-570/include/linux/socket.h 2008-03-18 15:57:42.000000000 -0400
-+++ linux-2.6.22-590/include/linux/socket.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/linux/socket.h 2008-03-20 13:25:49.000000000 -0400
++++ linux-2.6.22-590/include/linux/socket.h 2008-03-20 13:28:02.000000000 -0400
@@ -24,7 +24,6 @@
#include <linux/types.h> /* pid_t */
#include <linux/compiler.h> /* __user */
extern void socket_seq_show(struct seq_file *seq);
diff -Nurb linux-2.6.22-570/include/linux/string.h linux-2.6.22-590/include/linux/string.h
--- linux-2.6.22-570/include/linux/string.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/string.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/string.h 2008-03-20 13:28:02.000000000 -0400
@@ -105,8 +105,12 @@
#endif
}
#endif
diff -Nurb linux-2.6.22-570/include/linux/sunrpc/auth.h linux-2.6.22-590/include/linux/sunrpc/auth.h
---- linux-2.6.22-570/include/linux/sunrpc/auth.h 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/include/linux/sunrpc/auth.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/linux/sunrpc/auth.h 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/include/linux/sunrpc/auth.h 2008-03-20 13:28:02.000000000 -0400
@@ -16,6 +16,7 @@
#include <linux/sunrpc/xdr.h>
struct rpc_cred * get_rpccred(struct rpc_cred *cred)
diff -Nurb linux-2.6.22-570/include/linux/sunrpc/auth_gss.h linux-2.6.22-590/include/linux/sunrpc/auth_gss.h
--- linux-2.6.22-570/include/linux/sunrpc/auth_gss.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/sunrpc/auth_gss.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/sunrpc/auth_gss.h 2008-03-20 13:28:02.000000000 -0400
@@ -85,11 +85,6 @@
struct gss_upcall_msg *gc_upcall;
};
#endif /* _LINUX_SUNRPC_AUTH_GSS_H */
diff -Nurb linux-2.6.22-570/include/linux/sunrpc/clnt.h linux-2.6.22-590/include/linux/sunrpc/clnt.h
---- linux-2.6.22-570/include/linux/sunrpc/clnt.h 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/include/linux/sunrpc/clnt.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/linux/sunrpc/clnt.h 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/include/linux/sunrpc/clnt.h 2008-03-20 13:28:02.000000000 -0400
@@ -24,8 +24,10 @@
* The high-level client handle
*/
diff -Nurb linux-2.6.22-570/include/linux/sunrpc/gss_api.h linux-2.6.22-590/include/linux/sunrpc/gss_api.h
--- linux-2.6.22-570/include/linux/sunrpc/gss_api.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/sunrpc/gss_api.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/sunrpc/gss_api.h 2008-03-20 13:28:02.000000000 -0400
@@ -77,7 +77,7 @@
struct module *gm_owner;
struct xdr_netobj gm_oid;
struct pf_desc * gm_pfs;
diff -Nurb linux-2.6.22-570/include/linux/sunrpc/rpc_pipe_fs.h linux-2.6.22-590/include/linux/sunrpc/rpc_pipe_fs.h
--- linux-2.6.22-570/include/linux/sunrpc/rpc_pipe_fs.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/sunrpc/rpc_pipe_fs.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/sunrpc/rpc_pipe_fs.h 2008-03-20 13:28:02.000000000 -0400
@@ -23,9 +23,11 @@
void *private;
struct list_head pipe;
int flags;
diff -Nurb linux-2.6.22-570/include/linux/sunrpc/sched.h linux-2.6.22-590/include/linux/sunrpc/sched.h
--- linux-2.6.22-570/include/linux/sunrpc/sched.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/sunrpc/sched.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/sunrpc/sched.h 2008-03-20 13:28:02.000000000 -0400
@@ -110,11 +110,6 @@
if (!list_empty(head) && \
((task=list_entry((head)->next, struct rpc_task, u.tk_wait.list)),1))
struct rpc_call_ops {
diff -Nurb linux-2.6.22-570/include/linux/syscalls.h linux-2.6.22-590/include/linux/syscalls.h
---- linux-2.6.22-570/include/linux/syscalls.h 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/include/linux/syscalls.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/linux/syscalls.h 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/include/linux/syscalls.h 2008-03-20 13:28:02.000000000 -0400
@@ -110,6 +110,9 @@
asmlinkage long sys_capset(cap_user_header_t header,
const cap_user_data_t data);
+
#endif
diff -Nurb linux-2.6.22-570/include/linux/sysctl.h linux-2.6.22-590/include/linux/sysctl.h
---- linux-2.6.22-570/include/linux/sysctl.h 2008-03-18 15:57:41.000000000 -0400
-+++ linux-2.6.22-590/include/linux/sysctl.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/linux/sysctl.h 2008-03-20 13:25:47.000000000 -0400
++++ linux-2.6.22-590/include/linux/sysctl.h 2008-03-20 13:28:02.000000000 -0400
@@ -31,6 +31,7 @@
struct file;
#endif /* __KERNEL__ */
diff -Nurb linux-2.6.22-570/include/linux/sysdev.h linux-2.6.22-590/include/linux/sysdev.h
--- linux-2.6.22-570/include/linux/sysdev.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/sysdev.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/sysdev.h 2008-03-20 13:28:02.000000000 -0400
@@ -101,8 +101,7 @@
#define _SYSDEV_ATTR(_name,_mode,_show,_store) \
.store = _store, \
}
diff -Nurb linux-2.6.22-570/include/linux/sysfs.h linux-2.6.22-590/include/linux/sysfs.h
---- linux-2.6.22-570/include/linux/sysfs.h 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/include/linux/sysfs.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/linux/sysfs.h 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/include/linux/sysfs.h 2008-03-20 13:28:02.000000000 -0400
@@ -19,9 +19,11 @@
struct kobject;
}
diff -Nurb linux-2.6.22-570/include/linux/taskstats.h linux-2.6.22-590/include/linux/taskstats.h
--- linux-2.6.22-570/include/linux/taskstats.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/taskstats.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/taskstats.h 2008-03-20 13:28:02.000000000 -0400
@@ -31,7 +31,7 @@
*/
diff -Nurb linux-2.6.22-570/include/linux/tick.h linux-2.6.22-590/include/linux/tick.h
--- linux-2.6.22-570/include/linux/tick.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/tick.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/tick.h 2008-03-20 13:28:02.000000000 -0400
@@ -40,6 +40,7 @@
* @idle_sleeps: Number of idle calls, where the sched tick was stopped
* @idle_entrytime: Time when the idle call was entered
#endif
diff -Nurb linux-2.6.22-570/include/linux/time.h linux-2.6.22-590/include/linux/time.h
---- linux-2.6.22-570/include/linux/time.h 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/include/linux/time.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/linux/time.h 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/include/linux/time.h 2008-03-20 13:28:02.000000000 -0400
@@ -116,6 +116,8 @@
extern unsigned int alarm_setitimer(unsigned int seconds);
extern int do_getitimer(int which, struct itimerval *value);
extern int timekeeping_is_continuous(void);
diff -Nurb linux-2.6.22-570/include/linux/union_fs.h linux-2.6.22-590/include/linux/union_fs.h
--- linux-2.6.22-570/include/linux/union_fs.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/include/linux/union_fs.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/union_fs.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,29 @@
+/*
+ * Copyright (c) 2003-2007 Erez Zadok
+
diff -Nurb linux-2.6.22-570/include/linux/unwind.h linux-2.6.22-590/include/linux/unwind.h
--- linux-2.6.22-570/include/linux/unwind.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/unwind.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/unwind.h 2008-03-20 13:28:02.000000000 -0400
@@ -14,6 +14,63 @@
struct module;
#endif /* _LINUX_UNWIND_H */
diff -Nurb linux-2.6.22-570/include/linux/usb.h linux-2.6.22-590/include/linux/usb.h
--- linux-2.6.22-570/include/linux/usb.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/usb.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/usb.h 2008-03-20 13:28:02.000000000 -0400
@@ -146,6 +146,10 @@
* active alternate setting */
unsigned num_altsetting; /* number of alternate settings */
struct usb_interface *interface[USB_MAXINTERFACES];
diff -Nurb linux-2.6.22-570/include/linux/user_namespace.h linux-2.6.22-590/include/linux/user_namespace.h
--- linux-2.6.22-570/include/linux/user_namespace.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/include/linux/user_namespace.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/user_namespace.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,61 @@
+#ifndef _LINUX_USER_NAMESPACE_H
+#define _LINUX_USER_NAMESPACE_H
+#endif /* _LINUX_USER_H */
diff -Nurb linux-2.6.22-570/include/linux/utsname.h linux-2.6.22-590/include/linux/utsname.h
--- linux-2.6.22-570/include/linux/utsname.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/utsname.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/utsname.h 2008-03-20 13:28:02.000000000 -0400
@@ -48,26 +48,14 @@
kref_get(&ns->kref);
}
return ¤t->nsproxy->uts_ns->name;
diff -Nurb linux-2.6.22-570/include/linux/vmalloc.h linux-2.6.22-590/include/linux/vmalloc.h
--- linux-2.6.22-570/include/linux/vmalloc.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/linux/vmalloc.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/linux/vmalloc.h 2008-03-20 13:28:02.000000000 -0400
@@ -65,9 +65,10 @@
unsigned long flags, int node,
gfp_t gfp_mask);
/*
* Internals. Dont't use..
+diff -Nurb linux-2.6.22-570/include/linux/vserver/network.h.orig.orig linux-2.6.22-590/include/linux/vserver/network.h.orig.orig
+--- linux-2.6.22-570/include/linux/vserver/network.h.orig.orig 2008-03-20 13:25:49.000000000 -0400
++++ linux-2.6.22-590/include/linux/vserver/network.h.orig.orig 1969-12-31 19:00:00.000000000 -0500
+@@ -1,143 +0,0 @@
+-#ifndef _VX_NETWORK_H
+-#define _VX_NETWORK_H
+-
+-#include <linux/types.h>
+-
+-
+-#define MAX_N_CONTEXT 65535 /* Arbitrary limit */
+-
+-
+-/* network flags */
+-
+-#define NXF_INFO_PRIVATE 0x00000008
+-
+-#define NXF_SINGLE_IP 0x00000100
+-#define NXF_LBACK_REMAP 0x00000200
+-
+-#define NXF_HIDE_NETIF 0x02000000
+-#define NXF_HIDE_LBACK 0x04000000
+-
+-#define NXF_STATE_SETUP (1ULL << 32)
+-#define NXF_STATE_ADMIN (1ULL << 34)
+-
+-#define NXF_SC_HELPER (1ULL << 36)
+-#define NXF_PERSISTENT (1ULL << 38)
+-
+-#define NXF_ONE_TIME (0x0005ULL << 32)
+-
+-
+-#define NXF_INIT_SET (__nxf_init_set())
+-
+-static inline uint64_t __nxf_init_set(void) {
+- return NXF_STATE_ADMIN
+-#ifdef CONFIG_VSERVER_AUTO_LBACK
+- | NXF_LBACK_REMAP
+- | NXF_HIDE_LBACK
+-#endif
+-#ifdef CONFIG_VSERVER_AUTO_SINGLE
+- | NXF_SINGLE_IP
+-#endif
+- | NXF_HIDE_NETIF;
+-}
+-
+-
+-/* network caps */
+-
+-#define NXC_RAW_ICMP 0x00000100
+-
+-
+-/* address types */
+-
+-#define NXA_TYPE_IPV4 0x0001
+-#define NXA_TYPE_IPV6 0x0002
+-
+-#define NXA_TYPE_NONE 0x0000
+-#define NXA_TYPE_ANY 0x00FF
+-
+-#define NXA_TYPE_ADDR 0x0010
+-#define NXA_TYPE_MASK 0x0020
+-#define NXA_TYPE_RANGE 0x0040
+-
+-#define NXA_MASK_ALL (NXA_TYPE_ADDR | NXA_TYPE_MASK | NXA_TYPE_RANGE)
+-
+-#define NXA_MOD_BCAST 0x0100
+-#define NXA_MOD_LBACK 0x0200
+-
+-#define NXA_LOOPBACK 0x1000
+-
+-#define NXA_MASK_BIND (NXA_MASK_ALL | NXA_MOD_BCAST | NXA_MOD_LBACK)
+-#define NXA_MASK_SHOW (NXA_MASK_ALL | NXA_LOOPBACK)
+-
+-#ifdef __KERNEL__
+-
+-#include <linux/list.h>
+-#include <linux/spinlock.h>
+-#include <linux/rcupdate.h>
+-#include <linux/in.h>
+-#include <linux/in6.h>
+-#include <asm/atomic.h>
+-
+-struct nx_addr_v4 {
+- struct nx_addr_v4 *next;
+- struct in_addr ip[2];
+- struct in_addr mask;
+- uint16_t type;
+- uint16_t flags;
+-};
+-
+-struct nx_addr_v6 {
+- struct nx_addr_v6 *next;
+- struct in6_addr ip;
+- struct in6_addr mask;
+- uint32_t prefix;
+- uint16_t type;
+- uint16_t flags;
+-};
+-
+-struct nx_info {
+- struct hlist_node nx_hlist; /* linked list of nxinfos */
+- nid_t nx_id; /* vnet id */
+- atomic_t nx_usecnt; /* usage count */
+- atomic_t nx_tasks; /* tasks count */
+- int nx_state; /* context state */
+-
+- uint64_t nx_flags; /* network flag word */
+- uint64_t nx_ncaps; /* network capabilities */
+-
+- struct in_addr v4_lback; /* Loopback address */
+- struct in_addr v4_bcast; /* Broadcast address */
+- struct nx_addr_v4 v4; /* First/Single ipv4 address */
+-#ifdef CONFIG_IPV6
+- struct nx_addr_v6 v6; /* First/Single ipv6 address */
+-#endif
+- char nx_name[65]; /* network context name */
+-};
+-
+-
+-/* status flags */
+-
+-#define NXS_HASHED 0x0001
+-#define NXS_SHUTDOWN 0x0100
+-#define NXS_RELEASED 0x8000
+-
+-extern struct nx_info *lookup_nx_info(int);
+-
+-extern int get_nid_list(int, unsigned int *, int);
+-extern int nid_is_hashed(nid_t);
+-
+-extern int nx_migrate_task(struct task_struct *, struct nx_info *);
+-
+-extern long vs_net_change(struct nx_info *, unsigned int);
+-
+-struct sock;
+-
+-
+-#define NX_IPV4(n) ((n)->v4.type != NXA_TYPE_NONE)
+-#ifdef CONFIG_IPV6
+-#define NX_IPV6(n) ((n)->v6.type != NXA_TYPE_NONE)
+-#else
+-#define NX_IPV6(n) (0)
+-#endif
+-
+-#endif /* __KERNEL__ */
+-#endif /* _VX_NETWORK_H */
diff -Nurb linux-2.6.22-570/include/net/addrconf.h linux-2.6.22-590/include/net/addrconf.h
---- linux-2.6.22-570/include/net/addrconf.h 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/include/net/addrconf.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/net/addrconf.h 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/include/net/addrconf.h 2008-03-20 13:28:02.000000000 -0400
@@ -61,7 +61,7 @@
extern int ipv6_chk_addr(struct in6_addr *addr,
struct net_device *dev,
#endif
extern struct inet6_ifaddr * ipv6_get_ifaddr(struct in6_addr *addr,
diff -Nurb linux-2.6.22-570/include/net/af_unix.h linux-2.6.22-590/include/net/af_unix.h
---- linux-2.6.22-570/include/net/af_unix.h 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/include/net/af_unix.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/net/af_unix.h 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/include/net/af_unix.h 2008-03-20 13:28:02.000000000 -0400
@@ -91,12 +91,11 @@
#define unix_sk(__sk) ((struct unix_sock *)__sk)
#endif
diff -Nurb linux-2.6.22-570/include/net/arp.h linux-2.6.22-590/include/net/arp.h
--- linux-2.6.22-570/include/net/arp.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/net/arp.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/net/arp.h 2008-03-20 13:28:02.000000000 -0400
@@ -11,7 +11,7 @@
extern void arp_init(void);
unsigned char *dest_hw, unsigned char *src_hw, unsigned char *th);
diff -Nurb linux-2.6.22-570/include/net/dst.h linux-2.6.22-590/include/net/dst.h
--- linux-2.6.22-570/include/net/dst.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/net/dst.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/net/dst.h 2008-03-20 13:28:02.000000000 -0400
@@ -47,7 +47,6 @@
#define DST_NOXFRM 2
#define DST_NOPOLICY 4
unsigned short header_len; /* more space at head required */
diff -Nurb linux-2.6.22-570/include/net/fib_rules.h linux-2.6.22-590/include/net/fib_rules.h
--- linux-2.6.22-570/include/net/fib_rules.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/net/fib_rules.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/net/fib_rules.h 2008-03-20 13:28:02.000000000 -0400
@@ -56,12 +56,12 @@
int (*fill)(struct fib_rule *, struct sk_buff *,
struct nlmsghdr *,
struct flowi *, int flags,
diff -Nurb linux-2.6.22-570/include/net/flow.h linux-2.6.22-590/include/net/flow.h
--- linux-2.6.22-570/include/net/flow.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/net/flow.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/net/flow.h 2008-03-20 13:28:02.000000000 -0400
@@ -8,9 +8,11 @@
#define _NET_FLOW_H
diff -Nurb linux-2.6.22-570/include/net/inet6_hashtables.h linux-2.6.22-590/include/net/inet6_hashtables.h
--- linux-2.6.22-570/include/net/inet6_hashtables.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/net/inet6_hashtables.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/net/inet6_hashtables.h 2008-03-20 13:28:02.000000000 -0400
@@ -62,31 +62,31 @@
const __be16 sport,
const struct in6_addr *daddr,
#endif /* _INET6_HASHTABLES_H */
diff -Nurb linux-2.6.22-570/include/net/inet_hashtables.h linux-2.6.22-590/include/net/inet_hashtables.h
--- linux-2.6.22-570/include/net/inet_hashtables.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/net/inet_hashtables.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/net/inet_hashtables.h 2008-03-20 13:28:02.000000000 -0400
@@ -75,6 +75,7 @@
* ports are created in O(1) time? I thought so. ;-) -DaveM
*/
return sk;
diff -Nurb linux-2.6.22-570/include/net/inet_sock.h linux-2.6.22-590/include/net/inet_sock.h
--- linux-2.6.22-570/include/net/inet_sock.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/net/inet_sock.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/net/inet_sock.h 2008-03-20 13:28:02.000000000 -0400
@@ -171,10 +171,12 @@
extern u32 inet_ehash_secret;
extern void build_ehash_secret(void);
#endif /* _INET_SOCK_H */
diff -Nurb linux-2.6.22-570/include/net/inet_timewait_sock.h linux-2.6.22-590/include/net/inet_timewait_sock.h
---- linux-2.6.22-570/include/net/inet_timewait_sock.h 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/include/net/inet_timewait_sock.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/net/inet_timewait_sock.h 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/include/net/inet_timewait_sock.h 2008-03-20 13:28:02.000000000 -0400
@@ -115,6 +115,7 @@
#define tw_refcnt __tw_common.skc_refcnt
#define tw_hash __tw_common.skc_hash
#define tw_nid __tw_common.skc_nid
diff -Nurb linux-2.6.22-570/include/net/inetpeer.h linux-2.6.22-590/include/net/inetpeer.h
--- linux-2.6.22-570/include/net/inetpeer.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/net/inetpeer.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/net/inetpeer.h 2008-03-20 13:28:02.000000000 -0400
@@ -15,6 +15,8 @@
#include <linux/spinlock.h>
#include <asm/atomic.h>
extern void inet_putpeer(struct inet_peer *p);
diff -Nurb linux-2.6.22-570/include/net/ip.h linux-2.6.22-590/include/net/ip.h
--- linux-2.6.22-570/include/net/ip.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/net/ip.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/net/ip.h 2008-03-20 13:28:02.000000000 -0400
@@ -149,13 +149,6 @@
void ip_send_reply(struct sock *sk, struct sk_buff *skb, struct ip_reply_arg *arg,
unsigned int len);
#endif /* _IP_H */
diff -Nurb linux-2.6.22-570/include/net/ip_fib.h linux-2.6.22-590/include/net/ip_fib.h
--- linux-2.6.22-570/include/net/ip_fib.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/net/ip_fib.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/net/ip_fib.h 2008-03-20 13:28:02.000000000 -0400
@@ -39,7 +39,6 @@
int fc_mx_len;
int fc_mp_len;
-#endif /* _NET_IP_MP_ALG_H */
diff -Nurb linux-2.6.22-570/include/net/llc_conn.h linux-2.6.22-590/include/net/llc_conn.h
--- linux-2.6.22-570/include/net/llc_conn.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/net/llc_conn.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/net/llc_conn.h 2008-03-20 13:28:02.000000000 -0400
@@ -93,7 +93,7 @@
return skb->cb[sizeof(skb->cb) - 1];
}
diff -Nurb linux-2.6.22-570/include/net/mip6.h linux-2.6.22-590/include/net/mip6.h
--- linux-2.6.22-570/include/net/mip6.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/net/mip6.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/net/mip6.h 2008-03-20 13:28:02.000000000 -0400
@@ -54,8 +54,4 @@
#define IP6_MH_TYPE_BERROR 7 /* Binding Error */
#define IP6_MH_TYPE_MAX IP6_MH_TYPE_BERROR
#endif
diff -Nurb linux-2.6.22-570/include/net/neighbour.h linux-2.6.22-590/include/net/neighbour.h
--- linux-2.6.22-570/include/net/neighbour.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/net/neighbour.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/net/neighbour.h 2008-03-20 13:28:02.000000000 -0400
@@ -34,6 +34,7 @@
struct neigh_parms
struct neighbour *n, loff_t *pos);
diff -Nurb linux-2.6.22-570/include/net/net_namespace.h linux-2.6.22-590/include/net/net_namespace.h
--- linux-2.6.22-570/include/net/net_namespace.h 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/include/net/net_namespace.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/net/net_namespace.h 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,236 @@
+/*
+ * Operations on the network namespace
+#endif /* __NET_NET_NAMESPACE_H */
diff -Nurb linux-2.6.22-570/include/net/netlink.h linux-2.6.22-590/include/net/netlink.h
--- linux-2.6.22-570/include/net/netlink.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/net/netlink.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/net/netlink.h 2008-03-20 13:28:02.000000000 -0400
@@ -118,6 +118,9 @@
* Nested Attributes Construction:
* nla_nest_start(skb, type) start a nested attribute
* @start: container attribute
diff -Nurb linux-2.6.22-570/include/net/pkt_cls.h linux-2.6.22-590/include/net/pkt_cls.h
--- linux-2.6.22-570/include/net/pkt_cls.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/net/pkt_cls.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/net/pkt_cls.h 2008-03-20 13:28:02.000000000 -0400
@@ -2,6 +2,7 @@
#define __NET_PKT_CLS_H
}
diff -Nurb linux-2.6.22-570/include/net/protocol.h linux-2.6.22-590/include/net/protocol.h
--- linux-2.6.22-570/include/net/protocol.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/net/protocol.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/net/protocol.h 2008-03-20 13:28:02.000000000 -0400
@@ -86,6 +86,7 @@
#define INET_PROTOSW_REUSE 0x01 /* Are ports automatically reusable? */
#define INET_PROTOSW_PERMANENT 0x02 /* Permanent protocols are unremovable. */
extern struct net_protocol *inet_protocol_base;
extern struct net_protocol *inet_protos[MAX_INET_PROTOS];
diff -Nurb linux-2.6.22-570/include/net/raw.h linux-2.6.22-590/include/net/raw.h
---- linux-2.6.22-570/include/net/raw.h 2008-03-18 15:57:42.000000000 -0400
-+++ linux-2.6.22-590/include/net/raw.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/net/raw.h 2008-03-20 13:25:49.000000000 -0400
++++ linux-2.6.22-590/include/net/raw.h 2008-03-20 13:28:02.000000000 -0400
@@ -34,7 +34,7 @@
extern rwlock_t raw_v4_lock;
diff -Nurb linux-2.6.22-570/include/net/rawv6.h linux-2.6.22-590/include/net/rawv6.h
--- linux-2.6.22-570/include/net/rawv6.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/net/rawv6.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/net/rawv6.h 2008-03-20 13:28:02.000000000 -0400
@@ -3,6 +3,8 @@
#ifdef __KERNEL__
#endif
diff -Nurb linux-2.6.22-570/include/net/route.h linux-2.6.22-590/include/net/route.h
---- linux-2.6.22-570/include/net/route.h 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/include/net/route.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/net/route.h 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/include/net/route.h 2008-03-20 13:28:02.000000000 -0400
@@ -27,6 +27,7 @@
#include <net/dst.h>
#include <net/inetpeer.h>
fl.proto = protocol;
diff -Nurb linux-2.6.22-570/include/net/rtnetlink.h linux-2.6.22-590/include/net/rtnetlink.h
--- linux-2.6.22-570/include/net/rtnetlink.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/net/rtnetlink.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/net/rtnetlink.h 2008-03-20 13:28:02.000000000 -0400
@@ -22,4 +22,62 @@
return AF_UNSPEC;
}
+
#endif
diff -Nurb linux-2.6.22-570/include/net/sock.h linux-2.6.22-590/include/net/sock.h
---- linux-2.6.22-570/include/net/sock.h 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/include/net/sock.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/net/sock.h 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/include/net/sock.h 2008-03-20 13:28:02.000000000 -0400
@@ -55,6 +55,7 @@
#include <asm/atomic.h>
#include <net/dst.h>
extern int sysctl_optmem_max;
diff -Nurb linux-2.6.22-570/include/net/tcp.h linux-2.6.22-590/include/net/tcp.h
---- linux-2.6.22-570/include/net/tcp.h 2008-03-18 15:57:36.000000000 -0400
-+++ linux-2.6.22-590/include/net/tcp.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/net/tcp.h 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/include/net/tcp.h 2008-03-20 13:28:02.000000000 -0400
@@ -191,8 +191,6 @@
extern struct inet_timewait_death_row tcp_death_row;
diff -Nurb linux-2.6.22-570/include/net/tipc/tipc_port.h linux-2.6.22-590/include/net/tipc/tipc_port.h
--- linux-2.6.22-570/include/net/tipc/tipc_port.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/net/tipc/tipc_port.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/net/tipc/tipc_port.h 2008-03-20 13:28:02.000000000 -0400
@@ -1,8 +1,8 @@
/*
* include/net/tipc/tipc_port.h: Include file for privileged access to TIPC ports
};
diff -Nurb linux-2.6.22-570/include/net/udp.h linux-2.6.22-590/include/net/udp.h
--- linux-2.6.22-570/include/net/udp.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/net/udp.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/net/udp.h 2008-03-20 13:28:02.000000000 -0400
@@ -160,6 +160,7 @@
};
extern void udp4_proc_exit(void);
diff -Nurb linux-2.6.22-570/include/net/wext.h linux-2.6.22-590/include/net/wext.h
--- linux-2.6.22-570/include/net/wext.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/net/wext.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/net/wext.h 2008-03-20 13:28:02.000000000 -0400
@@ -5,16 +5,23 @@
* wireless extensions interface to the core code
*/
{
return -EINVAL;
diff -Nurb linux-2.6.22-570/include/net/xfrm.h linux-2.6.22-590/include/net/xfrm.h
---- linux-2.6.22-570/include/net/xfrm.h 2008-03-18 15:57:36.000000000 -0400
-+++ linux-2.6.22-590/include/net/xfrm.h 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/include/net/xfrm.h 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/include/net/xfrm.h 2008-03-20 13:28:02.000000000 -0400
@@ -19,13 +19,21 @@
#include <net/ipv6.h>
#include <net/ip6_fib.h>
}
diff -Nurb linux-2.6.22-570/include/scsi/iscsi_if.h linux-2.6.22-590/include/scsi/iscsi_if.h
--- linux-2.6.22-570/include/scsi/iscsi_if.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/scsi/iscsi_if.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/scsi/iscsi_if.h 2008-03-20 13:28:02.000000000 -0400
@@ -48,6 +48,7 @@
ISCSI_UEVENT_TRANSPORT_EP_DISCONNECT = UEVENT_BASE + 14,
* These flags describes reason of stop_conn() call
diff -Nurb linux-2.6.22-570/include/scsi/libiscsi.h linux-2.6.22-590/include/scsi/libiscsi.h
--- linux-2.6.22-570/include/scsi/libiscsi.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/scsi/libiscsi.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/scsi/libiscsi.h 2008-03-20 13:28:02.000000000 -0400
@@ -48,9 +48,8 @@
#define debug_scsi(fmt...)
#endif
extern int iscsi_conn_send_pdu(struct iscsi_cls_conn *, struct iscsi_hdr *,
diff -Nurb linux-2.6.22-570/include/scsi/scsi_cmnd.h linux-2.6.22-590/include/scsi/scsi_cmnd.h
--- linux-2.6.22-570/include/scsi/scsi_cmnd.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/scsi/scsi_cmnd.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/scsi/scsi_cmnd.h 2008-03-20 13:28:02.000000000 -0400
@@ -135,4 +135,24 @@
extern struct scatterlist *scsi_alloc_sgtable(struct scsi_cmnd *, gfp_t);
extern void scsi_free_sgtable(struct scatterlist *, int);
#endif /* _SCSI_SCSI_CMND_H */
diff -Nurb linux-2.6.22-570/include/scsi/scsi_device.h linux-2.6.22-590/include/scsi/scsi_device.h
--- linux-2.6.22-570/include/scsi/scsi_device.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/scsi/scsi_device.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/scsi/scsi_device.h 2008-03-20 13:28:02.000000000 -0400
@@ -287,6 +287,7 @@
extern void scsi_target_unblock(struct device *);
extern void scsi_remove_target(struct device *);
extern int scsi_is_target_device(const struct device *);
diff -Nurb linux-2.6.22-570/include/scsi/scsi_host.h linux-2.6.22-590/include/scsi/scsi_host.h
--- linux-2.6.22-570/include/scsi/scsi_host.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/scsi/scsi_host.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/scsi/scsi_host.h 2008-03-20 13:28:02.000000000 -0400
@@ -339,12 +339,6 @@
enum scsi_eh_timer_return (* eh_timed_out)(struct scsi_cmnd *);
diff -Nurb linux-2.6.22-570/include/scsi/scsi_transport_fc.h linux-2.6.22-590/include/scsi/scsi_transport_fc.h
--- linux-2.6.22-570/include/scsi/scsi_transport_fc.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/scsi/scsi_transport_fc.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/scsi/scsi_transport_fc.h 2008-03-20 13:28:02.000000000 -0400
@@ -19,7 +19,7 @@
*
* ========
#endif /* SCSI_TRANSPORT_FC_H */
diff -Nurb linux-2.6.22-570/include/scsi/scsi_transport_iscsi.h linux-2.6.22-590/include/scsi/scsi_transport_iscsi.h
--- linux-2.6.22-570/include/scsi/scsi_transport_iscsi.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/include/scsi/scsi_transport_iscsi.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/include/scsi/scsi_transport_iscsi.h 2008-03-20 13:28:02.000000000 -0400
@@ -79,7 +79,8 @@
char *name;
unsigned int caps;
};
diff -Nurb linux-2.6.22-570/init/Kconfig linux-2.6.22-590/init/Kconfig
---- linux-2.6.22-570/init/Kconfig 2008-03-18 15:57:43.000000000 -0400
-+++ linux-2.6.22-590/init/Kconfig 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/init/Kconfig 2008-03-20 13:25:50.000000000 -0400
++++ linux-2.6.22-590/init/Kconfig 2008-03-20 13:28:02.000000000 -0400
@@ -120,15 +120,6 @@
section 6.4 of the Linux Programmer's Guide, available from
<http://www.tldp.org/guides.html>.
config MODULES
diff -Nurb linux-2.6.22-570/init/do_mounts_initrd.c linux-2.6.22-590/init/do_mounts_initrd.c
--- linux-2.6.22-570/init/do_mounts_initrd.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/init/do_mounts_initrd.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/init/do_mounts_initrd.c 2008-03-20 13:28:02.000000000 -0400
@@ -56,12 +56,9 @@
sys_chroot(".");
/* move initrd to rootfs' /old */
sys_fchdir(old_fd);
diff -Nurb linux-2.6.22-570/init/main.c linux-2.6.22-590/init/main.c
---- linux-2.6.22-570/init/main.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/init/main.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/init/main.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/init/main.c 2008-03-20 13:28:02.000000000 -0400
@@ -39,6 +39,7 @@
#include <linux/writeback.h>
#include <linux/cpu.h>
taskstats_init_early();
delayacct_init();
diff -Nurb linux-2.6.22-570/ipc/msg.c linux-2.6.22-590/ipc/msg.c
---- linux-2.6.22-570/ipc/msg.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/ipc/msg.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/ipc/msg.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/ipc/msg.c 2008-03-20 13:28:02.000000000 -0400
@@ -88,7 +88,7 @@
static int sysvipc_msg_proc_show(struct seq_file *s, void *it);
#endif
void __init msg_init(void)
{
diff -Nurb linux-2.6.22-570/ipc/sem.c linux-2.6.22-590/ipc/sem.c
---- linux-2.6.22-570/ipc/sem.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/ipc/sem.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/ipc/sem.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/ipc/sem.c 2008-03-20 13:28:02.000000000 -0400
@@ -123,7 +123,7 @@
#define sc_semopm sem_ctls[2]
#define sc_semmni sem_ctls[3]
void __init sem_init (void)
{
diff -Nurb linux-2.6.22-570/ipc/shm.c linux-2.6.22-590/ipc/shm.c
---- linux-2.6.22-570/ipc/shm.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/ipc/shm.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/ipc/shm.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/ipc/shm.c 2008-03-20 13:28:02.000000000 -0400
@@ -79,7 +79,7 @@
static int sysvipc_shm_proc_show(struct seq_file *s, void *it);
#endif
.set_policy = shm_set_policy,
.get_policy = shm_get_policy,
diff -Nurb linux-2.6.22-570/ipc/util.c linux-2.6.22-590/ipc/util.c
---- linux-2.6.22-570/ipc/util.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/ipc/util.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/ipc/util.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/ipc/util.c 2008-03-20 13:28:02.000000000 -0400
@@ -52,7 +52,6 @@
},
};
diff -Nurb linux-2.6.22-570/ipc/util.h linux-2.6.22-590/ipc/util.h
--- linux-2.6.22-570/ipc/util.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/ipc/util.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/ipc/util.h 2008-03-20 13:28:02.000000000 -0400
@@ -41,12 +41,8 @@
};
void __init ipc_init_proc_interface(const char *path, const char *header,
int ids, int (*show)(struct seq_file *, void *));
diff -Nurb linux-2.6.22-570/kernel/Makefile linux-2.6.22-590/kernel/Makefile
---- linux-2.6.22-570/kernel/Makefile 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/kernel/Makefile 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/kernel/Makefile 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/kernel/Makefile 2008-03-20 13:28:02.000000000 -0400
@@ -4,11 +4,12 @@
obj-y = sched.o fork.o exec_domain.o panic.o printk.o profile.o \
diff -Nurb linux-2.6.22-570/kernel/audit.c linux-2.6.22-590/kernel/audit.c
--- linux-2.6.22-570/kernel/audit.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/kernel/audit.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/kernel/audit.c 2008-03-20 13:28:02.000000000 -0400
@@ -391,6 +391,7 @@
{
struct sk_buff *skb;
audit_panic("cannot initialize netlink socket");
else
diff -Nurb linux-2.6.22-570/kernel/auditsc.c linux-2.6.22-590/kernel/auditsc.c
---- linux-2.6.22-570/kernel/auditsc.c 2008-03-18 15:57:36.000000000 -0400
-+++ linux-2.6.22-590/kernel/auditsc.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/kernel/auditsc.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/kernel/auditsc.c 2008-03-20 13:28:02.000000000 -0400
@@ -1500,6 +1500,7 @@
context->names[idx].ino = (unsigned long)-1;
}
* auditsc_get_stamp - get local copies of audit_context values
diff -Nurb linux-2.6.22-570/kernel/container.c linux-2.6.22-590/kernel/container.c
--- linux-2.6.22-570/kernel/container.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/kernel/container.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/kernel/container.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,2545 @@
+/*
+ * kernel/container.c
+}
diff -Nurb linux-2.6.22-570/kernel/container_debug.c linux-2.6.22-590/kernel/container_debug.c
--- linux-2.6.22-570/kernel/container_debug.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/kernel/container_debug.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/kernel/container_debug.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,89 @@
+/*
+ * kernel/ccontainer_debug.c - Example container subsystem that
+};
diff -Nurb linux-2.6.22-570/kernel/cpu_acct.c linux-2.6.22-590/kernel/cpu_acct.c
--- linux-2.6.22-570/kernel/cpu_acct.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/kernel/cpu_acct.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/kernel/cpu_acct.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,185 @@
+/*
+ * kernel/cpu_acct.c - CPU accounting container subsystem
+};
diff -Nurb linux-2.6.22-570/kernel/cpuset.c linux-2.6.22-590/kernel/cpuset.c
--- linux-2.6.22-570/kernel/cpuset.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/kernel/cpuset.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/kernel/cpuset.c 2008-03-20 13:28:02.000000000 -0400
@@ -5,6 +5,7 @@
*
* Copyright (C) 2003 BULL SA.
/* Display task cpus_allowed, mems_allowed in /proc/<pid>/status file. */
char *cpuset_task_status_allowed(struct task_struct *task, char *buffer)
diff -Nurb linux-2.6.22-570/kernel/exit.c linux-2.6.22-590/kernel/exit.c
---- linux-2.6.22-570/kernel/exit.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/kernel/exit.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/kernel/exit.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/kernel/exit.c 2008-03-20 13:28:02.000000000 -0400
@@ -31,7 +31,8 @@
#include <linux/mempolicy.h>
#include <linux/taskstats_kern.h>
if (group_dead && tsk->signal->leader)
diff -Nurb linux-2.6.22-570/kernel/fork.c linux-2.6.22-590/kernel/fork.c
---- linux-2.6.22-570/kernel/fork.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/kernel/fork.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/kernel/fork.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/kernel/fork.c 2008-03-20 13:28:02.000000000 -0400
@@ -29,7 +29,7 @@
#include <linux/nsproxy.h>
#include <linux/capability.h>
if ((err = unshare_thread(unshare_flags)))
diff -Nurb linux-2.6.22-570/kernel/kgdb.c linux-2.6.22-590/kernel/kgdb.c
--- linux-2.6.22-570/kernel/kgdb.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/kernel/kgdb.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/kernel/kgdb.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,1866 @@
+/*
+ * kernel/kgdb.c
+early_param("kgdbwait", opt_kgdb_enter);
diff -Nurb linux-2.6.22-570/kernel/kmod.c linux-2.6.22-590/kernel/kmod.c
--- linux-2.6.22-570/kernel/kmod.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/kernel/kmod.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/kernel/kmod.c 2008-03-20 13:28:02.000000000 -0400
@@ -119,9 +119,10 @@
char **argv;
char **envp;
diff -Nurb linux-2.6.22-570/kernel/module.c linux-2.6.22-590/kernel/module.c
--- linux-2.6.22-570/kernel/module.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/kernel/module.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/kernel/module.c 2008-03-20 13:28:02.000000000 -0400
@@ -67,6 +67,7 @@
/* List of modules, protected by module_mutex AND modlist_lock */
static DEFINE_MUTEX(module_mutex);
printk(KERN_ERR "%s: module is now stuck!\n",
diff -Nurb linux-2.6.22-570/kernel/ns_container.c linux-2.6.22-590/kernel/ns_container.c
--- linux-2.6.22-570/kernel/ns_container.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/kernel/ns_container.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/kernel/ns_container.c 2008-03-20 13:28:02.000000000 -0400
@@ -0,0 +1,99 @@
+/*
+ * ns_container.c - namespace container subsystem
+ .subsys_id = ns_subsys_id,
+};
diff -Nurb linux-2.6.22-570/kernel/nsproxy.c linux-2.6.22-590/kernel/nsproxy.c
---- linux-2.6.22-570/kernel/nsproxy.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/kernel/nsproxy.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/kernel/nsproxy.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/kernel/nsproxy.c 2008-03-20 13:28:02.000000000 -0400
@@ -19,10 +19,13 @@
#include <linux/init_task.h>
#include <linux/mnt_namespace.h>
+}
+
+module_init(nsproxy_cache_init);
-diff -Nurb linux-2.6.22-570/kernel/nsproxy.c.orig linux-2.6.22-590/kernel/nsproxy.c.orig
---- linux-2.6.22-570/kernel/nsproxy.c.orig 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/kernel/nsproxy.c.orig 2008-03-18 15:57:54.000000000 -0400
-@@ -0,0 +1,264 @@
-+/*
-+ * Copyright (C) 2006 IBM Corporation
-+ *
-+ * Author: Serge Hallyn <serue@us.ibm.com>
-+ *
-+ * This program is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU General Public License as
-+ * published by the Free Software Foundation, version 2 of the
-+ * License.
-+ *
-+ * Jun 2006 - namespaces support
-+ * OpenVZ, SWsoft Inc.
-+ * Pavel Emelianov <xemul@openvz.org>
-+ */
-+
-+#include <linux/module.h>
-+#include <linux/version.h>
-+#include <linux/nsproxy.h>
-+#include <linux/init_task.h>
-+#include <linux/mnt_namespace.h>
-+#include <linux/utsname.h>
-+#include <net/net_namespace.h>
-+#include <linux/pid_namespace.h>
-+#include <linux/vserver/global.h>
-+#include <linux/vserver/debug.h>
-+
-+static struct kmem_cache *nsproxy_cachep;
-+
-+struct nsproxy init_nsproxy = INIT_NSPROXY(init_nsproxy);
-+
-+void get_task_namespaces(struct task_struct *tsk)
-+{
-+ struct nsproxy *ns = tsk->nsproxy;
-+ if (ns) {
-+ get_nsproxy(ns);
-+ }
-+}
-+
-+/*
-+ * creates a copy of "orig" with refcount 1.
-+ */
-+static inline struct nsproxy *clone_nsproxy(struct nsproxy *orig)
-+{
-+ struct nsproxy *ns;
-+
-+ ns = kmemdup(orig, sizeof(struct nsproxy), GFP_KERNEL);
-+ if (ns)
-+ atomic_set(&ns->count, 1);
-+ vxdprintk(VXD_CBIT(space, 2), "clone_nsproxy(%p[%u] = %p[1]",
-+ orig, atomic_read(&orig->count), ns);
-+ atomic_inc(&vs_global_nsproxy);
-+ return ns;
-+}
-+
-+/*
-+ * Create new nsproxy and all of its the associated namespaces.
-+ * Return the newly created nsproxy. Do not attach this to the task,
-+ * leave it to the caller to do proper locking and attach it to task.
-+ */
-+static struct nsproxy *unshare_namespaces(int flags, struct nsproxy *orig,
-+ struct fs_struct *new_fs)
-+{
-+ struct nsproxy *new_nsp;
-+ int err = -ENOMEM;
-+
-+ vxdprintk(VXD_CBIT(space, 4),
-+ "unshare_namespaces(0x%08x,%p,%p)",
-+ flags, orig, new_fs);
-+
-+ new_nsp = clone_nsproxy(orig);
-+ if (!new_nsp)
-+ return ERR_PTR(-ENOMEM);
-+
-+ new_nsp->mnt_ns = copy_mnt_ns(flags, orig->mnt_ns, new_fs);
-+ if (IS_ERR(new_nsp->mnt_ns))
-+ goto out_ns;
-+
-+ new_nsp->uts_ns = copy_utsname(flags, orig->uts_ns);
-+ if (IS_ERR(new_nsp->uts_ns))
-+ goto out_uts;
-+
-+ new_nsp->ipc_ns = copy_ipcs(flags, orig->ipc_ns);
-+ if (IS_ERR(new_nsp->ipc_ns))
-+ goto out_ipc;
-+
-+ new_nsp->pid_ns = copy_pid_ns(flags, orig->pid_ns);
-+ if (IS_ERR(new_nsp->pid_ns))
-+ goto out_pid;
-+
-+ new_nsp->user_ns = copy_user_ns(flags, orig->user_ns);
-+ if (IS_ERR(new_nsp->user_ns))
-+ goto out_user;
-+
-+ new_nsp->net_ns = copy_net_ns(flags, orig->net_ns);
-+ if (IS_ERR(new_nsp->net_ns))
-+ goto out_net;
-+
-+ return new_nsp;
-+
-+out_net:
-+ if (new_nsp->user_ns)
-+ put_user_ns(new_nsp->user_ns);
-+ if (new_nsp->net_ns)
-+ put_net(new_nsp->net_ns);
-+out_user:
-+ if (new_nsp->pid_ns)
-+ put_pid_ns(new_nsp->pid_ns);
-+out_pid:
-+ if (new_nsp->ipc_ns)
-+ put_ipc_ns(new_nsp->ipc_ns);
-+out_ipc:
-+ if (new_nsp->uts_ns)
-+ put_uts_ns(new_nsp->uts_ns);
-+out_uts:
-+ if (new_nsp->mnt_ns)
-+ put_mnt_ns(new_nsp->mnt_ns);
-+out_ns:
-+ kmem_cache_free(nsproxy_cachep, new_nsp);
-+ return ERR_PTR(err);
-+}
-+
-+static struct nsproxy *create_new_namespaces(unsigned long flags, struct task_struct *tsk,
-+ struct fs_struct *new_fs)
-+{
-+ return unshare_namespaces(flags, tsk->nsproxy, new_fs);
-+}
-+
-+/*
-+ * copies the nsproxy, setting refcount to 1, and grabbing a
-+ * reference to all contained namespaces.
-+ */
-+struct nsproxy *copy_nsproxy(struct nsproxy *orig)
-+{
-+ struct nsproxy *ns = clone_nsproxy(orig);
-+
-+ if (ns) {
-+ if (ns->mnt_ns)
-+ get_mnt_ns(ns->mnt_ns);
-+ if (ns->uts_ns)
-+ get_uts_ns(ns->uts_ns);
-+ if (ns->ipc_ns)
-+ get_ipc_ns(ns->ipc_ns);
-+ if (ns->pid_ns)
-+ get_pid_ns(ns->pid_ns);
-+ }
-+ return ns;
-+}
-+
-+/*
-+ * called from clone. This now handles copy for nsproxy and all
-+ * namespaces therein.
-+ */
-+int copy_namespaces(unsigned long flags, struct task_struct *tsk)
-+{
-+ struct nsproxy *old_ns = tsk->nsproxy;
-+ struct nsproxy *new_ns = NULL;
-+ int err = 0;
-+
-+ vxdprintk(VXD_CBIT(space, 7), "copy_namespaces(0x%08x,%p[%p])",
-+ flags, tsk, old_ns);
-+
-+ if (!old_ns)
-+ return 0;
-+
-+ get_nsproxy(old_ns);
-+ return 0;
-+
-+ if (!(flags & (CLONE_NEWNS | CLONE_NEWUTS | CLONE_NEWIPC | CLONE_NEWUSER | CLONE_NEWNET)))
-+ return 0;
-+
-+ #ifndef CONFIG_NET_NS
-+ if (unshare_flags & CLONE_NEWNET)
-+ return -EINVAL;
-+ #endif
-+
-+
-+ if (!capable(CAP_SYS_ADMIN)) {
-+ err = -EPERM;
-+ goto out;
-+ }
-+
-+ new_ns = create_new_namespaces(flags, tsk, tsk->fs);
-+ if (IS_ERR(new_ns)) {
-+ err = PTR_ERR(new_ns);
-+ goto out;
-+ }
-+
-+ err = ns_container_clone(tsk);
-+ if (err) {
-+ put_nsproxy(new_ns);
-+ goto out;
-+ }
-+
-+ tsk->nsproxy = new_ns;
-+
-+out:
-+ put_nsproxy(old_ns);
-+ vxdprintk(VXD_CBIT(space, 3),
-+ "copy_namespaces(0x%08x,%p[%p]) = %d [%p]",
-+ flags, tsk, old_ns, err, new_ns);
-+ return err;
-+}
-+
-+void free_nsproxy(struct nsproxy *ns)
-+{
-+ if (ns->mnt_ns)
-+ put_mnt_ns(ns->mnt_ns);
-+ if (ns->uts_ns)
-+ put_uts_ns(ns->uts_ns);
-+ if (ns->ipc_ns)
-+ put_ipc_ns(ns->ipc_ns);
-+ if (ns->pid_ns)
-+ put_pid_ns(ns->pid_ns);
-+ atomic_dec(&vs_global_nsproxy);
-+ kfree(ns);
-+}
-+
-+/*
-+ * Called from unshare. Unshare all the namespaces part of nsproxy.
-+ * On success, returns the new nsproxy.
-+ */
-+int unshare_nsproxy_namespaces(unsigned long unshare_flags,
-+ struct nsproxy **new_nsp, struct fs_struct *new_fs)
-+{
-+ int err = 0;
-+
-+ vxdprintk(VXD_CBIT(space, 4),
-+ "unshare_nsproxy_namespaces(0x%08lx,[%p])",
-+ unshare_flags, current->nsproxy);
-+
-+ if (!(unshare_flags & (CLONE_NEWNS | CLONE_NEWUTS | CLONE_NEWIPC |
-+ CLONE_NEWUSER | CLONE_NEWNET)))
-+ return 0;
-+
-+#ifndef CONFIG_NET_NS
-+ if (unshare_flags & CLONE_NEWNET)
-+ return -EINVAL;
-+#endif
-+ if (!capable(CAP_SYS_ADMIN))
-+ return -EPERM;
-+
-+ *new_nsp = create_new_namespaces(unshare_flags, current,
-+ new_fs ? new_fs : current->fs);
-+ if (IS_ERR(*new_nsp)) {
-+ err = PTR_ERR(*new_nsp);
-+ goto out;
-+ }
-+
-+ err = ns_container_clone(current);
-+ if (err)
-+ put_nsproxy(*new_nsp);
-+
-+out:
-+ return err;
-+}
-+
-+static int __init nsproxy_cache_init(void)
-+{
-+ nsproxy_cachep = kmem_cache_create("nsproxy", sizeof(struct nsproxy),
-+ 0, SLAB_PANIC, NULL, NULL);
-+ return 0;
-+}
-+
-+module_init(nsproxy_cache_init);
diff -Nurb linux-2.6.22-570/kernel/params.c linux-2.6.22-590/kernel/params.c
---- linux-2.6.22-570/kernel/params.c 2008-03-18 15:57:37.000000000 -0400
-+++ linux-2.6.22-590/kernel/params.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/kernel/params.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/kernel/params.c 2008-03-20 13:28:02.000000000 -0400
@@ -491,7 +491,6 @@
pattr->mattr.show = param_attr_show;
pattr->mattr.store = param_attr_store;
*(gattr++) = &(pattr++)->mattr.attr;
}
diff -Nurb linux-2.6.22-570/kernel/pid.c linux-2.6.22-590/kernel/pid.c
---- linux-2.6.22-570/kernel/pid.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/kernel/pid.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/kernel/pid.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/kernel/pid.c 2008-03-20 13:28:02.000000000 -0400
@@ -379,7 +379,7 @@
}
EXPORT_SYMBOL_GPL(find_get_pid);
BUG_ON(!old_ns);
get_pid_ns(old_ns);
diff -Nurb linux-2.6.22-570/kernel/ptrace.c linux-2.6.22-590/kernel/ptrace.c
---- linux-2.6.22-570/kernel/ptrace.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/kernel/ptrace.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/kernel/ptrace.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/kernel/ptrace.c 2008-03-20 13:28:02.000000000 -0400
@@ -143,7 +143,7 @@
return -EPERM;
smp_rmb();
if (!vx_check(task->xid, VS_ADMIN_P|VS_IDENT))
diff -Nurb linux-2.6.22-570/kernel/rcutorture.c linux-2.6.22-590/kernel/rcutorture.c
--- linux-2.6.22-570/kernel/rcutorture.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/kernel/rcutorture.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/kernel/rcutorture.c 2008-03-20 13:28:03.000000000 -0400
@@ -40,6 +40,7 @@
#include <linux/moduleparam.h>
#include <linux/percpu.h>
idx = cur_ops->readlock();
diff -Nurb linux-2.6.22-570/kernel/rtmutex-tester.c linux-2.6.22-590/kernel/rtmutex-tester.c
--- linux-2.6.22-570/kernel/rtmutex-tester.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/kernel/rtmutex-tester.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/kernel/rtmutex-tester.c 2008-03-20 13:28:03.000000000 -0400
@@ -260,6 +260,7 @@
int ret;
for(;;) {
diff -Nurb linux-2.6.22-570/kernel/sched.c linux-2.6.22-590/kernel/sched.c
---- linux-2.6.22-570/kernel/sched.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/kernel/sched.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/kernel/sched.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/kernel/sched.c 2008-03-20 13:28:03.000000000 -0400
@@ -51,8 +51,10 @@
#include <linux/times.h>
#include <linux/tsacct_kern.h>
if (time_before(jiffies, prev_jiffy + HZ) && prev_jiffy)
diff -Nurb linux-2.6.22-570/kernel/seccomp.c linux-2.6.22-590/kernel/seccomp.c
--- linux-2.6.22-570/kernel/seccomp.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/kernel/seccomp.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/kernel/seccomp.c 2008-03-20 13:28:03.000000000 -0400
@@ -10,6 +10,7 @@
#include <linux/sched.h>
+ return ret;
+}
diff -Nurb linux-2.6.22-570/kernel/signal.c linux-2.6.22-590/kernel/signal.c
---- linux-2.6.22-570/kernel/signal.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/kernel/signal.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/kernel/signal.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/kernel/signal.c 2008-03-20 13:28:03.000000000 -0400
@@ -257,6 +257,16 @@
}
}
/* Notify the system that a driver wants to block all signals for this
* process, and wants to be notified if any signals at all were to be
diff -Nurb linux-2.6.22-570/kernel/softirq.c linux-2.6.22-590/kernel/softirq.c
---- linux-2.6.22-570/kernel/softirq.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/kernel/softirq.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/kernel/softirq.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/kernel/softirq.c 2008-03-20 13:28:03.000000000 -0400
@@ -14,6 +14,7 @@
#include <linux/notifier.h>
#include <linux/percpu.h>
diff -Nurb linux-2.6.22-570/kernel/softlockup.c linux-2.6.22-590/kernel/softlockup.c
--- linux-2.6.22-570/kernel/softlockup.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/kernel/softlockup.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/kernel/softlockup.c 2008-03-20 13:28:03.000000000 -0400
@@ -10,9 +10,11 @@
#include <linux/cpu.h>
#include <linux/init.h>
/* initialize timestamp */
touch_softlockup_watchdog();
diff -Nurb linux-2.6.22-570/kernel/sys.c linux-2.6.22-590/kernel/sys.c
---- linux-2.6.22-570/kernel/sys.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/kernel/sys.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/kernel/sys.c 2008-03-20 13:25:45.000000000 -0400
++++ linux-2.6.22-590/kernel/sys.c 2008-03-20 13:28:03.000000000 -0400
@@ -31,6 +31,7 @@
#include <linux/cn_proc.h>
#include <linux/getcpu.h>
+}
+EXPORT_SYMBOL_GPL(orderly_poweroff);
diff -Nurb linux-2.6.22-570/kernel/sysctl.c linux-2.6.22-590/kernel/sysctl.c
---- linux-2.6.22-570/kernel/sysctl.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/kernel/sysctl.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/kernel/sysctl.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/kernel/sysctl.c 2008-03-20 13:28:03.000000000 -0400
@@ -45,13 +45,13 @@
#include <linux/syscalls.h>
#include <linux/nfs_fs.h>
EXPORT_SYMBOL(unregister_sysctl_table);
diff -Nurb linux-2.6.22-570/kernel/taskstats.c linux-2.6.22-590/kernel/taskstats.c
--- linux-2.6.22-570/kernel/taskstats.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/kernel/taskstats.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/kernel/taskstats.c 2008-03-20 13:28:03.000000000 -0400
@@ -196,6 +196,8 @@
/* fill in basic acct fields */
unlock_task_sighand(first, &flags);
diff -Nurb linux-2.6.22-570/kernel/time/tick-sched.c linux-2.6.22-590/kernel/time/tick-sched.c
--- linux-2.6.22-570/kernel/time/tick-sched.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/kernel/time/tick-sched.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/kernel/time/tick-sched.c 2008-03-20 13:28:03.000000000 -0400
@@ -153,6 +153,7 @@
unsigned long seq, last_jiffies, next_jiffies, delta_jiffies, flags;
struct tick_sched *ts;
* Restart the idle tick when the CPU is woken up from idle
diff -Nurb linux-2.6.22-570/kernel/time/timekeeping.c linux-2.6.22-590/kernel/time/timekeeping.c
--- linux-2.6.22-570/kernel/time/timekeeping.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/kernel/time/timekeeping.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/kernel/time/timekeeping.c 2008-03-20 13:28:03.000000000 -0400
@@ -39,7 +39,7 @@
*/
struct timespec xtime __attribute__ ((aligned (16)));
+
+EXPORT_SYMBOL(monotonic_to_bootbased);
diff -Nurb linux-2.6.22-570/kernel/timer.c linux-2.6.22-590/kernel/timer.c
---- linux-2.6.22-570/kernel/timer.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/kernel/timer.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/kernel/timer.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/kernel/timer.c 2008-03-20 13:28:03.000000000 -0400
@@ -36,6 +36,7 @@
#include <linux/delay.h>
#include <linux/tick.h>
tp.tv_sec++;
diff -Nurb linux-2.6.22-570/kernel/unwind.c linux-2.6.22-590/kernel/unwind.c
--- linux-2.6.22-570/kernel/unwind.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/kernel/unwind.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/kernel/unwind.c 2008-03-20 13:28:03.000000000 -0400
@@ -0,0 +1,1288 @@
+/*
+ * Copyright (C) 2002-2006 Novell, Inc.
+EXPORT_SYMBOL(unwind_init_running);
+
diff -Nurb linux-2.6.22-570/kernel/user.c linux-2.6.22-590/kernel/user.c
---- linux-2.6.22-570/kernel/user.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/kernel/user.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/kernel/user.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/kernel/user.c 2008-03-20 13:28:03.000000000 -0400
@@ -14,17 +14,17 @@
#include <linux/bitops.h>
#include <linux/key.h>
spin_unlock_irq(&uidhash_lock);
return 0;
-diff -Nurb linux-2.6.22-570/kernel/user.c.orig linux-2.6.22-590/kernel/user.c.orig
---- linux-2.6.22-570/kernel/user.c.orig 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/kernel/user.c.orig 2008-03-18 15:57:54.000000000 -0400
-@@ -0,0 +1,227 @@
-+/*
-+ * The "user cache".
-+ *
-+ * (C) Copyright 1991-2000 Linus Torvalds
-+ *
-+ * We have a per-user structure to keep track of how many
-+ * processes, files etc the user has claimed, in order to be
-+ * able to have per-user limits for system resources.
-+ */
-+
-+#include <linux/init.h>
-+#include <linux/sched.h>
-+#include <linux/slab.h>
-+#include <linux/bitops.h>
-+#include <linux/key.h>
-+#include <linux/interrupt.h>
-+#include <linux/module.h>
-+#include <linux/user_namespace.h>
-+
-+/*
-+ * UID task count cache, to get fast user lookup in "alloc_uid"
-+ * when changing user ID's (ie setuid() and friends).
-+ */
-+
-+#define UIDHASH_MASK (UIDHASH_SZ - 1)
-+#define __uidhashfn(xid,uid) ((((uid) >> UIDHASH_BITS) + ((uid)^(xid))) & UIDHASH_MASK)
-+#define uidhashentry(ns, xid, uid) ((ns)->uidhash_table + __uidhashfn(xid, uid))
-+
-+static struct kmem_cache *uid_cachep;
-+static struct list_head uidhash_table[UIDHASH_SZ];
-+
-+/*
-+ * The uidhash_lock is mostly taken from process context, but it is
-+ * occasionally also taken from softirq/tasklet context, when
-+ * task-structs get RCU-freed. Hence all locking must be softirq-safe.
-+ * But free_uid() is also called with local interrupts disabled, and running
-+ * local_bh_enable() with local interrupts disabled is an error - we'll run
-+ * softirq callbacks, and they can unconditionally enable interrupts, and
-+ * the caller of free_uid() didn't expect that..
-+ */
-+static DEFINE_SPINLOCK(uidhash_lock);
-+
-+struct user_struct root_user = {
-+ .__count = ATOMIC_INIT(1),
-+ .processes = ATOMIC_INIT(1),
-+ .files = ATOMIC_INIT(0),
-+ .sigpending = ATOMIC_INIT(0),
-+ .mq_bytes = 0,
-+ .locked_shm = 0,
-+#ifdef CONFIG_KEYS
-+ .uid_keyring = &root_user_keyring,
-+ .session_keyring = &root_session_keyring,
-+#endif
-+};
-+
-+/*
-+ * These routines must be called with the uidhash spinlock held!
-+ */
-+static inline void uid_hash_insert(struct user_struct *up, struct list_head *hashent)
-+{
-+ list_add(&up->uidhash_list, hashent);
-+}
-+
-+static inline void uid_hash_remove(struct user_struct *up)
-+{
-+ list_del(&up->uidhash_list);
-+}
-+
-+static inline struct user_struct *uid_hash_find(xid_t xid, uid_t uid, struct list_head *hashent)
-+{
-+ struct list_head *up;
-+
-+ list_for_each(up, hashent) {
-+ struct user_struct *user;
-+
-+ user = list_entry(up, struct user_struct, uidhash_list);
-+
-+ if(user->uid == uid && user->xid == xid) {
-+ atomic_inc(&user->__count);
-+ return user;
-+ }
-+ }
-+
-+ return NULL;
-+}
-+
-+/*
-+ * Locate the user_struct for the passed UID. If found, take a ref on it. The
-+ * caller must undo that ref with free_uid().
-+ *
-+ * If the user_struct could not be found, return NULL.
-+ */
-+struct user_struct *find_user(xid_t xid, uid_t uid)
-+{
-+ struct user_struct *ret;
-+ unsigned long flags;
-+ struct user_namespace *ns = current->nsproxy->user_ns;
-+
-+ spin_lock_irqsave(&uidhash_lock, flags);
-+ ret = uid_hash_find(xid, uid, uidhashentry(ns, xid, uid));
-+ spin_unlock_irqrestore(&uidhash_lock, flags);
-+ return ret;
-+}
-+
-+void free_uid(struct user_struct *up)
-+{
-+ unsigned long flags;
-+
-+ if (!up)
-+ return;
-+
-+ local_irq_save(flags);
-+ if (atomic_dec_and_lock(&up->__count, &uidhash_lock)) {
-+ uid_hash_remove(up);
-+ spin_unlock_irqrestore(&uidhash_lock, flags);
-+ key_put(up->uid_keyring);
-+ key_put(up->session_keyring);
-+ kmem_cache_free(uid_cachep, up);
-+ } else {
-+ local_irq_restore(flags);
-+ }
-+}
-+
-+struct user_struct * alloc_uid(xid_t xid, uid_t uid)
-+{
-+ struct user_namespace *ns = current->nsproxy->user_ns;
-+ struct list_head *hashent = uidhashentry(ns,xid, uid);
-+ struct user_struct *up;
-+
-+ spin_lock_irq(&uidhash_lock);
-+ up = uid_hash_find(xid, uid, hashent);
-+ spin_unlock_irq(&uidhash_lock);
-+
-+ if (!up) {
-+ struct user_struct *new;
-+
-+ new = kmem_cache_alloc(uid_cachep, GFP_KERNEL);
-+ if (!new)
-+ return NULL;
-+ new->uid = uid;
-+ new->xid = xid;
-+ atomic_set(&new->__count, 1);
-+ atomic_set(&new->processes, 0);
-+ atomic_set(&new->files, 0);
-+ atomic_set(&new->sigpending, 0);
-+#ifdef CONFIG_INOTIFY_USER
-+ atomic_set(&new->inotify_watches, 0);
-+ atomic_set(&new->inotify_devs, 0);
-+#endif
-+
-+ new->mq_bytes = 0;
-+ new->locked_shm = 0;
-+
-+ if (alloc_uid_keyring(new, current) < 0) {
-+ kmem_cache_free(uid_cachep, new);
-+ return NULL;
-+ }
-+
-+ /*
-+ * Before adding this, check whether we raced
-+ * on adding the same user already..
-+ */
-+ spin_lock_irq(&uidhash_lock);
-+ up = uid_hash_find(xid, uid, hashent);
-+ if (up) {
-+ key_put(new->uid_keyring);
-+ key_put(new->session_keyring);
-+ kmem_cache_free(uid_cachep, new);
-+ } else {
-+ uid_hash_insert(new, hashent);
-+ up = new;
-+ }
-+ spin_unlock_irq(&uidhash_lock);
-+
-+ }
-+ return up;
-+}
-+
-+void switch_uid(struct user_struct *new_user)
-+{
-+ struct user_struct *old_user;
-+
-+ /* What if a process setreuid()'s and this brings the
-+ * new uid over his NPROC rlimit? We can check this now
-+ * cheaply with the new uid cache, so if it matters
-+ * we should be checking for it. -DaveM
-+ */
-+ old_user = current->user;
-+ atomic_inc(&new_user->processes);
-+ atomic_dec(&old_user->processes);
-+ switch_uid_keyring(new_user);
-+ current->user = new_user;
-+
-+ /*
-+ * We need to synchronize with __sigqueue_alloc()
-+ * doing a get_uid(p->user).. If that saw the old
-+ * user value, we need to wait until it has exited
-+ * its critical region before we can free the old
-+ * structure.
-+ */
-+ smp_mb();
-+ spin_unlock_wait(¤t->sighand->siglock);
-+
-+ free_uid(old_user);
-+ suid_keys(current);
-+}
-+
-+
-+static int __init uid_cache_init(void)
-+{
-+ int n;
-+
-+ uid_cachep = kmem_cache_create("uid_cache", sizeof(struct user_struct),
-+ 0, SLAB_HWCACHE_ALIGN|SLAB_PANIC, NULL, NULL);
-+
-+ for(n = 0; n < UIDHASH_SZ; ++n)
-+ INIT_LIST_HEAD(init_user_ns.uidhash_table + n);
-+
-+ /* Insert the root user immediately (init already runs as root) */
-+ spin_lock_irq(&uidhash_lock);
-+ uid_hash_insert(&root_user, uidhashentry(&init_user_ns, 0, 0));
-+ spin_unlock_irq(&uidhash_lock);
-+
-+ return 0;
-+}
-+
-+module_init(uid_cache_init);
diff -Nurb linux-2.6.22-570/kernel/user_namespace.c linux-2.6.22-590/kernel/user_namespace.c
--- linux-2.6.22-570/kernel/user_namespace.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/kernel/user_namespace.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/kernel/user_namespace.c 2008-03-20 13:28:03.000000000 -0400
@@ -0,0 +1,87 @@
+/*
+ * This program is free software; you can redistribute it and/or
+
+#endif /* CONFIG_USER_NS */
diff -Nurb linux-2.6.22-570/kernel/utsname.c linux-2.6.22-590/kernel/utsname.c
---- linux-2.6.22-570/kernel/utsname.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/kernel/utsname.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/kernel/utsname.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/kernel/utsname.c 2008-03-20 13:28:03.000000000 -0400
@@ -14,6 +14,7 @@
#include <linux/utsname.h>
#include <linux/version.h>
diff -Nurb linux-2.6.22-570/kernel/utsname_sysctl.c linux-2.6.22-590/kernel/utsname_sysctl.c
--- linux-2.6.22-570/kernel/utsname_sysctl.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/kernel/utsname_sysctl.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/kernel/utsname_sysctl.c 2008-03-20 13:28:03.000000000 -0400
@@ -18,10 +18,7 @@
static void *get_uts(ctl_table *table, int write)
{
down_read(&uts_sem);
else
diff -Nurb linux-2.6.22-570/kernel/workqueue.c linux-2.6.22-590/kernel/workqueue.c
---- linux-2.6.22-570/kernel/workqueue.c 2008-03-18 15:57:37.000000000 -0400
-+++ linux-2.6.22-590/kernel/workqueue.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/kernel/workqueue.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/kernel/workqueue.c 2008-03-20 13:28:03.000000000 -0400
@@ -282,8 +282,8 @@
struct cpu_workqueue_struct *cwq = __cwq;
DEFINE_WAIT(wait);
diff -Nurb linux-2.6.22-570/lib/Kconfig.debug linux-2.6.22-590/lib/Kconfig.debug
--- linux-2.6.22-570/lib/Kconfig.debug 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/lib/Kconfig.debug 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/lib/Kconfig.debug 2008-03-20 13:28:03.000000000 -0400
@@ -364,6 +364,24 @@
some architectures or if you use external debuggers.
If you don't debug the kernel, you can say N.
+source "lib/Kconfig.kgdb"
diff -Nurb linux-2.6.22-570/lib/Kconfig.kgdb linux-2.6.22-590/lib/Kconfig.kgdb
--- linux-2.6.22-570/lib/Kconfig.kgdb 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/lib/Kconfig.kgdb 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/lib/Kconfig.kgdb 2008-03-20 13:28:03.000000000 -0400
@@ -0,0 +1,255 @@
+
+config WANT_EXTRA_DEBUG_INFORMATION
+ io,2f8,115200,3
diff -Nurb linux-2.6.22-570/lib/Makefile linux-2.6.22-590/lib/Makefile
--- linux-2.6.22-570/lib/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/lib/Makefile 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/lib/Makefile 2008-03-20 13:28:03.000000000 -0400
@@ -5,9 +5,10 @@
lib-y := ctype.o string.o vsprintf.o cmdline.o \
rbtree.o radix-tree.o dump_stack.o \
lib-y += kobject.o kref.o kobject_uevent.o klist.o
diff -Nurb linux-2.6.22-570/lib/argv_split.c linux-2.6.22-590/lib/argv_split.c
--- linux-2.6.22-570/lib/argv_split.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/lib/argv_split.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/lib/argv_split.c 2008-03-20 13:28:03.000000000 -0400
@@ -0,0 +1,159 @@
+/*
+ * Helper function for splitting a string into an argv-like array.
+#endif
diff -Nurb linux-2.6.22-570/lib/check_signature.c linux-2.6.22-590/lib/check_signature.c
--- linux-2.6.22-570/lib/check_signature.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/lib/check_signature.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/lib/check_signature.c 2008-03-20 13:28:03.000000000 -0400
@@ -0,0 +1,26 @@
+#include <linux/io.h>
+#include <linux/module.h>
+EXPORT_SYMBOL(check_signature);
diff -Nurb linux-2.6.22-570/lib/idr.c linux-2.6.22-590/lib/idr.c
--- linux-2.6.22-570/lib/idr.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/lib/idr.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/lib/idr.c 2008-03-20 13:28:03.000000000 -0400
@@ -70,6 +70,26 @@
spin_unlock_irqrestore(&idp->lock, flags);
}
+EXPORT_SYMBOL(ida_init);
diff -Nurb linux-2.6.22-570/lib/kobject.c linux-2.6.22-590/lib/kobject.c
--- linux-2.6.22-570/lib/kobject.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/lib/kobject.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/lib/kobject.c 2008-03-20 13:28:03.000000000 -0400
@@ -44,11 +44,11 @@
return error;
}
* @new_parent: object's new parent (can be NULL)
diff -Nurb linux-2.6.22-570/lib/kobject_uevent.c linux-2.6.22-590/lib/kobject_uevent.c
--- linux-2.6.22-570/lib/kobject_uevent.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/lib/kobject_uevent.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/lib/kobject_uevent.c 2008-03-20 13:28:03.000000000 -0400
@@ -208,7 +208,7 @@
argv [0] = uevent_helper;
argv [1] = (char *)subsystem;
"kobject_uevent: unable to create netlink socket!\n");
diff -Nurb linux-2.6.22-570/lib/pagewalk.c linux-2.6.22-590/lib/pagewalk.c
--- linux-2.6.22-570/lib/pagewalk.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/lib/pagewalk.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/lib/pagewalk.c 2008-03-20 13:28:03.000000000 -0400
@@ -0,0 +1,112 @@
+#include <linux/mm.h>
+#include <linux/highmem.h>
+}
diff -Nurb linux-2.6.22-570/lib/radix-tree.c linux-2.6.22-590/lib/radix-tree.c
--- linux-2.6.22-570/lib/radix-tree.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/lib/radix-tree.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/lib/radix-tree.c 2008-03-20 13:28:03.000000000 -0400
@@ -93,7 +93,8 @@
struct radix_tree_node *ret;
gfp_t gfp_mask = root_gfp_mask(root);
preempt_disable();
diff -Nurb linux-2.6.22-570/mm/filemap.c linux-2.6.22-590/mm/filemap.c
--- linux-2.6.22-570/mm/filemap.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/mm/filemap.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/mm/filemap.c 2008-03-20 13:28:03.000000000 -0400
@@ -1334,39 +1334,38 @@
#define MMAP_LOTSAMISS (100)
}
diff -Nurb linux-2.6.22-570/mm/filemap_xip.c linux-2.6.22-590/mm/filemap_xip.c
---- linux-2.6.22-570/mm/filemap_xip.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/mm/filemap_xip.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/mm/filemap_xip.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/mm/filemap_xip.c 2008-03-20 13:28:03.000000000 -0400
@@ -228,62 +228,67 @@
}
}
EXPORT_SYMBOL_GPL(xip_file_mmap);
diff -Nurb linux-2.6.22-570/mm/fremap.c linux-2.6.22-590/mm/fremap.c
---- linux-2.6.22-570/mm/fremap.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/mm/fremap.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/mm/fremap.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/mm/fremap.c 2008-03-20 13:28:03.000000000 -0400
@@ -129,6 +129,25 @@
return err;
}
up_read(&mm->mmap_sem);
else
diff -Nurb linux-2.6.22-570/mm/hugetlb.c linux-2.6.22-590/mm/hugetlb.c
---- linux-2.6.22-570/mm/hugetlb.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/mm/hugetlb.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/mm/hugetlb.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/mm/hugetlb.c 2008-03-20 13:28:03.000000000 -0400
@@ -28,6 +28,9 @@
static struct list_head hugepage_freelists[MAX_NUMNODES];
static unsigned int nr_huge_pages_node[MAX_NUMNODES];
int hugetlb_report_meminfo(char *buf)
diff -Nurb linux-2.6.22-570/mm/memory.c linux-2.6.22-590/mm/memory.c
---- linux-2.6.22-570/mm/memory.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/mm/memory.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/mm/memory.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/mm/memory.c 2008-03-20 13:28:03.000000000 -0400
@@ -1052,7 +1052,8 @@
if (pages)
foll_flags |= FOLL_GET;
pmd, write_access);
diff -Nurb linux-2.6.22-570/mm/mempolicy.c linux-2.6.22-590/mm/mempolicy.c
--- linux-2.6.22-570/mm/mempolicy.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/mm/mempolicy.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/mm/mempolicy.c 2008-03-20 13:28:03.000000000 -0400
@@ -594,7 +594,7 @@
static struct page *new_node_page(struct page *page, unsigned long node, int **x)
-
diff -Nurb linux-2.6.22-570/mm/migrate.c linux-2.6.22-590/mm/migrate.c
--- linux-2.6.22-570/mm/migrate.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/mm/migrate.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/mm/migrate.c 2008-03-20 13:28:03.000000000 -0400
@@ -761,7 +761,8 @@
*result = &pm->status;
/*
diff -Nurb linux-2.6.22-570/mm/mmap.c linux-2.6.22-590/mm/mmap.c
---- linux-2.6.22-570/mm/mmap.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/mm/mmap.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/mm/mmap.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/mm/mmap.c 2008-03-20 13:28:03.000000000 -0400
@@ -202,6 +202,17 @@
}
unmap_and_free_vma:
diff -Nurb linux-2.6.22-570/mm/mremap.c linux-2.6.22-590/mm/mremap.c
---- linux-2.6.22-570/mm/mremap.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/mm/mremap.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/mm/mremap.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/mm/mremap.c 2008-03-20 13:28:03.000000000 -0400
@@ -292,6 +292,10 @@
if ((addr <= new_addr) && (addr+old_len) > new_addr)
goto out;
}
ret = move_vma(vma, addr, old_len, new_len, new_addr);
diff -Nurb linux-2.6.22-570/mm/nommu.c linux-2.6.22-590/mm/nommu.c
---- linux-2.6.22-570/mm/nommu.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/mm/nommu.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/mm/nommu.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/mm/nommu.c 2008-03-20 13:28:03.000000000 -0400
@@ -639,7 +639,7 @@
}
BUG();
return NULL;
diff -Nurb linux-2.6.22-570/mm/page_alloc.c linux-2.6.22-590/mm/page_alloc.c
---- linux-2.6.22-570/mm/page_alloc.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/mm/page_alloc.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/mm/page_alloc.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/mm/page_alloc.c 2008-03-20 13:28:03.000000000 -0400
@@ -143,6 +143,42 @@
EXPORT_SYMBOL(nr_node_ids);
#endif
+}
diff -Nurb linux-2.6.22-570/mm/pdflush.c linux-2.6.22-590/mm/pdflush.c
--- linux-2.6.22-570/mm/pdflush.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/mm/pdflush.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/mm/pdflush.c 2008-03-20 13:28:03.000000000 -0400
@@ -92,6 +92,7 @@
static int __pdflush(struct pdflush_work *my_work)
{
my_work->who = current;
INIT_LIST_HEAD(&my_work->list);
diff -Nurb linux-2.6.22-570/mm/rmap.c linux-2.6.22-590/mm/rmap.c
---- linux-2.6.22-570/mm/rmap.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/mm/rmap.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/mm/rmap.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/mm/rmap.c 2008-03-20 13:28:03.000000000 -0400
@@ -622,8 +622,10 @@
printk (KERN_EMERG " page->count = %x\n", page_count(page));
printk (KERN_EMERG " page->mapping = %p\n", page->mapping);
print_symbol (KERN_EMERG " vma->vm_file->f_op->mmap = %s\n", (unsigned long)vma->vm_file->f_op->mmap);
BUG();
diff -Nurb linux-2.6.22-570/mm/shmem.c linux-2.6.22-590/mm/shmem.c
---- linux-2.6.22-570/mm/shmem.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/mm/shmem.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/mm/shmem.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/mm/shmem.c 2008-03-20 13:28:03.000000000 -0400
@@ -81,6 +81,7 @@
SGP_READ, /* don't exceed i_size, don't allocate page */
SGP_CACHE, /* don't exceed i_size, may allocate page */
return 0;
}
diff -Nurb linux-2.6.22-570/mm/shmem.c.orig linux-2.6.22-590/mm/shmem.c.orig
---- linux-2.6.22-570/mm/shmem.c.orig 2008-03-18 15:57:37.000000000 -0400
+--- linux-2.6.22-570/mm/shmem.c.orig 2008-03-20 13:25:40.000000000 -0400
+++ linux-2.6.22-590/mm/shmem.c.orig 1969-12-31 19:00:00.000000000 -0500
@@ -1,2619 +0,0 @@
-/*
- return 0;
-}
diff -Nurb linux-2.6.22-570/mm/slab.c linux-2.6.22-590/mm/slab.c
---- linux-2.6.22-570/mm/slab.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/mm/slab.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/mm/slab.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/mm/slab.c 2008-03-20 13:28:03.000000000 -0400
@@ -1639,6 +1639,8 @@
#endif
page = alloc_pages_node(nodeid, flags, cachep->gfporder);
if (!page)
diff -Nurb linux-2.6.22-570/mm/slub.c linux-2.6.22-590/mm/slub.c
---- linux-2.6.22-570/mm/slub.c 2008-03-18 15:57:37.000000000 -0400
-+++ linux-2.6.22-590/mm/slub.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/mm/slub.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/mm/slub.c 2008-03-20 13:28:03.000000000 -0400
@@ -985,6 +985,9 @@
if (s->flags & SLAB_CACHE_DMA)
flags |= SLUB_DMA;
return 1;
diff -Nurb linux-2.6.22-570/mm/swap_state.c linux-2.6.22-590/mm/swap_state.c
--- linux-2.6.22-570/mm/swap_state.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/mm/swap_state.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/mm/swap_state.c 2008-03-20 13:28:03.000000000 -0400
@@ -334,7 +334,8 @@
* Get a new page to read into from swap.
*/
}
diff -Nurb linux-2.6.22-570/mm/truncate.c linux-2.6.22-590/mm/truncate.c
--- linux-2.6.22-570/mm/truncate.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/mm/truncate.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/mm/truncate.c 2008-03-20 13:28:03.000000000 -0400
@@ -82,7 +82,7 @@
/*
* If truncate cannot remove the fs-private metadata from the page, the page
ret = -EIO;
diff -Nurb linux-2.6.22-570/mm/util.c linux-2.6.22-590/mm/util.c
--- linux-2.6.22-570/mm/util.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/mm/util.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/mm/util.c 2008-03-20 13:28:03.000000000 -0400
@@ -18,9 +18,8 @@
}
EXPORT_SYMBOL(__kzalloc);
*/
diff -Nurb linux-2.6.22-570/mm/vmalloc.c linux-2.6.22-590/mm/vmalloc.c
--- linux-2.6.22-570/mm/vmalloc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/mm/vmalloc.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/mm/vmalloc.c 2008-03-20 13:28:03.000000000 -0400
@@ -68,12 +68,12 @@
} while (pud++, addr = next, addr != end);
}
static int vmap_pte_range(pmd_t *pmd, unsigned long addr,
diff -Nurb linux-2.6.22-570/mm/vmscan.c linux-2.6.22-590/mm/vmscan.c
--- linux-2.6.22-570/mm/vmscan.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/mm/vmscan.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/mm/vmscan.c 2008-03-20 13:28:03.000000000 -0400
@@ -1272,6 +1272,34 @@
return nr_reclaimed;
}
diff -Nurb linux-2.6.22-570/net/802/tr.c linux-2.6.22-590/net/802/tr.c
--- linux-2.6.22-570/net/802/tr.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/802/tr.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/802/tr.c 2008-03-20 13:28:03.000000000 -0400
@@ -36,6 +36,7 @@
#include <linux/seq_file.h>
#include <linux/init.h>
diff -Nurb linux-2.6.22-570/net/8021q/Makefile linux-2.6.22-590/net/8021q/Makefile
--- linux-2.6.22-570/net/8021q/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/8021q/Makefile 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/8021q/Makefile 2008-03-20 13:28:03.000000000 -0400
@@ -4,7 +4,7 @@
obj-$(CONFIG_VLAN_8021Q) += 8021q.o
8021q-objs += vlanproc.o
diff -Nurb linux-2.6.22-570/net/8021q/vlan.c linux-2.6.22-590/net/8021q/vlan.c
--- linux-2.6.22-570/net/8021q/vlan.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/8021q/vlan.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/8021q/vlan.c 2008-03-20 13:28:03.000000000 -0400
@@ -31,6 +31,7 @@
#include <net/arp.h>
#include <linux/rtnetlink.h>
diff -Nurb linux-2.6.22-570/net/8021q/vlan.h linux-2.6.22-590/net/8021q/vlan.h
--- linux-2.6.22-570/net/8021q/vlan.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/8021q/vlan.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/8021q/vlan.h 2008-03-20 13:28:03.000000000 -0400
@@ -62,11 +62,24 @@
int vlan_dev_open(struct net_device* dev);
int vlan_dev_stop(struct net_device* dev);
+
#endif /* !(__BEN_VLAN_802_1Q_INC__) */
diff -Nurb linux-2.6.22-570/net/8021q/vlan_dev.c linux-2.6.22-590/net/8021q/vlan_dev.c
---- linux-2.6.22-570/net/8021q/vlan_dev.c 2008-03-18 15:57:37.000000000 -0400
-+++ linux-2.6.22-590/net/8021q/vlan_dev.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/8021q/vlan_dev.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/net/8021q/vlan_dev.c 2008-03-20 13:28:03.000000000 -0400
@@ -73,7 +73,7 @@
static inline struct sk_buff *vlan_check_reorder_header(struct sk_buff *skb)
if (!err)
diff -Nurb linux-2.6.22-570/net/8021q/vlan_netlink.c linux-2.6.22-590/net/8021q/vlan_netlink.c
--- linux-2.6.22-570/net/8021q/vlan_netlink.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/net/8021q/vlan_netlink.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/8021q/vlan_netlink.c 2008-03-20 13:28:03.000000000 -0400
@@ -0,0 +1,237 @@
+/*
+ * VLAN netlink control interface
+MODULE_ALIAS_RTNL_LINK("vlan");
diff -Nurb linux-2.6.22-570/net/8021q/vlanproc.c linux-2.6.22-590/net/8021q/vlanproc.c
--- linux-2.6.22-570/net/8021q/vlanproc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/8021q/vlanproc.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/8021q/vlanproc.c 2008-03-20 13:28:03.000000000 -0400
@@ -33,6 +33,7 @@
#include <linux/fs.h>
#include <linux/netdevice.h>
}
diff -Nurb linux-2.6.22-570/net/Kconfig linux-2.6.22-590/net/Kconfig
--- linux-2.6.22-570/net/Kconfig 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/Kconfig 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/Kconfig 2008-03-20 13:28:03.000000000 -0400
@@ -27,6 +27,13 @@
menu "Networking options"
source "net/xfrm/Kconfig"
diff -Nurb linux-2.6.22-570/net/Makefile linux-2.6.22-590/net/Makefile
--- linux-2.6.22-570/net/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/Makefile 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/Makefile 2008-03-20 13:28:03.000000000 -0400
@@ -14,7 +14,7 @@
# LLC has to be linked before the files in net/802/
obj-$(CONFIG_XFRM) += xfrm/
diff -Nurb linux-2.6.22-570/net/appletalk/aarp.c linux-2.6.22-590/net/appletalk/aarp.c
--- linux-2.6.22-570/net/appletalk/aarp.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/appletalk/aarp.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/appletalk/aarp.c 2008-03-20 13:28:03.000000000 -0400
@@ -330,15 +330,19 @@
static int aarp_device_event(struct notifier_block *this, unsigned long event,
void *ptr)
goto out0;
diff -Nurb linux-2.6.22-570/net/appletalk/atalk_proc.c linux-2.6.22-590/net/appletalk/atalk_proc.c
--- linux-2.6.22-570/net/appletalk/atalk_proc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/appletalk/atalk_proc.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/appletalk/atalk_proc.c 2008-03-20 13:28:03.000000000 -0400
@@ -13,6 +13,7 @@
#include <linux/seq_file.h>
#include <net/sock.h>
}
diff -Nurb linux-2.6.22-570/net/appletalk/ddp.c linux-2.6.22-590/net/appletalk/ddp.c
--- linux-2.6.22-570/net/appletalk/ddp.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/appletalk/ddp.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/appletalk/ddp.c 2008-03-20 13:28:03.000000000 -0400
@@ -647,9 +647,14 @@
static int ddp_device_event(struct notifier_block *this, unsigned long event,
void *ptr)
struct ddpehdr *ddp;
diff -Nurb linux-2.6.22-570/net/atm/clip.c linux-2.6.22-590/net/atm/clip.c
--- linux-2.6.22-570/net/atm/clip.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/atm/clip.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/atm/clip.c 2008-03-20 13:28:03.000000000 -0400
@@ -293,7 +293,7 @@
struct neigh_parms *parms;
#endif
diff -Nurb linux-2.6.22-570/net/atm/common.c linux-2.6.22-590/net/atm/common.c
--- linux-2.6.22-570/net/atm/common.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/atm/common.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/atm/common.c 2008-03-20 13:28:03.000000000 -0400
@@ -132,7 +132,7 @@
.obj_size = sizeof(struct atm_vcc),
};
sock_init_data(sock, sk);
diff -Nurb linux-2.6.22-570/net/atm/common.h linux-2.6.22-590/net/atm/common.h
--- linux-2.6.22-570/net/atm/common.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/atm/common.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/atm/common.h 2008-03-20 13:28:03.000000000 -0400
@@ -10,7 +10,7 @@
#include <linux/poll.h> /* for poll_table */
int vcc_recvmsg(struct kiocb *iocb, struct socket *sock, struct msghdr *msg,
diff -Nurb linux-2.6.22-570/net/atm/mpc.c linux-2.6.22-590/net/atm/mpc.c
--- linux-2.6.22-570/net/atm/mpc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/atm/mpc.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/atm/mpc.c 2008-03-20 13:28:03.000000000 -0400
@@ -244,7 +244,7 @@
char name[IFNAMSIZ];
diff -Nurb linux-2.6.22-570/net/atm/proc.c linux-2.6.22-590/net/atm/proc.c
--- linux-2.6.22-570/net/atm/proc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/atm/proc.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/atm/proc.c 2008-03-20 13:28:03.000000000 -0400
@@ -22,6 +22,7 @@
#include <linux/netdevice.h>
#include <linux/atmclip.h>
for (e = atm_proc_ents; e->name; e++) {
diff -Nurb linux-2.6.22-570/net/atm/pvc.c linux-2.6.22-590/net/atm/pvc.c
--- linux-2.6.22-570/net/atm/pvc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/atm/pvc.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/atm/pvc.c 2008-03-20 13:28:03.000000000 -0400
@@ -124,10 +124,13 @@
};
diff -Nurb linux-2.6.22-570/net/atm/svc.c linux-2.6.22-590/net/atm/svc.c
--- linux-2.6.22-570/net/atm/svc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/atm/svc.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/atm/svc.c 2008-03-20 13:28:03.000000000 -0400
@@ -33,7 +33,7 @@
#endif
ATM_SD(sock)->remote.sas_family = AF_ATMSVC;
diff -Nurb linux-2.6.22-570/net/ax25/af_ax25.c linux-2.6.22-590/net/ax25/af_ax25.c
--- linux-2.6.22-570/net/ax25/af_ax25.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ax25/af_ax25.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ax25/af_ax25.c 2008-03-20 13:28:03.000000000 -0400
@@ -47,6 +47,7 @@
#include <net/tcp_states.h>
#include <net/ip.h>
ax25_dev_free();
diff -Nurb linux-2.6.22-570/net/ax25/ax25_in.c linux-2.6.22-590/net/ax25/ax25_in.c
--- linux-2.6.22-570/net/ax25/ax25_in.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ax25/ax25_in.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ax25/ax25_in.c 2008-03-20 13:28:03.000000000 -0400
@@ -451,6 +451,11 @@
skb->sk = NULL; /* Initially we don't know who it's for */
skb->destructor = NULL; /* Who initializes this, dammit?! */
return 0;
diff -Nurb linux-2.6.22-570/net/bluetooth/af_bluetooth.c linux-2.6.22-590/net/bluetooth/af_bluetooth.c
--- linux-2.6.22-570/net/bluetooth/af_bluetooth.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/bluetooth/af_bluetooth.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/bluetooth/af_bluetooth.c 2008-03-20 13:28:03.000000000 -0400
@@ -95,10 +95,13 @@
}
EXPORT_SYMBOL(bt_sock_unregister);
diff -Nurb linux-2.6.22-570/net/bluetooth/bnep/core.c linux-2.6.22-590/net/bluetooth/bnep/core.c
--- linux-2.6.22-570/net/bluetooth/bnep/core.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/bluetooth/bnep/core.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/bluetooth/bnep/core.c 2008-03-20 13:28:03.000000000 -0400
@@ -36,6 +36,7 @@
#include <linux/signal.h>
#include <linux/init.h>
add_wait_queue(sk->sk_sleep, &wait);
diff -Nurb linux-2.6.22-570/net/bluetooth/bnep/sock.c linux-2.6.22-590/net/bluetooth/bnep/sock.c
--- linux-2.6.22-570/net/bluetooth/bnep/sock.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/bluetooth/bnep/sock.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/bluetooth/bnep/sock.c 2008-03-20 13:28:03.000000000 -0400
@@ -204,7 +204,7 @@
.obj_size = sizeof(struct bt_sock)
};
diff -Nurb linux-2.6.22-570/net/bluetooth/cmtp/core.c linux-2.6.22-590/net/bluetooth/cmtp/core.c
--- linux-2.6.22-570/net/bluetooth/cmtp/core.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/bluetooth/cmtp/core.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/bluetooth/cmtp/core.c 2008-03-20 13:28:03.000000000 -0400
@@ -29,6 +29,7 @@
#include <linux/slab.h>
#include <linux/poll.h>
add_wait_queue(sk->sk_sleep, &wait);
diff -Nurb linux-2.6.22-570/net/bluetooth/cmtp/sock.c linux-2.6.22-590/net/bluetooth/cmtp/sock.c
--- linux-2.6.22-570/net/bluetooth/cmtp/sock.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/bluetooth/cmtp/sock.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/bluetooth/cmtp/sock.c 2008-03-20 13:28:03.000000000 -0400
@@ -195,7 +195,7 @@
.obj_size = sizeof(struct bt_sock)
};
diff -Nurb linux-2.6.22-570/net/bluetooth/hci_sock.c linux-2.6.22-590/net/bluetooth/hci_sock.c
--- linux-2.6.22-570/net/bluetooth/hci_sock.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/bluetooth/hci_sock.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/bluetooth/hci_sock.c 2008-03-20 13:28:03.000000000 -0400
@@ -618,7 +618,7 @@
.obj_size = sizeof(struct hci_pinfo)
};
diff -Nurb linux-2.6.22-570/net/bluetooth/hidp/core.c linux-2.6.22-590/net/bluetooth/hidp/core.c
--- linux-2.6.22-570/net/bluetooth/hidp/core.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/bluetooth/hidp/core.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/bluetooth/hidp/core.c 2008-03-20 13:28:03.000000000 -0400
@@ -28,6 +28,7 @@
#include <linux/sched.h>
#include <linux/slab.h>
init_waitqueue_entry(&intr_wait, current);
diff -Nurb linux-2.6.22-570/net/bluetooth/hidp/sock.c linux-2.6.22-590/net/bluetooth/hidp/sock.c
--- linux-2.6.22-570/net/bluetooth/hidp/sock.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/bluetooth/hidp/sock.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/bluetooth/hidp/sock.c 2008-03-20 13:28:03.000000000 -0400
@@ -246,7 +246,7 @@
.obj_size = sizeof(struct bt_sock)
};
diff -Nurb linux-2.6.22-570/net/bluetooth/l2cap.c linux-2.6.22-590/net/bluetooth/l2cap.c
--- linux-2.6.22-570/net/bluetooth/l2cap.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/bluetooth/l2cap.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/bluetooth/l2cap.c 2008-03-20 13:28:03.000000000 -0400
@@ -518,11 +518,11 @@
.obj_size = sizeof(struct l2cap_pinfo)
};
diff -Nurb linux-2.6.22-570/net/bluetooth/rfcomm/core.c linux-2.6.22-590/net/bluetooth/rfcomm/core.c
--- linux-2.6.22-570/net/bluetooth/rfcomm/core.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/bluetooth/rfcomm/core.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/bluetooth/rfcomm/core.c 2008-03-20 13:28:03.000000000 -0400
@@ -33,6 +33,7 @@
#include <linux/sched.h>
#include <linux/signal.h>
diff -Nurb linux-2.6.22-570/net/bluetooth/rfcomm/sock.c linux-2.6.22-590/net/bluetooth/rfcomm/sock.c
--- linux-2.6.22-570/net/bluetooth/rfcomm/sock.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/bluetooth/rfcomm/sock.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/bluetooth/rfcomm/sock.c 2008-03-20 13:28:03.000000000 -0400
@@ -282,12 +282,12 @@
.obj_size = sizeof(struct rfcomm_pinfo)
};
diff -Nurb linux-2.6.22-570/net/bluetooth/sco.c linux-2.6.22-590/net/bluetooth/sco.c
--- linux-2.6.22-570/net/bluetooth/sco.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/bluetooth/sco.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/bluetooth/sco.c 2008-03-20 13:28:03.000000000 -0400
@@ -414,11 +414,11 @@
.obj_size = sizeof(struct sco_pinfo)
};
bh_unlock_sock(parent);
goto done;
diff -Nurb linux-2.6.22-570/net/bridge/br_if.c linux-2.6.22-590/net/bridge/br_if.c
---- linux-2.6.22-570/net/bridge/br_if.c 2008-03-18 15:57:37.000000000 -0400
-+++ linux-2.6.22-590/net/bridge/br_if.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/bridge/br_if.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/net/bridge/br_if.c 2008-03-20 13:28:03.000000000 -0400
@@ -45,7 +45,7 @@
old_fs = get_fs();
rtnl_unlock();
diff -Nurb linux-2.6.22-570/net/bridge/br_ioctl.c linux-2.6.22-590/net/bridge/br_ioctl.c
--- linux-2.6.22-570/net/bridge/br_ioctl.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/bridge/br_ioctl.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/bridge/br_ioctl.c 2008-03-20 13:28:03.000000000 -0400
@@ -18,6 +18,7 @@
#include <linux/if_bridge.h>
#include <linux/netdevice.h>
switch (cmd) {
case SIOCGIFBR:
diff -Nurb linux-2.6.22-570/net/bridge/br_netfilter.c linux-2.6.22-590/net/bridge/br_netfilter.c
---- linux-2.6.22-570/net/bridge/br_netfilter.c 2008-03-18 15:57:37.000000000 -0400
-+++ linux-2.6.22-590/net/bridge/br_netfilter.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/bridge/br_netfilter.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/net/bridge/br_netfilter.c 2008-03-20 13:28:03.000000000 -0400
@@ -310,6 +310,7 @@
if ((err = ip_route_input(skb, iph->daddr, iph->saddr, iph->tos, dev))) {
struct rtable *rt;
return NF_STOP;
diff -Nurb linux-2.6.22-570/net/bridge/br_netlink.c linux-2.6.22-590/net/bridge/br_netlink.c
--- linux-2.6.22-570/net/bridge/br_netlink.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/bridge/br_netlink.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/bridge/br_netlink.c 2008-03-20 13:28:03.000000000 -0400
@@ -12,6 +12,8 @@
#include <linux/kernel.h>
diff -Nurb linux-2.6.22-570/net/bridge/br_notify.c linux-2.6.22-590/net/bridge/br_notify.c
--- linux-2.6.22-570/net/bridge/br_notify.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/bridge/br_notify.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/bridge/br_notify.c 2008-03-20 13:28:03.000000000 -0400
@@ -15,6 +15,7 @@
#include <linux/kernel.h>
return NOTIFY_DONE;
diff -Nurb linux-2.6.22-570/net/bridge/br_private.h linux-2.6.22-590/net/bridge/br_private.h
--- linux-2.6.22-570/net/bridge/br_private.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/bridge/br_private.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/bridge/br_private.h 2008-03-20 13:28:03.000000000 -0400
@@ -196,7 +196,7 @@
/* br_ioctl.c */
#ifdef CONFIG_BRIDGE_NETFILTER
diff -Nurb linux-2.6.22-570/net/bridge/br_stp_bpdu.c linux-2.6.22-590/net/bridge/br_stp_bpdu.c
--- linux-2.6.22-570/net/bridge/br_stp_bpdu.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/bridge/br_stp_bpdu.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/bridge/br_stp_bpdu.c 2008-03-20 13:28:03.000000000 -0400
@@ -17,6 +17,7 @@
#include <linux/netfilter_bridge.h>
#include <linux/etherdevice.h>
diff -Nurb linux-2.6.22-570/net/bridge/br_stp_if.c linux-2.6.22-590/net/bridge/br_stp_if.c
--- linux-2.6.22-570/net/bridge/br_stp_if.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/bridge/br_stp_if.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/bridge/br_stp_if.c 2008-03-20 13:28:03.000000000 -0400
@@ -125,7 +125,7 @@
char *argv[] = { BR_STP_PROG, br->dev->name, "start", NULL };
char *envp[] = { NULL };
printk(KERN_INFO "%s: userspace STP started\n", br->dev->name);
diff -Nurb linux-2.6.22-570/net/bridge/br_sysfs_br.c linux-2.6.22-590/net/bridge/br_sysfs_br.c
--- linux-2.6.22-570/net/bridge/br_sysfs_br.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/bridge/br_sysfs_br.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/bridge/br_sysfs_br.c 2008-03-20 13:28:03.000000000 -0400
@@ -360,8 +360,9 @@
*
* Returns the number of bytes read.
diff -Nurb linux-2.6.22-570/net/bridge/br_sysfs_if.c linux-2.6.22-590/net/bridge/br_sysfs_if.c
--- linux-2.6.22-570/net/bridge/br_sysfs_if.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/bridge/br_sysfs_if.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/bridge/br_sysfs_if.c 2008-03-20 13:28:03.000000000 -0400
@@ -29,8 +29,7 @@
#define BRPORT_ATTR(_name,_mode,_show,_store) \
struct brport_attribute brport_attr_##_name = { \
.store = _store, \
};
diff -Nurb linux-2.6.22-570/net/bridge/netfilter/ebt_ulog.c linux-2.6.22-590/net/bridge/netfilter/ebt_ulog.c
---- linux-2.6.22-570/net/bridge/netfilter/ebt_ulog.c 2008-03-18 15:57:37.000000000 -0400
-+++ linux-2.6.22-590/net/bridge/netfilter/ebt_ulog.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/bridge/netfilter/ebt_ulog.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/net/bridge/netfilter/ebt_ulog.c 2008-03-20 13:28:03.000000000 -0400
@@ -301,8 +301,9 @@
spin_lock_init(&ulog_buffers[i].lock);
}
else if ((ret = ebt_register_watcher(&ulog)))
diff -Nurb linux-2.6.22-570/net/bridge/netfilter/ebtable_filter.c linux-2.6.22-590/net/bridge/netfilter/ebtable_filter.c
--- linux-2.6.22-570/net/bridge/netfilter/ebtable_filter.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/bridge/netfilter/ebtable_filter.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/bridge/netfilter/ebtable_filter.c 2008-03-20 13:28:03.000000000 -0400
@@ -64,6 +64,10 @@
ebt_hook (unsigned int hook, struct sk_buff **pskb, const struct net_device *in,
const struct net_device *out, int (*okfn)(struct sk_buff *))
diff -Nurb linux-2.6.22-570/net/bridge/netfilter/ebtable_nat.c linux-2.6.22-590/net/bridge/netfilter/ebtable_nat.c
--- linux-2.6.22-570/net/bridge/netfilter/ebtable_nat.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/bridge/netfilter/ebtable_nat.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/bridge/netfilter/ebtable_nat.c 2008-03-20 13:28:03.000000000 -0400
@@ -64,6 +64,10 @@
ebt_nat_dst(unsigned int hook, struct sk_buff **pskb, const struct net_device *in
, const struct net_device *out, int (*okfn)(struct sk_buff *))
diff -Nurb linux-2.6.22-570/net/bridge/netfilter/ebtables.c linux-2.6.22-590/net/bridge/netfilter/ebtables.c
--- linux-2.6.22-570/net/bridge/netfilter/ebtables.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/bridge/netfilter/ebtables.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/bridge/netfilter/ebtables.c 2008-03-20 13:28:03.000000000 -0400
@@ -28,6 +28,7 @@
#include <linux/smp.h>
#include <linux/cpumask.h>
diff -Nurb linux-2.6.22-570/net/core/Makefile linux-2.6.22-590/net/core/Makefile
--- linux-2.6.22-570/net/core/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/core/Makefile 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/core/Makefile 2008-03-20 13:28:03.000000000 -0400
@@ -3,7 +3,7 @@
#
obj-$(CONFIG_SYSCTL) += sysctl_net_core.o
diff -Nurb linux-2.6.22-570/net/core/dev.c linux-2.6.22-590/net/core/dev.c
---- linux-2.6.22-570/net/core/dev.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/core/dev.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/core/dev.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/core/dev.c 2008-03-20 13:28:03.000000000 -0400
@@ -116,6 +116,7 @@
#include <linux/dmaengine.h>
#include <linux/err.h>
* Initialise the packet receive queues.
diff -Nurb linux-2.6.22-570/net/core/dev_mcast.c linux-2.6.22-590/net/core/dev_mcast.c
--- linux-2.6.22-570/net/core/dev_mcast.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/core/dev_mcast.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/core/dev_mcast.c 2008-03-20 13:28:03.000000000 -0400
@@ -46,6 +46,7 @@
#include <linux/skbuff.h>
#include <net/sock.h>
EXPORT_SYMBOL(dev_mc_add);
diff -Nurb linux-2.6.22-570/net/core/dst.c linux-2.6.22-590/net/core/dst.c
--- linux-2.6.22-570/net/core/dst.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/core/dst.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/core/dst.c 2008-03-20 13:28:03.000000000 -0400
@@ -15,7 +15,9 @@
#include <linux/skbuff.h>
#include <linux/string.h>
case NETDEV_DOWN:
diff -Nurb linux-2.6.22-570/net/core/ethtool.c linux-2.6.22-590/net/core/ethtool.c
--- linux-2.6.22-570/net/core/ethtool.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/core/ethtool.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/core/ethtool.c 2008-03-20 13:28:03.000000000 -0400
@@ -798,9 +798,9 @@
/* The main entry point in this file. Called from net/core/dev.c */
int rc;
diff -Nurb linux-2.6.22-570/net/core/fib_rules.c linux-2.6.22-590/net/core/fib_rules.c
--- linux-2.6.22-570/net/core/fib_rules.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/core/fib_rules.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/core/fib_rules.c 2008-03-20 13:28:03.000000000 -0400
@@ -11,21 +11,20 @@
#include <linux/types.h>
#include <linux/kernel.h>
subsys_initcall(fib_rules_init);
diff -Nurb linux-2.6.22-570/net/core/neighbour.c linux-2.6.22-590/net/core/neighbour.c
--- linux-2.6.22-570/net/core/neighbour.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/core/neighbour.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/core/neighbour.c 2008-03-20 13:28:03.000000000 -0400
@@ -33,6 +33,7 @@
#include <linux/rtnetlink.h>
#include <linux/random.h>
EXPORT_SYMBOL(neigh_resolve_output);
diff -Nurb linux-2.6.22-570/net/core/net-sysfs.c linux-2.6.22-590/net/core/net-sysfs.c
--- linux-2.6.22-570/net/core/net-sysfs.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/core/net-sysfs.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/core/net-sysfs.c 2008-03-20 13:28:03.000000000 -0400
@@ -13,7 +13,9 @@
#include <linux/kernel.h>
#include <linux/netdevice.h>
int netdev_sysfs_init(void)
diff -Nurb linux-2.6.22-570/net/core/net_namespace.c linux-2.6.22-590/net/core/net_namespace.c
--- linux-2.6.22-570/net/core/net_namespace.c 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/net/core/net_namespace.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/core/net_namespace.c 2008-03-20 13:28:03.000000000 -0400
@@ -0,0 +1,332 @@
+#include <linux/workqueue.h>
+#include <linux/rtnetlink.h>
+}
+EXPORT_SYMBOL_GPL(unregister_pernet_device);
diff -Nurb linux-2.6.22-570/net/core/netpoll.c linux-2.6.22-590/net/core/netpoll.c
---- linux-2.6.22-570/net/core/netpoll.c 2008-03-18 15:57:37.000000000 -0400
-+++ linux-2.6.22-590/net/core/netpoll.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/core/netpoll.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/net/core/netpoll.c 2008-03-20 13:28:03.000000000 -0400
@@ -503,7 +503,8 @@
np->rx_hook(np, ntohs(uh->source),
printk(KERN_ERR "%s: %s doesn't exist, aborting.\n",
np->name, np->dev_name);
diff -Nurb linux-2.6.22-570/net/core/pktgen.c linux-2.6.22-590/net/core/pktgen.c
---- linux-2.6.22-570/net/core/pktgen.c 2008-03-18 15:57:37.000000000 -0400
-+++ linux-2.6.22-590/net/core/pktgen.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/core/pktgen.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/net/core/pktgen.c 2008-03-20 13:28:03.000000000 -0400
@@ -155,6 +155,7 @@
#include <net/checksum.h>
#include <net/ipv6.h>
module_init(pg_init);
diff -Nurb linux-2.6.22-570/net/core/rtnetlink.c linux-2.6.22-590/net/core/rtnetlink.c
---- linux-2.6.22-570/net/core/rtnetlink.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/core/rtnetlink.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/core/rtnetlink.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/core/rtnetlink.c 2008-03-20 13:28:03.000000000 -0400
@@ -59,7 +59,6 @@
};
EXPORT_SYMBOL(rtnl_lock);
EXPORT_SYMBOL(rtnl_trylock);
diff -Nurb linux-2.6.22-570/net/core/skbuff.c linux-2.6.22-590/net/core/skbuff.c
---- linux-2.6.22-570/net/core/skbuff.c 2008-03-18 15:57:42.000000000 -0400
-+++ linux-2.6.22-590/net/core/skbuff.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/core/skbuff.c 2008-03-20 13:25:49.000000000 -0400
++++ linux-2.6.22-590/net/core/skbuff.c 2008-03-20 13:28:03.000000000 -0400
@@ -417,6 +417,7 @@
C(csum);
C(local_df);
}
diff -Nurb linux-2.6.22-570/net/core/sock.c linux-2.6.22-590/net/core/sock.c
---- linux-2.6.22-570/net/core/sock.c 2008-03-18 15:57:42.000000000 -0400
-+++ linux-2.6.22-590/net/core/sock.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/core/sock.c 2008-03-20 13:25:49.000000000 -0400
++++ linux-2.6.22-590/net/core/sock.c 2008-03-20 13:28:03.000000000 -0400
@@ -123,6 +123,7 @@
#include <net/sock.h>
#include <net/xfrm.h>
subsys_initcall(proto_init);
diff -Nurb linux-2.6.22-570/net/core/sysctl_net_core.c linux-2.6.22-590/net/core/sysctl_net_core.c
--- linux-2.6.22-570/net/core/sysctl_net_core.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/core/sysctl_net_core.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/core/sysctl_net_core.c 2008-03-20 13:28:03.000000000 -0400
@@ -9,25 +9,10 @@
#include <linux/sysctl.h>
#include <linux/module.h>
-#endif
diff -Nurb linux-2.6.22-570/net/dccp/ccids/ccid3.c linux-2.6.22-590/net/dccp/ccids/ccid3.c
--- linux-2.6.22-570/net/dccp/ccids/ccid3.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/dccp/ccids/ccid3.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/dccp/ccids/ccid3.c 2008-03-20 13:28:03.000000000 -0400
@@ -1,8 +1,8 @@
/*
* net/dccp/ccids/ccid3.c
diff -Nurb linux-2.6.22-570/net/dccp/ccids/ccid3.h linux-2.6.22-590/net/dccp/ccids/ccid3.h
--- linux-2.6.22-570/net/dccp/ccids/ccid3.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/dccp/ccids/ccid3.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/dccp/ccids/ccid3.h 2008-03-20 13:28:03.000000000 -0400
@@ -36,6 +36,7 @@
#ifndef _DCCP_CCID3_H_
#define _DCCP_CCID3_H_
struct ccid3_options_received ccid3hctx_options_received;
diff -Nurb linux-2.6.22-570/net/dccp/ccids/lib/loss_interval.c linux-2.6.22-590/net/dccp/ccids/lib/loss_interval.c
--- linux-2.6.22-570/net/dccp/ccids/lib/loss_interval.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/dccp/ccids/lib/loss_interval.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/dccp/ccids/lib/loss_interval.c 2008-03-20 13:28:03.000000000 -0400
@@ -1,8 +1,8 @@
/*
* net/dccp/ccids/lib/loss_interval.c
+module_exit(dccp_li_exit);
diff -Nurb linux-2.6.22-570/net/dccp/ccids/lib/loss_interval.h linux-2.6.22-590/net/dccp/ccids/lib/loss_interval.h
--- linux-2.6.22-570/net/dccp/ccids/lib/loss_interval.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/dccp/ccids/lib/loss_interval.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/dccp/ccids/lib/loss_interval.h 2008-03-20 13:28:03.000000000 -0400
@@ -3,8 +3,8 @@
/*
* net/dccp/ccids/lib/loss_interval.h
#endif /* _DCCP_LI_HIST_ */
diff -Nurb linux-2.6.22-570/net/dccp/dccp.h linux-2.6.22-590/net/dccp/dccp.h
--- linux-2.6.22-570/net/dccp/dccp.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/dccp/dccp.h 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/dccp/dccp.h 2008-03-20 13:28:03.000000000 -0400
@@ -184,7 +184,7 @@
/*
* Checksumming routines
dccp_hdr(skb)->dccph_cscov = 0;
diff -Nurb linux-2.6.22-570/net/dccp/ipv4.c linux-2.6.22-590/net/dccp/ipv4.c
--- linux-2.6.22-570/net/dccp/ipv4.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/dccp/ipv4.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/dccp/ipv4.c 2008-03-20 13:28:03.000000000 -0400
@@ -202,6 +202,7 @@
*/
static void dccp_v4_err(struct sk_buff *skb, u32 info)
* If no socket ...
diff -Nurb linux-2.6.22-570/net/dccp/ipv6.c linux-2.6.22-590/net/dccp/ipv6.c
--- linux-2.6.22-570/net/dccp/ipv6.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/dccp/ipv6.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/dccp/ipv6.c 2008-03-20 13:28:03.000000000 -0400
@@ -94,6 +94,7 @@
static void dccp_v6_err(struct sk_buff *skb, struct inet6_skb_parm *opt,
int type, int code, int offset, __be32 info)
fl.fl6_flowlabel = usin->sin6_flowinfo & IPV6_FLOWINFO_MASK;
diff -Nurb linux-2.6.22-570/net/dccp/probe.c linux-2.6.22-590/net/dccp/probe.c
--- linux-2.6.22-570/net/dccp/probe.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/dccp/probe.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/dccp/probe.c 2008-03-20 13:28:03.000000000 -0400
@@ -30,6 +30,7 @@
#include <linux/module.h>
#include <linux/kfifo.h>
}
diff -Nurb linux-2.6.22-570/net/decnet/af_decnet.c linux-2.6.22-590/net/decnet/af_decnet.c
--- linux-2.6.22-570/net/decnet/af_decnet.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/decnet/af_decnet.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/decnet/af_decnet.c 2008-03-20 13:28:03.000000000 -0400
@@ -131,6 +131,7 @@
#include <net/neighbour.h>
#include <net/dst.h>
proto_unregister(&dn_proto);
}
diff -Nurb linux-2.6.22-570/net/decnet/dn_dev.c linux-2.6.22-590/net/decnet/dn_dev.c
---- linux-2.6.22-570/net/decnet/dn_dev.c 2008-03-18 15:57:37.000000000 -0400
-+++ linux-2.6.22-590/net/decnet/dn_dev.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/decnet/dn_dev.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/net/decnet/dn_dev.c 2008-03-20 13:28:03.000000000 -0400
@@ -47,6 +47,7 @@
#include <net/flow.h>
#include <net/fib_rules.h>
}
diff -Nurb linux-2.6.22-570/net/decnet/dn_fib.c linux-2.6.22-590/net/decnet/dn_fib.c
--- linux-2.6.22-570/net/decnet/dn_fib.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/decnet/dn_fib.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/decnet/dn_fib.c 2008-03-20 13:28:03.000000000 -0400
@@ -203,8 +203,6 @@
struct flowi fl;
struct dn_fib_res res;
continue;
diff -Nurb linux-2.6.22-570/net/decnet/dn_neigh.c linux-2.6.22-590/net/decnet/dn_neigh.c
--- linux-2.6.22-570/net/decnet/dn_neigh.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/decnet/dn_neigh.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/decnet/dn_neigh.c 2008-03-20 13:28:03.000000000 -0400
@@ -38,6 +38,7 @@
#include <linux/rcupdate.h>
#include <linux/jhash.h>
}
diff -Nurb linux-2.6.22-570/net/decnet/dn_nsp_out.c linux-2.6.22-590/net/decnet/dn_nsp_out.c
--- linux-2.6.22-570/net/decnet/dn_nsp_out.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/decnet/dn_nsp_out.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/decnet/dn_nsp_out.c 2008-03-20 13:28:03.000000000 -0400
@@ -91,6 +91,7 @@
}
fl.fld_dst = dn_saddr2dn(&scp->peer);
diff -Nurb linux-2.6.22-570/net/decnet/dn_route.c linux-2.6.22-590/net/decnet/dn_route.c
--- linux-2.6.22-570/net/decnet/dn_route.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/decnet/dn_route.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/decnet/dn_route.c 2008-03-20 13:28:03.000000000 -0400
@@ -82,6 +82,7 @@
#include <net/dst.h>
#include <net/flow.h>
diff -Nurb linux-2.6.22-570/net/decnet/dn_rules.c linux-2.6.22-590/net/decnet/dn_rules.c
--- linux-2.6.22-570/net/decnet/dn_rules.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/decnet/dn_rules.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/decnet/dn_rules.c 2008-03-20 13:28:03.000000000 -0400
@@ -186,7 +186,10 @@
unsigned dnet_addr_type(__le16 addr)
diff -Nurb linux-2.6.22-570/net/decnet/dn_table.c linux-2.6.22-590/net/decnet/dn_table.c
--- linux-2.6.22-570/net/decnet/dn_table.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/decnet/dn_table.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/decnet/dn_table.c 2008-03-20 13:28:03.000000000 -0400
@@ -375,10 +375,10 @@
kfree_skb(skb);
goto errout;
return dn_cache_dump(skb, cb);
diff -Nurb linux-2.6.22-570/net/decnet/netfilter/dn_rtmsg.c linux-2.6.22-590/net/decnet/netfilter/dn_rtmsg.c
--- linux-2.6.22-570/net/decnet/netfilter/dn_rtmsg.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/decnet/netfilter/dn_rtmsg.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/decnet/netfilter/dn_rtmsg.c 2008-03-20 13:28:03.000000000 -0400
@@ -93,6 +93,10 @@
const struct net_device *out,
int (*okfn)(struct sk_buff *))
printk(KERN_ERR "dn_rtmsg: Cannot create netlink socket");
diff -Nurb linux-2.6.22-570/net/decnet/sysctl_net_decnet.c linux-2.6.22-590/net/decnet/sysctl_net_decnet.c
--- linux-2.6.22-570/net/decnet/sysctl_net_decnet.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/decnet/sysctl_net_decnet.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/decnet/sysctl_net_decnet.c 2008-03-20 13:28:03.000000000 -0400
@@ -259,7 +259,7 @@
devname[newlen] = 0;
diff -Nurb linux-2.6.22-570/net/econet/af_econet.c linux-2.6.22-590/net/econet/af_econet.c
--- linux-2.6.22-570/net/econet/af_econet.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/econet/af_econet.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/econet/af_econet.c 2008-03-20 13:28:03.000000000 -0400
@@ -608,12 +608,15 @@
* Create an Econet socket
*/
/* A device has gone down - kill any data we hold for it. */
diff -Nurb linux-2.6.22-570/net/ieee80211/ieee80211_module.c linux-2.6.22-590/net/ieee80211/ieee80211_module.c
--- linux-2.6.22-570/net/ieee80211/ieee80211_module.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ieee80211/ieee80211_module.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ieee80211/ieee80211_module.c 2008-03-20 13:28:03.000000000 -0400
@@ -264,7 +264,7 @@
struct proc_dir_entry *e;
}
#endif /* CONFIG_IEEE80211_DEBUG */
diff -Nurb linux-2.6.22-570/net/ipv4/Kconfig linux-2.6.22-590/net/ipv4/Kconfig
---- linux-2.6.22-570/net/ipv4/Kconfig 2008-03-18 15:57:41.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/Kconfig 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv4/Kconfig 2008-03-20 13:25:47.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/Kconfig 2008-03-20 13:28:03.000000000 -0400
@@ -116,48 +116,6 @@
equal "cost" and chooses one of them in a non-deterministic fashion
if a matching packet arrives.
depends on IP_ADVANCED_ROUTER
diff -Nurb linux-2.6.22-570/net/ipv4/Makefile linux-2.6.22-590/net/ipv4/Makefile
--- linux-2.6.22-570/net/ipv4/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/Makefile 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/Makefile 2008-03-20 13:28:03.000000000 -0400
@@ -29,14 +29,9 @@
obj-$(CONFIG_INET_XFRM_MODE_TRANSPORT) += xfrm4_mode_transport.o
obj-$(CONFIG_INET_XFRM_MODE_TUNNEL) += xfrm4_mode_tunnel.o
obj-$(CONFIG_NET_TCPPROBE) += tcp_probe.o
obj-$(CONFIG_TCP_CONG_BIC) += tcp_bic.o
diff -Nurb linux-2.6.22-570/net/ipv4/af_inet.c linux-2.6.22-590/net/ipv4/af_inet.c
---- linux-2.6.22-570/net/ipv4/af_inet.c 2008-03-18 15:57:42.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/af_inet.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv4/af_inet.c 2008-03-20 13:25:49.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/af_inet.c 2008-03-20 13:28:03.000000000 -0400
@@ -244,7 +244,7 @@
* Create an inet socket.
*/
EXPORT_SYMBOL(inet_unregister_protosw);
EXPORT_SYMBOL(net_statistics);
-EXPORT_SYMBOL(sysctl_ip_nonlocal_bind);
-diff -Nurb linux-2.6.22-570/net/ipv4/af_inet.c.orig linux-2.6.22-590/net/ipv4/af_inet.c.orig
---- linux-2.6.22-570/net/ipv4/af_inet.c.orig 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/net/ipv4/af_inet.c.orig 2008-03-18 15:57:54.000000000 -0400
-@@ -0,0 +1,1522 @@
-+/*
-+ * INET An implementation of the TCP/IP protocol suite for the LINUX
-+ * operating system. INET is implemented using the BSD Socket
-+ * interface as the means of communication with the user level.
-+ *
-+ * PF_INET protocol family socket handler.
-+ *
-+ * Version: $Id: af_inet.c,v 1.137 2002/02/01 22:01:03 davem Exp $
-+ *
-+ * Authors: Ross Biro
-+ * Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG>
-+ * Florian La Roche, <flla@stud.uni-sb.de>
-+ * Alan Cox, <A.Cox@swansea.ac.uk>
-+ *
-+ * Changes (see also sock.c)
-+ *
-+ * piggy,
-+ * Karl Knutson : Socket protocol table
-+ * A.N.Kuznetsov : Socket death error in accept().
-+ * John Richardson : Fix non blocking error in connect()
-+ * so sockets that fail to connect
-+ * don't return -EINPROGRESS.
-+ * Alan Cox : Asynchronous I/O support
-+ * Alan Cox : Keep correct socket pointer on sock
-+ * structures
-+ * when accept() ed
-+ * Alan Cox : Semantics of SO_LINGER aren't state
-+ * moved to close when you look carefully.
-+ * With this fixed and the accept bug fixed
-+ * some RPC stuff seems happier.
-+ * Niibe Yutaka : 4.4BSD style write async I/O
-+ * Alan Cox,
-+ * Tony Gale : Fixed reuse semantics.
-+ * Alan Cox : bind() shouldn't abort existing but dead
-+ * sockets. Stops FTP netin:.. I hope.
-+ * Alan Cox : bind() works correctly for RAW sockets.
-+ * Note that FreeBSD at least was broken
-+ * in this respect so be careful with
-+ * compatibility tests...
-+ * Alan Cox : routing cache support
-+ * Alan Cox : memzero the socket structure for
-+ * compactness.
-+ * Matt Day : nonblock connect error handler
-+ * Alan Cox : Allow large numbers of pending sockets
-+ * (eg for big web sites), but only if
-+ * specifically application requested.
-+ * Alan Cox : New buffering throughout IP. Used
-+ * dumbly.
-+ * Alan Cox : New buffering now used smartly.
-+ * Alan Cox : BSD rather than common sense
-+ * interpretation of listen.
-+ * Germano Caronni : Assorted small races.
-+ * Alan Cox : sendmsg/recvmsg basic support.
-+ * Alan Cox : Only sendmsg/recvmsg now supported.
-+ * Alan Cox : Locked down bind (see security list).
-+ * Alan Cox : Loosened bind a little.
-+ * Mike McLagan : ADD/DEL DLCI Ioctls
-+ * Willy Konynenberg : Transparent proxying support.
-+ * David S. Miller : New socket lookup architecture.
-+ * Some other random speedups.
-+ * Cyrus Durgin : Cleaned up file for kmod hacks.
-+ * Andi Kleen : Fix inet_stream_connect TCP race.
-+ *
-+ * This program is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU General Public License
-+ * as published by the Free Software Foundation; either version
-+ * 2 of the License, or (at your option) any later version.
-+ */
-+
-+#include <linux/err.h>
-+#include <linux/errno.h>
-+#include <linux/types.h>
-+#include <linux/socket.h>
-+#include <linux/in.h>
-+#include <linux/kernel.h>
-+#include <linux/module.h>
-+#include <linux/sched.h>
-+#include <linux/timer.h>
-+#include <linux/string.h>
-+#include <linux/sockios.h>
-+#include <linux/net.h>
-+#include <linux/capability.h>
-+#include <linux/fcntl.h>
-+#include <linux/mm.h>
-+#include <linux/interrupt.h>
-+#include <linux/stat.h>
-+#include <linux/init.h>
-+#include <linux/poll.h>
-+#include <linux/netfilter_ipv4.h>
-+#include <linux/random.h>
-+
-+#include <asm/uaccess.h>
-+#include <asm/system.h>
-+
-+#include <linux/inet.h>
-+#include <linux/igmp.h>
-+#include <linux/inetdevice.h>
-+#include <linux/netdevice.h>
-+#include <net/ip.h>
-+#include <net/protocol.h>
-+#include <net/arp.h>
-+#include <net/route.h>
-+#include <net/ip_fib.h>
-+#include <net/inet_connection_sock.h>
-+#include <net/tcp.h>
-+#include <net/udp.h>
-+#include <net/udplite.h>
-+#include <linux/skbuff.h>
-+#include <net/sock.h>
-+#include <net/raw.h>
-+#include <net/icmp.h>
-+#include <net/ipip.h>
-+#include <net/inet_common.h>
-+#include <net/xfrm.h>
-+#ifdef CONFIG_IP_MROUTE
-+#include <linux/mroute.h>
-+#endif
-+#include <linux/vs_limit.h>
-+
-+DEFINE_SNMP_STAT(struct linux_mib, net_statistics) __read_mostly;
-+
-+extern void ip_mc_drop_socket(struct sock *sk);
-+
-+/* The inetsw table contains everything that inet_create needs to
-+ * build a new socket.
-+ */
-+static struct list_head inetsw[SOCK_MAX];
-+static DEFINE_SPINLOCK(inetsw_lock);
-+
-+/* New destruction routine */
-+
-+void inet_sock_destruct(struct sock *sk)
-+{
-+ struct inet_sock *inet = inet_sk(sk);
-+
-+ __skb_queue_purge(&sk->sk_receive_queue);
-+ __skb_queue_purge(&sk->sk_error_queue);
-+
-+ if (sk->sk_type == SOCK_STREAM && sk->sk_state != TCP_CLOSE) {
-+ printk("Attempt to release TCP socket in state %d %p\n",
-+ sk->sk_state, sk);
-+ return;
-+ }
-+ if (!sock_flag(sk, SOCK_DEAD)) {
-+ printk("Attempt to release alive inet socket %p\n", sk);
-+ return;
-+ }
-+
-+ BUG_TRAP(!atomic_read(&sk->sk_rmem_alloc));
-+ BUG_TRAP(!atomic_read(&sk->sk_wmem_alloc));
-+ BUG_TRAP(!sk->sk_wmem_queued);
-+ BUG_TRAP(!sk->sk_forward_alloc);
-+
-+ kfree(inet->opt);
-+ dst_release(sk->sk_dst_cache);
-+ sk_refcnt_debug_dec(sk);
-+}
-+
-+/*
-+ * The routines beyond this point handle the behaviour of an AF_INET
-+ * socket object. Mostly it punts to the subprotocols of IP to do
-+ * the work.
-+ */
-+
-+/*
-+ * Automatically bind an unbound socket.
-+ */
-+
-+static int inet_autobind(struct sock *sk)
-+{
-+ struct inet_sock *inet;
-+ /* We may need to bind the socket. */
-+ lock_sock(sk);
-+ inet = inet_sk(sk);
-+ if (!inet->num) {
-+ if (sk->sk_prot->get_port(sk, 0)) {
-+ release_sock(sk);
-+ return -EAGAIN;
-+ }
-+ inet->sport = htons(inet->num);
-+ sk->sk_xid = vx_current_xid();
-+ sk->sk_nid = nx_current_nid();
-+ }
-+ release_sock(sk);
-+ return 0;
-+}
-+
-+/*
-+ * Move a socket into listening state.
-+ */
-+int inet_listen(struct socket *sock, int backlog)
-+{
-+ struct sock *sk = sock->sk;
-+ unsigned char old_state;
-+ int err;
-+
-+ lock_sock(sk);
-+
-+ err = -EINVAL;
-+ if (sock->state != SS_UNCONNECTED || sock->type != SOCK_STREAM)
-+ goto out;
-+
-+ old_state = sk->sk_state;
-+ if (!((1 << old_state) & (TCPF_CLOSE | TCPF_LISTEN)))
-+ goto out;
-+
-+ /* Really, if the socket is already in listen state
-+ * we can only allow the backlog to be adjusted.
-+ */
-+ if (old_state != TCP_LISTEN) {
-+ err = inet_csk_listen_start(sk, backlog);
-+ if (err)
-+ goto out;
-+ }
-+ sk->sk_max_ack_backlog = backlog;
-+ err = 0;
-+
-+out:
-+ release_sock(sk);
-+ return err;
-+}
-+
-+u32 inet_ehash_secret __read_mostly;
-+EXPORT_SYMBOL(inet_ehash_secret);
-+
-+/*
-+ * inet_ehash_secret must be set exactly once
-+ * Instead of using a dedicated spinlock, we (ab)use inetsw_lock
-+ */
-+void build_ehash_secret(void)
-+{
-+ u32 rnd;
-+ do {
-+ get_random_bytes(&rnd, sizeof(rnd));
-+ } while (rnd == 0);
-+ spin_lock_bh(&inetsw_lock);
-+ if (!inet_ehash_secret)
-+ inet_ehash_secret = rnd;
-+ spin_unlock_bh(&inetsw_lock);
-+}
-+EXPORT_SYMBOL(build_ehash_secret);
-+
-+/*
-+ * Create an inet socket.
-+ */
-+
-+static int inet_create(struct socket *sock, int protocol)
-+{
-+ struct sock *sk;
-+ struct list_head *p;
-+ struct inet_protosw *answer;
-+ struct inet_sock *inet;
-+ struct proto *answer_prot;
-+ unsigned char answer_flags;
-+ char answer_no_check;
-+ int try_loading_module = 0;
-+ int err;
-+
-+ if (sock->type != SOCK_RAW &&
-+ sock->type != SOCK_DGRAM &&
-+ !inet_ehash_secret)
-+ build_ehash_secret();
-+
-+ sock->state = SS_UNCONNECTED;
-+
-+ /* Look for the requested type/protocol pair. */
-+ answer = NULL;
-+lookup_protocol:
-+ err = -ESOCKTNOSUPPORT;
-+ rcu_read_lock();
-+ list_for_each_rcu(p, &inetsw[sock->type]) {
-+ answer = list_entry(p, struct inet_protosw, list);
-+
-+ /* Check the non-wild match. */
-+ if (protocol == answer->protocol) {
-+ if (protocol != IPPROTO_IP)
-+ break;
-+ } else {
-+ /* Check for the two wild cases. */
-+ if (IPPROTO_IP == protocol) {
-+ protocol = answer->protocol;
-+ break;
-+ }
-+ if (IPPROTO_IP == answer->protocol)
-+ break;
-+ }
-+ err = -EPROTONOSUPPORT;
-+ answer = NULL;
-+ }
-+
-+ if (unlikely(answer == NULL)) {
-+ if (try_loading_module < 2) {
-+ rcu_read_unlock();
-+ /*
-+ * Be more specific, e.g. net-pf-2-proto-132-type-1
-+ * (net-pf-PF_INET-proto-IPPROTO_SCTP-type-SOCK_STREAM)
-+ */
-+ if (++try_loading_module == 1)
-+ request_module("net-pf-%d-proto-%d-type-%d",
-+ PF_INET, protocol, sock->type);
-+ /*
-+ * Fall back to generic, e.g. net-pf-2-proto-132
-+ * (net-pf-PF_INET-proto-IPPROTO_SCTP)
-+ */
-+ else
-+ request_module("net-pf-%d-proto-%d",
-+ PF_INET, protocol);
-+ goto lookup_protocol;
-+ } else
-+ goto out_rcu_unlock;
-+ }
-+
-+ err = -EPERM;
-+ if ((protocol == IPPROTO_ICMP) &&
-+ nx_capable(answer->capability, NXC_RAW_ICMP))
-+ goto override;
-+ if (sock->type == SOCK_RAW &&
-+ nx_capable(answer->capability, NXC_RAW_SOCKET))
-+ goto override;
-+ if (answer->capability > 0 && !capable(answer->capability))
-+ goto out_rcu_unlock;
-+override:
-+ sock->ops = answer->ops;
-+ answer_prot = answer->prot;
-+ answer_no_check = answer->no_check;
-+ answer_flags = answer->flags;
-+ rcu_read_unlock();
-+
-+ BUG_TRAP(answer_prot->slab != NULL);
-+
-+ err = -ENOBUFS;
-+ sk = sk_alloc(PF_INET, GFP_KERNEL, answer_prot, 1);
-+ if (sk == NULL)
-+ goto out;
-+
-+ err = 0;
-+ sk->sk_no_check = answer_no_check;
-+ if (INET_PROTOSW_REUSE & answer_flags)
-+ sk->sk_reuse = 1;
-+
-+ inet = inet_sk(sk);
-+ inet->is_icsk = (INET_PROTOSW_ICSK & answer_flags) != 0;
-+
-+ if (SOCK_RAW == sock->type) {
-+ inet->num = protocol;
-+ if (IPPROTO_RAW == protocol)
-+ inet->hdrincl = 1;
-+ }
-+
-+ if (ipv4_config.no_pmtu_disc)
-+ inet->pmtudisc = IP_PMTUDISC_DONT;
-+ else
-+ inet->pmtudisc = IP_PMTUDISC_WANT;
-+
-+ inet->id = 0;
-+
-+ sock_init_data(sock, sk);
-+
-+ sk->sk_destruct = inet_sock_destruct;
-+ sk->sk_family = PF_INET;
-+ sk->sk_protocol = protocol;
-+ sk->sk_backlog_rcv = sk->sk_prot->backlog_rcv;
-+
-+ inet->uc_ttl = -1;
-+ inet->mc_loop = 1;
-+ inet->mc_ttl = 1;
-+ inet->mc_index = 0;
-+ inet->mc_list = NULL;
-+
-+ sk_refcnt_debug_inc(sk);
-+
-+ if (inet->num) {
-+ /* It assumes that any protocol which allows
-+ * the user to assign a number at socket
-+ * creation time automatically
-+ * shares.
-+ */
-+ inet->sport = htons(inet->num);
-+ /* Add to protocol hash chains. */
-+ sk->sk_prot->hash(sk);
-+ }
-+
-+ if (sk->sk_prot->init) {
-+ err = sk->sk_prot->init(sk);
-+ if (err)
-+ sk_common_release(sk);
-+ }
-+out:
-+ return err;
-+out_rcu_unlock:
-+ rcu_read_unlock();
-+ goto out;
-+}
-+
-+
-+/*
-+ * The peer socket should always be NULL (or else). When we call this
-+ * function we are destroying the object and from then on nobody
-+ * should refer to it.
-+ */
-+int inet_release(struct socket *sock)
-+{
-+ struct sock *sk = sock->sk;
-+
-+ if (sk) {
-+ long timeout;
-+
-+ /* Applications forget to leave groups before exiting */
-+ ip_mc_drop_socket(sk);
-+
-+ /* If linger is set, we don't return until the close
-+ * is complete. Otherwise we return immediately. The
-+ * actually closing is done the same either way.
-+ *
-+ * If the close is due to the process exiting, we never
-+ * linger..
-+ */
-+ timeout = 0;
-+ if (sock_flag(sk, SOCK_LINGER) &&
-+ !(current->flags & PF_EXITING))
-+ timeout = sk->sk_lingertime;
-+ sock->sk = NULL;
-+ sk->sk_prot->close(sk, timeout);
-+ }
-+ return 0;
-+}
-+
-+/* It is off by default, see below. */
-+int sysctl_ip_nonlocal_bind __read_mostly;
-+
-+int inet_bind(struct socket *sock, struct sockaddr *uaddr, int addr_len)
-+{
-+ struct sockaddr_in *addr = (struct sockaddr_in *)uaddr;
-+ struct sock *sk = sock->sk;
-+ struct inet_sock *inet = inet_sk(sk);
-+ struct nx_v4_sock_addr nsa;
-+ unsigned short snum;
-+ int chk_addr_ret;
-+ int err;
-+
-+ /* If the socket has its own bind function then use it. (RAW) */
-+ if (sk->sk_prot->bind) {
-+ err = sk->sk_prot->bind(sk, uaddr, addr_len);
-+ goto out;
-+ }
-+ err = -EINVAL;
-+ if (addr_len < sizeof(struct sockaddr_in))
-+ goto out;
-+
-+ err = v4_map_sock_addr(inet, addr, &nsa);
-+ if (err)
-+ goto out;
-+
-+ chk_addr_ret = inet_addr_type(nsa.saddr);
-+
-+ /* Not specified by any standard per-se, however it breaks too
-+ * many applications when removed. It is unfortunate since
-+ * allowing applications to make a non-local bind solves
-+ * several problems with systems using dynamic addressing.
-+ * (ie. your servers still start up even if your ISDN link
-+ * is temporarily down)
-+ */
-+ err = -EADDRNOTAVAIL;
-+ if (!sysctl_ip_nonlocal_bind &&
-+ !inet->freebind &&
-+ nsa.saddr != INADDR_ANY &&
-+ chk_addr_ret != RTN_LOCAL &&
-+ chk_addr_ret != RTN_MULTICAST &&
-+ chk_addr_ret != RTN_BROADCAST)
-+ goto out;
-+
-+ snum = ntohs(addr->sin_port);
-+ err = -EACCES;
-+ if (snum && snum < PROT_SOCK && !capable(CAP_NET_BIND_SERVICE))
-+ goto out;
-+
-+ /* We keep a pair of addresses. rcv_saddr is the one
-+ * used by hash lookups, and saddr is used for transmit.
-+ *
-+ * In the BSD API these are the same except where it
-+ * would be illegal to use them (multicast/broadcast) in
-+ * which case the sending device address is used.
-+ */
-+ lock_sock(sk);
-+
-+ /* Check these errors (active socket, double bind). */
-+ err = -EINVAL;
-+ if (sk->sk_state != TCP_CLOSE || inet->num)
-+ goto out_release_sock;
-+
-+ v4_set_sock_addr(inet, &nsa);
-+ if (chk_addr_ret == RTN_MULTICAST || chk_addr_ret == RTN_BROADCAST)
-+ inet->saddr = 0; /* Use device */
-+
-+ /* Make sure we are allowed to bind here. */
-+ if (sk->sk_prot->get_port(sk, snum)) {
-+ inet->saddr = inet->rcv_saddr = 0;
-+ err = -EADDRINUSE;
-+ goto out_release_sock;
-+ }
-+
-+ if (inet->rcv_saddr)
-+ sk->sk_userlocks |= SOCK_BINDADDR_LOCK;
-+ if (snum)
-+ sk->sk_userlocks |= SOCK_BINDPORT_LOCK;
-+ inet->sport = htons(inet->num);
-+ inet->daddr = 0;
-+ inet->dport = 0;
-+ sk_dst_reset(sk);
-+ err = 0;
-+out_release_sock:
-+ release_sock(sk);
-+out:
-+ return err;
-+}
-+
-+int inet_dgram_connect(struct socket *sock, struct sockaddr * uaddr,
-+ int addr_len, int flags)
-+{
-+ struct sock *sk = sock->sk;
-+
-+ if (uaddr->sa_family == AF_UNSPEC)
-+ return sk->sk_prot->disconnect(sk, flags);
-+
-+ if (!inet_sk(sk)->num && inet_autobind(sk))
-+ return -EAGAIN;
-+ return sk->sk_prot->connect(sk, (struct sockaddr *)uaddr, addr_len);
-+}
-+
-+static long inet_wait_for_connect(struct sock *sk, long timeo)
-+{
-+ DEFINE_WAIT(wait);
-+
-+ prepare_to_wait(sk->sk_sleep, &wait, TASK_INTERRUPTIBLE);
-+
-+ /* Basic assumption: if someone sets sk->sk_err, he _must_
-+ * change state of the socket from TCP_SYN_*.
-+ * Connect() does not allow to get error notifications
-+ * without closing the socket.
-+ */
-+ while ((1 << sk->sk_state) & (TCPF_SYN_SENT | TCPF_SYN_RECV)) {
-+ release_sock(sk);
-+ timeo = schedule_timeout(timeo);
-+ lock_sock(sk);
-+ if (signal_pending(current) || !timeo)
-+ break;
-+ prepare_to_wait(sk->sk_sleep, &wait, TASK_INTERRUPTIBLE);
-+ }
-+ finish_wait(sk->sk_sleep, &wait);
-+ return timeo;
-+}
-+
-+/*
-+ * Connect to a remote host. There is regrettably still a little
-+ * TCP 'magic' in here.
-+ */
-+int inet_stream_connect(struct socket *sock, struct sockaddr *uaddr,
-+ int addr_len, int flags)
-+{
-+ struct sock *sk = sock->sk;
-+ int err;
-+ long timeo;
-+
-+ lock_sock(sk);
-+
-+ if (uaddr->sa_family == AF_UNSPEC) {
-+ err = sk->sk_prot->disconnect(sk, flags);
-+ sock->state = err ? SS_DISCONNECTING : SS_UNCONNECTED;
-+ goto out;
-+ }
-+
-+ switch (sock->state) {
-+ default:
-+ err = -EINVAL;
-+ goto out;
-+ case SS_CONNECTED:
-+ err = -EISCONN;
-+ goto out;
-+ case SS_CONNECTING:
-+ err = -EALREADY;
-+ /* Fall out of switch with err, set for this state */
-+ break;
-+ case SS_UNCONNECTED:
-+ err = -EISCONN;
-+ if (sk->sk_state != TCP_CLOSE)
-+ goto out;
-+
-+ err = sk->sk_prot->connect(sk, uaddr, addr_len);
-+ if (err < 0)
-+ goto out;
-+
-+ sock->state = SS_CONNECTING;
-+
-+ /* Just entered SS_CONNECTING state; the only
-+ * difference is that return value in non-blocking
-+ * case is EINPROGRESS, rather than EALREADY.
-+ */
-+ err = -EINPROGRESS;
-+ break;
-+ }
-+
-+ timeo = sock_sndtimeo(sk, flags & O_NONBLOCK);
-+
-+ if ((1 << sk->sk_state) & (TCPF_SYN_SENT | TCPF_SYN_RECV)) {
-+ /* Error code is set above */
-+ if (!timeo || !inet_wait_for_connect(sk, timeo))
-+ goto out;
-+
-+ err = sock_intr_errno(timeo);
-+ if (signal_pending(current))
-+ goto out;
-+ }
-+
-+ /* Connection was closed by RST, timeout, ICMP error
-+ * or another process disconnected us.
-+ */
-+ if (sk->sk_state == TCP_CLOSE)
-+ goto sock_error;
-+
-+ /* sk->sk_err may be not zero now, if RECVERR was ordered by user
-+ * and error was received after socket entered established state.
-+ * Hence, it is handled normally after connect() return successfully.
-+ */
-+
-+ sock->state = SS_CONNECTED;
-+ err = 0;
-+out:
-+ release_sock(sk);
-+ return err;
-+
-+sock_error:
-+ err = sock_error(sk) ? : -ECONNABORTED;
-+ sock->state = SS_UNCONNECTED;
-+ if (sk->sk_prot->disconnect(sk, flags))
-+ sock->state = SS_DISCONNECTING;
-+ goto out;
-+}
-+
-+/*
-+ * Accept a pending connection. The TCP layer now gives BSD semantics.
-+ */
-+
-+int inet_accept(struct socket *sock, struct socket *newsock, int flags)
-+{
-+ struct sock *sk1 = sock->sk;
-+ int err = -EINVAL;
-+ struct sock *sk2 = sk1->sk_prot->accept(sk1, flags, &err);
-+
-+ if (!sk2)
-+ goto do_err;
-+
-+ lock_sock(sk2);
-+
-+ BUG_TRAP((1 << sk2->sk_state) &
-+ (TCPF_ESTABLISHED | TCPF_CLOSE_WAIT | TCPF_CLOSE));
-+
-+ sock_graft(sk2, newsock);
-+
-+ newsock->state = SS_CONNECTED;
-+ err = 0;
-+ release_sock(sk2);
-+do_err:
-+ return err;
-+}
-+
-+
-+/*
-+ * This does both peername and sockname.
-+ */
-+int inet_getname(struct socket *sock, struct sockaddr *uaddr,
-+ int *uaddr_len, int peer)
-+{
-+ struct sock *sk = sock->sk;
-+ struct inet_sock *inet = inet_sk(sk);
-+ struct sockaddr_in *sin = (struct sockaddr_in *)uaddr;
-+
-+ sin->sin_family = AF_INET;
-+ if (peer) {
-+ if (!inet->dport ||
-+ (((1 << sk->sk_state) & (TCPF_CLOSE | TCPF_SYN_SENT)) &&
-+ peer == 1))
-+ return -ENOTCONN;
-+ sin->sin_port = inet->dport;
-+ sin->sin_addr.s_addr =
-+ nx_map_sock_lback(sk->sk_nx_info, inet->daddr);
-+ } else {
-+ __be32 addr = inet->rcv_saddr;
-+ if (!addr)
-+ addr = inet->saddr;
-+ addr = nx_map_sock_lback(sk->sk_nx_info, addr);
-+ sin->sin_port = inet->sport;
-+ sin->sin_addr.s_addr = addr;
-+ }
-+ memset(sin->sin_zero, 0, sizeof(sin->sin_zero));
-+ *uaddr_len = sizeof(*sin);
-+ return 0;
-+}
-+
-+int inet_sendmsg(struct kiocb *iocb, struct socket *sock, struct msghdr *msg,
-+ size_t size)
-+{
-+ struct sock *sk = sock->sk;
-+
-+ /* We may need to bind the socket. */
-+ if (!inet_sk(sk)->num && inet_autobind(sk))
-+ return -EAGAIN;
-+
-+ return sk->sk_prot->sendmsg(iocb, sk, msg, size);
-+}
-+
-+
-+static ssize_t inet_sendpage(struct socket *sock, struct page *page, int offset, size_t size, int flags)
-+{
-+ struct sock *sk = sock->sk;
-+
-+ /* We may need to bind the socket. */
-+ if (!inet_sk(sk)->num && inet_autobind(sk))
-+ return -EAGAIN;
-+
-+ if (sk->sk_prot->sendpage)
-+ return sk->sk_prot->sendpage(sk, page, offset, size, flags);
-+ return sock_no_sendpage(sock, page, offset, size, flags);
-+}
-+
-+
-+int inet_shutdown(struct socket *sock, int how)
-+{
-+ struct sock *sk = sock->sk;
-+ int err = 0;
-+
-+ /* This should really check to make sure
-+ * the socket is a TCP socket. (WHY AC...)
-+ */
-+ how++; /* maps 0->1 has the advantage of making bit 1 rcvs and
-+ 1->2 bit 2 snds.
-+ 2->3 */
-+ if ((how & ~SHUTDOWN_MASK) || !how) /* MAXINT->0 */
-+ return -EINVAL;
-+
-+ lock_sock(sk);
-+ if (sock->state == SS_CONNECTING) {
-+ if ((1 << sk->sk_state) &
-+ (TCPF_SYN_SENT | TCPF_SYN_RECV | TCPF_CLOSE))
-+ sock->state = SS_DISCONNECTING;
-+ else
-+ sock->state = SS_CONNECTED;
-+ }
-+
-+ switch (sk->sk_state) {
-+ case TCP_CLOSE:
-+ err = -ENOTCONN;
-+ /* Hack to wake up other listeners, who can poll for
-+ POLLHUP, even on eg. unconnected UDP sockets -- RR */
-+ default:
-+ sk->sk_shutdown |= how;
-+ if (sk->sk_prot->shutdown)
-+ sk->sk_prot->shutdown(sk, how);
-+ break;
-+
-+ /* Remaining two branches are temporary solution for missing
-+ * close() in multithreaded environment. It is _not_ a good idea,
-+ * but we have no choice until close() is repaired at VFS level.
-+ */
-+ case TCP_LISTEN:
-+ if (!(how & RCV_SHUTDOWN))
-+ break;
-+ /* Fall through */
-+ case TCP_SYN_SENT:
-+ err = sk->sk_prot->disconnect(sk, O_NONBLOCK);
-+ sock->state = err ? SS_DISCONNECTING : SS_UNCONNECTED;
-+ break;
-+ }
-+
-+ /* Wake up anyone sleeping in poll. */
-+ sk->sk_state_change(sk);
-+ release_sock(sk);
-+ return err;
-+}
-+
-+/*
-+ * ioctl() calls you can issue on an INET socket. Most of these are
-+ * device configuration and stuff and very rarely used. Some ioctls
-+ * pass on to the socket itself.
-+ *
-+ * NOTE: I like the idea of a module for the config stuff. ie ifconfig
-+ * loads the devconfigure module does its configuring and unloads it.
-+ * There's a good 20K of config code hanging around the kernel.
-+ */
-+
-+int inet_ioctl(struct socket *sock, unsigned int cmd, unsigned long arg)
-+{
-+ struct sock *sk = sock->sk;
-+ int err = 0;
-+
-+ switch (cmd) {
-+ case SIOCGSTAMP:
-+ err = sock_get_timestamp(sk, (struct timeval __user *)arg);
-+ break;
-+ case SIOCGSTAMPNS:
-+ err = sock_get_timestampns(sk, (struct timespec __user *)arg);
-+ break;
-+ case SIOCADDRT:
-+ case SIOCDELRT:
-+ case SIOCRTMSG:
-+ err = ip_rt_ioctl(cmd, (void __user *)arg);
-+ break;
-+ case SIOCDARP:
-+ case SIOCGARP:
-+ case SIOCSARP:
-+ err = arp_ioctl(cmd, (void __user *)arg);
-+ break;
-+ case SIOCGIFADDR:
-+ case SIOCSIFADDR:
-+ case SIOCGIFBRDADDR:
-+ case SIOCSIFBRDADDR:
-+ case SIOCGIFNETMASK:
-+ case SIOCSIFNETMASK:
-+ case SIOCGIFDSTADDR:
-+ case SIOCSIFDSTADDR:
-+ case SIOCSIFPFLAGS:
-+ case SIOCGIFPFLAGS:
-+ case SIOCSIFFLAGS:
-+ err = devinet_ioctl(cmd, (void __user *)arg);
-+ break;
-+ default:
-+ if (sk->sk_prot->ioctl)
-+ err = sk->sk_prot->ioctl(sk, cmd, arg);
-+ else
-+ err = -ENOIOCTLCMD;
-+ break;
-+ }
-+ return err;
-+}
-+
-+const struct proto_ops inet_stream_ops = {
-+ .family = PF_INET,
-+ .owner = THIS_MODULE,
-+ .release = inet_release,
-+ .bind = inet_bind,
-+ .connect = inet_stream_connect,
-+ .socketpair = sock_no_socketpair,
-+ .accept = inet_accept,
-+ .getname = inet_getname,
-+ .poll = tcp_poll,
-+ .ioctl = inet_ioctl,
-+ .listen = inet_listen,
-+ .shutdown = inet_shutdown,
-+ .setsockopt = sock_common_setsockopt,
-+ .getsockopt = sock_common_getsockopt,
-+ .sendmsg = tcp_sendmsg,
-+ .recvmsg = sock_common_recvmsg,
-+ .mmap = sock_no_mmap,
-+ .sendpage = tcp_sendpage,
-+#ifdef CONFIG_COMPAT
-+ .compat_setsockopt = compat_sock_common_setsockopt,
-+ .compat_getsockopt = compat_sock_common_getsockopt,
-+#endif
-+};
-+
-+const struct proto_ops inet_dgram_ops = {
-+ .family = PF_INET,
-+ .owner = THIS_MODULE,
-+ .release = inet_release,
-+ .bind = inet_bind,
-+ .connect = inet_dgram_connect,
-+ .socketpair = sock_no_socketpair,
-+ .accept = sock_no_accept,
-+ .getname = inet_getname,
-+ .poll = udp_poll,
-+ .ioctl = inet_ioctl,
-+ .listen = sock_no_listen,
-+ .shutdown = inet_shutdown,
-+ .setsockopt = sock_common_setsockopt,
-+ .getsockopt = sock_common_getsockopt,
-+ .sendmsg = inet_sendmsg,
-+ .recvmsg = sock_common_recvmsg,
-+ .mmap = sock_no_mmap,
-+ .sendpage = inet_sendpage,
-+#ifdef CONFIG_COMPAT
-+ .compat_setsockopt = compat_sock_common_setsockopt,
-+ .compat_getsockopt = compat_sock_common_getsockopt,
-+#endif
-+};
-+
-+/*
-+ * For SOCK_RAW sockets; should be the same as inet_dgram_ops but without
-+ * udp_poll
-+ */
-+static const struct proto_ops inet_sockraw_ops = {
-+ .family = PF_INET,
-+ .owner = THIS_MODULE,
-+ .release = inet_release,
-+ .bind = inet_bind,
-+ .connect = inet_dgram_connect,
-+ .socketpair = sock_no_socketpair,
-+ .accept = sock_no_accept,
-+ .getname = inet_getname,
-+ .poll = datagram_poll,
-+ .ioctl = inet_ioctl,
-+ .listen = sock_no_listen,
-+ .shutdown = inet_shutdown,
-+ .setsockopt = sock_common_setsockopt,
-+ .getsockopt = sock_common_getsockopt,
-+ .sendmsg = inet_sendmsg,
-+ .recvmsg = sock_common_recvmsg,
-+ .mmap = sock_no_mmap,
-+ .sendpage = inet_sendpage,
-+#ifdef CONFIG_COMPAT
-+ .compat_setsockopt = compat_sock_common_setsockopt,
-+ .compat_getsockopt = compat_sock_common_getsockopt,
-+#endif
-+};
-+
-+static struct net_proto_family inet_family_ops = {
-+ .family = PF_INET,
-+ .create = inet_create,
-+ .owner = THIS_MODULE,
-+};
-+
-+/* Upon startup we insert all the elements in inetsw_array[] into
-+ * the linked list inetsw.
-+ */
-+static struct inet_protosw inetsw_array[] =
-+{
-+ {
-+ .type = SOCK_STREAM,
-+ .protocol = IPPROTO_TCP,
-+ .prot = &tcp_prot,
-+ .ops = &inet_stream_ops,
-+ .capability = -1,
-+ .no_check = 0,
-+ .flags = INET_PROTOSW_PERMANENT |
-+ INET_PROTOSW_ICSK,
-+ },
-+
-+ {
-+ .type = SOCK_DGRAM,
-+ .protocol = IPPROTO_UDP,
-+ .prot = &udp_prot,
-+ .ops = &inet_dgram_ops,
-+ .capability = -1,
-+ .no_check = UDP_CSUM_DEFAULT,
-+ .flags = INET_PROTOSW_PERMANENT,
-+ },
-+
-+
-+ {
-+ .type = SOCK_RAW,
-+ .protocol = IPPROTO_IP, /* wild card */
-+ .prot = &raw_prot,
-+ .ops = &inet_sockraw_ops,
-+ .capability = CAP_NET_RAW,
-+ .no_check = UDP_CSUM_DEFAULT,
-+ .flags = INET_PROTOSW_REUSE,
-+ }
-+};
-+
-+#define INETSW_ARRAY_LEN (sizeof(inetsw_array) / sizeof(struct inet_protosw))
-+
-+void inet_register_protosw(struct inet_protosw *p)
-+{
-+ struct list_head *lh;
-+ struct inet_protosw *answer;
-+ int protocol = p->protocol;
-+ struct list_head *last_perm;
-+
-+ spin_lock_bh(&inetsw_lock);
-+
-+ if (p->type >= SOCK_MAX)
-+ goto out_illegal;
-+
-+ /* If we are trying to override a permanent protocol, bail. */
-+ answer = NULL;
-+ last_perm = &inetsw[p->type];
-+ list_for_each(lh, &inetsw[p->type]) {
-+ answer = list_entry(lh, struct inet_protosw, list);
-+
-+ /* Check only the non-wild match. */
-+ if (INET_PROTOSW_PERMANENT & answer->flags) {
-+ if (protocol == answer->protocol)
-+ break;
-+ last_perm = lh;
-+ }
-+
-+ answer = NULL;
-+ }
-+ if (answer)
-+ goto out_permanent;
-+
-+ /* Add the new entry after the last permanent entry if any, so that
-+ * the new entry does not override a permanent entry when matched with
-+ * a wild-card protocol. But it is allowed to override any existing
-+ * non-permanent entry. This means that when we remove this entry, the
-+ * system automatically returns to the old behavior.
-+ */
-+ list_add_rcu(&p->list, last_perm);
-+out:
-+ spin_unlock_bh(&inetsw_lock);
-+
-+ synchronize_net();
-+
-+ return;
-+
-+out_permanent:
-+ printk(KERN_ERR "Attempt to override permanent protocol %d.\n",
-+ protocol);
-+ goto out;
-+
-+out_illegal:
-+ printk(KERN_ERR
-+ "Ignoring attempt to register invalid socket type %d.\n",
-+ p->type);
-+ goto out;
-+}
-+
-+void inet_unregister_protosw(struct inet_protosw *p)
-+{
-+ if (INET_PROTOSW_PERMANENT & p->flags) {
-+ printk(KERN_ERR
-+ "Attempt to unregister permanent protocol %d.\n",
-+ p->protocol);
-+ } else {
-+ spin_lock_bh(&inetsw_lock);
-+ list_del_rcu(&p->list);
-+ spin_unlock_bh(&inetsw_lock);
-+
-+ synchronize_net();
-+ }
-+}
-+
-+/*
-+ * Shall we try to damage output packets if routing dev changes?
-+ */
-+
-+int sysctl_ip_dynaddr __read_mostly;
-+
-+static int inet_sk_reselect_saddr(struct sock *sk)
-+{
-+ struct inet_sock *inet = inet_sk(sk);
-+ int err;
-+ struct rtable *rt;
-+ __be32 old_saddr = inet->saddr;
-+ __be32 new_saddr;
-+ __be32 daddr = inet->daddr;
-+
-+ if (inet->opt && inet->opt->srr)
-+ daddr = inet->opt->faddr;
-+
-+ /* Query new route. */
-+ err = ip_route_connect(&rt, daddr, 0,
-+ RT_CONN_FLAGS(sk),
-+ sk->sk_bound_dev_if,
-+ sk->sk_protocol,
-+ inet->sport, inet->dport, sk, 0);
-+ if (err)
-+ return err;
-+
-+ sk_setup_caps(sk, &rt->u.dst);
-+
-+ new_saddr = rt->rt_src;
-+
-+ if (new_saddr == old_saddr)
-+ return 0;
-+
-+ if (sysctl_ip_dynaddr > 1) {
-+ printk(KERN_INFO "%s(): shifting inet->"
-+ "saddr from %d.%d.%d.%d to %d.%d.%d.%d\n",
-+ __FUNCTION__,
-+ NIPQUAD(old_saddr),
-+ NIPQUAD(new_saddr));
-+ }
-+
-+ inet->saddr = inet->rcv_saddr = new_saddr;
-+
-+ /*
-+ * XXX The only one ugly spot where we need to
-+ * XXX really change the sockets identity after
-+ * XXX it has entered the hashes. -DaveM
-+ *
-+ * Besides that, it does not check for connection
-+ * uniqueness. Wait for troubles.
-+ */
-+ __sk_prot_rehash(sk);
-+ return 0;
-+}
-+
-+int inet_sk_rebuild_header(struct sock *sk)
-+{
-+ struct inet_sock *inet = inet_sk(sk);
-+ struct rtable *rt = (struct rtable *)__sk_dst_check(sk, 0);
-+ __be32 daddr;
-+ int err;
-+
-+ /* Route is OK, nothing to do. */
-+ if (rt)
-+ return 0;
-+
-+ /* Reroute. */
-+ daddr = inet->daddr;
-+ if (inet->opt && inet->opt->srr)
-+ daddr = inet->opt->faddr;
-+{
-+ struct flowi fl = {
-+ .oif = sk->sk_bound_dev_if,
-+ .nl_u = {
-+ .ip4_u = {
-+ .daddr = daddr,
-+ .saddr = inet->saddr,
-+ .tos = RT_CONN_FLAGS(sk),
-+ },
-+ },
-+ .proto = sk->sk_protocol,
-+ .uli_u = {
-+ .ports = {
-+ .sport = inet->sport,
-+ .dport = inet->dport,
-+ },
-+ },
-+ };
-+
-+ security_sk_classify_flow(sk, &fl);
-+ err = ip_route_output_flow(&rt, &fl, sk, 0);
-+}
-+ if (!err)
-+ sk_setup_caps(sk, &rt->u.dst);
-+ else {
-+ /* Routing failed... */
-+ sk->sk_route_caps = 0;
-+ /*
-+ * Other protocols have to map its equivalent state to TCP_SYN_SENT.
-+ * DCCP maps its DCCP_REQUESTING state to TCP_SYN_SENT. -acme
-+ */
-+ if (!sysctl_ip_dynaddr ||
-+ sk->sk_state != TCP_SYN_SENT ||
-+ (sk->sk_userlocks & SOCK_BINDADDR_LOCK) ||
-+ (err = inet_sk_reselect_saddr(sk)) != 0)
-+ sk->sk_err_soft = -err;
-+ }
-+
-+ return err;
-+}
-+
-+EXPORT_SYMBOL(inet_sk_rebuild_header);
-+
-+static int inet_gso_send_check(struct sk_buff *skb)
-+{
-+ struct iphdr *iph;
-+ struct net_protocol *ops;
-+ int proto;
-+ int ihl;
-+ int err = -EINVAL;
-+
-+ if (unlikely(!pskb_may_pull(skb, sizeof(*iph))))
-+ goto out;
-+
-+ iph = ip_hdr(skb);
-+ ihl = iph->ihl * 4;
-+ if (ihl < sizeof(*iph))
-+ goto out;
-+
-+ if (unlikely(!pskb_may_pull(skb, ihl)))
-+ goto out;
-+
-+ __skb_pull(skb, ihl);
-+ skb_reset_transport_header(skb);
-+ iph = ip_hdr(skb);
-+ proto = iph->protocol & (MAX_INET_PROTOS - 1);
-+ err = -EPROTONOSUPPORT;
-+
-+ rcu_read_lock();
-+ ops = rcu_dereference(inet_protos[proto]);
-+ if (likely(ops && ops->gso_send_check))
-+ err = ops->gso_send_check(skb);
-+ rcu_read_unlock();
-+
-+out:
-+ return err;
-+}
-+
-+static struct sk_buff *inet_gso_segment(struct sk_buff *skb, int features)
-+{
-+ struct sk_buff *segs = ERR_PTR(-EINVAL);
-+ struct iphdr *iph;
-+ struct net_protocol *ops;
-+ int proto;
-+ int ihl;
-+ int id;
-+
-+ if (unlikely(skb_shinfo(skb)->gso_type &
-+ ~(SKB_GSO_TCPV4 |
-+ SKB_GSO_UDP |
-+ SKB_GSO_DODGY |
-+ SKB_GSO_TCP_ECN |
-+ 0)))
-+ goto out;
-+
-+ if (unlikely(!pskb_may_pull(skb, sizeof(*iph))))
-+ goto out;
-+
-+ iph = ip_hdr(skb);
-+ ihl = iph->ihl * 4;
-+ if (ihl < sizeof(*iph))
-+ goto out;
-+
-+ if (unlikely(!pskb_may_pull(skb, ihl)))
-+ goto out;
-+
-+ __skb_pull(skb, ihl);
-+ skb_reset_transport_header(skb);
-+ iph = ip_hdr(skb);
-+ id = ntohs(iph->id);
-+ proto = iph->protocol & (MAX_INET_PROTOS - 1);
-+ segs = ERR_PTR(-EPROTONOSUPPORT);
-+
-+ rcu_read_lock();
-+ ops = rcu_dereference(inet_protos[proto]);
-+ if (likely(ops && ops->gso_segment))
-+ segs = ops->gso_segment(skb, features);
-+ rcu_read_unlock();
-+
-+ if (!segs || unlikely(IS_ERR(segs)))
-+ goto out;
-+
-+ skb = segs;
-+ do {
-+ iph = ip_hdr(skb);
-+ iph->id = htons(id++);
-+ iph->tot_len = htons(skb->len - skb->mac_len);
-+ iph->check = 0;
-+ iph->check = ip_fast_csum(skb_network_header(skb), iph->ihl);
-+ } while ((skb = skb->next));
-+
-+out:
-+ return segs;
-+}
-+
-+unsigned long snmp_fold_field(void *mib[], int offt)
-+{
-+ unsigned long res = 0;
-+ int i;
-+
-+ for_each_possible_cpu(i) {
-+ res += *(((unsigned long *) per_cpu_ptr(mib[0], i)) + offt);
-+ res += *(((unsigned long *) per_cpu_ptr(mib[1], i)) + offt);
-+ }
-+ return res;
-+}
-+EXPORT_SYMBOL_GPL(snmp_fold_field);
-+
-+int snmp_mib_init(void *ptr[2], size_t mibsize, size_t mibalign)
-+{
-+ BUG_ON(ptr == NULL);
-+ ptr[0] = __alloc_percpu(mibsize);
-+ if (!ptr[0])
-+ goto err0;
-+ ptr[1] = __alloc_percpu(mibsize);
-+ if (!ptr[1])
-+ goto err1;
-+ return 0;
-+err1:
-+ free_percpu(ptr[0]);
-+ ptr[0] = NULL;
-+err0:
-+ return -ENOMEM;
-+}
-+EXPORT_SYMBOL_GPL(snmp_mib_init);
-+
-+void snmp_mib_free(void *ptr[2])
-+{
-+ BUG_ON(ptr == NULL);
-+ free_percpu(ptr[0]);
-+ free_percpu(ptr[1]);
-+ ptr[0] = ptr[1] = NULL;
-+}
-+EXPORT_SYMBOL_GPL(snmp_mib_free);
-+
-+#ifdef CONFIG_IP_MULTICAST
-+static struct net_protocol igmp_protocol = {
-+ .handler = igmp_rcv,
-+};
-+#endif
-+
-+static struct net_protocol tcp_protocol = {
-+ .handler = tcp_v4_rcv,
-+ .err_handler = tcp_v4_err,
-+ .gso_send_check = tcp_v4_gso_send_check,
-+ .gso_segment = tcp_tso_segment,
-+ .no_policy = 1,
-+};
-+
-+static struct net_protocol udp_protocol = {
-+ .handler = udp_rcv,
-+ .err_handler = udp_err,
-+ .no_policy = 1,
-+};
-+
-+static struct net_protocol icmp_protocol = {
-+ .handler = icmp_rcv,
-+};
-+
-+static int __init init_ipv4_mibs(void)
-+{
-+ if (snmp_mib_init((void **)net_statistics,
-+ sizeof(struct linux_mib),
-+ __alignof__(struct linux_mib)) < 0)
-+ goto err_net_mib;
-+ if (snmp_mib_init((void **)ip_statistics,
-+ sizeof(struct ipstats_mib),
-+ __alignof__(struct ipstats_mib)) < 0)
-+ goto err_ip_mib;
-+ if (snmp_mib_init((void **)icmp_statistics,
-+ sizeof(struct icmp_mib),
-+ __alignof__(struct icmp_mib)) < 0)
-+ goto err_icmp_mib;
-+ if (snmp_mib_init((void **)tcp_statistics,
-+ sizeof(struct tcp_mib),
-+ __alignof__(struct tcp_mib)) < 0)
-+ goto err_tcp_mib;
-+ if (snmp_mib_init((void **)udp_statistics,
-+ sizeof(struct udp_mib),
-+ __alignof__(struct udp_mib)) < 0)
-+ goto err_udp_mib;
-+ if (snmp_mib_init((void **)udplite_statistics,
-+ sizeof(struct udp_mib),
-+ __alignof__(struct udp_mib)) < 0)
-+ goto err_udplite_mib;
-+
-+ tcp_mib_init();
-+
-+ return 0;
-+
-+err_udplite_mib:
-+ snmp_mib_free((void **)udp_statistics);
-+err_udp_mib:
-+ snmp_mib_free((void **)tcp_statistics);
-+err_tcp_mib:
-+ snmp_mib_free((void **)icmp_statistics);
-+err_icmp_mib:
-+ snmp_mib_free((void **)ip_statistics);
-+err_ip_mib:
-+ snmp_mib_free((void **)net_statistics);
-+err_net_mib:
-+ return -ENOMEM;
-+}
-+
-+static int ipv4_proc_init(void);
-+
-+/*
-+ * IP protocol layer initialiser
-+ */
-+
-+static struct packet_type ip_packet_type = {
-+ .type = __constant_htons(ETH_P_IP),
-+ .func = ip_rcv,
-+ .gso_send_check = inet_gso_send_check,
-+ .gso_segment = inet_gso_segment,
-+};
-+
-+static int __init inet_init(void)
-+{
-+ struct sk_buff *dummy_skb;
-+ struct inet_protosw *q;
-+ struct list_head *r;
-+ int rc = -EINVAL;
-+
-+ BUILD_BUG_ON(sizeof(struct inet_skb_parm) > sizeof(dummy_skb->cb));
-+
-+ rc = proto_register(&tcp_prot, 1);
-+ if (rc)
-+ goto out;
-+
-+ rc = proto_register(&udp_prot, 1);
-+ if (rc)
-+ goto out_unregister_tcp_proto;
-+
-+ rc = proto_register(&raw_prot, 1);
-+ if (rc)
-+ goto out_unregister_udp_proto;
-+
-+ /*
-+ * Tell SOCKET that we are alive...
-+ */
-+
-+ (void)sock_register(&inet_family_ops);
-+
-+ /*
-+ * Add all the base protocols.
-+ */
-+
-+ if (inet_add_protocol(&icmp_protocol, IPPROTO_ICMP) < 0)
-+ printk(KERN_CRIT "inet_init: Cannot add ICMP protocol\n");
-+ if (inet_add_protocol(&udp_protocol, IPPROTO_UDP) < 0)
-+ printk(KERN_CRIT "inet_init: Cannot add UDP protocol\n");
-+ if (inet_add_protocol(&tcp_protocol, IPPROTO_TCP) < 0)
-+ printk(KERN_CRIT "inet_init: Cannot add TCP protocol\n");
-+#ifdef CONFIG_IP_MULTICAST
-+ if (inet_add_protocol(&igmp_protocol, IPPROTO_IGMP) < 0)
-+ printk(KERN_CRIT "inet_init: Cannot add IGMP protocol\n");
-+#endif
-+
-+ /* Register the socket-side information for inet_create. */
-+ for (r = &inetsw[0]; r < &inetsw[SOCK_MAX]; ++r)
-+ INIT_LIST_HEAD(r);
-+
-+ for (q = inetsw_array; q < &inetsw_array[INETSW_ARRAY_LEN]; ++q)
-+ inet_register_protosw(q);
-+
-+ /*
-+ * Set the ARP module up
-+ */
-+
-+ arp_init();
-+
-+ /*
-+ * Set the IP module up
-+ */
-+
-+ ip_init();
-+
-+ tcp_v4_init(&inet_family_ops);
-+
-+ /* Setup TCP slab cache for open requests. */
-+ tcp_init();
-+
-+ /* Add UDP-Lite (RFC 3828) */
-+ udplite4_register();
-+
-+ /*
-+ * Set the ICMP layer up
-+ */
-+
-+ icmp_init(&inet_family_ops);
-+
-+ /*
-+ * Initialise the multicast router
-+ */
-+#if defined(CONFIG_IP_MROUTE)
-+ ip_mr_init();
-+#endif
-+ /*
-+ * Initialise per-cpu ipv4 mibs
-+ */
-+
-+ if (init_ipv4_mibs())
-+ printk(KERN_CRIT "inet_init: Cannot init ipv4 mibs\n"); ;
-+
-+ ipv4_proc_init();
-+
-+ ipfrag_init();
-+
-+ dev_add_pack(&ip_packet_type);
-+
-+ rc = 0;
-+out:
-+ return rc;
-+out_unregister_udp_proto:
-+ proto_unregister(&udp_prot);
-+out_unregister_tcp_proto:
-+ proto_unregister(&tcp_prot);
-+ goto out;
-+}
-+
-+fs_initcall(inet_init);
-+
-+/* ------------------------------------------------------------------------ */
-+
-+#ifdef CONFIG_PROC_FS
-+static int __init ipv4_proc_init(void)
-+{
-+ int rc = 0;
-+
-+ if (raw_proc_init())
-+ goto out_raw;
-+ if (tcp4_proc_init())
-+ goto out_tcp;
-+ if (udp4_proc_init())
-+ goto out_udp;
-+ if (fib_proc_init())
-+ goto out_fib;
-+ if (ip_misc_proc_init())
-+ goto out_misc;
-+out:
-+ return rc;
-+out_misc:
-+ fib_proc_exit();
-+out_fib:
-+ udp4_proc_exit();
-+out_udp:
-+ tcp4_proc_exit();
-+out_tcp:
-+ raw_proc_exit();
-+out_raw:
-+ rc = -ENOMEM;
-+ goto out;
-+}
-+
-+#else /* CONFIG_PROC_FS */
-+static int __init ipv4_proc_init(void)
-+{
-+ return 0;
-+}
-+#endif /* CONFIG_PROC_FS */
-+
-+MODULE_ALIAS_NETPROTO(PF_INET);
-+
-+EXPORT_SYMBOL(inet_accept);
-+EXPORT_SYMBOL(inet_bind);
-+EXPORT_SYMBOL(inet_dgram_connect);
-+EXPORT_SYMBOL(inet_dgram_ops);
-+EXPORT_SYMBOL(inet_getname);
-+EXPORT_SYMBOL(inet_ioctl);
-+EXPORT_SYMBOL(inet_listen);
-+EXPORT_SYMBOL(inet_register_protosw);
-+EXPORT_SYMBOL(inet_release);
-+EXPORT_SYMBOL(inet_sendmsg);
-+EXPORT_SYMBOL(inet_shutdown);
-+EXPORT_SYMBOL(inet_sock_destruct);
-+EXPORT_SYMBOL(inet_stream_connect);
-+EXPORT_SYMBOL(inet_stream_ops);
-+EXPORT_SYMBOL(inet_unregister_protosw);
-+EXPORT_SYMBOL(net_statistics);
-+EXPORT_SYMBOL(sysctl_ip_nonlocal_bind);
diff -Nurb linux-2.6.22-570/net/ipv4/ah4.c linux-2.6.22-590/net/ipv4/ah4.c
---- linux-2.6.22-570/net/ipv4/ah4.c 2008-03-18 15:57:37.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/ah4.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv4/ah4.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/ah4.c 2008-03-20 13:28:03.000000000 -0400
@@ -198,6 +198,9 @@
struct ip_auth_hdr *ah = (struct ip_auth_hdr*)(skb->data+(iph->ihl<<2));
struct xfrm_state *x;
+MODULE_ALIAS_XFRM_TYPE(AF_INET, XFRM_PROTO_AH);
diff -Nurb linux-2.6.22-570/net/ipv4/arp.c linux-2.6.22-590/net/ipv4/arp.c
--- linux-2.6.22-570/net/ipv4/arp.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/arp.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/arp.c 2008-03-20 13:28:03.000000000 -0400
@@ -109,6 +109,7 @@
#include <net/protocol.h>
#include <net/tcp.h>
EXPORT_SYMBOL(arp_broken_ops);
diff -Nurb linux-2.6.22-570/net/ipv4/devinet.c linux-2.6.22-590/net/ipv4/devinet.c
---- linux-2.6.22-570/net/ipv4/devinet.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/devinet.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv4/devinet.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/devinet.c 2008-03-20 13:28:03.000000000 -0400
@@ -63,7 +63,7 @@
#include <net/ip_fib.h>
#include <net/rtnetlink.h>
EXPORT_SYMBOL(in_dev_finish_destroy);
diff -Nurb linux-2.6.22-570/net/ipv4/esp4.c linux-2.6.22-590/net/ipv4/esp4.c
--- linux-2.6.22-570/net/ipv4/esp4.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/esp4.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/esp4.c 2008-03-20 13:28:03.000000000 -0400
@@ -307,6 +307,9 @@
struct ip_esp_hdr *esph = (struct ip_esp_hdr*)(skb->data+(iph->ihl<<2));
struct xfrm_state *x;
+MODULE_ALIAS_XFRM_TYPE(AF_INET, XFRM_PROTO_ESP);
diff -Nurb linux-2.6.22-570/net/ipv4/fib_frontend.c linux-2.6.22-590/net/ipv4/fib_frontend.c
--- linux-2.6.22-570/net/ipv4/fib_frontend.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/fib_frontend.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/fib_frontend.c 2008-03-20 13:28:03.000000000 -0400
@@ -51,38 +51,34 @@
#ifndef CONFIG_IP_MULTIPLE_TABLES
EXPORT_SYMBOL(inet_addr_type);
diff -Nurb linux-2.6.22-570/net/ipv4/fib_hash.c linux-2.6.22-590/net/ipv4/fib_hash.c
---- linux-2.6.22-570/net/ipv4/fib_hash.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/fib_hash.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv4/fib_hash.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/fib_hash.c 2008-03-20 13:28:03.000000000 -0400
@@ -40,6 +40,7 @@
#include <net/route.h>
#include <net/tcp.h>
#endif /* CONFIG_PROC_FS */
diff -Nurb linux-2.6.22-570/net/ipv4/fib_rules.c linux-2.6.22-590/net/ipv4/fib_rules.c
--- linux-2.6.22-570/net/ipv4/fib_rules.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/fib_rules.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/fib_rules.c 2008-03-20 13:28:03.000000000 -0400
@@ -32,8 +32,6 @@
#include <net/ip_fib.h>
#include <net/fib_rules.h>
}
diff -Nurb linux-2.6.22-570/net/ipv4/fib_semantics.c linux-2.6.22-590/net/ipv4/fib_semantics.c
--- linux-2.6.22-570/net/ipv4/fib_semantics.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/fib_semantics.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/fib_semantics.c 2008-03-20 13:28:03.000000000 -0400
@@ -42,7 +42,6 @@
#include <net/tcp.h>
#include <net/sock.h>
+}
diff -Nurb linux-2.6.22-570/net/ipv4/fib_trie.c linux-2.6.22-590/net/ipv4/fib_trie.c
--- linux-2.6.22-570/net/ipv4/fib_trie.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/fib_trie.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/fib_trie.c 2008-03-20 13:28:03.000000000 -0400
@@ -78,6 +78,7 @@
#include <net/route.h>
#include <net/tcp.h>
#endif /* CONFIG_PROC_FS */
diff -Nurb linux-2.6.22-570/net/ipv4/icmp.c linux-2.6.22-590/net/ipv4/icmp.c
---- linux-2.6.22-570/net/ipv4/icmp.c 2008-03-18 15:57:42.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/icmp.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv4/icmp.c 2008-03-20 13:25:49.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/icmp.c 2008-03-20 13:28:03.000000000 -0400
@@ -229,14 +229,13 @@
*
* On SMP we have one ICMP socket per-cpu.
EXPORT_SYMBOL(icmp_err_convert);
diff -Nurb linux-2.6.22-570/net/ipv4/igmp.c linux-2.6.22-590/net/ipv4/igmp.c
--- linux-2.6.22-570/net/ipv4/igmp.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/igmp.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/igmp.c 2008-03-20 13:28:03.000000000 -0400
@@ -97,6 +97,7 @@
#include <net/route.h>
#include <net/sock.h>
}
#endif
diff -Nurb linux-2.6.22-570/net/ipv4/inet_connection_sock.c linux-2.6.22-590/net/ipv4/inet_connection_sock.c
---- linux-2.6.22-570/net/ipv4/inet_connection_sock.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/inet_connection_sock.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv4/inet_connection_sock.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/inet_connection_sock.c 2008-03-20 13:28:03.000000000 -0400
@@ -32,7 +32,7 @@
/*
* This array holds the first and last local port number.
{ .daddr = ((opt && opt->srr) ?
opt->faddr :
diff -Nurb linux-2.6.22-570/net/ipv4/inet_diag.c linux-2.6.22-590/net/ipv4/inet_diag.c
---- linux-2.6.22-570/net/ipv4/inet_diag.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/inet_diag.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv4/inet_diag.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/inet_diag.c 2008-03-20 13:28:03.000000000 -0400
@@ -227,6 +227,7 @@
static int inet_diag_get_exact(struct sk_buff *in_skb,
const struct nlmsghdr *nlh)
goto out_free_table;
err = 0;
diff -Nurb linux-2.6.22-570/net/ipv4/inet_hashtables.c linux-2.6.22-590/net/ipv4/inet_hashtables.c
---- linux-2.6.22-570/net/ipv4/inet_hashtables.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/inet_hashtables.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv4/inet_hashtables.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/inet_hashtables.c 2008-03-20 13:28:03.000000000 -0400
@@ -29,11 +29,13 @@
*/
struct inet_bind_bucket *inet_bind_bucket_create(struct kmem_cache *cachep,
if (sk_head(&tb->owners) == sk && !sk->sk_bind_node.next) {
diff -Nurb linux-2.6.22-570/net/ipv4/inet_timewait_sock.c linux-2.6.22-590/net/ipv4/inet_timewait_sock.c
--- linux-2.6.22-570/net/ipv4/inet_timewait_sock.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/inet_timewait_sock.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/inet_timewait_sock.c 2008-03-20 13:28:03.000000000 -0400
@@ -31,7 +31,7 @@
write_unlock(&ehead->lock);
BUG_TRAP(icsk->icsk_bind_hash);
diff -Nurb linux-2.6.22-570/net/ipv4/inetpeer.c linux-2.6.22-590/net/ipv4/inetpeer.c
--- linux-2.6.22-570/net/ipv4/inetpeer.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/inetpeer.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/inetpeer.c 2008-03-20 13:28:03.000000000 -0400
@@ -81,71 +81,94 @@
.avl_height = 0
};
}
diff -Nurb linux-2.6.22-570/net/ipv4/ip_fragment.c linux-2.6.22-590/net/ipv4/ip_fragment.c
--- linux-2.6.22-570/net/ipv4/ip_fragment.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/ip_fragment.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/ip_fragment.c 2008-03-20 13:28:03.000000000 -0400
@@ -49,21 +49,6 @@
* as well. Or notify me, at least. --ANK
*/
EXPORT_SYMBOL(ip_defrag);
diff -Nurb linux-2.6.22-570/net/ipv4/ip_gre.c linux-2.6.22-590/net/ipv4/ip_gre.c
--- linux-2.6.22-570/net/ipv4/ip_gre.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/ip_gre.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/ip_gre.c 2008-03-20 13:28:03.000000000 -0400
@@ -262,7 +262,7 @@
int i;
for (i=1; i<100; i++) {
hlen = tdev->hard_header_len;
diff -Nurb linux-2.6.22-570/net/ipv4/ip_input.c linux-2.6.22-590/net/ipv4/ip_input.c
--- linux-2.6.22-570/net/ipv4/ip_input.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/ip_input.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/ip_input.c 2008-03-20 13:28:03.000000000 -0400
@@ -280,6 +280,10 @@
struct iphdr *iph;
struct net_device *dev = skb->dev;
IP options require packet mangling.
But it is the easiest for now, especially taking
diff -Nurb linux-2.6.22-570/net/ipv4/ip_options.c linux-2.6.22-590/net/ipv4/ip_options.c
---- linux-2.6.22-570/net/ipv4/ip_options.c 2008-03-18 15:57:42.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/ip_options.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv4/ip_options.c 2008-03-20 13:25:49.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/ip_options.c 2008-03-20 13:28:03.000000000 -0400
@@ -151,7 +151,7 @@
__be32 addr;
timeptr = (__be32*)&optptr[optptr[2]+3];
diff -Nurb linux-2.6.22-570/net/ipv4/ip_output.c linux-2.6.22-590/net/ipv4/ip_output.c
--- linux-2.6.22-570/net/ipv4/ip_output.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/ip_output.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/ip_output.c 2008-03-20 13:28:03.000000000 -0400
@@ -83,8 +83,6 @@
#include <linux/netlink.h>
#include <linux/tcp.h>
.saddr = rt->rt_spec_dst,
diff -Nurb linux-2.6.22-570/net/ipv4/ip_sockglue.c linux-2.6.22-590/net/ipv4/ip_sockglue.c
--- linux-2.6.22-570/net/ipv4/ip_sockglue.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/ip_sockglue.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/ip_sockglue.c 2008-03-20 13:28:03.000000000 -0400
@@ -411,6 +411,7 @@
static int do_ip_setsockopt(struct sock *sk, int level,
int optname, char __user *optval, int optlen)
break;
case IP_HDRINCL:
diff -Nurb linux-2.6.22-570/net/ipv4/ipcomp.c linux-2.6.22-590/net/ipv4/ipcomp.c
---- linux-2.6.22-570/net/ipv4/ipcomp.c 2008-03-18 15:57:37.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/ipcomp.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv4/ipcomp.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/ipcomp.c 2008-03-20 13:28:03.000000000 -0400
@@ -175,6 +175,9 @@
struct ip_comp_hdr *ipch = (struct ip_comp_hdr *)(skb->data+(iph->ihl<<2));
struct xfrm_state *x;
+MODULE_ALIAS_XFRM_TYPE(AF_INET, XFRM_PROTO_COMP);
diff -Nurb linux-2.6.22-570/net/ipv4/ipconfig.c linux-2.6.22-590/net/ipv4/ipconfig.c
--- linux-2.6.22-570/net/ipv4/ipconfig.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/ipconfig.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/ipconfig.c 2008-03-20 13:28:03.000000000 -0400
@@ -59,6 +59,7 @@
#include <net/ip.h>
#include <net/ipconfig.h>
if (!ic_enable)
diff -Nurb linux-2.6.22-570/net/ipv4/ipip.c linux-2.6.22-590/net/ipv4/ipip.c
--- linux-2.6.22-570/net/ipv4/ipip.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/ipip.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/ipip.c 2008-03-20 13:28:03.000000000 -0400
@@ -225,7 +225,7 @@
int i;
for (i=1; i<100; i++) {
dev->hard_header_len = tdev->hard_header_len + sizeof(struct iphdr);
diff -Nurb linux-2.6.22-570/net/ipv4/ipmr.c linux-2.6.22-590/net/ipv4/ipmr.c
--- linux-2.6.22-570/net/ipv4/ipmr.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/ipmr.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/ipmr.c 2008-03-20 13:28:03.000000000 -0400
@@ -62,6 +62,7 @@
#include <linux/netfilter_ipv4.h>
#include <net/ipip.h>
}
diff -Nurb linux-2.6.22-570/net/ipv4/ipvs/ip_vs_app.c linux-2.6.22-590/net/ipv4/ipvs/ip_vs_app.c
--- linux-2.6.22-570/net/ipv4/ipvs/ip_vs_app.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/ipvs/ip_vs_app.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/ipvs/ip_vs_app.c 2008-03-20 13:28:03.000000000 -0400
@@ -32,6 +32,7 @@
#include <linux/proc_fs.h>
#include <linux/seq_file.h>
}
diff -Nurb linux-2.6.22-570/net/ipv4/ipvs/ip_vs_conn.c linux-2.6.22-590/net/ipv4/ipvs/ip_vs_conn.c
--- linux-2.6.22-570/net/ipv4/ipvs/ip_vs_conn.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/ipvs/ip_vs_conn.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/ipvs/ip_vs_conn.c 2008-03-20 13:28:03.000000000 -0400
@@ -34,6 +34,7 @@
#include <linux/seq_file.h>
#include <linux/jhash.h>
}
diff -Nurb linux-2.6.22-570/net/ipv4/ipvs/ip_vs_core.c linux-2.6.22-590/net/ipv4/ipvs/ip_vs_core.c
--- linux-2.6.22-570/net/ipv4/ipvs/ip_vs_core.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/ipvs/ip_vs_core.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/ipvs/ip_vs_core.c 2008-03-20 13:28:03.000000000 -0400
@@ -460,7 +460,7 @@
and the destination is RTN_UNICAST (and not local), then create
a cache_bypass connection entry */
diff -Nurb linux-2.6.22-570/net/ipv4/ipvs/ip_vs_ctl.c linux-2.6.22-590/net/ipv4/ipvs/ip_vs_ctl.c
--- linux-2.6.22-570/net/ipv4/ipvs/ip_vs_ctl.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/ipvs/ip_vs_ctl.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/ipvs/ip_vs_ctl.c 2008-03-20 13:28:03.000000000 -0400
@@ -39,6 +39,7 @@
#include <net/ip.h>
#include <net/route.h>
}
diff -Nurb linux-2.6.22-570/net/ipv4/ipvs/ip_vs_lblcr.c linux-2.6.22-590/net/ipv4/ipvs/ip_vs_lblcr.c
--- linux-2.6.22-570/net/ipv4/ipvs/ip_vs_lblcr.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/ipvs/ip_vs_lblcr.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/ipvs/ip_vs_lblcr.c 2008-03-20 13:28:03.000000000 -0400
@@ -843,7 +843,7 @@
INIT_LIST_HEAD(&ip_vs_lblcr_scheduler.n_list);
sysctl_header = register_sysctl_table(lblcr_root_table);
unregister_ip_vs_scheduler(&ip_vs_lblcr_scheduler);
diff -Nurb linux-2.6.22-570/net/ipv4/ipvs/ip_vs_sync.c linux-2.6.22-590/net/ipv4/ipvs/ip_vs_sync.c
--- linux-2.6.22-570/net/ipv4/ipvs/ip_vs_sync.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/ipvs/ip_vs_sync.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/ipvs/ip_vs_sync.c 2008-03-20 13:28:03.000000000 -0400
@@ -387,7 +387,7 @@
struct net_device *dev;
struct inet_sock *inet = inet_sk(sk);
addr = inet_select_addr(dev, 0, RT_SCOPE_UNIVERSE);
diff -Nurb linux-2.6.22-570/net/ipv4/ipvs/ip_vs_xmit.c linux-2.6.22-590/net/ipv4/ipvs/ip_vs_xmit.c
--- linux-2.6.22-570/net/ipv4/ipvs/ip_vs_xmit.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/ipvs/ip_vs_xmit.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/ipvs/ip_vs_xmit.c 2008-03-20 13:28:03.000000000 -0400
@@ -70,6 +70,7 @@
if (!(rt = (struct rtable *)
__ip_vs_dst_check(dest, rtos, 0))) {
-MODULE_LICENSE("GPL");
diff -Nurb linux-2.6.22-570/net/ipv4/netfilter/arp_tables.c linux-2.6.22-590/net/ipv4/netfilter/arp_tables.c
--- linux-2.6.22-570/net/ipv4/netfilter/arp_tables.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/netfilter/arp_tables.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/netfilter/arp_tables.c 2008-03-20 13:28:03.000000000 -0400
@@ -19,6 +19,7 @@
#include <linux/proc_fs.h>
#include <linux/module.h>
return ret;
diff -Nurb linux-2.6.22-570/net/ipv4/netfilter/arptable_filter.c linux-2.6.22-590/net/ipv4/netfilter/arptable_filter.c
--- linux-2.6.22-570/net/ipv4/netfilter/arptable_filter.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/netfilter/arptable_filter.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/netfilter/arptable_filter.c 2008-03-20 13:28:03.000000000 -0400
@@ -61,6 +61,10 @@
const struct net_device *out,
int (*okfn)(struct sk_buff *))
diff -Nurb linux-2.6.22-570/net/ipv4/netfilter/ip_queue.c linux-2.6.22-590/net/ipv4/netfilter/ip_queue.c
--- linux-2.6.22-570/net/ipv4/netfilter/ip_queue.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/netfilter/ip_queue.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/netfilter/ip_queue.c 2008-03-20 13:28:03.000000000 -0400
@@ -26,6 +26,7 @@
#include <linux/mutex.h>
#include <net/sock.h>
mutex_lock(&ipqnl_mutex);
diff -Nurb linux-2.6.22-570/net/ipv4/netfilter/ip_tables.c linux-2.6.22-590/net/ipv4/netfilter/ip_tables.c
--- linux-2.6.22-570/net/ipv4/netfilter/ip_tables.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/netfilter/ip_tables.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/netfilter/ip_tables.c 2008-03-20 13:28:03.000000000 -0400
@@ -1039,7 +1039,7 @@
}
#endif
return ret;
diff -Nurb linux-2.6.22-570/net/ipv4/netfilter/ipt_CLUSTERIP.c linux-2.6.22-590/net/ipv4/netfilter/ipt_CLUSTERIP.c
--- linux-2.6.22-570/net/ipv4/netfilter/ipt_CLUSTERIP.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/netfilter/ipt_CLUSTERIP.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/netfilter/ipt_CLUSTERIP.c 2008-03-20 13:28:03.000000000 -0400
@@ -27,6 +27,7 @@
#include <linux/netfilter_ipv4/ipt_CLUSTERIP.h>
#include <net/netfilter/nf_conntrack.h>
ret = -ENOMEM;
diff -Nurb linux-2.6.22-570/net/ipv4/netfilter/ipt_MASQUERADE.c linux-2.6.22-590/net/ipv4/netfilter/ipt_MASQUERADE.c
--- linux-2.6.22-570/net/ipv4/netfilter/ipt_MASQUERADE.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/netfilter/ipt_MASQUERADE.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/netfilter/ipt_MASQUERADE.c 2008-03-20 13:28:03.000000000 -0400
@@ -131,6 +131,9 @@
{
struct net_device *dev = ptr;
conntracks which were associated with that device,
diff -Nurb linux-2.6.22-570/net/ipv4/netfilter/ipt_REJECT.c linux-2.6.22-590/net/ipv4/netfilter/ipt_REJECT.c
--- linux-2.6.22-570/net/ipv4/netfilter/ipt_REJECT.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/netfilter/ipt_REJECT.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/netfilter/ipt_REJECT.c 2008-03-20 13:28:03.000000000 -0400
@@ -137,7 +137,7 @@
)
addr_type = RTN_LOCAL;
nskb->ip_summed = CHECKSUM_NONE;
diff -Nurb linux-2.6.22-570/net/ipv4/netfilter/ipt_ULOG.c linux-2.6.22-590/net/ipv4/netfilter/ipt_ULOG.c
--- linux-2.6.22-570/net/ipv4/netfilter/ipt_ULOG.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/netfilter/ipt_ULOG.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/netfilter/ipt_ULOG.c 2008-03-20 13:28:03.000000000 -0400
@@ -419,7 +419,8 @@
for (i = 0; i < ULOG_MAXNLGROUPS; i++)
setup_timer(&ulog_buffers[i].timer, ulog_timer, i);
return -ENOMEM;
diff -Nurb linux-2.6.22-570/net/ipv4/netfilter/ipt_addrtype.c linux-2.6.22-590/net/ipv4/netfilter/ipt_addrtype.c
--- linux-2.6.22-570/net/ipv4/netfilter/ipt_addrtype.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/netfilter/ipt_addrtype.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/netfilter/ipt_addrtype.c 2008-03-20 13:28:03.000000000 -0400
@@ -24,7 +24,7 @@
static inline int match_type(__be32 addr, u_int16_t mask)
static int match(const struct sk_buff *skb,
diff -Nurb linux-2.6.22-570/net/ipv4/netfilter/ipt_recent.c linux-2.6.22-590/net/ipv4/netfilter/ipt_recent.c
--- linux-2.6.22-570/net/ipv4/netfilter/ipt_recent.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/netfilter/ipt_recent.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/netfilter/ipt_recent.c 2008-03-20 13:28:03.000000000 -0400
@@ -24,6 +24,7 @@
#include <linux/bitops.h>
#include <linux/skbuff.h>
diff -Nurb linux-2.6.22-570/net/ipv4/netfilter/iptable_filter.c linux-2.6.22-590/net/ipv4/netfilter/iptable_filter.c
--- linux-2.6.22-570/net/ipv4/netfilter/iptable_filter.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/netfilter/iptable_filter.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/netfilter/iptable_filter.c 2008-03-20 13:28:03.000000000 -0400
@@ -26,7 +26,7 @@
struct ipt_replace repl;
struct ipt_standard entries[3];
module_init(iptable_filter_init);
diff -Nurb linux-2.6.22-570/net/ipv4/netfilter/iptable_mangle.c linux-2.6.22-590/net/ipv4/netfilter/iptable_mangle.c
--- linux-2.6.22-570/net/ipv4/netfilter/iptable_mangle.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/netfilter/iptable_mangle.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/netfilter/iptable_mangle.c 2008-03-20 13:28:03.000000000 -0400
@@ -80,6 +80,10 @@
const struct net_device *out,
int (*okfn)(struct sk_buff *))
diff -Nurb linux-2.6.22-570/net/ipv4/netfilter/iptable_raw.c linux-2.6.22-590/net/ipv4/netfilter/iptable_raw.c
--- linux-2.6.22-570/net/ipv4/netfilter/iptable_raw.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/netfilter/iptable_raw.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/netfilter/iptable_raw.c 2008-03-20 13:28:03.000000000 -0400
@@ -52,6 +52,10 @@
const struct net_device *out,
int (*okfn)(struct sk_buff *))
diff -Nurb linux-2.6.22-570/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c linux-2.6.22-590/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c
--- linux-2.6.22-570/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4.c 2008-03-20 13:28:03.000000000 -0400
@@ -120,6 +120,10 @@
const struct net_device *out,
int (*okfn)(struct sk_buff *))
tuple.src.u.tcp.port = inet->sport;
diff -Nurb linux-2.6.22-570/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4_compat.c linux-2.6.22-590/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4_compat.c
--- linux-2.6.22-570/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4_compat.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4_compat.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4_compat.c 2008-03-20 13:28:03.000000000 -0400
@@ -11,6 +11,7 @@
#include <linux/proc_fs.h>
#include <linux/seq_file.h>
}
diff -Nurb linux-2.6.22-570/net/ipv4/netfilter/nf_nat_helper.c linux-2.6.22-590/net/ipv4/netfilter/nf_nat_helper.c
--- linux-2.6.22-570/net/ipv4/netfilter/nf_nat_helper.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/netfilter/nf_nat_helper.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/netfilter/nf_nat_helper.c 2008-03-20 13:28:03.000000000 -0400
@@ -178,7 +178,7 @@
datalen = (*pskb)->len - iph->ihl*4;
if ((*pskb)->ip_summed != CHECKSUM_PARTIAL) {
skb_network_offset(*pskb) +
diff -Nurb linux-2.6.22-570/net/ipv4/netfilter/nf_nat_rule.c linux-2.6.22-590/net/ipv4/netfilter/nf_nat_rule.c
--- linux-2.6.22-570/net/ipv4/netfilter/nf_nat_rule.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/netfilter/nf_nat_rule.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/netfilter/nf_nat_rule.c 2008-03-20 13:28:03.000000000 -0400
@@ -98,7 +98,10 @@
static void warn_if_extra_mangle(__be32 dstip, __be32 srcip)
{
ret = xt_register_target(&ipt_snat_reg);
diff -Nurb linux-2.6.22-570/net/ipv4/netfilter/nf_nat_standalone.c linux-2.6.22-590/net/ipv4/netfilter/nf_nat_standalone.c
--- linux-2.6.22-570/net/ipv4/netfilter/nf_nat_standalone.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/netfilter/nf_nat_standalone.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/netfilter/nf_nat_standalone.c 2008-03-20 13:28:03.000000000 -0400
@@ -83,6 +83,10 @@
/* maniptype == SRC for postrouting. */
enum nf_nat_manip_type maniptype = HOOK2MANIP(hooknum);
DEBUGP("nf_nat_standalone: adjusting sequence number\n");
diff -Nurb linux-2.6.22-570/net/ipv4/netfilter.c linux-2.6.22-590/net/ipv4/netfilter.c
--- linux-2.6.22-570/net/ipv4/netfilter.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/netfilter.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/netfilter.c 2008-03-20 13:28:03.000000000 -0400
@@ -8,7 +8,7 @@
#include <net/ip.h>
}
diff -Nurb linux-2.6.22-570/net/ipv4/proc.c linux-2.6.22-590/net/ipv4/proc.c
--- linux-2.6.22-570/net/ipv4/proc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/proc.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/proc.c 2008-03-20 13:28:03.000000000 -0400
@@ -44,6 +44,7 @@
#include <linux/seq_file.h>
#include <net/sock.h>
rc = -ENOMEM;
goto out;
diff -Nurb linux-2.6.22-570/net/ipv4/raw.c linux-2.6.22-590/net/ipv4/raw.c
---- linux-2.6.22-570/net/ipv4/raw.c 2008-03-18 15:57:42.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/raw.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv4/raw.c 2008-03-20 13:25:49.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/raw.c 2008-03-20 13:28:03.000000000 -0400
@@ -73,6 +73,7 @@
#include <net/inet_common.h>
#include <net/checksum.h>
#endif /* CONFIG_PROC_FS */
diff -Nurb linux-2.6.22-570/net/ipv4/route.c linux-2.6.22-590/net/ipv4/route.c
--- linux-2.6.22-570/net/ipv4/route.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/route.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/route.c 2008-03-20 13:28:03.000000000 -0400
@@ -101,8 +101,8 @@
#include <net/tcp.h>
#include <net/icmp.h>
xfrm4_init();
diff -Nurb linux-2.6.22-570/net/ipv4/syncookies.c linux-2.6.22-590/net/ipv4/syncookies.c
--- linux-2.6.22-570/net/ipv4/syncookies.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/syncookies.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/syncookies.c 2008-03-20 13:28:03.000000000 -0400
@@ -253,7 +253,8 @@
* no easy way to do this.
*/
opt->faddr :
ireq->rmt_addr),
diff -Nurb linux-2.6.22-570/net/ipv4/sysctl_net_ipv4.c linux-2.6.22-590/net/ipv4/sysctl_net_ipv4.c
---- linux-2.6.22-570/net/ipv4/sysctl_net_ipv4.c 2008-03-18 15:57:41.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/sysctl_net_ipv4.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv4/sysctl_net_ipv4.c 2008-03-20 13:25:47.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/sysctl_net_ipv4.c 2008-03-20 13:28:03.000000000 -0400
@@ -29,21 +29,21 @@
static int ip_local_port_range_max[] = { 65535, 65535 };
#endif
-EXPORT_SYMBOL(ipv4_config);
+#endif /* CONFIG_SYSCTL */
diff -Nurb linux-2.6.22-570/net/ipv4/tcp.c linux-2.6.22-590/net/ipv4/tcp.c
---- linux-2.6.22-570/net/ipv4/tcp.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/tcp.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv4/tcp.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/tcp.c 2008-03-20 13:28:03.000000000 -0400
@@ -2409,6 +2409,23 @@
}
__setup("thash_entries=", set_thash_entries);
"(established %d bind %d)\n",
tcp_hashinfo.ehash_size, tcp_hashinfo.bhash_size);
diff -Nurb linux-2.6.22-570/net/ipv4/tcp_input.c linux-2.6.22-590/net/ipv4/tcp_input.c
---- linux-2.6.22-570/net/ipv4/tcp_input.c 2008-03-18 15:57:37.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/tcp_input.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv4/tcp_input.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/tcp_input.c 2008-03-20 13:28:03.000000000 -0400
@@ -72,8 +72,6 @@
#include <asm/unaligned.h>
#include <net/netdma.h>
opt_rx->rcv_tsval = ntohl(get_unaligned((__be32 *)ptr));
opt_rx->rcv_tsecr = ntohl(get_unaligned((__be32 *)(ptr+4)));
diff -Nurb linux-2.6.22-570/net/ipv4/tcp_ipv4.c linux-2.6.22-590/net/ipv4/tcp_ipv4.c
---- linux-2.6.22-570/net/ipv4/tcp_ipv4.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/tcp_ipv4.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv4/tcp_ipv4.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/tcp_ipv4.c 2008-03-20 13:28:03.000000000 -0400
@@ -71,6 +71,7 @@
#include <net/timewait_sock.h>
#include <net/xfrm.h>
EXPORT_SYMBOL(sysctl_tcp_low_latency);
diff -Nurb linux-2.6.22-570/net/ipv4/tcp_ipv4.c.orig linux-2.6.22-590/net/ipv4/tcp_ipv4.c.orig
---- linux-2.6.22-570/net/ipv4/tcp_ipv4.c.orig 2008-03-18 15:57:37.000000000 -0400
+--- linux-2.6.22-570/net/ipv4/tcp_ipv4.c.orig 2008-03-20 13:25:40.000000000 -0400
+++ linux-2.6.22-590/net/ipv4/tcp_ipv4.c.orig 1969-12-31 19:00:00.000000000 -0500
@@ -1,2483 +0,0 @@
-/*
-
diff -Nurb linux-2.6.22-570/net/ipv4/tcp_output.c linux-2.6.22-590/net/ipv4/tcp_output.c
--- linux-2.6.22-570/net/ipv4/tcp_output.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/tcp_output.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/tcp_output.c 2008-03-20 13:28:03.000000000 -0400
@@ -432,11 +432,11 @@
sysctl_flags = 0;
if (unlikely(tcb->flags & TCPCB_FLAG_SYN)) {
tp->rx_opt.rcv_wscale = rcv_wscale;
diff -Nurb linux-2.6.22-570/net/ipv4/tcp_probe.c linux-2.6.22-590/net/ipv4/tcp_probe.c
--- linux-2.6.22-570/net/ipv4/tcp_probe.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/tcp_probe.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/tcp_probe.c 2008-03-20 13:28:03.000000000 -0400
@@ -172,7 +172,7 @@
if (IS_ERR(tcpw.fifo))
return PTR_ERR(tcpw.fifo);
}
diff -Nurb linux-2.6.22-570/net/ipv4/tunnel4.c linux-2.6.22-590/net/ipv4/tunnel4.c
--- linux-2.6.22-570/net/ipv4/tunnel4.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/tunnel4.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/tunnel4.c 2008-03-20 13:28:03.000000000 -0400
@@ -75,6 +75,10 @@
{
struct xfrm_tunnel *handler;
if (!handler->err_handler(skb, info))
break;
diff -Nurb linux-2.6.22-570/net/ipv4/udp.c linux-2.6.22-590/net/ipv4/udp.c
---- linux-2.6.22-570/net/ipv4/udp.c 2008-03-18 15:57:41.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/udp.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv4/udp.c 2008-03-20 13:25:47.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/udp.c 2008-03-20 13:28:03.000000000 -0400
@@ -101,6 +101,7 @@
#include <net/route.h>
#include <net/checksum.h>
diff -Nurb linux-2.6.22-570/net/ipv4/udplite.c linux-2.6.22-590/net/ipv4/udplite.c
--- linux-2.6.22-570/net/ipv4/udplite.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/udplite.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/udplite.c 2008-03-20 13:28:03.000000000 -0400
@@ -31,11 +31,18 @@
static int udplite_rcv(struct sk_buff *skb)
return;
diff -Nurb linux-2.6.22-570/net/ipv4/xfrm4_input.c linux-2.6.22-590/net/ipv4/xfrm4_input.c
--- linux-2.6.22-570/net/ipv4/xfrm4_input.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/xfrm4_input.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/xfrm4_input.c 2008-03-20 13:28:03.000000000 -0400
@@ -18,6 +18,10 @@
int xfrm4_rcv(struct sk_buff *skb)
diff -Nurb linux-2.6.22-570/net/ipv4/xfrm4_policy.c linux-2.6.22-590/net/ipv4/xfrm4_policy.c
--- linux-2.6.22-570/net/ipv4/xfrm4_policy.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/xfrm4_policy.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/xfrm4_policy.c 2008-03-20 13:28:03.000000000 -0400
@@ -25,6 +25,7 @@
{
struct rtable *rt;
do {
diff -Nurb linux-2.6.22-570/net/ipv4/xfrm4_state.c linux-2.6.22-590/net/ipv4/xfrm4_state.c
--- linux-2.6.22-570/net/ipv4/xfrm4_state.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/xfrm4_state.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/xfrm4_state.c 2008-03-20 13:28:03.000000000 -0400
@@ -16,7 +16,7 @@
static int xfrm4_init_flags(struct xfrm_state *x)
}
diff -Nurb linux-2.6.22-570/net/ipv4/xfrm4_tunnel.c linux-2.6.22-590/net/ipv4/xfrm4_tunnel.c
--- linux-2.6.22-570/net/ipv4/xfrm4_tunnel.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv4/xfrm4_tunnel.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv4/xfrm4_tunnel.c 2008-03-20 13:28:03.000000000 -0400
@@ -109,3 +109,4 @@
module_init(ipip_init);
module_exit(ipip_fini);
MODULE_LICENSE("GPL");
+MODULE_ALIAS_XFRM_TYPE(AF_INET, XFRM_PROTO_IPIP);
diff -Nurb linux-2.6.22-570/net/ipv6/Kconfig linux-2.6.22-590/net/ipv6/Kconfig
---- linux-2.6.22-570/net/ipv6/Kconfig 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/Kconfig 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv6/Kconfig 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/Kconfig 2008-03-20 13:28:03.000000000 -0400
@@ -109,7 +109,7 @@
If unsure, say Y.
---help---
diff -Nurb linux-2.6.22-570/net/ipv6/Makefile linux-2.6.22-590/net/ipv6/Makefile
--- linux-2.6.22-570/net/ipv6/Makefile 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/Makefile 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/Makefile 2008-03-20 13:28:03.000000000 -0400
@@ -14,7 +14,6 @@
xfrm6_output.o
ipv6-$(CONFIG_NETFILTER) += netfilter.o
obj-$(CONFIG_IPV6_SIT) += sit.o
diff -Nurb linux-2.6.22-570/net/ipv6/addrconf.c linux-2.6.22-590/net/ipv6/addrconf.c
---- linux-2.6.22-570/net/ipv6/addrconf.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/addrconf.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv6/addrconf.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/addrconf.c 2008-03-20 13:28:03.000000000 -0400
@@ -73,6 +73,7 @@
#include <net/tcp.h>
#include <net/ip.h>
#endif
}
diff -Nurb linux-2.6.22-570/net/ipv6/addrconf.c.orig linux-2.6.22-590/net/ipv6/addrconf.c.orig
---- linux-2.6.22-570/net/ipv6/addrconf.c.orig 2008-03-18 15:57:37.000000000 -0400
+--- linux-2.6.22-570/net/ipv6/addrconf.c.orig 2008-03-20 13:25:40.000000000 -0400
+++ linux-2.6.22-590/net/ipv6/addrconf.c.orig 1969-12-31 19:00:00.000000000 -0500
@@ -1,4301 +0,0 @@
-/*
-#endif
-}
diff -Nurb linux-2.6.22-570/net/ipv6/af_inet6.c linux-2.6.22-590/net/ipv6/af_inet6.c
---- linux-2.6.22-570/net/ipv6/af_inet6.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/af_inet6.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv6/af_inet6.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/af_inet6.c 2008-03-20 13:28:03.000000000 -0400
@@ -59,9 +59,6 @@
#ifdef CONFIG_IPV6_TUNNEL
#include <net/ip6_tunnel.h>
ip6_route_cleanup();
diff -Nurb linux-2.6.22-570/net/ipv6/ah6.c linux-2.6.22-590/net/ipv6/ah6.c
--- linux-2.6.22-570/net/ipv6/ah6.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/ah6.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/ah6.c 2008-03-20 13:28:03.000000000 -0400
@@ -74,7 +74,7 @@
return 0;
}
MODULE_LICENSE("GPL");
+MODULE_ALIAS_XFRM_TYPE(AF_INET6, XFRM_PROTO_AH);
diff -Nurb linux-2.6.22-570/net/ipv6/anycast.c linux-2.6.22-590/net/ipv6/anycast.c
---- linux-2.6.22-570/net/ipv6/anycast.c 2008-03-18 15:57:37.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/anycast.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv6/anycast.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/anycast.c 2008-03-20 13:28:03.000000000 -0400
@@ -32,6 +32,7 @@
#include <net/sock.h>
diff -Nurb linux-2.6.22-570/net/ipv6/datagram.c linux-2.6.22-590/net/ipv6/datagram.c
--- linux-2.6.22-570/net/ipv6/datagram.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/datagram.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/datagram.c 2008-03-20 13:28:03.000000000 -0400
@@ -60,6 +60,7 @@
return -EAFNOSUPPORT;
break;
diff -Nurb linux-2.6.22-570/net/ipv6/esp6.c linux-2.6.22-590/net/ipv6/esp6.c
--- linux-2.6.22-570/net/ipv6/esp6.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/esp6.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/esp6.c 2008-03-20 13:28:03.000000000 -0400
@@ -421,3 +421,4 @@
module_exit(esp6_fini);
+MODULE_ALIAS_XFRM_TYPE(AF_INET6, XFRM_PROTO_ESP);
diff -Nurb linux-2.6.22-570/net/ipv6/exthdrs.c linux-2.6.22-590/net/ipv6/exthdrs.c
--- linux-2.6.22-570/net/ipv6/exthdrs.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/exthdrs.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/exthdrs.c 2008-03-20 13:28:03.000000000 -0400
@@ -42,7 +42,7 @@
#include <net/ndisc.h>
#include <net/ip6_route.h>
if (xfrm6_input_addr(skb, (xfrm_address_t *)addr,
(xfrm_address_t *)&ipv6_hdr(skb)->saddr,
diff -Nurb linux-2.6.22-570/net/ipv6/fib6_rules.c linux-2.6.22-590/net/ipv6/fib6_rules.c
---- linux-2.6.22-570/net/ipv6/fib6_rules.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/fib6_rules.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv6/fib6_rules.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/fib6_rules.c 2008-03-20 13:28:03.000000000 -0400
@@ -244,7 +244,7 @@
return -ENOBUFS;
}
+ fib_rules_unregister(&init_net, &fib6_rules_ops);
}
diff -Nurb linux-2.6.22-570/net/ipv6/icmp.c linux-2.6.22-590/net/ipv6/icmp.c
---- linux-2.6.22-570/net/ipv6/icmp.c 2008-03-18 15:57:37.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/icmp.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv6/icmp.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/icmp.c 2008-03-20 13:28:03.000000000 -0400
@@ -272,7 +272,7 @@
return 0;
}
if (saddr)
diff -Nurb linux-2.6.22-570/net/ipv6/inet6_connection_sock.c linux-2.6.22-590/net/ipv6/inet6_connection_sock.c
--- linux-2.6.22-570/net/ipv6/inet6_connection_sock.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/inet6_connection_sock.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/inet6_connection_sock.c 2008-03-20 13:28:03.000000000 -0400
@@ -149,6 +149,7 @@
struct in6_addr *final_p = NULL, final;
ipv6_addr_copy(&fl.fl6_dst, &np->daddr);
ipv6_addr_copy(&fl.fl6_src, &np->saddr);
diff -Nurb linux-2.6.22-570/net/ipv6/inet6_hashtables.c linux-2.6.22-590/net/ipv6/inet6_hashtables.c
---- linux-2.6.22-570/net/ipv6/inet6_hashtables.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/inet6_hashtables.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv6/inet6_hashtables.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/inet6_hashtables.c 2008-03-20 13:28:03.000000000 -0400
@@ -61,7 +61,7 @@
const __be16 sport,
const struct in6_addr *daddr,
diff -Nurb linux-2.6.22-570/net/ipv6/ip6_fib.c linux-2.6.22-590/net/ipv6/ip6_fib.c
--- linux-2.6.22-570/net/ipv6/ip6_fib.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/ip6_fib.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/ip6_fib.c 2008-03-20 13:28:03.000000000 -0400
@@ -361,6 +361,7 @@
static int inet6_dump_fib(struct sk_buff *skb, struct netlink_callback *cb)
printk(KERN_DEBUG "fib6_clean_node: del failed: rt=%p@%p err=%d\n", rt, rt->rt6i_node, res);
diff -Nurb linux-2.6.22-570/net/ipv6/ip6_flowlabel.c linux-2.6.22-590/net/ipv6/ip6_flowlabel.c
--- linux-2.6.22-570/net/ipv6/ip6_flowlabel.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/ip6_flowlabel.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/ip6_flowlabel.c 2008-03-20 13:28:03.000000000 -0400
@@ -22,6 +22,7 @@
#include <linux/seq_file.h>
}
diff -Nurb linux-2.6.22-570/net/ipv6/ip6_input.c linux-2.6.22-590/net/ipv6/ip6_input.c
--- linux-2.6.22-570/net/ipv6/ip6_input.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/ip6_input.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/ip6_input.c 2008-03-20 13:28:03.000000000 -0400
@@ -61,6 +61,11 @@
u32 pkt_len;
struct inet6_dev *idev;
kfree_skb(skb);
return 0;
diff -Nurb linux-2.6.22-570/net/ipv6/ip6_output.c linux-2.6.22-590/net/ipv6/ip6_output.c
---- linux-2.6.22-570/net/ipv6/ip6_output.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/ip6_output.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv6/ip6_output.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/ip6_output.c 2008-03-20 13:28:03.000000000 -0400
@@ -423,7 +423,7 @@
/* XXX: idev->cnf.proxy_ndp? */
break;
#endif
diff -Nurb linux-2.6.22-570/net/ipv6/ip6_tunnel.c linux-2.6.22-590/net/ipv6/ip6_tunnel.c
---- linux-2.6.22-570/net/ipv6/ip6_tunnel.c 2008-03-18 15:57:37.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/ip6_tunnel.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv6/ip6_tunnel.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/ip6_tunnel.c 2008-03-20 13:28:03.000000000 -0400
@@ -235,7 +235,7 @@
int i;
for (i = 1; i < IP6_TNL_MAX; i++) {
if (unlikely(!ipv6_chk_addr(&p->laddr, ldev, 0)))
printk(KERN_WARNING
diff -Nurb linux-2.6.22-570/net/ipv6/ipcomp6.c linux-2.6.22-590/net/ipv6/ipcomp6.c
---- linux-2.6.22-570/net/ipv6/ipcomp6.c 2008-03-18 15:57:37.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/ipcomp6.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv6/ipcomp6.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/ipcomp6.c 2008-03-20 13:28:03.000000000 -0400
@@ -501,4 +501,4 @@
MODULE_DESCRIPTION("IP Payload Compression Protocol (IPComp) for IPv6 - RFC3173");
MODULE_AUTHOR("Mitsuru KANDA <mk@linux-ipv6.org>");
-
+MODULE_ALIAS_XFRM_TYPE(AF_INET6, XFRM_PROTO_COMP);
diff -Nurb linux-2.6.22-570/net/ipv6/ipv6_sockglue.c linux-2.6.22-590/net/ipv6/ipv6_sockglue.c
---- linux-2.6.22-570/net/ipv6/ipv6_sockglue.c 2008-03-18 15:57:37.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/ipv6_sockglue.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv6/ipv6_sockglue.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/ipv6_sockglue.c 2008-03-20 13:28:03.000000000 -0400
@@ -123,7 +123,7 @@
struct ipv6hdr *ipv6h;
struct inet6_protocol *ops;
}
diff -Nurb linux-2.6.22-570/net/ipv6/mcast.c linux-2.6.22-590/net/ipv6/mcast.c
--- linux-2.6.22-570/net/ipv6/mcast.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/mcast.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/mcast.c 2008-03-20 13:28:03.000000000 -0400
@@ -51,6 +51,7 @@
#include <net/sock.h>
}
diff -Nurb linux-2.6.22-570/net/ipv6/mip6.c linux-2.6.22-590/net/ipv6/mip6.c
--- linux-2.6.22-570/net/ipv6/mip6.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/mip6.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/mip6.c 2008-03-20 13:28:03.000000000 -0400
@@ -30,6 +30,7 @@
#include <net/sock.h>
#include <net/ipv6.h>
+MODULE_ALIAS_XFRM_TYPE(AF_INET6, XFRM_PROTO_DSTOPTS);
+MODULE_ALIAS_XFRM_TYPE(AF_INET6, XFRM_PROTO_ROUTING);
diff -Nurb linux-2.6.22-570/net/ipv6/ndisc.c linux-2.6.22-590/net/ipv6/ndisc.c
---- linux-2.6.22-570/net/ipv6/ndisc.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/ndisc.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv6/ndisc.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/ndisc.c 2008-03-20 13:28:03.000000000 -0400
@@ -418,6 +418,7 @@
int oif)
{
neigh_changeaddr(&nd_tbl, dev);
diff -Nurb linux-2.6.22-570/net/ipv6/netfilter/ip6_queue.c linux-2.6.22-590/net/ipv6/netfilter/ip6_queue.c
--- linux-2.6.22-570/net/ipv6/netfilter/ip6_queue.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/netfilter/ip6_queue.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/netfilter/ip6_queue.c 2008-03-20 13:28:03.000000000 -0400
@@ -24,6 +24,7 @@
#include <linux/sysctl.h>
#include <linux/proc_fs.h>
mutex_lock(&ipqnl_mutex);
diff -Nurb linux-2.6.22-570/net/ipv6/netfilter/ip6_tables.c linux-2.6.22-590/net/ipv6/netfilter/ip6_tables.c
--- linux-2.6.22-570/net/ipv6/netfilter/ip6_tables.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/netfilter/ip6_tables.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/netfilter/ip6_tables.c 2008-03-20 13:28:03.000000000 -0400
@@ -906,7 +906,7 @@
int ret;
struct xt_table *t;
return ret;
diff -Nurb linux-2.6.22-570/net/ipv6/netfilter/ip6t_REJECT.c linux-2.6.22-590/net/ipv6/netfilter/ip6t_REJECT.c
--- linux-2.6.22-570/net/ipv6/netfilter/ip6t_REJECT.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/netfilter/ip6t_REJECT.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/netfilter/ip6t_REJECT.c 2008-03-20 13:28:03.000000000 -0400
@@ -92,6 +92,7 @@
}
}
diff -Nurb linux-2.6.22-570/net/ipv6/netfilter/ip6table_filter.c linux-2.6.22-590/net/ipv6/netfilter/ip6table_filter.c
--- linux-2.6.22-570/net/ipv6/netfilter/ip6table_filter.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/netfilter/ip6table_filter.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/netfilter/ip6table_filter.c 2008-03-20 13:28:03.000000000 -0400
@@ -65,6 +65,10 @@
const struct net_device *out,
int (*okfn)(struct sk_buff *))
if ((*pskb)->len < sizeof(struct iphdr)
diff -Nurb linux-2.6.22-570/net/ipv6/netfilter/ip6table_mangle.c linux-2.6.22-590/net/ipv6/netfilter/ip6table_mangle.c
--- linux-2.6.22-570/net/ipv6/netfilter/ip6table_mangle.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/netfilter/ip6table_mangle.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/netfilter/ip6table_mangle.c 2008-03-20 13:28:03.000000000 -0400
@@ -79,6 +79,10 @@
const struct net_device *out,
int (*okfn)(struct sk_buff *))
if ((*pskb)->len < sizeof(struct iphdr)
diff -Nurb linux-2.6.22-570/net/ipv6/netfilter/ip6table_raw.c linux-2.6.22-590/net/ipv6/netfilter/ip6table_raw.c
--- linux-2.6.22-570/net/ipv6/netfilter/ip6table_raw.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/netfilter/ip6table_raw.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/netfilter/ip6table_raw.c 2008-03-20 13:28:03.000000000 -0400
@@ -57,6 +57,10 @@
const struct net_device *out,
int (*okfn)(struct sk_buff *))
diff -Nurb linux-2.6.22-570/net/ipv6/netfilter/nf_conntrack_l3proto_ipv6.c linux-2.6.22-590/net/ipv6/netfilter/nf_conntrack_l3proto_ipv6.c
--- linux-2.6.22-570/net/ipv6/netfilter/nf_conntrack_l3proto_ipv6.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/netfilter/nf_conntrack_l3proto_ipv6.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/netfilter/nf_conntrack_l3proto_ipv6.c 2008-03-20 13:28:03.000000000 -0400
@@ -167,6 +167,10 @@
unsigned char pnum = ipv6_hdr(*pskb)->nexthdr;
if (net_ratelimit())
diff -Nurb linux-2.6.22-570/net/ipv6/netfilter.c linux-2.6.22-590/net/ipv6/netfilter.c
--- linux-2.6.22-570/net/ipv6/netfilter.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/netfilter.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/netfilter.c 2008-03-20 13:28:03.000000000 -0400
@@ -14,6 +14,7 @@
struct ipv6hdr *iph = ipv6_hdr(skb);
struct dst_entry *dst;
.nl_u =
diff -Nurb linux-2.6.22-570/net/ipv6/proc.c linux-2.6.22-590/net/ipv6/proc.c
--- linux-2.6.22-570/net/ipv6/proc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/proc.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/proc.c 2008-03-20 13:28:03.000000000 -0400
@@ -28,6 +28,7 @@
#include <net/tcp.h>
#include <net/transp_v6.h>
}
diff -Nurb linux-2.6.22-570/net/ipv6/raw.c linux-2.6.22-590/net/ipv6/raw.c
---- linux-2.6.22-570/net/ipv6/raw.c 2008-03-18 15:57:37.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/raw.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv6/raw.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/raw.c 2008-03-20 13:28:03.000000000 -0400
@@ -49,7 +49,8 @@
#include <net/udp.h>
#include <net/inet_common.h>
#endif /* CONFIG_PROC_FS */
diff -Nurb linux-2.6.22-570/net/ipv6/reassembly.c linux-2.6.22-590/net/ipv6/reassembly.c
--- linux-2.6.22-570/net/ipv6/reassembly.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/reassembly.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/reassembly.c 2008-03-20 13:28:03.000000000 -0400
@@ -301,7 +301,7 @@
fq_kill(fq);
goto out;
diff -Nurb linux-2.6.22-570/net/ipv6/route.c linux-2.6.22-590/net/ipv6/route.c
---- linux-2.6.22-570/net/ipv6/route.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/route.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv6/route.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/route.c 2008-03-20 13:28:03.000000000 -0400
@@ -56,6 +56,7 @@
#include <net/xfrm.h>
#include <net/netevent.h>
xfrm6_fini();
diff -Nurb linux-2.6.22-570/net/ipv6/sit.c linux-2.6.22-590/net/ipv6/sit.c
--- linux-2.6.22-570/net/ipv6/sit.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/sit.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/sit.c 2008-03-20 13:28:03.000000000 -0400
@@ -167,7 +167,7 @@
int i;
for (i=1; i<100; i++) {
if (tdev) {
dev->hard_header_len = tdev->hard_header_len + sizeof(struct iphdr);
diff -Nurb linux-2.6.22-570/net/ipv6/tcp_ipv6.c linux-2.6.22-590/net/ipv6/tcp_ipv6.c
---- linux-2.6.22-570/net/ipv6/tcp_ipv6.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/tcp_ipv6.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv6/tcp_ipv6.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/tcp_ipv6.c 2008-03-20 13:28:03.000000000 -0400
@@ -143,6 +143,7 @@
return(-EAFNOSUPPORT);
#endif
diff -Nurb linux-2.6.22-570/net/ipv6/udp.c linux-2.6.22-590/net/ipv6/udp.c
---- linux-2.6.22-570/net/ipv6/udp.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/udp.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv6/udp.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/udp.c 2008-03-20 13:28:03.000000000 -0400
@@ -657,6 +657,7 @@
ulen += sizeof(struct udphdr);
diff -Nurb linux-2.6.22-570/net/ipv6/udplite.c linux-2.6.22-590/net/ipv6/udplite.c
--- linux-2.6.22-570/net/ipv6/udplite.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/udplite.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/udplite.c 2008-03-20 13:28:03.000000000 -0400
@@ -95,11 +95,11 @@
int __init udplite6_proc_init(void)
}
#endif
diff -Nurb linux-2.6.22-570/net/ipv6/xfrm6_policy.c linux-2.6.22-590/net/ipv6/xfrm6_policy.c
---- linux-2.6.22-570/net/ipv6/xfrm6_policy.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/xfrm6_policy.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/ipv6/xfrm6_policy.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/xfrm6_policy.c 2008-03-20 13:28:03.000000000 -0400
@@ -18,7 +18,7 @@
#include <net/ip.h>
#include <net/ipv6.h>
do {
diff -Nurb linux-2.6.22-570/net/ipv6/xfrm6_state.c linux-2.6.22-590/net/ipv6/xfrm6_state.c
--- linux-2.6.22-570/net/ipv6/xfrm6_state.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/xfrm6_state.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/xfrm6_state.c 2008-03-20 13:28:03.000000000 -0400
@@ -65,7 +65,7 @@
goto end;
(src[i]->mode == XFRM_MODE_ROUTEOPTIMIZATION ||
diff -Nurb linux-2.6.22-570/net/ipv6/xfrm6_tunnel.c linux-2.6.22-590/net/ipv6/xfrm6_tunnel.c
--- linux-2.6.22-570/net/ipv6/xfrm6_tunnel.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipv6/xfrm6_tunnel.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipv6/xfrm6_tunnel.c 2008-03-20 13:28:03.000000000 -0400
@@ -379,3 +379,4 @@
module_init(xfrm6_tunnel_init);
module_exit(xfrm6_tunnel_fini);
+MODULE_ALIAS_XFRM_TYPE(AF_INET6, XFRM_PROTO_IPV6);
diff -Nurb linux-2.6.22-570/net/ipx/af_ipx.c linux-2.6.22-590/net/ipx/af_ipx.c
--- linux-2.6.22-570/net/ipx/af_ipx.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipx/af_ipx.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipx/af_ipx.c 2008-03-20 13:28:03.000000000 -0400
@@ -347,6 +347,9 @@
struct net_device *dev = ptr;
struct ipx_interface *i, *tmp;
goto drop;
diff -Nurb linux-2.6.22-570/net/ipx/ipx_proc.c linux-2.6.22-590/net/ipx/ipx_proc.c
--- linux-2.6.22-570/net/ipx/ipx_proc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/ipx/ipx_proc.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/ipx/ipx_proc.c 2008-03-20 13:28:03.000000000 -0400
@@ -9,6 +9,7 @@
#include <linux/proc_fs.h>
#include <linux/spinlock.h>
#else /* CONFIG_PROC_FS */
diff -Nurb linux-2.6.22-570/net/irda/af_irda.c linux-2.6.22-590/net/irda/af_irda.c
--- linux-2.6.22-570/net/irda/af_irda.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/irda/af_irda.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/irda/af_irda.c 2008-03-20 13:28:03.000000000 -0400
@@ -60,7 +60,7 @@
#include <net/irda/af_irda.h>
diff -Nurb linux-2.6.22-570/net/irda/irias_object.c linux-2.6.22-590/net/irda/irias_object.c
--- linux-2.6.22-570/net/irda/irias_object.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/irda/irias_object.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/irda/irias_object.c 2008-03-20 13:28:03.000000000 -0400
@@ -36,39 +36,6 @@
*/
struct ias_value irias_missing = { IAS_MISSING, 0, 0, 0, {0}};
kfree(value);
diff -Nurb linux-2.6.22-570/net/irda/irlap_frame.c linux-2.6.22-590/net/irda/irlap_frame.c
--- linux-2.6.22-570/net/irda/irlap_frame.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/irda/irlap_frame.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/irda/irlap_frame.c 2008-03-20 13:28:03.000000000 -0400
@@ -1319,6 +1319,9 @@
int command;
__u8 control;
diff -Nurb linux-2.6.22-570/net/irda/irproc.c linux-2.6.22-590/net/irda/irproc.c
--- linux-2.6.22-570/net/irda/irproc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/irda/irproc.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/irda/irproc.c 2008-03-20 13:28:03.000000000 -0400
@@ -28,6 +28,7 @@
#include <linux/seq_file.h>
#include <linux/module.h>
}
diff -Nurb linux-2.6.22-570/net/key/af_key.c linux-2.6.22-590/net/key/af_key.c
--- linux-2.6.22-570/net/key/af_key.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/key/af_key.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/key/af_key.c 2008-03-20 13:28:03.000000000 -0400
@@ -28,6 +28,7 @@
#include <linux/init.h>
#include <net/xfrm.h>
err = xfrm_register_km(&pfkeyv2_mgr);
diff -Nurb linux-2.6.22-570/net/llc/af_llc.c linux-2.6.22-590/net/llc/af_llc.c
--- linux-2.6.22-570/net/llc/af_llc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/llc/af_llc.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/llc/af_llc.c 2008-03-20 13:28:03.000000000 -0400
@@ -150,14 +150,17 @@
* socket type we have available.
* Returns 0 upon success, negative upon failure.
goto out;
diff -Nurb linux-2.6.22-570/net/llc/llc_conn.c linux-2.6.22-590/net/llc/llc_conn.c
--- linux-2.6.22-570/net/llc/llc_conn.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/llc/llc_conn.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/llc/llc_conn.c 2008-03-20 13:28:03.000000000 -0400
@@ -700,7 +700,7 @@
struct llc_addr *saddr,
struct llc_addr *daddr)
goto out;
diff -Nurb linux-2.6.22-570/net/llc/llc_core.c linux-2.6.22-590/net/llc/llc_core.c
--- linux-2.6.22-570/net/llc/llc_core.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/llc/llc_core.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/llc/llc_core.c 2008-03-20 13:28:03.000000000 -0400
@@ -19,6 +19,7 @@
#include <linux/slab.h>
#include <linux/string.h>
diff -Nurb linux-2.6.22-570/net/llc/llc_input.c linux-2.6.22-590/net/llc/llc_input.c
--- linux-2.6.22-570/net/llc/llc_input.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/llc/llc_input.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/llc/llc_input.c 2008-03-20 13:28:03.000000000 -0400
@@ -12,6 +12,7 @@
* See the GNU General Public License for more details.
*/
* receives, do not try to analyse it.
diff -Nurb linux-2.6.22-570/net/llc/llc_proc.c linux-2.6.22-590/net/llc/llc_proc.c
--- linux-2.6.22-570/net/llc/llc_proc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/llc/llc_proc.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/llc/llc_proc.c 2008-03-20 13:28:03.000000000 -0400
@@ -18,6 +18,7 @@
#include <linux/errno.h>
#include <linux/seq_file.h>
}
diff -Nurb linux-2.6.22-570/net/mac80211/ieee80211_ioctl.c linux-2.6.22-590/net/mac80211/ieee80211_ioctl.c
--- linux-2.6.22-570/net/mac80211/ieee80211_ioctl.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/mac80211/ieee80211_ioctl.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/mac80211/ieee80211_ioctl.c 2008-03-20 13:28:03.000000000 -0400
@@ -838,6 +838,29 @@
}
(iw_handler) ieee80211_ioctl_siwfrag, /* SIOCSIWFRAG */
diff -Nurb linux-2.6.22-570/net/netfilter/core.c linux-2.6.22-590/net/netfilter/core.c
--- linux-2.6.22-570/net/netfilter/core.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/netfilter/core.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/netfilter/core.c 2008-03-20 13:28:03.000000000 -0400
@@ -20,6 +20,7 @@
#include <linux/proc_fs.h>
#include <linux/mutex.h>
diff -Nurb linux-2.6.22-570/net/netfilter/nf_conntrack_h323_main.c linux-2.6.22-590/net/netfilter/nf_conntrack_h323_main.c
--- linux-2.6.22-570/net/netfilter/nf_conntrack_h323_main.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/netfilter/nf_conntrack_h323_main.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/netfilter/nf_conntrack_h323_main.c 2008-03-20 13:28:03.000000000 -0400
@@ -724,6 +724,8 @@
memset(&fl1, 0, sizeof(fl1));
case AF_INET: {
diff -Nurb linux-2.6.22-570/net/netfilter/nf_conntrack_standalone.c linux-2.6.22-590/net/netfilter/nf_conntrack_standalone.c
--- linux-2.6.22-570/net/netfilter/nf_conntrack_standalone.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/netfilter/nf_conntrack_standalone.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/netfilter/nf_conntrack_standalone.c 2008-03-20 13:28:03.000000000 -0400
@@ -14,6 +14,7 @@
#include <linux/seq_file.h>
#include <linux/percpu.h>
}
diff -Nurb linux-2.6.22-570/net/netfilter/nf_log.c linux-2.6.22-590/net/netfilter/nf_log.c
--- linux-2.6.22-570/net/netfilter/nf_log.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/netfilter/nf_log.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/netfilter/nf_log.c 2008-03-20 13:28:03.000000000 -0400
@@ -168,7 +168,8 @@
#ifdef CONFIG_PROC_FS
struct proc_dir_entry *pde;
diff -Nurb linux-2.6.22-570/net/netfilter/nf_queue.c linux-2.6.22-590/net/netfilter/nf_queue.c
--- linux-2.6.22-570/net/netfilter/nf_queue.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/netfilter/nf_queue.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/netfilter/nf_queue.c 2008-03-20 13:28:03.000000000 -0400
@@ -346,7 +346,7 @@
#ifdef CONFIG_PROC_FS
struct proc_dir_entry *pde;
pde->proc_fops = &nfqueue_file_ops;
diff -Nurb linux-2.6.22-570/net/netfilter/nfnetlink.c linux-2.6.22-590/net/netfilter/nfnetlink.c
--- linux-2.6.22-570/net/netfilter/nfnetlink.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/netfilter/nfnetlink.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/netfilter/nfnetlink.c 2008-03-20 13:28:03.000000000 -0400
@@ -264,7 +264,7 @@
{
printk("Netfilter messages via NETLINK v%s.\n", nfversion);
printk(KERN_ERR "cannot initialize nfnetlink!\n");
diff -Nurb linux-2.6.22-570/net/netfilter/nfnetlink_log.c linux-2.6.22-590/net/netfilter/nfnetlink_log.c
--- linux-2.6.22-570/net/netfilter/nfnetlink_log.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/netfilter/nfnetlink_log.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/netfilter/nfnetlink_log.c 2008-03-20 13:28:03.000000000 -0400
@@ -705,7 +705,8 @@
hlist_for_each_entry_safe(inst, tmp, t2, head, hlist) {
netlink_unregister_notifier(&nfulnl_rtnl_notifier);
diff -Nurb linux-2.6.22-570/net/netfilter/nfnetlink_queue.c linux-2.6.22-590/net/netfilter/nfnetlink_queue.c
--- linux-2.6.22-570/net/netfilter/nfnetlink_queue.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/netfilter/nfnetlink_queue.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/netfilter/nfnetlink_queue.c 2008-03-20 13:28:03.000000000 -0400
@@ -734,6 +734,9 @@
{
struct net_device *dev = ptr;
netlink_unregister_notifier(&nfqnl_rtnl_notifier);
diff -Nurb linux-2.6.22-570/net/netfilter/x_tables.c linux-2.6.22-590/net/netfilter/x_tables.c
--- linux-2.6.22-570/net/netfilter/x_tables.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/netfilter/x_tables.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/netfilter/x_tables.c 2008-03-20 13:28:03.000000000 -0400
@@ -22,6 +22,7 @@
#include <linux/vmalloc.h>
#include <linux/mutex.h>
}
diff -Nurb linux-2.6.22-570/net/netfilter/xt_MARK.c linux-2.6.22-590/net/netfilter/xt_MARK.c
---- linux-2.6.22-570/net/netfilter/xt_MARK.c 2008-03-18 15:57:42.000000000 -0400
-+++ linux-2.6.22-590/net/netfilter/xt_MARK.c 2008-03-18 16:21:16.000000000 -0400
-@@ -140,7 +140,7 @@
+--- linux-2.6.22-570/net/netfilter/xt_MARK.c 2008-03-20 13:25:49.000000000 -0400
++++ linux-2.6.22-590/net/netfilter/xt_MARK.c 2008-03-20 13:28:03.000000000 -0400
+@@ -141,7 +141,7 @@
if ((*pskb)->sk)
connection_sk = (*pskb)->sk;
else {
- connection_sk = inet_lookup(&tcp_hashinfo, src_ip, src_port, ip, port, dif);
+ connection_sk = inet_lookup(&tcp_hashinfo, src_ip, src_port, ip, port, dif,(*pskb)->sk->sk_net);
}
-
- if (connection_sk) {
+ */
+ conncetion_sk = (*pskb)->sk;
diff -Nurb linux-2.6.22-570/net/netfilter/xt_MARK.c.orig linux-2.6.22-590/net/netfilter/xt_MARK.c.orig
---- linux-2.6.22-570/net/netfilter/xt_MARK.c.orig 2008-03-18 15:57:42.000000000 -0400
-+++ linux-2.6.22-590/net/netfilter/xt_MARK.c.orig 2008-03-18 15:57:54.000000000 -0400
-@@ -129,12 +129,11 @@
- ip = ct->tuplehash[dir].tuple.dst.u3.ip;
- port = get_dst_port(&ct->tuplehash[dir].tuple);
-
+--- linux-2.6.22-570/net/netfilter/xt_MARK.c.orig 2008-03-20 13:25:49.000000000 -0400
++++ linux-2.6.22-590/net/netfilter/xt_MARK.c.orig 1969-12-31 19:00:00.000000000 -0500
+@@ -1,284 +0,0 @@
+-/* This is a module which is used for setting the NFMARK field of an skb. */
+-
+-/* (C) 1999-2001 Marc Boucher <marc@mbsi.ca>
+- *
+- * This program is free software; you can redistribute it and/or modify
+- * it under the terms of the GNU General Public License version 2 as
+- * published by the Free Software Foundation.
+- *
+- */
+-
+-#include <linux/module.h>
+-#include <linux/version.h>
+-#include <linux/skbuff.h>
+-#include <linux/ip.h>
+-#include <net/checksum.h>
+-#include <net/route.h>
+-#include <net/inet_hashtables.h>
+-
+-#include <net/netfilter/nf_conntrack.h>
+-#include <linux/netfilter/x_tables.h>
+-#include <linux/netfilter/xt_MARK.h>
+-
+-MODULE_LICENSE("GPL");
+-MODULE_AUTHOR("Marc Boucher <marc@mbsi.ca>");
+-MODULE_DESCRIPTION("ip[6]tables MARK modification module");
+-MODULE_ALIAS("ipt_MARK");
+-MODULE_ALIAS("ip6t_MARK");
+-
+-static inline u_int16_t
+-get_dst_port(struct nf_conntrack_tuple *tuple)
+-{
+- switch (tuple->dst.protonum) {
+- case IPPROTO_GRE:
+- /* XXX Truncate 32-bit GRE key to 16 bits */
+-#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,11)
+- return tuple->dst.u.gre.key;
+-#else
+- return htons(ntohl(tuple->dst.u.gre.key));
+-#endif
+- case IPPROTO_ICMP:
+- /* Bind on ICMP echo ID */
+- return tuple->src.u.icmp.id;
+- case IPPROTO_TCP:
+- return tuple->dst.u.tcp.port;
+- case IPPROTO_UDP:
+- return tuple->dst.u.udp.port;
+- default:
+- return tuple->dst.u.all;
+- }
+-}
+-
+-static inline u_int16_t
+-get_src_port(struct nf_conntrack_tuple *tuple)
+-{
+- switch (tuple->dst.protonum) {
+- case IPPROTO_GRE:
+- /* XXX Truncate 32-bit GRE key to 16 bits */
+- return htons(ntohl(tuple->src.u.gre.key));
+- case IPPROTO_ICMP:
+- /* Bind on ICMP echo ID */
+- return tuple->src.u.icmp.id;
+- case IPPROTO_TCP:
+- return tuple->src.u.tcp.port;
+- case IPPROTO_UDP:
+- return tuple->src.u.udp.port;
+- default:
+- return tuple->src.u.all;
+- }
+-}
+-
+-static unsigned int
+-target_v0(struct sk_buff **pskb,
+- const struct net_device *in,
+- const struct net_device *out,
+- unsigned int hooknum,
+- const struct xt_target *target,
+- const void *targinfo)
+-{
+- const struct xt_mark_target_info *markinfo = targinfo;
+-
+- (*pskb)->mark = markinfo->mark;
+- return XT_CONTINUE;
+-}
+-
+-static unsigned int
+-target_v1(struct sk_buff **pskb,
+- const struct net_device *in,
+- const struct net_device *out,
+- unsigned int hooknum,
+- const struct xt_target *target,
+- const void *targinfo)
+-{
+- const struct xt_mark_target_info_v1 *markinfo = targinfo;
+- int mark = -1;
+-
+- switch (markinfo->mode) {
+- case XT_MARK_SET:
+- mark = markinfo->mark;
+- break;
+-
+- case XT_MARK_AND:
+- mark = (*pskb)->mark & markinfo->mark;
+- break;
+-
+- case XT_MARK_OR:
+- mark = (*pskb)->mark | markinfo->mark;
+- break;
+-
+- case XT_MARK_COPYXID: {
+- enum ip_conntrack_info ctinfo;
+- struct sock *connection_sk=NULL;
+- int dif;
+-
+- struct nf_conn *ct = nf_ct_get((*pskb), &ctinfo);
+- extern struct inet_hashinfo tcp_hashinfo;
+- enum ip_conntrack_dir dir;
+- if (!ct)
+- break;
+-
+- dir = CTINFO2DIR(ctinfo);
+- u_int32_t src_ip = ct->tuplehash[dir].tuple.src.u3.ip;
+- u_int16_t src_port = get_src_port(&ct->tuplehash[dir].tuple);
+- u_int16_t proto = ct->tuplehash[dir].tuple.dst.protonum;
+-
+- u_int32_t ip;
+- u_int16_t port;
+-
+- dif = ((struct rtable *)(*pskb)->dst)->rt_iif;
+- ip = ct->tuplehash[dir].tuple.dst.u3.ip;
+- port = get_dst_port(&ct->tuplehash[dir].tuple);
+-
- if (proto == 1) {
-+ if (proto == 1 || proto == 17) {
- if (((*pskb)->mark!=-1) && (*pskb)->mark)
- ct->xid[0]=(*pskb)->mark;
- if (ct->xid[0])
- mark = ct->xid[0];
+- if (((*pskb)->mark!=-1) && (*pskb)->mark)
+- ct->xid[0]=(*pskb)->mark;
+- if (ct->xid[0])
+- mark = ct->xid[0];
- printk(KERN_CRIT "%d %d\n",ct->xid[0],(*pskb)->mark);
-
- }
- else if (proto == 6) {
-diff -Nurb linux-2.6.22-570/net/netfilter/xt_MARK.c.rej linux-2.6.22-590/net/netfilter/xt_MARK.c.rej
---- linux-2.6.22-570/net/netfilter/xt_MARK.c.rej 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/net/netfilter/xt_MARK.c.rej 2008-03-18 15:57:54.000000000 -0400
-@@ -0,0 +1,17 @@
-+***************
-+*** 131,137 ****
-+ if ((*pskb)->sk)
-+ connection_sk = (*pskb)->sk;
-+ else {
-+- connection_sk = inet_lookup(&tcp_hashinfo, src_ip, src_port, ip, port, dif);
-+ }
-+
-+ if (connection_sk) {
-+--- 131,137 ----
-+ if ((*pskb)->sk)
-+ connection_sk = (*pskb)->sk;
-+ else {
-++ connection_sk = inet_lookup(&tcp_hashinfo, src_ip, src_port, ip, port, dif,(*pskb)->sk->sk_net);
-+ }
-+
-+ if (connection_sk) {
+-
+- }
+- else if (proto == 6) {
+- if ((*pskb)->sk)
+- connection_sk = (*pskb)->sk;
+- else {
+- connection_sk = inet_lookup(&tcp_hashinfo, src_ip, src_port, ip, port, dif);
+- }
+-
+- if (connection_sk) {
+- connection_sk->sk_peercred.gid = connection_sk->sk_peercred.uid = ct->xid[dir];
+- ct->xid[!dir]=connection_sk->sk_xid;
+- if (connection_sk->sk_xid != 0)
+- mark = connection_sk->sk_xid;
+- if (connection_sk != (*pskb)->sk)
+- sock_put(connection_sk);
+- }
+- break;
+- }
+- }
+- }
+-
+- if (mark != -1)
+- (*pskb)->mark = mark;
+- return XT_CONTINUE;
+-}
+-
+-
+-static int
+-checkentry_v0(const char *tablename,
+- const void *entry,
+- const struct xt_target *target,
+- void *targinfo,
+- unsigned int hook_mask)
+-{
+- struct xt_mark_target_info *markinfo = targinfo;
+-
+- if (markinfo->mark > 0xffffffff) {
+- printk(KERN_WARNING "MARK: Only supports 32bit wide mark\n");
+- return 0;
+- }
+- return 1;
+-}
+-
+-static int
+-checkentry_v1(const char *tablename,
+- const void *entry,
+- const struct xt_target *target,
+- void *targinfo,
+- unsigned int hook_mask)
+-{
+- struct xt_mark_target_info_v1 *markinfo = targinfo;
+-
+- if (markinfo->mode != XT_MARK_SET
+- && markinfo->mode != XT_MARK_AND
+- && markinfo->mode != XT_MARK_OR
+- && markinfo->mode != XT_MARK_COPYXID) {
+- printk(KERN_WARNING "MARK: unknown mode %u\n",
+- markinfo->mode);
+- return 0;
+- }
+- if (markinfo->mark > 0xffffffff) {
+- printk(KERN_WARNING "MARK: Only supports 32bit wide mark\n");
+- return 0;
+- }
+- return 1;
+-}
+-
+-#ifdef CONFIG_COMPAT
+-struct compat_xt_mark_target_info_v1 {
+- compat_ulong_t mark;
+- u_int8_t mode;
+- u_int8_t __pad1;
+- u_int16_t __pad2;
+-};
+-
+-static void compat_from_user_v1(void *dst, void *src)
+-{
+- struct compat_xt_mark_target_info_v1 *cm = src;
+- struct xt_mark_target_info_v1 m = {
+- .mark = cm->mark,
+- .mode = cm->mode,
+- };
+- memcpy(dst, &m, sizeof(m));
+-}
+-
+-static int compat_to_user_v1(void __user *dst, void *src)
+-{
+- struct xt_mark_target_info_v1 *m = src;
+- struct compat_xt_mark_target_info_v1 cm = {
+- .mark = m->mark,
+- .mode = m->mode,
+- };
+- return copy_to_user(dst, &cm, sizeof(cm)) ? -EFAULT : 0;
+-}
+-#endif /* CONFIG_COMPAT */
+-
+-static struct xt_target xt_mark_target[] = {
+- {
+- .name = "MARK",
+- .family = AF_INET,
+- .revision = 0,
+- .checkentry = checkentry_v0,
+- .target = target_v0,
+- .targetsize = sizeof(struct xt_mark_target_info),
+- .table = "mangle",
+- .me = THIS_MODULE,
+- },
+- {
+- .name = "MARK",
+- .family = AF_INET,
+- .revision = 1,
+- .checkentry = checkentry_v1,
+- .target = target_v1,
+- .targetsize = sizeof(struct xt_mark_target_info_v1),
+-#ifdef CONFIG_COMPAT
+- .compatsize = sizeof(struct compat_xt_mark_target_info_v1),
+- .compat_from_user = compat_from_user_v1,
+- .compat_to_user = compat_to_user_v1,
+-#endif
+- .table = "mangle",
+- .me = THIS_MODULE,
+- },
+- {
+- .name = "MARK",
+- .family = AF_INET6,
+- .revision = 0,
+- .checkentry = checkentry_v0,
+- .target = target_v0,
+- .targetsize = sizeof(struct xt_mark_target_info),
+- .table = "mangle",
+- .me = THIS_MODULE,
+- },
+-};
+-
+-static int __init xt_mark_init(void)
+-{
+- return xt_register_targets(xt_mark_target, ARRAY_SIZE(xt_mark_target));
+-}
+-
+-static void __exit xt_mark_fini(void)
+-{
+- xt_unregister_targets(xt_mark_target, ARRAY_SIZE(xt_mark_target));
+-}
+-
+-module_init(xt_mark_init);
+-module_exit(xt_mark_fini);
diff -Nurb linux-2.6.22-570/net/netfilter/xt_hashlimit.c linux-2.6.22-590/net/netfilter/xt_hashlimit.c
--- linux-2.6.22-570/net/netfilter/xt_hashlimit.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/netfilter/xt_hashlimit.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/netfilter/xt_hashlimit.c 2008-03-20 13:28:08.000000000 -0400
@@ -21,6 +21,7 @@
#include <linux/in.h>
#include <linux/ip.h>
xt_unregister_matches(xt_hashlimit, ARRAY_SIZE(xt_hashlimit));
}
diff -Nurb linux-2.6.22-570/net/netlink/af_netlink.c linux-2.6.22-590/net/netlink/af_netlink.c
---- linux-2.6.22-570/net/netlink/af_netlink.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/netlink/af_netlink.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/netlink/af_netlink.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/netlink/af_netlink.c 2008-03-20 13:28:08.000000000 -0400
@@ -63,6 +63,7 @@
#include <net/sock.h>
#include <net/scm.h>
out:
diff -Nurb linux-2.6.22-570/net/netlink/attr.c linux-2.6.22-590/net/netlink/attr.c
--- linux-2.6.22-570/net/netlink/attr.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/netlink/attr.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/netlink/attr.c 2008-03-20 13:28:08.000000000 -0400
@@ -72,6 +72,17 @@
return -ERANGE;
break;
minlen = pt->len;
diff -Nurb linux-2.6.22-570/net/netlink/genetlink.c linux-2.6.22-590/net/netlink/genetlink.c
--- linux-2.6.22-570/net/netlink/genetlink.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/netlink/genetlink.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/netlink/genetlink.c 2008-03-20 13:28:08.000000000 -0400
@@ -557,8 +557,9 @@
goto errout_register;
diff -Nurb linux-2.6.22-570/net/netrom/af_netrom.c linux-2.6.22-590/net/netrom/af_netrom.c
--- linux-2.6.22-570/net/netrom/af_netrom.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/netrom/af_netrom.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/netrom/af_netrom.c 2008-03-20 13:28:08.000000000 -0400
@@ -41,6 +41,7 @@
#include <net/ip.h>
#include <net/tcp_states.h>
nr_rt_free();
diff -Nurb linux-2.6.22-570/net/netrom/nr_route.c linux-2.6.22-590/net/netrom/nr_route.c
--- linux-2.6.22-570/net/netrom/nr_route.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/netrom/nr_route.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/netrom/nr_route.c 2008-03-20 13:28:08.000000000 -0400
@@ -580,7 +580,7 @@
{
struct net_device *dev;
dev_hold(dev);
goto out;
diff -Nurb linux-2.6.22-570/net/packet/af_packet.c linux-2.6.22-590/net/packet/af_packet.c
---- linux-2.6.22-570/net/packet/af_packet.c 2008-03-18 15:57:42.000000000 -0400
-+++ linux-2.6.22-590/net/packet/af_packet.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/packet/af_packet.c 2008-03-20 13:25:49.000000000 -0400
++++ linux-2.6.22-590/net/packet/af_packet.c 2008-03-20 13:28:08.000000000 -0400
@@ -65,6 +65,7 @@
#include <net/protocol.h>
#include <linux/skbuff.h>
out:
return rc;
}
-diff -Nurb linux-2.6.22-570/net/packet/af_packet.c.orig linux-2.6.22-590/net/packet/af_packet.c.orig
---- linux-2.6.22-570/net/packet/af_packet.c.orig 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/net/packet/af_packet.c.orig 2008-03-18 15:57:54.000000000 -0400
-@@ -0,0 +1,1989 @@
-+/*
-+ * INET An implementation of the TCP/IP protocol suite for the LINUX
-+ * operating system. INET is implemented using the BSD Socket
-+ * interface as the means of communication with the user level.
-+ *
-+ * PACKET - implements raw packet sockets.
-+ *
-+ * Version: $Id: af_packet.c,v 1.61 2002/02/08 03:57:19 davem Exp $
-+ *
-+ * Authors: Ross Biro
-+ * Fred N. van Kempen, <waltje@uWalt.NL.Mugnet.ORG>
-+ * Alan Cox, <gw4pts@gw4pts.ampr.org>
-+ *
-+ * Fixes:
-+ * Alan Cox : verify_area() now used correctly
-+ * Alan Cox : new skbuff lists, look ma no backlogs!
-+ * Alan Cox : tidied skbuff lists.
-+ * Alan Cox : Now uses generic datagram routines I
-+ * added. Also fixed the peek/read crash
-+ * from all old Linux datagram code.
-+ * Alan Cox : Uses the improved datagram code.
-+ * Alan Cox : Added NULL's for socket options.
-+ * Alan Cox : Re-commented the code.
-+ * Alan Cox : Use new kernel side addressing
-+ * Rob Janssen : Correct MTU usage.
-+ * Dave Platt : Counter leaks caused by incorrect
-+ * interrupt locking and some slightly
-+ * dubious gcc output. Can you read
-+ * compiler: it said _VOLATILE_
-+ * Richard Kooijman : Timestamp fixes.
-+ * Alan Cox : New buffers. Use sk->mac.raw.
-+ * Alan Cox : sendmsg/recvmsg support.
-+ * Alan Cox : Protocol setting support
-+ * Alexey Kuznetsov : Untied from IPv4 stack.
-+ * Cyrus Durgin : Fixed kerneld for kmod.
-+ * Michal Ostrowski : Module initialization cleanup.
-+ * Ulises Alonso : Frame number limit removal and
-+ * packet_set_ring memory leak.
-+ * Eric Biederman : Allow for > 8 byte hardware addresses.
-+ * The convention is that longer addresses
-+ * will simply extend the hardware address
-+ * byte arrays at the end of sockaddr_ll
-+ * and packet_mreq.
-+ *
-+ * This program is free software; you can redistribute it and/or
-+ * modify it under the terms of the GNU General Public License
-+ * as published by the Free Software Foundation; either version
-+ * 2 of the License, or (at your option) any later version.
-+ *
-+ */
-+
-+#include <linux/types.h>
-+#include <linux/mm.h>
-+#include <linux/capability.h>
-+#include <linux/fcntl.h>
-+#include <linux/socket.h>
-+#include <linux/in.h>
-+#include <linux/inet.h>
-+#include <linux/netdevice.h>
-+#include <linux/if_packet.h>
-+#include <linux/wireless.h>
-+#include <linux/kernel.h>
-+#include <linux/kmod.h>
-+#include <net/ip.h>
-+#include <net/protocol.h>
-+#include <linux/skbuff.h>
-+#include <net/sock.h>
-+#include <linux/errno.h>
-+#include <linux/timer.h>
-+#include <asm/system.h>
-+#include <asm/uaccess.h>
-+#include <asm/ioctls.h>
-+#include <asm/page.h>
-+#include <asm/cacheflush.h>
-+#include <asm/io.h>
-+#include <linux/proc_fs.h>
-+#include <linux/seq_file.h>
-+#include <linux/poll.h>
-+#include <linux/module.h>
-+#include <linux/init.h>
-+#include <linux/vs_network.h>
-+
-+#ifdef CONFIG_INET
-+#include <net/inet_common.h>
-+#endif
-+
-+/*
-+ Assumptions:
-+ - if device has no dev->hard_header routine, it adds and removes ll header
-+ inside itself. In this case ll header is invisible outside of device,
-+ but higher levels still should reserve dev->hard_header_len.
-+ Some devices are enough clever to reallocate skb, when header
-+ will not fit to reserved space (tunnel), another ones are silly
-+ (PPP).
-+ - packet socket receives packets with pulled ll header,
-+ so that SOCK_RAW should push it back.
-+
-+On receive:
-+-----------
-+
-+Incoming, dev->hard_header!=NULL
-+ mac_header -> ll header
-+ data -> data
-+
-+Outgoing, dev->hard_header!=NULL
-+ mac_header -> ll header
-+ data -> ll header
-+
-+Incoming, dev->hard_header==NULL
-+ mac_header -> UNKNOWN position. It is very likely, that it points to ll
-+ header. PPP makes it, that is wrong, because introduce
-+ assymetry between rx and tx paths.
-+ data -> data
-+
-+Outgoing, dev->hard_header==NULL
-+ mac_header -> data. ll header is still not built!
-+ data -> data
-+
-+Resume
-+ If dev->hard_header==NULL we are unlikely to restore sensible ll header.
-+
-+
-+On transmit:
-+------------
-+
-+dev->hard_header != NULL
-+ mac_header -> ll header
-+ data -> ll header
-+
-+dev->hard_header == NULL (ll header is added by device, we cannot control it)
-+ mac_header -> data
-+ data -> data
-+
-+ We should set nh.raw on output to correct posistion,
-+ packet classifier depends on it.
-+ */
-+
-+/* List of all packet sockets. */
-+static HLIST_HEAD(packet_sklist);
-+static DEFINE_RWLOCK(packet_sklist_lock);
-+
-+static atomic_t packet_socks_nr;
-+
-+
-+/* Private packet socket structures. */
-+
-+struct packet_mclist
-+{
-+ struct packet_mclist *next;
-+ int ifindex;
-+ int count;
-+ unsigned short type;
-+ unsigned short alen;
-+ unsigned char addr[MAX_ADDR_LEN];
-+};
-+/* identical to struct packet_mreq except it has
-+ * a longer address field.
-+ */
-+struct packet_mreq_max
-+{
-+ int mr_ifindex;
-+ unsigned short mr_type;
-+ unsigned short mr_alen;
-+ unsigned char mr_address[MAX_ADDR_LEN];
-+};
-+
-+#ifdef CONFIG_PACKET_MMAP
-+static int packet_set_ring(struct sock *sk, struct tpacket_req *req, int closing);
-+#endif
-+
-+static void packet_flush_mclist(struct sock *sk);
-+
-+struct packet_sock {
-+ /* struct sock has to be the first member of packet_sock */
-+ struct sock sk;
-+ struct tpacket_stats stats;
-+#ifdef CONFIG_PACKET_MMAP
-+ char * *pg_vec;
-+ unsigned int head;
-+ unsigned int frames_per_block;
-+ unsigned int frame_size;
-+ unsigned int frame_max;
-+ int copy_thresh;
-+#endif
-+ struct packet_type prot_hook;
-+ spinlock_t bind_lock;
-+ unsigned int running:1, /* prot_hook is attached*/
-+ auxdata:1,
-+ origdev:1;
-+ int ifindex; /* bound device */
-+ __be16 num;
-+ struct packet_mclist *mclist;
-+#ifdef CONFIG_PACKET_MMAP
-+ atomic_t mapped;
-+ unsigned int pg_vec_order;
-+ unsigned int pg_vec_pages;
-+ unsigned int pg_vec_len;
-+#endif
-+};
-+
-+struct packet_skb_cb {
-+ unsigned int origlen;
-+ union {
-+ struct sockaddr_pkt pkt;
-+ struct sockaddr_ll ll;
-+ } sa;
-+};
-+
-+#define PACKET_SKB_CB(__skb) ((struct packet_skb_cb *)((__skb)->cb))
-+
-+#ifdef CONFIG_PACKET_MMAP
-+
-+static inline struct tpacket_hdr *packet_lookup_frame(struct packet_sock *po, unsigned int position)
-+{
-+ unsigned int pg_vec_pos, frame_offset;
-+
-+ pg_vec_pos = position / po->frames_per_block;
-+ frame_offset = position % po->frames_per_block;
-+
-+ return (struct tpacket_hdr *)(po->pg_vec[pg_vec_pos] + (frame_offset * po->frame_size));
-+}
-+#endif
-+
-+static inline struct packet_sock *pkt_sk(struct sock *sk)
-+{
-+ return (struct packet_sock *)sk;
-+}
-+
-+static void packet_sock_destruct(struct sock *sk)
-+{
-+ BUG_TRAP(!atomic_read(&sk->sk_rmem_alloc));
-+ BUG_TRAP(!atomic_read(&sk->sk_wmem_alloc));
-+
-+ if (!sock_flag(sk, SOCK_DEAD)) {
-+ printk("Attempt to release alive packet socket: %p\n", sk);
-+ return;
-+ }
-+
-+ atomic_dec(&packet_socks_nr);
-+#ifdef PACKET_REFCNT_DEBUG
-+ printk(KERN_DEBUG "PACKET socket %p is free, %d are alive\n", sk, atomic_read(&packet_socks_nr));
-+#endif
-+}
-+
-+
-+static const struct proto_ops packet_ops;
-+
-+static const struct proto_ops packet_ops_spkt;
-+
-+static int packet_rcv_spkt(struct sk_buff *skb, struct net_device *dev, struct packet_type *pt, struct net_device *orig_dev)
-+{
-+ struct sock *sk;
-+ struct sockaddr_pkt *spkt;
-+
-+ /*
-+ * When we registered the protocol we saved the socket in the data
-+ * field for just this event.
-+ */
-+
-+ sk = pt->af_packet_priv;
-+
-+ /*
-+ * Yank back the headers [hope the device set this
-+ * right or kerboom...]
-+ *
-+ * Incoming packets have ll header pulled,
-+ * push it back.
-+ *
-+ * For outgoing ones skb->data == skb_mac_header(skb)
-+ * so that this procedure is noop.
-+ */
-+
-+ if (skb->pkt_type == PACKET_LOOPBACK)
-+ goto out;
-+
-+ if ((skb = skb_share_check(skb, GFP_ATOMIC)) == NULL)
-+ goto oom;
-+
-+ /* drop any routing info */
-+ dst_release(skb->dst);
-+ skb->dst = NULL;
-+
-+ /* drop conntrack reference */
-+ nf_reset(skb);
-+
-+ spkt = &PACKET_SKB_CB(skb)->sa.pkt;
-+
-+ skb_push(skb, skb->data - skb_mac_header(skb));
-+
-+ /*
-+ * The SOCK_PACKET socket receives _all_ frames.
-+ */
-+
-+ spkt->spkt_family = dev->type;
-+ strlcpy(spkt->spkt_device, dev->name, sizeof(spkt->spkt_device));
-+ spkt->spkt_protocol = skb->protocol;
-+
-+ /*
-+ * Charge the memory to the socket. This is done specifically
-+ * to prevent sockets using all the memory up.
-+ */
-+
-+ if (sock_queue_rcv_skb(sk,skb) == 0)
-+ return 0;
-+
-+out:
-+ kfree_skb(skb);
-+oom:
-+ return 0;
-+}
-+
-+
-+/*
-+ * Output a raw packet to a device layer. This bypasses all the other
-+ * protocol layers and you must therefore supply it with a complete frame
-+ */
-+
-+static int packet_sendmsg_spkt(struct kiocb *iocb, struct socket *sock,
-+ struct msghdr *msg, size_t len)
-+{
-+ struct sock *sk = sock->sk;
-+ struct sockaddr_pkt *saddr=(struct sockaddr_pkt *)msg->msg_name;
-+ struct sk_buff *skb;
-+ struct net_device *dev;
-+ __be16 proto=0;
-+ int err;
-+
-+ if (!nx_capable(CAP_NET_RAW, NXC_RAW_SEND))
-+ return -EPERM;
-+
-+ /*
-+ * Get and verify the address.
-+ */
-+
-+ if (saddr)
-+ {
-+ if (msg->msg_namelen < sizeof(struct sockaddr))
-+ return(-EINVAL);
-+ if (msg->msg_namelen==sizeof(struct sockaddr_pkt))
-+ proto=saddr->spkt_protocol;
-+ }
-+ else
-+ return(-ENOTCONN); /* SOCK_PACKET must be sent giving an address */
-+
-+ /*
-+ * Find the device first to size check it
-+ */
-+
-+ saddr->spkt_device[13] = 0;
-+ dev = dev_get_by_name(saddr->spkt_device);
-+ err = -ENODEV;
-+ if (dev == NULL)
-+ goto out_unlock;
-+
-+ err = -ENETDOWN;
-+ if (!(dev->flags & IFF_UP))
-+ goto out_unlock;
-+
-+ /*
-+ * You may not queue a frame bigger than the mtu. This is the lowest level
-+ * raw protocol and you must do your own fragmentation at this level.
-+ */
-+
-+ err = -EMSGSIZE;
-+ if (len > dev->mtu + dev->hard_header_len)
-+ goto out_unlock;
-+
-+ err = -ENOBUFS;
-+ skb = sock_wmalloc(sk, len + LL_RESERVED_SPACE(dev), 0, GFP_KERNEL);
-+
-+ /*
-+ * If the write buffer is full, then tough. At this level the user gets to
-+ * deal with the problem - do your own algorithmic backoffs. That's far
-+ * more flexible.
-+ */
-+
-+ if (skb == NULL)
-+ goto out_unlock;
-+
-+ /*
-+ * Fill it in
-+ */
-+
-+ /* FIXME: Save some space for broken drivers that write a
-+ * hard header at transmission time by themselves. PPP is the
-+ * notable one here. This should really be fixed at the driver level.
-+ */
-+ skb_reserve(skb, LL_RESERVED_SPACE(dev));
-+ skb_reset_network_header(skb);
-+
-+ /* Try to align data part correctly */
-+ if (dev->hard_header) {
-+ skb->data -= dev->hard_header_len;
-+ skb->tail -= dev->hard_header_len;
-+ if (len < dev->hard_header_len)
-+ skb_reset_network_header(skb);
-+ }
-+
-+ /* Returns -EFAULT on error */
-+ err = memcpy_fromiovec(skb_put(skb,len), msg->msg_iov, len);
-+ skb->protocol = proto;
-+ skb->dev = dev;
-+ skb->priority = sk->sk_priority;
-+ if (err)
-+ goto out_free;
-+
-+ /*
-+ * Now send it
-+ */
-+
-+ dev_queue_xmit(skb);
-+ dev_put(dev);
-+ return(len);
-+
-+out_free:
-+ kfree_skb(skb);
-+out_unlock:
-+ if (dev)
-+ dev_put(dev);
-+ return err;
-+}
-+
-+static inline unsigned int run_filter(struct sk_buff *skb, struct sock *sk,
-+ unsigned int res)
-+{
-+ struct sk_filter *filter;
-+ int tag = skb->skb_tag;
-+
-+ if (sk->sk_nx_info && !(tag == 1 || sk->sk_nid == tag))
-+ return 0;
-+
-+ rcu_read_lock_bh();
-+ filter = rcu_dereference(sk->sk_filter);
-+ if (filter != NULL)
-+ res = sk_run_filter(skb, filter->insns, filter->len);
-+ rcu_read_unlock_bh();
-+
-+ return res;
-+}
-+
-+/*
-+ This function makes lazy skb cloning in hope that most of packets
-+ are discarded by BPF.
-+
-+ Note tricky part: we DO mangle shared skb! skb->data, skb->len
-+ and skb->cb are mangled. It works because (and until) packets
-+ falling here are owned by current CPU. Output packets are cloned
-+ by dev_queue_xmit_nit(), input packets are processed by net_bh
-+ sequencially, so that if we return skb to original state on exit,
-+ we will not harm anyone.
-+ */
-+
-+static int packet_rcv(struct sk_buff *skb, struct net_device *dev, struct packet_type *pt, struct net_device *orig_dev)
-+{
-+ struct sock *sk;
-+ struct sockaddr_ll *sll;
-+ struct packet_sock *po;
-+ u8 * skb_head = skb->data;
-+ int skb_len = skb->len;
-+ unsigned int snaplen, res;
-+
-+ if (skb->pkt_type == PACKET_LOOPBACK)
-+ goto drop;
-+
-+ sk = pt->af_packet_priv;
-+ po = pkt_sk(sk);
-+
-+ skb->dev = dev;
-+
-+ if (dev->hard_header) {
-+ /* The device has an explicit notion of ll header,
-+ exported to higher levels.
-+
-+ Otherwise, the device hides datails of it frame
-+ structure, so that corresponding packet head
-+ never delivered to user.
-+ */
-+ if (sk->sk_type != SOCK_DGRAM)
-+ skb_push(skb, skb->data - skb_mac_header(skb));
-+ else if (skb->pkt_type == PACKET_OUTGOING) {
-+ /* Special case: outgoing packets have ll header at head */
-+ skb_pull(skb, skb_network_offset(skb));
-+ }
-+ }
-+
-+ snaplen = skb->len;
-+
-+ res = run_filter(skb, sk, snaplen);
-+ if (!res)
-+ goto drop_n_restore;
-+ if (snaplen > res)
-+ snaplen = res;
-+
-+ if (atomic_read(&sk->sk_rmem_alloc) + skb->truesize >=
-+ (unsigned)sk->sk_rcvbuf)
-+ goto drop_n_acct;
-+
-+ if (skb_shared(skb)) {
-+ struct sk_buff *nskb = skb_clone(skb, GFP_ATOMIC);
-+ if (nskb == NULL)
-+ goto drop_n_acct;
-+
-+ if (skb_head != skb->data) {
-+ skb->data = skb_head;
-+ skb->len = skb_len;
-+ }
-+ kfree_skb(skb);
-+ skb = nskb;
-+ }
-+
-+ BUILD_BUG_ON(sizeof(*PACKET_SKB_CB(skb)) + MAX_ADDR_LEN - 8 >
-+ sizeof(skb->cb));
-+
-+ sll = &PACKET_SKB_CB(skb)->sa.ll;
-+ sll->sll_family = AF_PACKET;
-+ sll->sll_hatype = dev->type;
-+ sll->sll_protocol = skb->protocol;
-+ sll->sll_pkttype = skb->pkt_type;
-+ if (unlikely(po->origdev) && skb->pkt_type == PACKET_HOST)
-+ sll->sll_ifindex = orig_dev->ifindex;
-+ else
-+ sll->sll_ifindex = dev->ifindex;
-+ sll->sll_halen = 0;
-+
-+ if (dev->hard_header_parse)
-+ sll->sll_halen = dev->hard_header_parse(skb, sll->sll_addr);
-+
-+ PACKET_SKB_CB(skb)->origlen = skb->len;
-+
-+ if (pskb_trim(skb, snaplen))
-+ goto drop_n_acct;
-+
-+ skb_set_owner_r(skb, sk);
-+ skb->dev = NULL;
-+ dst_release(skb->dst);
-+ skb->dst = NULL;
-+
-+ /* drop conntrack reference */
-+ nf_reset(skb);
-+
-+ spin_lock(&sk->sk_receive_queue.lock);
-+ po->stats.tp_packets++;
-+ __skb_queue_tail(&sk->sk_receive_queue, skb);
-+ spin_unlock(&sk->sk_receive_queue.lock);
-+ sk->sk_data_ready(sk, skb->len);
-+ return 0;
-+
-+drop_n_acct:
-+ spin_lock(&sk->sk_receive_queue.lock);
-+ po->stats.tp_drops++;
-+ spin_unlock(&sk->sk_receive_queue.lock);
-+
-+drop_n_restore:
-+ if (skb_head != skb->data && skb_shared(skb)) {
-+ skb->data = skb_head;
-+ skb->len = skb_len;
-+ }
-+drop:
-+ kfree_skb(skb);
-+ return 0;
-+}
-+
-+#ifdef CONFIG_PACKET_MMAP
-+static int tpacket_rcv(struct sk_buff *skb, struct net_device *dev, struct packet_type *pt, struct net_device *orig_dev)
-+{
-+ struct sock *sk;
-+ struct packet_sock *po;
-+ struct sockaddr_ll *sll;
-+ struct tpacket_hdr *h;
-+ u8 * skb_head = skb->data;
-+ int skb_len = skb->len;
-+ unsigned int snaplen, res;
-+ unsigned long status = TP_STATUS_LOSING|TP_STATUS_USER;
-+ unsigned short macoff, netoff;
-+ struct sk_buff *copy_skb = NULL;
-+ struct timeval tv;
-+
-+ if (skb->pkt_type == PACKET_LOOPBACK)
-+ goto drop;
-+
-+ sk = pt->af_packet_priv;
-+ po = pkt_sk(sk);
-+
-+ if (dev->hard_header) {
-+ if (sk->sk_type != SOCK_DGRAM)
-+ skb_push(skb, skb->data - skb_mac_header(skb));
-+ else if (skb->pkt_type == PACKET_OUTGOING) {
-+ /* Special case: outgoing packets have ll header at head */
-+ skb_pull(skb, skb_network_offset(skb));
-+ }
-+ }
-+
-+ if (skb->ip_summed == CHECKSUM_PARTIAL)
-+ status |= TP_STATUS_CSUMNOTREADY;
-+
-+ snaplen = skb->len;
-+
-+ res = run_filter(skb, sk, snaplen);
-+ if (!res)
-+ goto drop_n_restore;
-+ if (snaplen > res)
-+ snaplen = res;
-+
-+ if (sk->sk_type == SOCK_DGRAM) {
-+ macoff = netoff = TPACKET_ALIGN(TPACKET_HDRLEN) + 16;
-+ } else {
-+ unsigned maclen = skb_network_offset(skb);
-+ netoff = TPACKET_ALIGN(TPACKET_HDRLEN + (maclen < 16 ? 16 : maclen));
-+ macoff = netoff - maclen;
-+ }
-+
-+ if (macoff + snaplen > po->frame_size) {
-+ if (po->copy_thresh &&
-+ atomic_read(&sk->sk_rmem_alloc) + skb->truesize <
-+ (unsigned)sk->sk_rcvbuf) {
-+ if (skb_shared(skb)) {
-+ copy_skb = skb_clone(skb, GFP_ATOMIC);
-+ } else {
-+ copy_skb = skb_get(skb);
-+ skb_head = skb->data;
-+ }
-+ if (copy_skb)
-+ skb_set_owner_r(copy_skb, sk);
-+ }
-+ snaplen = po->frame_size - macoff;
-+ if ((int)snaplen < 0)
-+ snaplen = 0;
-+ }
-+
-+ spin_lock(&sk->sk_receive_queue.lock);
-+ h = packet_lookup_frame(po, po->head);
-+
-+ if (h->tp_status)
-+ goto ring_is_full;
-+ po->head = po->head != po->frame_max ? po->head+1 : 0;
-+ po->stats.tp_packets++;
-+ if (copy_skb) {
-+ status |= TP_STATUS_COPY;
-+ __skb_queue_tail(&sk->sk_receive_queue, copy_skb);
-+ }
-+ if (!po->stats.tp_drops)
-+ status &= ~TP_STATUS_LOSING;
-+ spin_unlock(&sk->sk_receive_queue.lock);
-+
-+ skb_copy_bits(skb, 0, (u8*)h + macoff, snaplen);
-+
-+ h->tp_len = skb->len;
-+ h->tp_snaplen = snaplen;
-+ h->tp_mac = macoff;
-+ h->tp_net = netoff;
-+ if (skb->tstamp.tv64 == 0) {
-+ __net_timestamp(skb);
-+ sock_enable_timestamp(sk);
-+ }
-+ tv = ktime_to_timeval(skb->tstamp);
-+ h->tp_sec = tv.tv_sec;
-+ h->tp_usec = tv.tv_usec;
-+
-+ sll = (struct sockaddr_ll*)((u8*)h + TPACKET_ALIGN(sizeof(*h)));
-+ sll->sll_halen = 0;
-+ if (dev->hard_header_parse)
-+ sll->sll_halen = dev->hard_header_parse(skb, sll->sll_addr);
-+ sll->sll_family = AF_PACKET;
-+ sll->sll_hatype = dev->type;
-+ sll->sll_protocol = skb->protocol;
-+ sll->sll_pkttype = skb->pkt_type;
-+ if (unlikely(po->origdev) && skb->pkt_type == PACKET_HOST)
-+ sll->sll_ifindex = orig_dev->ifindex;
-+ else
-+ sll->sll_ifindex = dev->ifindex;
-+
-+ h->tp_status = status;
-+ smp_mb();
-+
-+ {
-+ struct page *p_start, *p_end;
-+ u8 *h_end = (u8 *)h + macoff + snaplen - 1;
-+
-+ p_start = virt_to_page(h);
-+ p_end = virt_to_page(h_end);
-+ while (p_start <= p_end) {
-+ flush_dcache_page(p_start);
-+ p_start++;
-+ }
-+ }
-+
-+ sk->sk_data_ready(sk, 0);
-+
-+drop_n_restore:
-+ if (skb_head != skb->data && skb_shared(skb)) {
-+ skb->data = skb_head;
-+ skb->len = skb_len;
-+ }
-+drop:
-+ kfree_skb(skb);
-+ return 0;
-+
-+ring_is_full:
-+ po->stats.tp_drops++;
-+ spin_unlock(&sk->sk_receive_queue.lock);
-+
-+ sk->sk_data_ready(sk, 0);
-+ if (copy_skb)
-+ kfree_skb(copy_skb);
-+ goto drop_n_restore;
-+}
-+
-+#endif
-+
-+
-+static int packet_sendmsg(struct kiocb *iocb, struct socket *sock,
-+ struct msghdr *msg, size_t len)
-+{
-+ struct sock *sk = sock->sk;
-+ struct sockaddr_ll *saddr=(struct sockaddr_ll *)msg->msg_name;
-+ struct sk_buff *skb;
-+ struct net_device *dev;
-+ __be16 proto;
-+ unsigned char *addr;
-+ int ifindex, err, reserve = 0;
-+
-+ if (!nx_capable(CAP_NET_RAW, NXC_RAW_SEND))
-+ return -EPERM;
-+
-+ /*
-+ * Get and verify the address.
-+ */
-+
-+ if (saddr == NULL) {
-+ struct packet_sock *po = pkt_sk(sk);
-+
-+ ifindex = po->ifindex;
-+ proto = po->num;
-+ addr = NULL;
-+ } else {
-+ err = -EINVAL;
-+ if (msg->msg_namelen < sizeof(struct sockaddr_ll))
-+ goto out;
-+ if (msg->msg_namelen < (saddr->sll_halen + offsetof(struct sockaddr_ll, sll_addr)))
-+ goto out;
-+ ifindex = saddr->sll_ifindex;
-+ proto = saddr->sll_protocol;
-+ addr = saddr->sll_addr;
-+ }
-+
-+
-+ dev = dev_get_by_index(ifindex);
-+ err = -ENXIO;
-+ if (dev == NULL)
-+ goto out_unlock;
-+ if (sock->type == SOCK_RAW)
-+ reserve = dev->hard_header_len;
-+
-+ err = -ENETDOWN;
-+ if (!(dev->flags & IFF_UP))
-+ goto out_unlock;
-+
-+ err = -EMSGSIZE;
-+ if (len > dev->mtu+reserve)
-+ goto out_unlock;
-+
-+ skb = sock_alloc_send_skb(sk, len + LL_RESERVED_SPACE(dev),
-+ msg->msg_flags & MSG_DONTWAIT, &err);
-+ if (skb==NULL)
-+ goto out_unlock;
-+
-+ skb_reserve(skb, LL_RESERVED_SPACE(dev));
-+ skb_reset_network_header(skb);
-+
-+ if (dev->hard_header) {
-+ int res;
-+ err = -EINVAL;
-+ res = dev->hard_header(skb, dev, ntohs(proto), addr, NULL, len);
-+ if (sock->type != SOCK_DGRAM) {
-+ skb_reset_tail_pointer(skb);
-+ skb->len = 0;
-+ } else if (res < 0)
-+ goto out_free;
-+ }
-+
-+ /* Returns -EFAULT on error */
-+ err = memcpy_fromiovec(skb_put(skb,len), msg->msg_iov, len);
-+ if (err)
-+ goto out_free;
-+
-+ skb->protocol = proto;
-+ skb->dev = dev;
-+ skb->priority = sk->sk_priority;
-+
-+ /*
-+ * Now send it
-+ */
-+
-+ err = dev_queue_xmit(skb);
-+ if (err > 0 && (err = net_xmit_errno(err)) != 0)
-+ goto out_unlock;
-+
-+ dev_put(dev);
-+
-+ return(len);
-+
-+out_free:
-+ kfree_skb(skb);
-+out_unlock:
-+ if (dev)
-+ dev_put(dev);
-+out:
-+ return err;
-+}
-+
-+/*
-+ * Close a PACKET socket. This is fairly simple. We immediately go
-+ * to 'closed' state and remove our protocol entry in the device list.
-+ */
-+
-+static int packet_release(struct socket *sock)
-+{
-+ struct sock *sk = sock->sk;
-+ struct packet_sock *po;
-+
-+ if (!sk)
-+ return 0;
-+
-+ po = pkt_sk(sk);
-+
-+ write_lock_bh(&packet_sklist_lock);
-+ sk_del_node_init(sk);
-+ write_unlock_bh(&packet_sklist_lock);
-+
-+ /*
-+ * Unhook packet receive handler.
-+ */
-+
-+ if (po->running) {
-+ /*
-+ * Remove the protocol hook
-+ */
-+ dev_remove_pack(&po->prot_hook);
-+ po->running = 0;
-+ po->num = 0;
-+ __sock_put(sk);
-+ }
-+
-+ packet_flush_mclist(sk);
-+
-+#ifdef CONFIG_PACKET_MMAP
-+ if (po->pg_vec) {
-+ struct tpacket_req req;
-+ memset(&req, 0, sizeof(req));
-+ packet_set_ring(sk, &req, 1);
-+ }
-+#endif
-+
-+ /*
-+ * Now the socket is dead. No more input will appear.
-+ */
-+
-+ sock_orphan(sk);
-+ sock->sk = NULL;
-+
-+ /* Purge queues */
-+
-+ skb_queue_purge(&sk->sk_receive_queue);
-+
-+ sock_put(sk);
-+ return 0;
-+}
-+
-+/*
-+ * Attach a packet hook.
-+ */
-+
-+static int packet_do_bind(struct sock *sk, struct net_device *dev, __be16 protocol)
-+{
-+ struct packet_sock *po = pkt_sk(sk);
-+ /*
-+ * Detach an existing hook if present.
-+ */
-+
-+ lock_sock(sk);
-+
-+ spin_lock(&po->bind_lock);
-+ if (po->running) {
-+ __sock_put(sk);
-+ po->running = 0;
-+ po->num = 0;
-+ spin_unlock(&po->bind_lock);
-+ dev_remove_pack(&po->prot_hook);
-+ spin_lock(&po->bind_lock);
-+ }
-+
-+ po->num = protocol;
-+ po->prot_hook.type = protocol;
-+ po->prot_hook.dev = dev;
-+
-+ po->ifindex = dev ? dev->ifindex : 0;
-+
-+ if (protocol == 0)
-+ goto out_unlock;
-+
-+ if (dev) {
-+ if (dev->flags&IFF_UP) {
-+ dev_add_pack(&po->prot_hook);
-+ sock_hold(sk);
-+ po->running = 1;
-+ } else {
-+ sk->sk_err = ENETDOWN;
-+ if (!sock_flag(sk, SOCK_DEAD))
-+ sk->sk_error_report(sk);
-+ }
-+ } else {
-+ dev_add_pack(&po->prot_hook);
-+ sock_hold(sk);
-+ po->running = 1;
-+ }
-+
-+out_unlock:
-+ spin_unlock(&po->bind_lock);
-+ release_sock(sk);
-+ return 0;
-+}
-+
-+/*
-+ * Bind a packet socket to a device
-+ */
-+
-+static int packet_bind_spkt(struct socket *sock, struct sockaddr *uaddr, int addr_len)
-+{
-+ struct sock *sk=sock->sk;
-+ char name[15];
-+ struct net_device *dev;
-+ int err = -ENODEV;
-+
-+ /*
-+ * Check legality
-+ */
-+
-+ if (addr_len != sizeof(struct sockaddr))
-+ return -EINVAL;
-+ strlcpy(name,uaddr->sa_data,sizeof(name));
-+
-+ dev = dev_get_by_name(name);
-+ if (dev) {
-+ err = packet_do_bind(sk, dev, pkt_sk(sk)->num);
-+ dev_put(dev);
-+ }
-+ return err;
-+}
-+
-+static int packet_bind(struct socket *sock, struct sockaddr *uaddr, int addr_len)
-+{
-+ struct sockaddr_ll *sll = (struct sockaddr_ll*)uaddr;
-+ struct sock *sk=sock->sk;
-+ struct net_device *dev = NULL;
-+ int err;
-+
-+
-+ /*
-+ * Check legality
-+ */
-+
-+ if (addr_len < sizeof(struct sockaddr_ll))
-+ return -EINVAL;
-+ if (sll->sll_family != AF_PACKET)
-+ return -EINVAL;
-+
-+ if (sll->sll_ifindex) {
-+ err = -ENODEV;
-+ dev = dev_get_by_index(sll->sll_ifindex);
-+ if (dev == NULL)
-+ goto out;
-+ }
-+ err = packet_do_bind(sk, dev, sll->sll_protocol ? : pkt_sk(sk)->num);
-+ if (dev)
-+ dev_put(dev);
-+
-+out:
-+ return err;
-+}
-+
-+static struct proto packet_proto = {
-+ .name = "PACKET",
-+ .owner = THIS_MODULE,
-+ .obj_size = sizeof(struct packet_sock),
-+};
-+
-+/*
-+ * Create a packet of type SOCK_PACKET.
-+ */
-+
-+static int packet_create(struct socket *sock, int protocol)
-+{
-+ struct sock *sk;
-+ struct packet_sock *po;
-+ __be16 proto = (__force __be16)protocol; /* weird, but documented */
-+ int err;
-+
-+ if (!nx_capable(CAP_NET_RAW, NXC_RAW_SOCKET))
-+ return -EPERM;
-+ if (sock->type != SOCK_DGRAM && sock->type != SOCK_RAW &&
-+ sock->type != SOCK_PACKET)
-+ return -ESOCKTNOSUPPORT;
-+
-+ sock->state = SS_UNCONNECTED;
-+
-+ err = -ENOBUFS;
-+ sk = sk_alloc(PF_PACKET, GFP_KERNEL, &packet_proto, 1);
-+ if (sk == NULL)
-+ goto out;
-+
-+ sock->ops = &packet_ops;
-+ if (sock->type == SOCK_PACKET)
-+ sock->ops = &packet_ops_spkt;
-+
-+ sock_init_data(sock, sk);
-+
-+ po = pkt_sk(sk);
-+ sk->sk_family = PF_PACKET;
-+ po->num = proto;
-+
-+ sk->sk_destruct = packet_sock_destruct;
-+ atomic_inc(&packet_socks_nr);
-+
-+ /*
-+ * Attach a protocol block
-+ */
-+
-+ spin_lock_init(&po->bind_lock);
-+ po->prot_hook.func = packet_rcv;
-+
-+ if (sock->type == SOCK_PACKET)
-+ po->prot_hook.func = packet_rcv_spkt;
-+
-+ po->prot_hook.af_packet_priv = sk;
-+
-+ if (proto) {
-+ po->prot_hook.type = proto;
-+ dev_add_pack(&po->prot_hook);
-+ sock_hold(sk);
-+ po->running = 1;
-+ }
-+
-+ write_lock_bh(&packet_sklist_lock);
-+ sk_add_node(sk, &packet_sklist);
-+ write_unlock_bh(&packet_sklist_lock);
-+ return(0);
-+out:
-+ return err;
-+}
-+
-+/*
-+ * Pull a packet from our receive queue and hand it to the user.
-+ * If necessary we block.
-+ */
-+
-+static int packet_recvmsg(struct kiocb *iocb, struct socket *sock,
-+ struct msghdr *msg, size_t len, int flags)
-+{
-+ struct sock *sk = sock->sk;
-+ struct sk_buff *skb;
-+ int copied, err;
-+ struct sockaddr_ll *sll;
-+
-+ err = -EINVAL;
-+ if (flags & ~(MSG_PEEK|MSG_DONTWAIT|MSG_TRUNC|MSG_CMSG_COMPAT))
-+ goto out;
-+
-+#if 0
-+ /* What error should we return now? EUNATTACH? */
-+ if (pkt_sk(sk)->ifindex < 0)
-+ return -ENODEV;
-+#endif
-+
-+ /*
-+ * Call the generic datagram receiver. This handles all sorts
-+ * of horrible races and re-entrancy so we can forget about it
-+ * in the protocol layers.
-+ *
-+ * Now it will return ENETDOWN, if device have just gone down,
-+ * but then it will block.
-+ */
-+
-+ skb=skb_recv_datagram(sk,flags,flags&MSG_DONTWAIT,&err);
-+
-+ /*
-+ * An error occurred so return it. Because skb_recv_datagram()
-+ * handles the blocking we don't see and worry about blocking
-+ * retries.
-+ */
-+
-+ if (skb == NULL)
-+ goto out;
-+
-+ /*
-+ * If the address length field is there to be filled in, we fill
-+ * it in now.
-+ */
-+
-+ sll = &PACKET_SKB_CB(skb)->sa.ll;
-+ if (sock->type == SOCK_PACKET)
-+ msg->msg_namelen = sizeof(struct sockaddr_pkt);
-+ else
-+ msg->msg_namelen = sll->sll_halen + offsetof(struct sockaddr_ll, sll_addr);
-+
-+ /*
-+ * You lose any data beyond the buffer you gave. If it worries a
-+ * user program they can ask the device for its MTU anyway.
-+ */
-+
-+ copied = skb->len;
-+ if (copied > len)
-+ {
-+ copied=len;
-+ msg->msg_flags|=MSG_TRUNC;
-+ }
-+
-+ err = skb_copy_datagram_iovec(skb, 0, msg->msg_iov, copied);
-+ if (err)
-+ goto out_free;
-+
-+ sock_recv_timestamp(msg, sk, skb);
-+
-+ if (msg->msg_name)
-+ memcpy(msg->msg_name, &PACKET_SKB_CB(skb)->sa,
-+ msg->msg_namelen);
-+
-+ if (pkt_sk(sk)->auxdata) {
-+ struct tpacket_auxdata aux;
-+
-+ aux.tp_status = TP_STATUS_USER;
-+ if (skb->ip_summed == CHECKSUM_PARTIAL)
-+ aux.tp_status |= TP_STATUS_CSUMNOTREADY;
-+ aux.tp_len = PACKET_SKB_CB(skb)->origlen;
-+ aux.tp_snaplen = skb->len;
-+ aux.tp_mac = 0;
-+ aux.tp_net = skb_network_offset(skb);
-+
-+ put_cmsg(msg, SOL_PACKET, PACKET_AUXDATA, sizeof(aux), &aux);
-+ }
-+
-+ /*
-+ * Free or return the buffer as appropriate. Again this
-+ * hides all the races and re-entrancy issues from us.
-+ */
-+ err = (flags&MSG_TRUNC) ? skb->len : copied;
-+
-+out_free:
-+ skb_free_datagram(sk, skb);
-+out:
-+ return err;
-+}
-+
-+static int packet_getname_spkt(struct socket *sock, struct sockaddr *uaddr,
-+ int *uaddr_len, int peer)
-+{
-+ struct net_device *dev;
-+ struct sock *sk = sock->sk;
-+
-+ if (peer)
-+ return -EOPNOTSUPP;
-+
-+ uaddr->sa_family = AF_PACKET;
-+ dev = dev_get_by_index(pkt_sk(sk)->ifindex);
-+ if (dev) {
-+ strlcpy(uaddr->sa_data, dev->name, 15);
-+ dev_put(dev);
-+ } else
-+ memset(uaddr->sa_data, 0, 14);
-+ *uaddr_len = sizeof(*uaddr);
-+
-+ return 0;
-+}
-+
-+static int packet_getname(struct socket *sock, struct sockaddr *uaddr,
-+ int *uaddr_len, int peer)
-+{
-+ struct net_device *dev;
-+ struct sock *sk = sock->sk;
-+ struct packet_sock *po = pkt_sk(sk);
-+ struct sockaddr_ll *sll = (struct sockaddr_ll*)uaddr;
-+
-+ if (peer)
-+ return -EOPNOTSUPP;
-+
-+ sll->sll_family = AF_PACKET;
-+ sll->sll_ifindex = po->ifindex;
-+ sll->sll_protocol = po->num;
-+ dev = dev_get_by_index(po->ifindex);
-+ if (dev) {
-+ sll->sll_hatype = dev->type;
-+ sll->sll_halen = dev->addr_len;
-+ memcpy(sll->sll_addr, dev->dev_addr, dev->addr_len);
-+ dev_put(dev);
-+ } else {
-+ sll->sll_hatype = 0; /* Bad: we have no ARPHRD_UNSPEC */
-+ sll->sll_halen = 0;
-+ }
-+ *uaddr_len = offsetof(struct sockaddr_ll, sll_addr) + sll->sll_halen;
-+
-+ return 0;
-+}
-+
-+static void packet_dev_mc(struct net_device *dev, struct packet_mclist *i, int what)
-+{
-+ switch (i->type) {
-+ case PACKET_MR_MULTICAST:
-+ if (what > 0)
-+ dev_mc_add(dev, i->addr, i->alen, 0);
-+ else
-+ dev_mc_delete(dev, i->addr, i->alen, 0);
-+ break;
-+ case PACKET_MR_PROMISC:
-+ dev_set_promiscuity(dev, what);
-+ break;
-+ case PACKET_MR_ALLMULTI:
-+ dev_set_allmulti(dev, what);
-+ break;
-+ default:;
-+ }
-+}
-+
-+static void packet_dev_mclist(struct net_device *dev, struct packet_mclist *i, int what)
-+{
-+ for ( ; i; i=i->next) {
-+ if (i->ifindex == dev->ifindex)
-+ packet_dev_mc(dev, i, what);
-+ }
-+}
-+
-+static int packet_mc_add(struct sock *sk, struct packet_mreq_max *mreq)
-+{
-+ struct packet_sock *po = pkt_sk(sk);
-+ struct packet_mclist *ml, *i;
-+ struct net_device *dev;
-+ int err;
-+
-+ rtnl_lock();
-+
-+ err = -ENODEV;
-+ dev = __dev_get_by_index(mreq->mr_ifindex);
-+ if (!dev)
-+ goto done;
-+
-+ err = -EINVAL;
-+ if (mreq->mr_alen > dev->addr_len)
-+ goto done;
-+
-+ err = -ENOBUFS;
-+ i = kmalloc(sizeof(*i), GFP_KERNEL);
-+ if (i == NULL)
-+ goto done;
-+
-+ err = 0;
-+ for (ml = po->mclist; ml; ml = ml->next) {
-+ if (ml->ifindex == mreq->mr_ifindex &&
-+ ml->type == mreq->mr_type &&
-+ ml->alen == mreq->mr_alen &&
-+ memcmp(ml->addr, mreq->mr_address, ml->alen) == 0) {
-+ ml->count++;
-+ /* Free the new element ... */
-+ kfree(i);
-+ goto done;
-+ }
-+ }
-+
-+ i->type = mreq->mr_type;
-+ i->ifindex = mreq->mr_ifindex;
-+ i->alen = mreq->mr_alen;
-+ memcpy(i->addr, mreq->mr_address, i->alen);
-+ i->count = 1;
-+ i->next = po->mclist;
-+ po->mclist = i;
-+ packet_dev_mc(dev, i, +1);
-+
-+done:
-+ rtnl_unlock();
-+ return err;
-+}
-+
-+static int packet_mc_drop(struct sock *sk, struct packet_mreq_max *mreq)
-+{
-+ struct packet_mclist *ml, **mlp;
-+
-+ rtnl_lock();
-+
-+ for (mlp = &pkt_sk(sk)->mclist; (ml = *mlp) != NULL; mlp = &ml->next) {
-+ if (ml->ifindex == mreq->mr_ifindex &&
-+ ml->type == mreq->mr_type &&
-+ ml->alen == mreq->mr_alen &&
-+ memcmp(ml->addr, mreq->mr_address, ml->alen) == 0) {
-+ if (--ml->count == 0) {
-+ struct net_device *dev;
-+ *mlp = ml->next;
-+ dev = dev_get_by_index(ml->ifindex);
-+ if (dev) {
-+ packet_dev_mc(dev, ml, -1);
-+ dev_put(dev);
-+ }
-+ kfree(ml);
-+ }
-+ rtnl_unlock();
-+ return 0;
-+ }
-+ }
-+ rtnl_unlock();
-+ return -EADDRNOTAVAIL;
-+}
-+
-+static void packet_flush_mclist(struct sock *sk)
-+{
-+ struct packet_sock *po = pkt_sk(sk);
-+ struct packet_mclist *ml;
-+
-+ if (!po->mclist)
-+ return;
-+
-+ rtnl_lock();
-+ while ((ml = po->mclist) != NULL) {
-+ struct net_device *dev;
-+
-+ po->mclist = ml->next;
-+ if ((dev = dev_get_by_index(ml->ifindex)) != NULL) {
-+ packet_dev_mc(dev, ml, -1);
-+ dev_put(dev);
-+ }
-+ kfree(ml);
-+ }
-+ rtnl_unlock();
-+}
-+
-+static int
-+packet_setsockopt(struct socket *sock, int level, int optname, char __user *optval, int optlen)
-+{
-+ struct sock *sk = sock->sk;
-+ struct packet_sock *po = pkt_sk(sk);
-+ int ret;
-+
-+ if (level != SOL_PACKET)
-+ return -ENOPROTOOPT;
-+
-+ switch(optname) {
-+ case PACKET_ADD_MEMBERSHIP:
-+ case PACKET_DROP_MEMBERSHIP:
-+ {
-+ struct packet_mreq_max mreq;
-+ int len = optlen;
-+ memset(&mreq, 0, sizeof(mreq));
-+ if (len < sizeof(struct packet_mreq))
-+ return -EINVAL;
-+ if (len > sizeof(mreq))
-+ len = sizeof(mreq);
-+ if (copy_from_user(&mreq,optval,len))
-+ return -EFAULT;
-+ if (len < (mreq.mr_alen + offsetof(struct packet_mreq, mr_address)))
-+ return -EINVAL;
-+ if (optname == PACKET_ADD_MEMBERSHIP)
-+ ret = packet_mc_add(sk, &mreq);
-+ else
-+ ret = packet_mc_drop(sk, &mreq);
-+ return ret;
-+ }
-+
-+#ifdef CONFIG_PACKET_MMAP
-+ case PACKET_RX_RING:
-+ {
-+ struct tpacket_req req;
-+
-+ if (optlen<sizeof(req))
-+ return -EINVAL;
-+ if (copy_from_user(&req,optval,sizeof(req)))
-+ return -EFAULT;
-+ return packet_set_ring(sk, &req, 0);
-+ }
-+ case PACKET_COPY_THRESH:
-+ {
-+ int val;
-+
-+ if (optlen!=sizeof(val))
-+ return -EINVAL;
-+ if (copy_from_user(&val,optval,sizeof(val)))
-+ return -EFAULT;
-+
-+ pkt_sk(sk)->copy_thresh = val;
-+ return 0;
-+ }
-+#endif
-+ case PACKET_AUXDATA:
-+ {
-+ int val;
-+
-+ if (optlen < sizeof(val))
-+ return -EINVAL;
-+ if (copy_from_user(&val, optval, sizeof(val)))
-+ return -EFAULT;
-+
-+ po->auxdata = !!val;
-+ return 0;
-+ }
-+ case PACKET_ORIGDEV:
-+ {
-+ int val;
-+
-+ if (optlen < sizeof(val))
-+ return -EINVAL;
-+ if (copy_from_user(&val, optval, sizeof(val)))
-+ return -EFAULT;
-+
-+ po->origdev = !!val;
-+ return 0;
-+ }
-+ default:
-+ return -ENOPROTOOPT;
-+ }
-+}
-+
-+static int packet_getsockopt(struct socket *sock, int level, int optname,
-+ char __user *optval, int __user *optlen)
-+{
-+ int len;
-+ int val;
-+ struct sock *sk = sock->sk;
-+ struct packet_sock *po = pkt_sk(sk);
-+ void *data;
-+ struct tpacket_stats st;
-+
-+ if (level != SOL_PACKET)
-+ return -ENOPROTOOPT;
-+
-+ if (get_user(len, optlen))
-+ return -EFAULT;
-+
-+ if (len < 0)
-+ return -EINVAL;
-+
-+ switch(optname) {
-+ case PACKET_STATISTICS:
-+ if (len > sizeof(struct tpacket_stats))
-+ len = sizeof(struct tpacket_stats);
-+ spin_lock_bh(&sk->sk_receive_queue.lock);
-+ st = po->stats;
-+ memset(&po->stats, 0, sizeof(st));
-+ spin_unlock_bh(&sk->sk_receive_queue.lock);
-+ st.tp_packets += st.tp_drops;
-+
-+ data = &st;
-+ break;
-+ case PACKET_AUXDATA:
-+ if (len > sizeof(int))
-+ len = sizeof(int);
-+ val = po->auxdata;
-+
-+ data = &val;
-+ break;
-+ case PACKET_ORIGDEV:
-+ if (len > sizeof(int))
-+ len = sizeof(int);
-+ val = po->origdev;
-+
-+ data = &val;
-+ break;
-+ default:
-+ return -ENOPROTOOPT;
-+ }
-+
-+ if (put_user(len, optlen))
-+ return -EFAULT;
-+ if (copy_to_user(optval, data, len))
-+ return -EFAULT;
-+ return 0;
-+}
-+
-+
-+static int packet_notifier(struct notifier_block *this, unsigned long msg, void *data)
-+{
-+ struct sock *sk;
-+ struct hlist_node *node;
-+ struct net_device *dev = data;
-+
-+ read_lock(&packet_sklist_lock);
-+ sk_for_each(sk, node, &packet_sklist) {
-+ struct packet_sock *po = pkt_sk(sk);
-+
-+ switch (msg) {
-+ case NETDEV_UNREGISTER:
-+ if (po->mclist)
-+ packet_dev_mclist(dev, po->mclist, -1);
-+ /* fallthrough */
-+
-+ case NETDEV_DOWN:
-+ if (dev->ifindex == po->ifindex) {
-+ spin_lock(&po->bind_lock);
-+ if (po->running) {
-+ __dev_remove_pack(&po->prot_hook);
-+ __sock_put(sk);
-+ po->running = 0;
-+ sk->sk_err = ENETDOWN;
-+ if (!sock_flag(sk, SOCK_DEAD))
-+ sk->sk_error_report(sk);
-+ }
-+ if (msg == NETDEV_UNREGISTER) {
-+ po->ifindex = -1;
-+ po->prot_hook.dev = NULL;
-+ }
-+ spin_unlock(&po->bind_lock);
-+ }
-+ break;
-+ case NETDEV_UP:
-+ spin_lock(&po->bind_lock);
-+ if (dev->ifindex == po->ifindex && po->num &&
-+ !po->running) {
-+ dev_add_pack(&po->prot_hook);
-+ sock_hold(sk);
-+ po->running = 1;
-+ }
-+ spin_unlock(&po->bind_lock);
-+ break;
-+ }
-+ }
-+ read_unlock(&packet_sklist_lock);
-+ return NOTIFY_DONE;
-+}
-+
-+
-+static int packet_ioctl(struct socket *sock, unsigned int cmd,
-+ unsigned long arg)
-+{
-+ struct sock *sk = sock->sk;
-+
-+ switch(cmd) {
-+ case SIOCOUTQ:
-+ {
-+ int amount = atomic_read(&sk->sk_wmem_alloc);
-+ return put_user(amount, (int __user *)arg);
-+ }
-+ case SIOCINQ:
-+ {
-+ struct sk_buff *skb;
-+ int amount = 0;
-+
-+ spin_lock_bh(&sk->sk_receive_queue.lock);
-+ skb = skb_peek(&sk->sk_receive_queue);
-+ if (skb)
-+ amount = skb->len;
-+ spin_unlock_bh(&sk->sk_receive_queue.lock);
-+ return put_user(amount, (int __user *)arg);
-+ }
-+ case SIOCGSTAMP:
-+ return sock_get_timestamp(sk, (struct timeval __user *)arg);
-+ case SIOCGSTAMPNS:
-+ return sock_get_timestampns(sk, (struct timespec __user *)arg);
-+
-+#ifdef CONFIG_INET
-+ case SIOCADDRT:
-+ case SIOCDELRT:
-+ case SIOCDARP:
-+ case SIOCGARP:
-+ case SIOCSARP:
-+ case SIOCGIFADDR:
-+ case SIOCSIFADDR:
-+ case SIOCGIFBRDADDR:
-+ case SIOCSIFBRDADDR:
-+ case SIOCGIFNETMASK:
-+ case SIOCSIFNETMASK:
-+ case SIOCGIFDSTADDR:
-+ case SIOCSIFDSTADDR:
-+ case SIOCSIFFLAGS:
-+ return inet_dgram_ops.ioctl(sock, cmd, arg);
-+#endif
-+
-+ default:
-+ return -ENOIOCTLCMD;
-+ }
-+ return 0;
-+}
-+
-+#ifndef CONFIG_PACKET_MMAP
-+#define packet_mmap sock_no_mmap
-+#define packet_poll datagram_poll
-+#else
-+
-+static unsigned int packet_poll(struct file * file, struct socket *sock,
-+ poll_table *wait)
-+{
-+ struct sock *sk = sock->sk;
-+ struct packet_sock *po = pkt_sk(sk);
-+ unsigned int mask = datagram_poll(file, sock, wait);
-+
-+ spin_lock_bh(&sk->sk_receive_queue.lock);
-+ if (po->pg_vec) {
-+ unsigned last = po->head ? po->head-1 : po->frame_max;
-+ struct tpacket_hdr *h;
-+
-+ h = packet_lookup_frame(po, last);
-+
-+ if (h->tp_status)
-+ mask |= POLLIN | POLLRDNORM;
-+ }
-+ spin_unlock_bh(&sk->sk_receive_queue.lock);
-+ return mask;
-+}
-+
-+
-+/* Dirty? Well, I still did not learn better way to account
-+ * for user mmaps.
-+ */
-+
-+static void packet_mm_open(struct vm_area_struct *vma)
-+{
-+ struct file *file = vma->vm_file;
-+ struct socket * sock = file->private_data;
-+ struct sock *sk = sock->sk;
-+
-+ if (sk)
-+ atomic_inc(&pkt_sk(sk)->mapped);
-+}
-+
-+static void packet_mm_close(struct vm_area_struct *vma)
-+{
-+ struct file *file = vma->vm_file;
-+ struct socket * sock = file->private_data;
-+ struct sock *sk = sock->sk;
-+
-+ if (sk)
-+ atomic_dec(&pkt_sk(sk)->mapped);
-+}
-+
-+static struct vm_operations_struct packet_mmap_ops = {
-+ .open = packet_mm_open,
-+ .close =packet_mm_close,
-+};
-+
-+static inline struct page *pg_vec_endpage(char *one_pg_vec, unsigned int order)
-+{
-+ return virt_to_page(one_pg_vec + (PAGE_SIZE << order) - 1);
-+}
-+
-+static void free_pg_vec(char **pg_vec, unsigned int order, unsigned int len)
-+{
-+ int i;
-+
-+ for (i = 0; i < len; i++) {
-+ if (likely(pg_vec[i]))
-+ free_pages((unsigned long) pg_vec[i], order);
-+ }
-+ kfree(pg_vec);
-+}
-+
-+static inline char *alloc_one_pg_vec_page(unsigned long order)
-+{
-+ return (char *) __get_free_pages(GFP_KERNEL | __GFP_COMP | __GFP_ZERO,
-+ order);
-+}
-+
-+static char **alloc_pg_vec(struct tpacket_req *req, int order)
-+{
-+ unsigned int block_nr = req->tp_block_nr;
-+ char **pg_vec;
-+ int i;
-+
-+ pg_vec = kzalloc(block_nr * sizeof(char *), GFP_KERNEL);
-+ if (unlikely(!pg_vec))
-+ goto out;
-+
-+ for (i = 0; i < block_nr; i++) {
-+ pg_vec[i] = alloc_one_pg_vec_page(order);
-+ if (unlikely(!pg_vec[i]))
-+ goto out_free_pgvec;
-+ }
-+
-+out:
-+ return pg_vec;
-+
-+out_free_pgvec:
-+ free_pg_vec(pg_vec, order, block_nr);
-+ pg_vec = NULL;
-+ goto out;
-+}
-+
-+static int packet_set_ring(struct sock *sk, struct tpacket_req *req, int closing)
-+{
-+ char **pg_vec = NULL;
-+ struct packet_sock *po = pkt_sk(sk);
-+ int was_running, order = 0;
-+ __be16 num;
-+ int err = 0;
-+
-+ if (req->tp_block_nr) {
-+ int i, l;
-+
-+ /* Sanity tests and some calculations */
-+
-+ if (unlikely(po->pg_vec))
-+ return -EBUSY;
-+
-+ if (unlikely((int)req->tp_block_size <= 0))
-+ return -EINVAL;
-+ if (unlikely(req->tp_block_size & (PAGE_SIZE - 1)))
-+ return -EINVAL;
-+ if (unlikely(req->tp_frame_size < TPACKET_HDRLEN))
-+ return -EINVAL;
-+ if (unlikely(req->tp_frame_size & (TPACKET_ALIGNMENT - 1)))
-+ return -EINVAL;
-+
-+ po->frames_per_block = req->tp_block_size/req->tp_frame_size;
-+ if (unlikely(po->frames_per_block <= 0))
-+ return -EINVAL;
-+ if (unlikely((po->frames_per_block * req->tp_block_nr) !=
-+ req->tp_frame_nr))
-+ return -EINVAL;
-+
-+ err = -ENOMEM;
-+ order = get_order(req->tp_block_size);
-+ pg_vec = alloc_pg_vec(req, order);
-+ if (unlikely(!pg_vec))
-+ goto out;
-+
-+ l = 0;
-+ for (i = 0; i < req->tp_block_nr; i++) {
-+ char *ptr = pg_vec[i];
-+ struct tpacket_hdr *header;
-+ int k;
-+
-+ for (k = 0; k < po->frames_per_block; k++) {
-+ header = (struct tpacket_hdr *) ptr;
-+ header->tp_status = TP_STATUS_KERNEL;
-+ ptr += req->tp_frame_size;
-+ }
-+ }
-+ /* Done */
-+ } else {
-+ if (unlikely(req->tp_frame_nr))
-+ return -EINVAL;
-+ }
-+
-+ lock_sock(sk);
-+
-+ /* Detach socket from network */
-+ spin_lock(&po->bind_lock);
-+ was_running = po->running;
-+ num = po->num;
-+ if (was_running) {
-+ __dev_remove_pack(&po->prot_hook);
-+ po->num = 0;
-+ po->running = 0;
-+ __sock_put(sk);
-+ }
-+ spin_unlock(&po->bind_lock);
-+
-+ synchronize_net();
-+
-+ err = -EBUSY;
-+ if (closing || atomic_read(&po->mapped) == 0) {
-+ err = 0;
-+#define XC(a, b) ({ __typeof__ ((a)) __t; __t = (a); (a) = (b); __t; })
-+
-+ spin_lock_bh(&sk->sk_receive_queue.lock);
-+ pg_vec = XC(po->pg_vec, pg_vec);
-+ po->frame_max = (req->tp_frame_nr - 1);
-+ po->head = 0;
-+ po->frame_size = req->tp_frame_size;
-+ spin_unlock_bh(&sk->sk_receive_queue.lock);
-+
-+ order = XC(po->pg_vec_order, order);
-+ req->tp_block_nr = XC(po->pg_vec_len, req->tp_block_nr);
-+
-+ po->pg_vec_pages = req->tp_block_size/PAGE_SIZE;
-+ po->prot_hook.func = po->pg_vec ? tpacket_rcv : packet_rcv;
-+ skb_queue_purge(&sk->sk_receive_queue);
-+#undef XC
-+ if (atomic_read(&po->mapped))
-+ printk(KERN_DEBUG "packet_mmap: vma is busy: %d\n", atomic_read(&po->mapped));
-+ }
-+
-+ spin_lock(&po->bind_lock);
-+ if (was_running && !po->running) {
-+ sock_hold(sk);
-+ po->running = 1;
-+ po->num = num;
-+ dev_add_pack(&po->prot_hook);
-+ }
-+ spin_unlock(&po->bind_lock);
-+
-+ release_sock(sk);
-+
-+ if (pg_vec)
-+ free_pg_vec(pg_vec, order, req->tp_block_nr);
-+out:
-+ return err;
-+}
-+
-+static int packet_mmap(struct file *file, struct socket *sock, struct vm_area_struct *vma)
-+{
-+ struct sock *sk = sock->sk;
-+ struct packet_sock *po = pkt_sk(sk);
-+ unsigned long size;
-+ unsigned long start;
-+ int err = -EINVAL;
-+ int i;
-+
-+ if (vma->vm_pgoff)
-+ return -EINVAL;
-+
-+ size = vma->vm_end - vma->vm_start;
-+
-+ lock_sock(sk);
-+ if (po->pg_vec == NULL)
-+ goto out;
-+ if (size != po->pg_vec_len*po->pg_vec_pages*PAGE_SIZE)
-+ goto out;
-+
-+ start = vma->vm_start;
-+ for (i = 0; i < po->pg_vec_len; i++) {
-+ struct page *page = virt_to_page(po->pg_vec[i]);
-+ int pg_num;
-+
-+ for (pg_num = 0; pg_num < po->pg_vec_pages; pg_num++, page++) {
-+ err = vm_insert_page(vma, start, page);
-+ if (unlikely(err))
-+ goto out;
-+ start += PAGE_SIZE;
-+ }
-+ }
-+ atomic_inc(&po->mapped);
-+ vma->vm_ops = &packet_mmap_ops;
-+ err = 0;
-+
-+out:
-+ release_sock(sk);
-+ return err;
-+}
-+#endif
-+
-+
-+static const struct proto_ops packet_ops_spkt = {
-+ .family = PF_PACKET,
-+ .owner = THIS_MODULE,
-+ .release = packet_release,
-+ .bind = packet_bind_spkt,
-+ .connect = sock_no_connect,
-+ .socketpair = sock_no_socketpair,
-+ .accept = sock_no_accept,
-+ .getname = packet_getname_spkt,
-+ .poll = datagram_poll,
-+ .ioctl = packet_ioctl,
-+ .listen = sock_no_listen,
-+ .shutdown = sock_no_shutdown,
-+ .setsockopt = sock_no_setsockopt,
-+ .getsockopt = sock_no_getsockopt,
-+ .sendmsg = packet_sendmsg_spkt,
-+ .recvmsg = packet_recvmsg,
-+ .mmap = sock_no_mmap,
-+ .sendpage = sock_no_sendpage,
-+};
-+
-+static const struct proto_ops packet_ops = {
-+ .family = PF_PACKET,
-+ .owner = THIS_MODULE,
-+ .release = packet_release,
-+ .bind = packet_bind,
-+ .connect = sock_no_connect,
-+ .socketpair = sock_no_socketpair,
-+ .accept = sock_no_accept,
-+ .getname = packet_getname,
-+ .poll = packet_poll,
-+ .ioctl = packet_ioctl,
-+ .listen = sock_no_listen,
-+ .shutdown = sock_no_shutdown,
-+ .setsockopt = packet_setsockopt,
-+ .getsockopt = packet_getsockopt,
-+ .sendmsg = packet_sendmsg,
-+ .recvmsg = packet_recvmsg,
-+ .mmap = packet_mmap,
-+ .sendpage = sock_no_sendpage,
-+};
-+
-+static struct net_proto_family packet_family_ops = {
-+ .family = PF_PACKET,
-+ .create = packet_create,
-+ .owner = THIS_MODULE,
-+};
-+
-+static struct notifier_block packet_netdev_notifier = {
-+ .notifier_call =packet_notifier,
-+};
-+
-+#ifdef CONFIG_PROC_FS
-+static inline struct sock *packet_seq_idx(loff_t off)
-+{
-+ struct sock *s;
-+ struct hlist_node *node;
-+
-+ sk_for_each(s, node, &packet_sklist) {
-+ if (!off--)
-+ return s;
-+ }
-+ return NULL;
-+}
-+
-+static void *packet_seq_start(struct seq_file *seq, loff_t *pos)
-+{
-+ read_lock(&packet_sklist_lock);
-+ return *pos ? packet_seq_idx(*pos - 1) : SEQ_START_TOKEN;
-+}
-+
-+static void *packet_seq_next(struct seq_file *seq, void *v, loff_t *pos)
-+{
-+ ++*pos;
-+ return (v == SEQ_START_TOKEN)
-+ ? sk_head(&packet_sklist)
-+ : sk_next((struct sock*)v) ;
-+}
-+
-+static void packet_seq_stop(struct seq_file *seq, void *v)
-+{
-+ read_unlock(&packet_sklist_lock);
-+}
-+
-+static int packet_seq_show(struct seq_file *seq, void *v)
-+{
-+ if (v == SEQ_START_TOKEN)
-+ seq_puts(seq, "sk RefCnt Type Proto Iface R Rmem User Inode\n");
-+ else {
-+ struct sock *s = v;
-+ const struct packet_sock *po = pkt_sk(s);
-+
-+ seq_printf(seq,
-+ "%p %-6d %-4d %04x %-5d %1d %-6u %-6u %-6lu\n",
-+ s,
-+ atomic_read(&s->sk_refcnt),
-+ s->sk_type,
-+ ntohs(po->num),
-+ po->ifindex,
-+ po->running,
-+ atomic_read(&s->sk_rmem_alloc),
-+ sock_i_uid(s),
-+ sock_i_ino(s) );
-+ }
-+
-+ return 0;
-+}
-+
-+static struct seq_operations packet_seq_ops = {
-+ .start = packet_seq_start,
-+ .next = packet_seq_next,
-+ .stop = packet_seq_stop,
-+ .show = packet_seq_show,
-+};
-+
-+static int packet_seq_open(struct inode *inode, struct file *file)
-+{
-+ return seq_open(file, &packet_seq_ops);
-+}
-+
-+static const struct file_operations packet_seq_fops = {
-+ .owner = THIS_MODULE,
-+ .open = packet_seq_open,
-+ .read = seq_read,
-+ .llseek = seq_lseek,
-+ .release = seq_release,
-+};
-+
-+#endif
-+
-+static void __exit packet_exit(void)
-+{
-+ proc_net_remove("packet");
-+ unregister_netdevice_notifier(&packet_netdev_notifier);
-+ sock_unregister(PF_PACKET);
-+ proto_unregister(&packet_proto);
-+}
-+
-+static int __init packet_init(void)
-+{
-+ int rc = proto_register(&packet_proto, 0);
-+
-+ if (rc != 0)
-+ goto out;
-+
-+ sock_register(&packet_family_ops);
-+ register_netdevice_notifier(&packet_netdev_notifier);
-+ proc_net_fops_create("packet", 0, &packet_seq_fops);
-+out:
-+ return rc;
-+}
-+
-+module_init(packet_init);
-+module_exit(packet_exit);
-+MODULE_LICENSE("GPL");
-+MODULE_ALIAS_NETPROTO(PF_PACKET);
diff -Nurb linux-2.6.22-570/net/rose/af_rose.c linux-2.6.22-590/net/rose/af_rose.c
--- linux-2.6.22-570/net/rose/af_rose.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/rose/af_rose.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/rose/af_rose.c 2008-03-20 13:28:08.000000000 -0400
@@ -45,6 +45,7 @@
#include <net/tcp_states.h>
#include <net/ip.h>
rose_rt_free();
diff -Nurb linux-2.6.22-570/net/rose/rose_route.c linux-2.6.22-590/net/rose/rose_route.c
---- linux-2.6.22-570/net/rose/rose_route.c 2008-03-18 15:57:37.000000000 -0400
-+++ linux-2.6.22-590/net/rose/rose_route.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/rose/rose_route.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/net/rose/rose_route.c 2008-03-20 13:28:08.000000000 -0400
@@ -583,7 +583,7 @@
{
struct net_device *dev;
}
diff -Nurb linux-2.6.22-570/net/rxrpc/af_rxrpc.c linux-2.6.22-590/net/rxrpc/af_rxrpc.c
--- linux-2.6.22-570/net/rxrpc/af_rxrpc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/rxrpc/af_rxrpc.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/rxrpc/af_rxrpc.c 2008-03-20 13:28:08.000000000 -0400
@@ -14,6 +14,7 @@
#include <linux/skbuff.h>
#include <linux/poll.h>
_leave("");
diff -Nurb linux-2.6.22-570/net/sched/act_api.c linux-2.6.22-590/net/sched/act_api.c
--- linux-2.6.22-570/net/sched/act_api.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/sched/act_api.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/sched/act_api.c 2008-03-20 13:28:08.000000000 -0400
@@ -27,6 +27,7 @@
#include <linux/skbuff.h>
#include <linux/init.h>
return 0;
diff -Nurb linux-2.6.22-570/net/sched/act_mirred.c linux-2.6.22-590/net/sched/act_mirred.c
--- linux-2.6.22-570/net/sched/act_mirred.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/sched/act_mirred.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/sched/act_mirred.c 2008-03-20 13:28:08.000000000 -0400
@@ -85,7 +85,7 @@
parm = RTA_DATA(tb[TCA_MIRRED_PARMS-1]);
switch (dev->type) {
diff -Nurb linux-2.6.22-570/net/sched/cls_api.c linux-2.6.22-590/net/sched/cls_api.c
--- linux-2.6.22-570/net/sched/cls_api.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/sched/cls_api.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/sched/cls_api.c 2008-03-20 13:28:08.000000000 -0400
@@ -129,6 +129,7 @@
static int tc_ctl_tfilter(struct sk_buff *skb, struct nlmsghdr *n, void *arg)
if (!tcm->tcm_parent)
diff -Nurb linux-2.6.22-570/net/sched/em_meta.c linux-2.6.22-590/net/sched/em_meta.c
--- linux-2.6.22-570/net/sched/em_meta.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/sched/em_meta.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/sched/em_meta.c 2008-03-20 13:28:08.000000000 -0400
@@ -291,7 +291,7 @@
} else {
struct net_device *dev;
if (dev)
dev_put(dev);
diff -Nurb linux-2.6.22-570/net/sched/sch_api.c linux-2.6.22-590/net/sched/sch_api.c
---- linux-2.6.22-570/net/sched/sch_api.c 2008-03-18 15:57:37.000000000 -0400
-+++ linux-2.6.22-590/net/sched/sch_api.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/sched/sch_api.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/net/sched/sch_api.c 2008-03-20 13:28:08.000000000 -0400
@@ -35,6 +35,7 @@
#include <linux/bitops.h>
#include <linux/hrtimer.h>
rtnl_register(PF_UNSPEC, RTM_DELQDISC, tc_get_qdisc, NULL);
diff -Nurb linux-2.6.22-570/net/sched/sch_generic.c linux-2.6.22-590/net/sched/sch_generic.c
--- linux-2.6.22-570/net/sched/sch_generic.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/sched/sch_generic.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/sched/sch_generic.c 2008-03-20 13:28:08.000000000 -0400
@@ -59,122 +59,143 @@
spin_unlock_bh(&dev->queue_lock);
}
void __qdisc_run(struct net_device *dev)
diff -Nurb linux-2.6.22-570/net/sched/sch_ingress.c linux-2.6.22-590/net/sched/sch_ingress.c
--- linux-2.6.22-570/net/sched/sch_ingress.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/sched/sch_ingress.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/sched/sch_ingress.c 2008-03-20 13:28:08.000000000 -0400
@@ -243,6 +243,10 @@
struct net_device *dev = skb->dev;
int fwres=NF_ACCEPT;
skb->dev ? (*pskb)->dev->name : "(no dev)",
diff -Nurb linux-2.6.22-570/net/sctp/input.c linux-2.6.22-590/net/sctp/input.c
--- linux-2.6.22-570/net/sctp/input.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/sctp/input.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/sctp/input.c 2008-03-20 13:28:08.000000000 -0400
@@ -126,6 +126,10 @@
int family;
struct sctp_af *af;
ICMP_INC_STATS_BH(ICMP_MIB_INERRORS);
return;
diff -Nurb linux-2.6.22-570/net/sctp/ipv6.c linux-2.6.22-590/net/sctp/ipv6.c
---- linux-2.6.22-570/net/sctp/ipv6.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/sctp/ipv6.c 2008-03-18 15:57:54.000000000 -0400
+--- linux-2.6.22-570/net/sctp/ipv6.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/sctp/ipv6.c 2008-03-20 13:28:08.000000000 -0400
@@ -189,6 +189,7 @@
memset(&fl, 0, sizeof(fl));
if (!ipv6_chk_addr(&addr->v6.sin6_addr, dev, 0)) {
diff -Nurb linux-2.6.22-570/net/sctp/protocol.c linux-2.6.22-590/net/sctp/protocol.c
--- linux-2.6.22-570/net/sctp/protocol.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/sctp/protocol.c 2008-03-18 15:57:54.000000000 -0400
++++ linux-2.6.22-590/net/sctp/protocol.c 2008-03-20 13:28:08.000000000 -0400
@@ -59,6 +59,7 @@
#include <net/addrconf.h>
#include <net/inet_common.h>
"(established %d bind %d)\n",
diff -Nurb linux-2.6.22-570/net/sctp/socket.c linux-2.6.22-590/net/sctp/socket.c
--- linux-2.6.22-570/net/sctp/socket.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/sctp/socket.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/net/sctp/socket.c 2008-03-20 13:28:08.000000000 -0400
@@ -5021,8 +5021,8 @@
* already in the hash table; if not, we use that; if
* it is, we try next.
int rover;
int index;
diff -Nurb linux-2.6.22-570/net/socket.c linux-2.6.22-590/net/socket.c
---- linux-2.6.22-570/net/socket.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/socket.c 2008-03-18 15:57:55.000000000 -0400
+--- linux-2.6.22-570/net/socket.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/socket.c 2008-03-20 13:28:08.000000000 -0400
@@ -84,6 +84,7 @@
#include <linux/kmod.h>
#include <linux/audit.h>
}
diff -Nurb linux-2.6.22-570/net/socket.c.orig linux-2.6.22-590/net/socket.c.orig
---- linux-2.6.22-570/net/socket.c.orig 2008-03-18 15:57:37.000000000 -0400
+--- linux-2.6.22-570/net/socket.c.orig 2008-03-20 13:25:40.000000000 -0400
+++ linux-2.6.22-590/net/socket.c.orig 1969-12-31 19:00:00.000000000 -0500
@@ -1,2344 +0,0 @@
-/*
-EXPORT_SYMBOL(kernel_sendpage);
-EXPORT_SYMBOL(kernel_sock_ioctl);
diff -Nurb linux-2.6.22-570/net/sunrpc/auth.c linux-2.6.22-590/net/sunrpc/auth.c
---- linux-2.6.22-570/net/sunrpc/auth.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/sunrpc/auth.c 2008-03-18 15:57:55.000000000 -0400
+--- linux-2.6.22-570/net/sunrpc/auth.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/sunrpc/auth.c 2008-03-20 13:28:08.000000000 -0400
@@ -19,12 +19,16 @@
# define RPCDBG_FACILITY RPCDBG_AUTH
#endif
}
diff -Nurb linux-2.6.22-570/net/sunrpc/auth_gss/auth_gss.c linux-2.6.22-590/net/sunrpc/auth_gss/auth_gss.c
--- linux-2.6.22-570/net/sunrpc/auth_gss/auth_gss.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/sunrpc/auth_gss/auth_gss.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/net/sunrpc/auth_gss/auth_gss.c 2008-03-20 13:28:08.000000000 -0400
@@ -54,9 +54,9 @@
#include <linux/sunrpc/gss_api.h>
#include <asm/uaccess.h>
.cr_init = gss_cred_init,
diff -Nurb linux-2.6.22-570/net/sunrpc/auth_gss/gss_krb5_mech.c linux-2.6.22-590/net/sunrpc/auth_gss/gss_krb5_mech.c
--- linux-2.6.22-570/net/sunrpc/auth_gss/gss_krb5_mech.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/sunrpc/auth_gss/gss_krb5_mech.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/net/sunrpc/auth_gss/gss_krb5_mech.c 2008-03-20 13:28:08.000000000 -0400
@@ -201,7 +201,7 @@
kfree(kctx);
}
.gss_verify_mic = gss_verify_mic_kerberos,
diff -Nurb linux-2.6.22-570/net/sunrpc/auth_gss/gss_spkm3_mech.c linux-2.6.22-590/net/sunrpc/auth_gss/gss_spkm3_mech.c
--- linux-2.6.22-570/net/sunrpc/auth_gss/gss_spkm3_mech.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/sunrpc/auth_gss/gss_spkm3_mech.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/net/sunrpc/auth_gss/gss_spkm3_mech.c 2008-03-20 13:28:08.000000000 -0400
@@ -202,7 +202,7 @@
return err;
}
.gss_verify_mic = gss_verify_mic_spkm3,
diff -Nurb linux-2.6.22-570/net/sunrpc/auth_null.c linux-2.6.22-590/net/sunrpc/auth_null.c
--- linux-2.6.22-570/net/sunrpc/auth_null.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/sunrpc/auth_null.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/net/sunrpc/auth_null.c 2008-03-20 13:28:08.000000000 -0400
@@ -76,7 +76,7 @@
static int
nul_refresh(struct rpc_task *task)
.cr_magic = RPCAUTH_CRED_MAGIC,
#endif
diff -Nurb linux-2.6.22-570/net/sunrpc/auth_unix.c linux-2.6.22-590/net/sunrpc/auth_unix.c
---- linux-2.6.22-570/net/sunrpc/auth_unix.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/sunrpc/auth_unix.c 2008-03-18 15:57:55.000000000 -0400
+--- linux-2.6.22-570/net/sunrpc/auth_unix.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/sunrpc/auth_unix.c 2008-03-20 13:28:08.000000000 -0400
@@ -22,11 +22,6 @@
gid_t uc_gids[NFS_NGROUPS];
};
.crdestroy = unx_destroy_cred,
.crmatch = unx_match,
diff -Nurb linux-2.6.22-570/net/sunrpc/clnt.c linux-2.6.22-590/net/sunrpc/clnt.c
---- linux-2.6.22-570/net/sunrpc/clnt.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/sunrpc/clnt.c 2008-03-18 15:57:55.000000000 -0400
+--- linux-2.6.22-570/net/sunrpc/clnt.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/sunrpc/clnt.c 2008-03-20 13:28:08.000000000 -0400
@@ -45,6 +45,12 @@
dprintk("RPC: %5u %s (status %d)\n", t->tk_pid, \
__FUNCTION__, t->tk_status)
+#endif
diff -Nurb linux-2.6.22-570/net/sunrpc/rpc_pipe.c linux-2.6.22-590/net/sunrpc/rpc_pipe.c
--- linux-2.6.22-570/net/sunrpc/rpc_pipe.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/sunrpc/rpc_pipe.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/net/sunrpc/rpc_pipe.c 2008-03-20 13:28:08.000000000 -0400
@@ -14,7 +14,7 @@
#include <linux/pagemap.h>
#include <linux/mount.h>
init_waitqueue_head(&rpci->waitq);
diff -Nurb linux-2.6.22-570/net/sunrpc/rpcb_clnt.c linux-2.6.22-590/net/sunrpc/rpcb_clnt.c
--- linux-2.6.22-570/net/sunrpc/rpcb_clnt.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/sunrpc/rpcb_clnt.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/net/sunrpc/rpcb_clnt.c 2008-03-20 13:28:08.000000000 -0400
@@ -184,8 +184,7 @@
.program = &rpcb_program,
.version = version,
dprintk("RPC: %5u rpcb_getport rpc_run_task failed\n",
diff -Nurb linux-2.6.22-570/net/sunrpc/sched.c linux-2.6.22-590/net/sunrpc/sched.c
--- linux-2.6.22-570/net/sunrpc/sched.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/sunrpc/sched.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/net/sunrpc/sched.c 2008-03-20 13:28:08.000000000 -0400
@@ -25,7 +25,6 @@
#ifdef RPC_DEBUG
#define RPCDBG_FACILITY RPCDBG_SCHED
rpc_destroy_mempool(void)
diff -Nurb linux-2.6.22-570/net/sunrpc/stats.c linux-2.6.22-590/net/sunrpc/stats.c
--- linux-2.6.22-570/net/sunrpc/stats.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/sunrpc/stats.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/net/sunrpc/stats.c 2008-03-20 13:28:08.000000000 -0400
@@ -21,6 +21,7 @@
#include <linux/sunrpc/clnt.h>
#include <linux/sunrpc/svcsock.h>
diff -Nurb linux-2.6.22-570/net/sunrpc/sunrpc_syms.c linux-2.6.22-590/net/sunrpc/sunrpc_syms.c
--- linux-2.6.22-570/net/sunrpc/sunrpc_syms.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/sunrpc/sunrpc_syms.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/net/sunrpc/sunrpc_syms.c 2008-03-20 13:28:08.000000000 -0400
@@ -28,15 +28,11 @@
EXPORT_SYMBOL(rpc_sleep_on);
EXPORT_SYMBOL(rpc_wake_up_next);
rpc_destroy_mempool();
diff -Nurb linux-2.6.22-570/net/sunrpc/xprt.c linux-2.6.22-590/net/sunrpc/xprt.c
--- linux-2.6.22-570/net/sunrpc/xprt.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/sunrpc/xprt.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/net/sunrpc/xprt.c 2008-03-20 13:28:08.000000000 -0400
@@ -127,7 +127,7 @@
clear_bit(XPRT_LOCKED, &xprt->state);
smp_mb__after_clear_bit();
spin_unlock(&xprt->transport_lock);
diff -Nurb linux-2.6.22-570/net/sunrpc/xprtsock.c linux-2.6.22-590/net/sunrpc/xprtsock.c
--- linux-2.6.22-570/net/sunrpc/xprtsock.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/sunrpc/xprtsock.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/net/sunrpc/xprtsock.c 2008-03-20 13:28:08.000000000 -0400
@@ -653,8 +653,7 @@
dprintk("RPC: xs_destroy xprt %p\n", xprt);
diff -Nurb linux-2.6.22-570/net/sysctl_net.c linux-2.6.22-590/net/sysctl_net.c
--- linux-2.6.22-570/net/sysctl_net.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/sysctl_net.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/net/sysctl_net.c 2008-03-20 13:28:08.000000000 -0400
@@ -54,3 +54,31 @@
#endif
{ 0 },
+};
diff -Nurb linux-2.6.22-570/net/tipc/eth_media.c linux-2.6.22-590/net/tipc/eth_media.c
--- linux-2.6.22-570/net/tipc/eth_media.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/tipc/eth_media.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/net/tipc/eth_media.c 2008-03-20 13:28:08.000000000 -0400
@@ -1,8 +1,8 @@
/*
* net/tipc/eth_media.c: Ethernet bearer support for TIPC
return NOTIFY_DONE; /* couldn't find device */
diff -Nurb linux-2.6.22-570/net/tipc/link.c linux-2.6.22-590/net/tipc/link.c
--- linux-2.6.22-570/net/tipc/link.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/tipc/link.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/net/tipc/link.c 2008-03-20 13:28:08.000000000 -0400
@@ -1,8 +1,8 @@
/*
* net/tipc/link.c: TIPC link code
buf = buf_chain->next;
diff -Nurb linux-2.6.22-570/net/tipc/port.c linux-2.6.22-590/net/tipc/port.c
--- linux-2.6.22-570/net/tipc/port.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/tipc/port.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/net/tipc/port.c 2008-03-20 13:28:08.000000000 -0400
@@ -1,8 +1,8 @@
/*
* net/tipc/port.c: TIPC port code
diff -Nurb linux-2.6.22-570/net/tipc/port.h linux-2.6.22-590/net/tipc/port.h
--- linux-2.6.22-570/net/tipc/port.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/tipc/port.h 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/net/tipc/port.h 2008-03-20 13:28:08.000000000 -0400
@@ -1,8 +1,8 @@
/*
* net/tipc/port.h: Include file for TIPC port code
u32 last_in_seqno;
diff -Nurb linux-2.6.22-570/net/tipc/socket.c linux-2.6.22-590/net/tipc/socket.c
--- linux-2.6.22-570/net/tipc/socket.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/tipc/socket.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/net/tipc/socket.c 2008-03-20 13:28:08.000000000 -0400
@@ -1,8 +1,8 @@
/*
* net/tipc/socket.c: TIPC socket API
static struct net_proto_family tipc_family_ops = {
diff -Nurb linux-2.6.22-570/net/unix/af_unix.c linux-2.6.22-590/net/unix/af_unix.c
---- linux-2.6.22-570/net/unix/af_unix.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/unix/af_unix.c 2008-03-18 15:57:55.000000000 -0400
+--- linux-2.6.22-570/net/unix/af_unix.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/unix/af_unix.c 2008-03-20 13:28:08.000000000 -0400
@@ -117,8 +117,8 @@
#include <linux/security.h>
#include <linux/vs_context.h>
module_init(af_unix_init);
diff -Nurb linux-2.6.22-570/net/unix/sysctl_net_unix.c linux-2.6.22-590/net/unix/sysctl_net_unix.c
--- linux-2.6.22-570/net/unix/sysctl_net_unix.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/unix/sysctl_net_unix.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/net/unix/sysctl_net_unix.c 2008-03-20 13:28:08.000000000 -0400
@@ -14,47 +14,71 @@
#include <net/af_unix.h>
diff -Nurb linux-2.6.22-570/net/wanrouter/wanproc.c linux-2.6.22-590/net/wanrouter/wanproc.c
--- linux-2.6.22-570/net/wanrouter/wanproc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/wanrouter/wanproc.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/net/wanrouter/wanproc.c 2008-03-20 13:28:08.000000000 -0400
@@ -28,6 +28,7 @@
#include <linux/wanrouter.h> /* WAN router API definitions */
#include <linux/seq_file.h>
/*
diff -Nurb linux-2.6.22-570/net/wireless/wext.c linux-2.6.22-590/net/wireless/wext.c
--- linux-2.6.22-570/net/wireless/wext.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/wireless/wext.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/net/wireless/wext.c 2008-03-20 13:28:08.000000000 -0400
@@ -95,6 +95,7 @@
#include <linux/interrupt.h>
skb_queue_tail(&wireless_nlevent_queue, skb);
tasklet_schedule(&wireless_nlevent_tasklet);
diff -Nurb linux-2.6.22-570/net/x25/af_x25.c linux-2.6.22-590/net/x25/af_x25.c
---- linux-2.6.22-570/net/x25/af_x25.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/net/x25/af_x25.c 2008-03-18 15:57:55.000000000 -0400
+--- linux-2.6.22-570/net/x25/af_x25.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/net/x25/af_x25.c 2008-03-20 13:28:08.000000000 -0400
@@ -191,6 +191,9 @@
struct net_device *dev = ptr;
struct x25_neigh *nb;
x25 = x25_sk(sk);
diff -Nurb linux-2.6.22-570/net/x25/x25_dev.c linux-2.6.22-590/net/x25/x25_dev.c
--- linux-2.6.22-570/net/x25/x25_dev.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/x25/x25_dev.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/net/x25/x25_dev.c 2008-03-20 13:28:08.000000000 -0400
@@ -95,6 +95,9 @@
struct sk_buff *nskb;
struct x25_neigh *nb;
goto drop;
diff -Nurb linux-2.6.22-570/net/x25/x25_proc.c linux-2.6.22-590/net/x25/x25_proc.c
--- linux-2.6.22-570/net/x25/x25_proc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/x25/x25_proc.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/net/x25/x25_proc.c 2008-03-20 13:28:08.000000000 -0400
@@ -20,6 +20,7 @@
#include <linux/init.h>
#include <linux/proc_fs.h>
#else /* CONFIG_PROC_FS */
diff -Nurb linux-2.6.22-570/net/x25/x25_route.c linux-2.6.22-590/net/x25/x25_route.c
--- linux-2.6.22-570/net/x25/x25_route.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/x25/x25_route.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/net/x25/x25_route.c 2008-03-20 13:28:08.000000000 -0400
@@ -129,7 +129,7 @@
*/
struct net_device *x25_dev_get(char *devname)
if (dev &&
(!(dev->flags & IFF_UP) || (dev->type != ARPHRD_X25
diff -Nurb linux-2.6.22-570/net/xfrm/xfrm_policy.c linux-2.6.22-590/net/xfrm/xfrm_policy.c
---- linux-2.6.22-570/net/xfrm/xfrm_policy.c 2008-03-18 15:57:37.000000000 -0400
-+++ linux-2.6.22-590/net/xfrm/xfrm_policy.c 2008-03-18 15:57:55.000000000 -0400
+--- linux-2.6.22-570/net/xfrm/xfrm_policy.c 2008-03-20 13:25:40.000000000 -0400
++++ linux-2.6.22-590/net/xfrm/xfrm_policy.c 2008-03-20 13:28:08.000000000 -0400
@@ -30,8 +30,6 @@
#include "xfrm_hash.h"
xfrm_flush_bundles();
diff -Nurb linux-2.6.22-570/net/xfrm/xfrm_state.c linux-2.6.22-590/net/xfrm/xfrm_state.c
--- linux-2.6.22-570/net/xfrm/xfrm_state.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/xfrm/xfrm_state.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/net/xfrm/xfrm_state.c 2008-03-20 13:28:08.000000000 -0400
@@ -28,14 +28,6 @@
struct sock *xfrm_nl;
EXPORT_SYMBOL(xfrm_nl);
diff -Nurb linux-2.6.22-570/net/xfrm/xfrm_user.c linux-2.6.22-590/net/xfrm/xfrm_user.c
--- linux-2.6.22-570/net/xfrm/xfrm_user.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/net/xfrm/xfrm_user.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/net/xfrm/xfrm_user.c 2008-03-20 13:28:08.000000000 -0400
@@ -374,7 +374,8 @@
return err;
}
return -ENOMEM;
diff -Nurb linux-2.6.22-570/rej linux-2.6.22-590/rej
--- linux-2.6.22-570/rej 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/rej 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/rej 2008-03-20 13:28:08.000000000 -0400
@@ -0,0 +1,28 @@
+vi -o ./drivers/dma/ioatdma.c ./drivers/dma/ioatdma.c.rej
+vi -o ./fs/nfs/super.c ./fs/nfs/super.c.rej
-
-.PHONY: $(PHONY)
diff -Nurb linux-2.6.22-570/security/commoncap.c linux-2.6.22-590/security/commoncap.c
---- linux-2.6.22-570/security/commoncap.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/security/commoncap.c 2008-03-18 15:57:55.000000000 -0400
+--- linux-2.6.22-570/security/commoncap.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/security/commoncap.c 2008-03-20 13:28:08.000000000 -0400
@@ -150,7 +150,7 @@
if (bprm->e_uid != current->uid || bprm->e_gid != current->gid ||
if (unsafe & ~LSM_UNSAFE_PTRACE_CAP) {
if (!capable(CAP_SETUID)) {
diff -Nurb linux-2.6.22-570/security/dummy.c linux-2.6.22-590/security/dummy.c
---- linux-2.6.22-570/security/dummy.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/security/dummy.c 2008-03-18 15:57:55.000000000 -0400
+--- linux-2.6.22-570/security/dummy.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/security/dummy.c 2008-03-20 13:28:08.000000000 -0400
@@ -131,7 +131,7 @@
static void dummy_bprm_apply_creds (struct linux_binprm *bprm, int unsafe)
{
diff -Nurb linux-2.6.22-570/security/keys/request_key.c linux-2.6.22-590/security/keys/request_key.c
--- linux-2.6.22-570/security/keys/request_key.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/security/keys/request_key.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/security/keys/request_key.c 2008-03-20 13:28:08.000000000 -0400
@@ -108,7 +108,8 @@
argv[i] = NULL;
key_put(keyring);
diff -Nurb linux-2.6.22-570/security/security.c linux-2.6.22-590/security/security.c
--- linux-2.6.22-570/security/security.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/security/security.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/security/security.c 2008-03-20 13:28:08.000000000 -0400
@@ -24,6 +24,7 @@
extern void security_fixup_ops(struct security_operations *ops);
EXPORT_SYMBOL(security_ops);
diff -Nurb linux-2.6.22-570/security/selinux/avc.c linux-2.6.22-590/security/selinux/avc.c
--- linux-2.6.22-570/security/selinux/avc.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/security/selinux/avc.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/security/selinux/avc.c 2008-03-20 13:28:08.000000000 -0400
@@ -586,7 +586,7 @@
}
}
return rc;
}
diff -Nurb linux-2.6.22-570/security/selinux/hooks.c linux-2.6.22-590/security/selinux/hooks.c
---- linux-2.6.22-570/security/selinux/hooks.c 2008-03-18 15:57:39.000000000 -0400
-+++ linux-2.6.22-590/security/selinux/hooks.c 2008-03-18 15:57:55.000000000 -0400
+--- linux-2.6.22-570/security/selinux/hooks.c 2008-03-20 13:25:46.000000000 -0400
++++ linux-2.6.22-590/security/selinux/hooks.c 2008-03-20 13:28:08.000000000 -0400
@@ -111,6 +111,9 @@
/* Original (dummy) security module. */
static struct security_operations *original_ops = NULL;
diff -Nurb linux-2.6.22-570/security/selinux/include/av_perm_to_string.h linux-2.6.22-590/security/selinux/include/av_perm_to_string.h
--- linux-2.6.22-570/security/selinux/include/av_perm_to_string.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/security/selinux/include/av_perm_to_string.h 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/security/selinux/include/av_perm_to_string.h 2008-03-20 13:28:08.000000000 -0400
@@ -158,3 +158,4 @@
S_(SECCLASS_KEY, KEY__CREATE, "create")
S_(SECCLASS_DCCP_SOCKET, DCCP_SOCKET__NODE_BIND, "node_bind")
+ S_(SECCLASS_MEMPROTECT, MEMPROTECT__MMAP_ZERO, "mmap_zero")
diff -Nurb linux-2.6.22-570/security/selinux/include/av_permissions.h linux-2.6.22-590/security/selinux/include/av_permissions.h
--- linux-2.6.22-570/security/selinux/include/av_permissions.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/security/selinux/include/av_permissions.h 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/security/selinux/include/av_permissions.h 2008-03-20 13:28:08.000000000 -0400
@@ -823,3 +823,4 @@
#define DCCP_SOCKET__NAME_BIND 0x00200000UL
#define DCCP_SOCKET__NODE_BIND 0x00400000UL
+#define MEMPROTECT__MMAP_ZERO 0x00000001UL
diff -Nurb linux-2.6.22-570/security/selinux/include/avc.h linux-2.6.22-590/security/selinux/include/avc.h
--- linux-2.6.22-570/security/selinux/include/avc.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/security/selinux/include/avc.h 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/security/selinux/include/avc.h 2008-03-20 13:28:08.000000000 -0400
@@ -102,8 +102,10 @@
u16 tclass, u32 requested,
struct av_decision *avd, int result, struct avc_audit_data *auditdata);
int avc_has_perm(u32 ssid, u32 tsid,
diff -Nurb linux-2.6.22-570/security/selinux/include/class_to_string.h linux-2.6.22-590/security/selinux/include/class_to_string.h
--- linux-2.6.22-570/security/selinux/include/class_to_string.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/security/selinux/include/class_to_string.h 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/security/selinux/include/class_to_string.h 2008-03-20 13:28:08.000000000 -0400
@@ -63,3 +63,4 @@
S_("key")
S_(NULL)
+ S_("memprotect")
diff -Nurb linux-2.6.22-570/security/selinux/include/flask.h linux-2.6.22-590/security/selinux/include/flask.h
--- linux-2.6.22-570/security/selinux/include/flask.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/security/selinux/include/flask.h 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/security/selinux/include/flask.h 2008-03-20 13:28:08.000000000 -0400
@@ -49,6 +49,7 @@
#define SECCLASS_PACKET 57
#define SECCLASS_KEY 58
* Security identifier indices for initial entities
diff -Nurb linux-2.6.22-570/security/selinux/include/security.h linux-2.6.22-590/security/selinux/include/security.h
--- linux-2.6.22-570/security/selinux/include/security.h 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/security/selinux/include/security.h 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/security/selinux/include/security.h 2008-03-20 13:28:08.000000000 -0400
@@ -41,6 +41,7 @@
int security_load_policy(void * data, size_t len);
#define SECURITY_FS_USE_TASK 3 /* use task SIDs, e.g. pipefs/sockfs */
diff -Nurb linux-2.6.22-570/security/selinux/netif.c linux-2.6.22-590/security/selinux/netif.c
--- linux-2.6.22-570/security/selinux/netif.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/security/selinux/netif.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/security/selinux/netif.c 2008-03-20 13:28:08.000000000 -0400
@@ -20,6 +20,7 @@
#include <linux/notifier.h>
#include <linux/netdevice.h>
diff -Nurb linux-2.6.22-570/security/selinux/netlink.c linux-2.6.22-590/security/selinux/netlink.c
--- linux-2.6.22-570/security/selinux/netlink.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/security/selinux/netlink.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/security/selinux/netlink.c 2008-03-20 13:28:08.000000000 -0400
@@ -17,6 +17,7 @@
#include <linux/skbuff.h>
#include <linux/netlink.h>
netlink_set_nonroot(NETLINK_SELINUX, NL_NONROOT_RECV);
diff -Nurb linux-2.6.22-570/security/selinux/selinuxfs.c linux-2.6.22-590/security/selinux/selinuxfs.c
--- linux-2.6.22-570/security/selinux/selinuxfs.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/security/selinux/selinuxfs.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/security/selinux/selinuxfs.c 2008-03-20 13:28:08.000000000 -0400
@@ -67,6 +67,10 @@
static int bool_num = 0;
static int *bool_pending_values = NULL;
err:
diff -Nurb linux-2.6.22-570/security/selinux/ss/policydb.c linux-2.6.22-590/security/selinux/ss/policydb.c
--- linux-2.6.22-570/security/selinux/ss/policydb.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/security/selinux/ss/policydb.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/security/selinux/ss/policydb.c 2008-03-20 13:28:08.000000000 -0400
@@ -21,6 +21,7 @@
*/
ebitmap_destroy(&lrt->target_range.level[1].cat);
diff -Nurb linux-2.6.22-570/security/selinux/ss/services.c linux-2.6.22-590/security/selinux/ss/services.c
--- linux-2.6.22-570/security/selinux/ss/services.c 2007-07-08 19:32:17.000000000 -0400
-+++ linux-2.6.22-590/security/selinux/ss/services.c 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/security/selinux/ss/services.c 2008-03-20 13:28:08.000000000 -0400
@@ -1587,19 +1587,18 @@
u32 *nel)
{
struct context au_ctxt;
diff -Nurb linux-2.6.22-570/toapply linux-2.6.22-590/toapply
--- linux-2.6.22-570/toapply 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/toapply 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/toapply 2008-03-20 13:28:08.000000000 -0400
@@ -0,0 +1,51 @@
+cat ../broken-out/cpuidle-fix-the-uninitialized-variable-in-sysfs-routine.patch | patch -p1
+cat ../broken-out/cpuidle-make-cpuidle-sysfs-driver-governor-switch-off-by-default.patch | patch -p1
+cat ../broken-out/drivers-edac-add-device-sysfs-attributes.patch | patch -p1
diff -Nurb linux-2.6.22-570/trellis-mm1-1.sh linux-2.6.22-590/trellis-mm1-1.sh
--- linux-2.6.22-570/trellis-mm1-1.sh 1969-12-31 19:00:00.000000000 -0500
-+++ linux-2.6.22-590/trellis-mm1-1.sh 2008-03-18 15:57:55.000000000 -0400
++++ linux-2.6.22-590/trellis-mm1-1.sh 2008-03-20 13:28:08.000000000 -0400
@@ -0,0 +1,142 @@
+cat ../broken-out/origin.patch | patch -p1
+cat ../broken-out/ioatdma-fix-section-mismatches.patch | patch -p1