aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--debian/arch/alpha/config2
-rw-r--r--debian/arch/amd64/config3
-rw-r--r--debian/arch/arm/config.footbridge3
-rw-r--r--debian/arch/arm/config.iop32x59
-rw-r--r--debian/arch/arm/config.ixp4xx123
-rw-r--r--debian/arch/arm/config.versatile1
-rw-r--r--debian/arch/config3
-rw-r--r--debian/arch/hppa/config2
-rw-r--r--debian/arch/hppa/defines2
-rw-r--r--debian/arch/i386/config8
-rw-r--r--debian/arch/i386/config.4868
-rw-r--r--debian/arch/i386/config.6866
-rw-r--r--debian/arch/i386/config.686-bigmem6
-rw-r--r--debian/arch/i386/config.k712
-rw-r--r--debian/arch/i386/xen-vserver/defines8
-rw-r--r--debian/arch/i386/xen/defines16
-rw-r--r--debian/arch/ia64/config6
-rw-r--r--debian/arch/m68k/config.atari14
-rw-r--r--debian/arch/m68k/config.mac2
-rw-r--r--debian/arch/m68k/defines2
-rw-r--r--debian/arch/mips/config.r5k-ip321
-rw-r--r--debian/arch/mipsel/config.r5k-cobalt7
-rw-r--r--debian/arch/mipsel/config.sb1-bcm91250a2
-rw-r--r--debian/arch/mipsel/config.sb1a-bcm91480b2
-rw-r--r--debian/arch/powerpc/config1
-rw-r--r--debian/arch/sparc/config.sparc321
-rwxr-xr-xdebian/bin/gencontrol.py54
-rw-r--r--debian/changelog249
-rw-r--r--debian/lib/python/debian_linux/debian.py76
-rw-r--r--debian/lib/python/debian_linux/gencontrol.py3
-rw-r--r--debian/patches/debian/dfsg/drivers-media-video-dabus.patch33
-rw-r--r--debian/patches/debian/dfsg/drivers-net-appletalk-cops.patch45
-rw-r--r--debian/patches/debian/dfsg/drivers-net-dgrs.patch36
-rw-r--r--debian/patches/debian/dfsg/drivers-net-tokenring-3c359-smctr.patch59
-rw-r--r--debian/patches/debian/dfsg/drivers-usb-misc-emi62-emi26.patch50
-rw-r--r--debian/patches/debian/dfsg/drivers-usb-serial-keyspan.patch113
-rw-r--r--debian/patches/debian/dfsg/files-146
-rwxr-xr-xdebian/patches/features/all/vserver/gen-patch2
-rw-r--r--debian/patches/features/all/vserver/vs2.0.2.2-rc9.patch (renamed from debian/patches/features/all/vserver/vs2.0.2.2-rc6.patch)2499
-rw-r--r--debian/patches/features/all/xen/README1
-rw-r--r--debian/patches/features/all/xen/fedora-2.6.18-36186.patch (renamed from debian/patches/features/all/xen/fedora-36252.patch)4878
-rw-r--r--debian/patches/features/all/xen/vserver-update.patch84
-rw-r--r--debian/patches/series/orig-17
-rwxr-xr-xdebian/rules2
-rw-r--r--debian/rules.real21
-rw-r--r--debian/templates/control.image.type-kernel-package.in12
-rw-r--r--debian/templates/control.source.in2
47 files changed, 3444 insertions, 5128 deletions
diff --git a/debian/arch/alpha/config b/debian/arch/alpha/config
index fc236410a185..5665c716d9ec 100644
--- a/debian/arch/alpha/config
+++ b/debian/arch/alpha/config
@@ -243,6 +243,7 @@ CONFIG_IDEDMA_AUTO=y
# CONFIG_BLK_DEV_HD is not set
CONFIG_AIC7XXX_CMDS_PER_DEVICE=8
CONFIG_SCSI_IN2000=m
+CONFIG_SCSI_ARCMSR=m
CONFIG_MEGARAID_NEWGEN=y
CONFIG_MEGARAID_MM=m
CONFIG_MEGARAID_MAILBOX=m
@@ -1545,7 +1546,6 @@ CONFIG_LOG_BUF_SHIFT=14
# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
# CONFIG_DEBUG_KOBJECT is not set
# CONFIG_DEBUG_INFO is not set
-# CONFIG_DEBUG_FS is not set
CONFIG_EARLY_PRINTK=y
# CONFIG_DEBUG_RWLOCK is not set
# CONFIG_DEBUG_SEMAPHORE is not set
diff --git a/debian/arch/amd64/config b/debian/arch/amd64/config
index bd01c4833a36..d1719eee64a1 100644
--- a/debian/arch/amd64/config
+++ b/debian/arch/amd64/config
@@ -502,7 +502,6 @@ CONFIG_NS83820=m
CONFIG_HAMACHI=m
CONFIG_YELLOWFIN=m
CONFIG_R8169=m
-CONFIG_SK98LIN=m
CONFIG_VIA_VELOCITY=m
CONFIG_TIGON3=m
CONFIG_BNX2=m
@@ -1358,7 +1357,6 @@ CONFIG_LOG_BUF_SHIFT=16
# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
# CONFIG_DEBUG_KOBJECT is not set
# CONFIG_DEBUG_INFO is not set
-# CONFIG_DEBUG_FS is not set
# CONFIG_IOMMU_DEBUG is not set
# CONFIG_KPROBES is not set
CONFIG_CRC_CCITT=m
@@ -1440,3 +1438,4 @@ CONFIG_SENSORS_K8TEMP=m
CONFIG_CRYPTO_TWOFISH_X86_64=m
CONFIG_ARCH_POPULATES_NODE_MAP=y
CONFIG_BLK_DEV_IDEPNP=y
+CONFIG_USB_APPLETOUCH=m
diff --git a/debian/arch/arm/config.footbridge b/debian/arch/arm/config.footbridge
index febeef4dccd0..9de3e0c82978 100644
--- a/debian/arch/arm/config.footbridge
+++ b/debian/arch/arm/config.footbridge
@@ -651,7 +651,7 @@ CONFIG_NET_PCI=y
# CONFIG_EEPRO100 is not set
# CONFIG_E100 is not set
# CONFIG_FEALNX is not set
-# CONFIG_NATSEMI is not set
+CONFIG_NATSEMI=m
CONFIG_NE2K_PCI=m
# CONFIG_8139CP is not set
# CONFIG_8139TOO is not set
@@ -673,7 +673,6 @@ CONFIG_NE2K_PCI=m
# CONFIG_R8169 is not set
CONFIG_SIS190=m
CONFIG_SKGE=m
-# CONFIG_SK98LIN is not set
# CONFIG_VIA_VELOCITY is not set
# CONFIG_TIGON3 is not set
# CONFIG_BNX2 is not set
diff --git a/debian/arch/arm/config.iop32x b/debian/arch/arm/config.iop32x
index 351e0290b078..aa5c69d39620 100644
--- a/debian/arch/arm/config.iop32x
+++ b/debian/arch/arm/config.iop32x
@@ -310,8 +310,8 @@ CONFIG_NETFILTER_XT_MATCH_TCPMSS=m
CONFIG_IP_NF_CONNTRACK=m
CONFIG_IP_NF_CT_ACCT=y
CONFIG_IP_NF_CONNTRACK_MARK=y
-# CONFIG_IP_NF_CONNTRACK_EVENTS is not set
-# CONFIG_IP_NF_CONNTRACK_NETLINK is not set
+CONFIG_IP_NF_CONNTRACK_EVENTS=y
+CONFIG_IP_NF_CONNTRACK_NETLINK=m
# CONFIG_IP_NF_CT_PROTO_SCTP is not set
CONFIG_IP_NF_FTP=m
CONFIG_IP_NF_IRC=m
@@ -391,6 +391,12 @@ CONFIG_IP_NF_ARP_MANGLE=m
#
# CONFIG_TIPC is not set
CONFIG_ATM=m
+CONFIG_ATM_CLIP=m
+# CONFIG_ATM_CLIP_NO_ICMP is not set
+CONFIG_ATM_LANE=m
+CONFIG_ATM_MPOA=m
+CONFIG_ATM_BR2684=m
+# CONFIG_ATM_BR2684_IPFILTER is not set
CONFIG_BRIDGE=m
CONFIG_VLAN_8021Q=m
CONFIG_DECNET=m
@@ -470,7 +476,8 @@ CONFIG_IEEE80211=m
CONFIG_IEEE80211_CRYPT_WEP=m
CONFIG_IEEE80211_CRYPT_CCMP=m
# CONFIG_IEEE80211_CRYPT_TKIP is not set
-# CONFIG_IEEE80211_SOFTMAC is not set
+CONFIG_IEEE80211_SOFTMAC=m
+# CONFIG_IEEE80211_SOFTMAC_DEBUG is not set
CONFIG_WIRELESS_EXT=y
#
@@ -713,7 +720,7 @@ CONFIG_SCSI_SAS_ATTRS=m
#
# SCSI low-level drivers
#
-# CONFIG_ISCSI_TCP is not set
+CONFIG_ISCSI_TCP=m
# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
# CONFIG_SCSI_3W_9XXX is not set
# CONFIG_SCSI_ACARD is not set
@@ -865,7 +872,7 @@ CONFIG_R8169_VLAN=y
CONFIG_SIS190=m
CONFIG_SKGE=m
# CONFIG_SKY2 is not set
-CONFIG_SK98LIN=m
+# CONFIG_SK98LIN is not set
CONFIG_TIGON3=m
CONFIG_BNX2=m
@@ -908,16 +915,26 @@ CONFIG_TMD_HERMES=m
CONFIG_NORTEL_HERMES=m
CONFIG_PCI_HERMES=m
CONFIG_ATMEL=m
-# CONFIG_PCI_ATMEL is not set
+CONFIG_PCI_ATMEL=m
#
# Prism GT/Duette 802.11(a/b/g) PCI/Cardbus support
#
# CONFIG_PRISM54 is not set
CONFIG_HOSTAP=m
-# CONFIG_HOSTAP_FIRMWARE is not set
+CONFIG_HOSTAP_FIRMWARE=y
+# CONFIG_HOSTAP_FIRMWARE_NVRAM is not set
CONFIG_HOSTAP_PLX=m
-# CONFIG_HOSTAP_PCI is not set
+CONFIG_HOSTAP_PCI=m
+CONFIG_BCM43XX=m
+CONFIG_BCM43XX_DEBUG=y
+CONFIG_BCM43XX_DMA=y
+CONFIG_BCM43XX_PIO=y
+CONFIG_BCM43XX_DMA_AND_PIO_MODE=y
+# CONFIG_BCM43XX_DMA_MODE is not set
+# CONFIG_BCM43XX_PIO_MODE is not set
+CONFIG_ZD1211RW=m
+# CONFIG_ZD1211RW_DEBUG is not set
CONFIG_NET_WIRELESS=y
#
@@ -935,6 +952,7 @@ CONFIG_PPP_DEFLATE=m
CONFIG_PPP_BSDCOMP=m
CONFIG_PPP_MPPE=m
CONFIG_PPPOE=m
+CONFIG_PPPOATM=m
CONFIG_SLIP=m
CONFIG_SLIP_COMPRESSED=y
CONFIG_SLIP_SMART=y
@@ -1526,8 +1544,8 @@ CONFIG_USB_DEVICEFS=y
# USB Host Controller Drivers
#
CONFIG_USB_EHCI_HCD=m
-# CONFIG_USB_EHCI_SPLIT_ISO is not set
-# CONFIG_USB_EHCI_ROOT_HUB_TT is not set
+CONFIG_USB_EHCI_SPLIT_ISO=y
+CONFIG_USB_EHCI_ROOT_HUB_TT=y
CONFIG_USB_ISP116X_HCD=m
CONFIG_USB_OHCI_HCD=m
# CONFIG_USB_OHCI_BIG_ENDIAN is not set
@@ -1722,7 +1740,26 @@ CONFIG_USB_G_SERIAL=m
# Real Time Clock
#
CONFIG_RTC_LIB=y
-# CONFIG_RTC_CLASS is not set
+CONFIG_RTC_CLASS=y
+CONFIG_RTC_HCTOSYS=y
+CONFIG_RTC_HCTOSYS_DEVICE="rtc0"
+
+#
+# RTC interfaces
+#
+CONFIG_RTC_INTF_SYSFS=y
+CONFIG_RTC_INTF_PROC=y
+CONFIG_RTC_INTF_DEV=y
+
+#
+# RTC drivers
+#
+# CONFIG_RTC_DRV_X1205 is not set
+# CONFIG_RTC_DRV_DS1672 is not set
+# CONFIG_RTC_DRV_PCF8563 is not set
+CONFIG_RTC_DRV_RS5C372=y
+# CONFIG_RTC_DRV_M48T86 is not set
+# CONFIG_RTC_DRV_TEST is not set
#
# File systems
diff --git a/debian/arch/arm/config.ixp4xx b/debian/arch/arm/config.ixp4xx
index 82cebedb23a8..f106da4edcee 100644
--- a/debian/arch/arm/config.ixp4xx
+++ b/debian/arch/arm/config.ixp4xx
@@ -429,6 +429,12 @@ CONFIG_TIPC_PORTS=8191
CONFIG_TIPC_LOG=0
# CONFIG_TIPC_DEBUG is not set
CONFIG_ATM=m
+CONFIG_ATM_CLIP=m
+# CONFIG_ATM_CLIP_NO_ICMP is not set
+CONFIG_ATM_LANE=m
+CONFIG_ATM_MPOA=m
+CONFIG_ATM_BR2684=m
+# CONFIG_ATM_BR2684_IPFILTER is not set
CONFIG_BRIDGE=m
CONFIG_VLAN_8021Q=m
CONFIG_DECNET=m
@@ -693,7 +699,7 @@ CONFIG_SCSI_SAS_ATTRS=m
#
# SCSI low-level drivers
#
-# CONFIG_ISCSI_TCP is not set
+CONFIG_ISCSI_TCP=m
# CONFIG_BLK_DEV_3W_XXXX_RAID is not set
# CONFIG_SCSI_3W_9XXX is not set
# CONFIG_SCSI_ACARD is not set
@@ -847,7 +853,6 @@ CONFIG_IXP4XX_CRYPTO=m
# CONFIG_SIS190 is not set
# CONFIG_SKGE is not set
# CONFIG_SKY2 is not set
-# CONFIG_SK98LIN is not set
# CONFIG_TIGON3 is not set
# CONFIG_BNX2 is not set
@@ -915,6 +920,7 @@ CONFIG_PPP_DEFLATE=m
CONFIG_PPP_BSDCOMP=m
CONFIG_PPP_MPPE=m
CONFIG_PPPOE=m
+CONFIG_PPPOATM=m
CONFIG_SLIP=m
CONFIG_SLIP_COMPRESSED=y
CONFIG_SLIP_SMART=y
@@ -1089,12 +1095,12 @@ CONFIG_I2C_IXP4XX=y
#
# Miscellaneous I2C Chip support
#
-# CONFIG_SENSORS_DS1337 is not set
+CONFIG_SENSORS_DS1337=m
CONFIG_SENSORS_DS1374=m
CONFIG_SENSORS_EEPROM=y
-# CONFIG_SENSORS_PCF8574 is not set
+CONFIG_SENSORS_PCF8574=m
CONFIG_SENSORS_PCA9539=m
-# CONFIG_SENSORS_PCF8591 is not set
+CONFIG_SENSORS_PCF8591=m
# CONFIG_SENSORS_RTC8564 is not set
CONFIG_SENSORS_MAX6875=m
CONFIG_RTC_X1205_I2C=m
@@ -1143,31 +1149,31 @@ CONFIG_W1_SLAVE_DS2433=m
#
CONFIG_HWMON=y
CONFIG_HWMON_VID=m
-# CONFIG_SENSORS_ADM1021 is not set
-# CONFIG_SENSORS_ADM1025 is not set
-# CONFIG_SENSORS_ADM1026 is not set
-# CONFIG_SENSORS_ADM1031 is not set
+CONFIG_SENSORS_ADM1021=m
+CONFIG_SENSORS_ADM1025=m
+CONFIG_SENSORS_ADM1026=m
+CONFIG_SENSORS_ADM1031=m
CONFIG_SENSORS_ADM9240=m
# CONFIG_SENSORS_ASB100 is not set
CONFIG_SENSORS_ATXP1=m
-# CONFIG_SENSORS_DS1621 is not set
+CONFIG_SENSORS_DS1621=m
# CONFIG_SENSORS_F71805F is not set
# CONFIG_SENSORS_FSCHER is not set
# CONFIG_SENSORS_FSCPOS is not set
# CONFIG_SENSORS_GL518SM is not set
# CONFIG_SENSORS_GL520SM is not set
# CONFIG_SENSORS_IT87 is not set
-# CONFIG_SENSORS_LM63 is not set
-# CONFIG_SENSORS_LM75 is not set
-# CONFIG_SENSORS_LM77 is not set
-# CONFIG_SENSORS_LM78 is not set
-# CONFIG_SENSORS_LM80 is not set
-# CONFIG_SENSORS_LM83 is not set
-# CONFIG_SENSORS_LM85 is not set
-# CONFIG_SENSORS_LM87 is not set
-# CONFIG_SENSORS_LM90 is not set
-# CONFIG_SENSORS_LM92 is not set
-# CONFIG_SENSORS_MAX1619 is not set
+CONFIG_SENSORS_LM63=m
+CONFIG_SENSORS_LM75=m
+CONFIG_SENSORS_LM77=m
+CONFIG_SENSORS_LM78=m
+CONFIG_SENSORS_LM80=m
+CONFIG_SENSORS_LM83=m
+CONFIG_SENSORS_LM85=m
+CONFIG_SENSORS_LM87=m
+CONFIG_SENSORS_LM90=m
+CONFIG_SENSORS_LM92=m
+CONFIG_SENSORS_MAX1619=m
# CONFIG_SENSORS_PC87360 is not set
# CONFIG_SENSORS_SIS5595 is not set
# CONFIG_SENSORS_SMSC47M1 is not set
@@ -1206,6 +1212,9 @@ CONFIG_LEDS_TRIGGER_TIMER=y
# Multimedia devices
#
CONFIG_VIDEO_DEV=m
+CONFIG_VIDEO_V4L1=y
+CONFIG_VIDEO_V4L1_COMPAT=y
+CONFIG_VIDEO_V4L2=y
#
# Video Capture Adapters
@@ -1215,10 +1224,17 @@ CONFIG_VIDEO_DEV=m
# Video Capture Adapters
#
# CONFIG_VIDEO_ADV_DEBUG is not set
-# CONFIG_VIDEO_BT848 is not set
+CONFIG_VIDEO_VIVI=m
+CONFIG_VIDEO_BT848=m
+# CONFIG_VIDEO_BT848_DVB is not set
# CONFIG_VIDEO_SAA6588 is not set
+# CONFIG_VIDEO_BWQCAM is not set
+CONFIG_VIDEO_CQCAM=m
+# CONFIG_VIDEO_W9966 is not set
CONFIG_VIDEO_CPIA=m
-# CONFIG_VIDEO_CPIA_USB is not set
+# CONFIG_VIDEO_CPIA_PP is not set
+CONFIG_VIDEO_CPIA_USB=m
+CONFIG_VIDEO_CPIA2=m
CONFIG_VIDEO_SAA5246A=m
CONFIG_VIDEO_SAA5249=m
CONFIG_TUNER_3036=m
@@ -1229,6 +1245,7 @@ CONFIG_VIDEO_ZORAN_DC10=m
CONFIG_VIDEO_ZORAN_DC30=m
CONFIG_VIDEO_ZORAN_LML33=m
CONFIG_VIDEO_ZORAN_LML33R10=m
+CONFIG_VIDEO_ZORAN_AVS6EYES=m
CONFIG_VIDEO_SAA7134=m
CONFIG_VIDEO_SAA7134_ALSA=m
# CONFIG_VIDEO_SAA7134_DVB is not set
@@ -1238,12 +1255,48 @@ CONFIG_VIDEO_HEXIUM_ORION=m
CONFIG_VIDEO_HEXIUM_GEMINI=m
CONFIG_VIDEO_CX88=m
# CONFIG_VIDEO_CX88_ALSA is not set
+CONFIG_VIDEO_CX88_BLACKBIRD=m
# CONFIG_VIDEO_CX88_DVB is not set
-CONFIG_VIDEO_CX88_VP3054=m
+
+#
+# Encoders and Decoders
+#
+CONFIG_VIDEO_MSP3400=m
+CONFIG_VIDEO_CS53L32A=m
+CONFIG_VIDEO_TLV320AIC23B=m
+CONFIG_VIDEO_WM8775=m
+CONFIG_VIDEO_WM8739=m
+CONFIG_VIDEO_CX2341X=m
+CONFIG_VIDEO_CX25840=m
+CONFIG_VIDEO_SAA711X=m
+CONFIG_VIDEO_SAA7127=m
+CONFIG_VIDEO_UPD64031A=m
+CONFIG_VIDEO_UPD64083=m
+
+#
+# V4L USB devices
+#
+CONFIG_VIDEO_PVRUSB2=m
+CONFIG_VIDEO_PVRUSB2_24XXX=y
+CONFIG_VIDEO_PVRUSB2_SYSFS=y
+# CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not set
CONFIG_VIDEO_EM28XX=m
+CONFIG_VIDEO_USBVIDEO=m
+CONFIG_USB_VICAM=m
+CONFIG_USB_IBMCAM=m
+CONFIG_USB_KONICAWC=m
+CONFIG_USB_QUICKCAM_MESSENGER=m
+CONFIG_USB_ET61X251=m
CONFIG_VIDEO_OVCAMCHIP=m
-CONFIG_VIDEO_AUDIO_DECODER=m
-CONFIG_VIDEO_DECODER=m
+CONFIG_USB_W9968CF=m
+CONFIG_USB_OV511=m
+CONFIG_USB_SE401=m
+CONFIG_USB_SN9C102=m
+CONFIG_USB_STV680=m
+CONFIG_USB_ZC0301=m
+CONFIG_USB_PWC=m
+# CONFIG_USB_PWC_DEBUG is not set
+
#
# Radio Adapters
@@ -1251,6 +1304,7 @@ CONFIG_VIDEO_DECODER=m
# CONFIG_RADIO_GEMTEK_PCI is not set
# CONFIG_RADIO_MAXIRADIO is not set
# CONFIG_RADIO_MAESTRO is not set
+# CONFIG_USB_DSBR is not set
#
# Digital Video Broadcasting Devices
@@ -1563,21 +1617,6 @@ CONFIG_USB_MDC800=m
CONFIG_USB_MICROTEK=m
#
-# USB Multimedia devices
-#
-# CONFIG_USB_VICAM is not set
-# CONFIG_USB_DSBR is not set
-# CONFIG_USB_ET61X251 is not set
-# CONFIG_USB_IBMCAM is not set
-# CONFIG_USB_KONICAWC is not set
-# CONFIG_USB_OV511 is not set
-# CONFIG_USB_SE401 is not set
-# CONFIG_USB_SN9C102 is not set
-# CONFIG_USB_STV680 is not set
-# CONFIG_USB_W9968CF is not set
-# CONFIG_USB_PWC is not set
-
-#
# USB Network Adapters
#
CONFIG_USB_CATC=m
@@ -1590,7 +1629,7 @@ CONFIG_USB_NET_CDCETHER=m
# CONFIG_USB_NET_GL620A is not set
CONFIG_USB_NET_NET1080=m
CONFIG_USB_NET_PLUSB=m
-# CONFIG_USB_NET_RNDIS_HOST is not set
+CONFIG_USB_NET_RNDIS_HOST=m
CONFIG_USB_NET_CDC_SUBSET=m
CONFIG_USB_ALI_M5632=y
CONFIG_USB_AN2720=y
diff --git a/debian/arch/arm/config.versatile b/debian/arch/arm/config.versatile
index 9adc26663e9b..28b978481614 100644
--- a/debian/arch/arm/config.versatile
+++ b/debian/arch/arm/config.versatile
@@ -784,7 +784,6 @@ CONFIG_ACENIC=m
# CONFIG_SIS190 is not set
# CONFIG_SKGE is not set
# CONFIG_SKY2 is not set
-# CONFIG_SK98LIN is not set
# CONFIG_TIGON3 is not set
# CONFIG_BNX2 is not set
diff --git a/debian/arch/config b/debian/arch/config
index c4e43dbffa5b..6f56272bb71e 100644
--- a/debian/arch/config
+++ b/debian/arch/config
@@ -124,6 +124,7 @@ CONFIG_SND_HDSPM=m
CONFIG_SENSORS_PCA9539=m
# CONFIG_HWMON_DEBUG_CHIP is not set
CONFIG_SKGE=m
+# CONFIG_SK98LIN is not set
CONFIG_USB_GADGET_SELECTED=y
CONFIG_USB_ISP116X_HCD=m
CONFIG_DVB_LGDT330X=m
@@ -852,7 +853,7 @@ CONFIG_HZ_250=y
CONFIG_HZ=250
CONFIG_MAGIC_SYSRQ=y
# CONFIG_DEBUG_KERNEL is not set
-# CONFIG_DEBUG_FS is not set
+CONFIG_DEBUG_FS=y
# CONFIG_UNWIND_INFO is not set
# CONFIG_DEBUG_RODATA is not set
# CONFIG_DEBUG_VM is not set
diff --git a/debian/arch/hppa/config b/debian/arch/hppa/config
index 9c1e8a03cf40..5f9e5f94d34b 100644
--- a/debian/arch/hppa/config
+++ b/debian/arch/hppa/config
@@ -701,6 +701,7 @@ CONFIG_TMPFS=y
# CONFIG_TMPFS_XATTR is not set
# CONFIG_HUGETLB_PAGE is not set
CONFIG_RAMFS=y
+# CONFIG_XFS_FS is not set
# CONFIG_ADFS_FS is not set
# CONFIG_AFFS_FS is not set
# CONFIG_ASFS_FS is not set
@@ -749,7 +750,6 @@ CONFIG_LOG_BUF_SHIFT=15
# CONFIG_DEBUG_KOBJECT is not set
# CONFIG_DEBUG_INFO is not set
# CONFIG_DEBUG_IOREMAP is not set
-# CONFIG_DEBUG_FS is not set
CONFIG_CRC_CCITT=m
CONFIG_CRC32=y
CONFIG_LIBCRC32C=m
diff --git a/debian/arch/hppa/defines b/debian/arch/hppa/defines
index 676af9898d09..5ef9b293914a 100644
--- a/debian/arch/hppa/defines
+++ b/debian/arch/hppa/defines
@@ -18,9 +18,11 @@ class: multiprocessor 32-bit PA-RISC
[parisc64]
class: 64-bit PA-RISC
+override-host-type: hppa64-linux-gnu
[parisc64-smp]
class: multiprocessor 64-bit PA-RISC
+override-host-type: hppa64-linux-gnu
[relations]
gcc-4.1: gcc-4.1, binutils-hppa64, gcc-4.1-hppa64
diff --git a/debian/arch/i386/config b/debian/arch/i386/config
index 9c9f35543c09..f1418a25eae9 100644
--- a/debian/arch/i386/config
+++ b/debian/arch/i386/config
@@ -640,7 +640,6 @@ CONFIG_HAMACHI=m
CONFIG_YELLOWFIN=m
CONFIG_R8169=m
CONFIG_R8169_VLAN=y
-CONFIG_SK98LIN=m
CONFIG_VIA_VELOCITY=m
CONFIG_TIGON3=m
CONFIG_BNX2=m
@@ -836,6 +835,12 @@ CONFIG_ISDN_CAPI_CAPIFS_BOOL=y
CONFIG_ISDN_CAPI_CAPIFS=m
CONFIG_ISDN_CAPI_CAPIDRV=m
CONFIG_CAPI_AVM=y
+CONFIG_ISDN_DRV_AVMB1_B1ISA=m
+CONFIG_ISDN_DRV_AVMB1_B1PCI=m
+CONFIG_ISDN_DRV_AVMB1_T1ISA=m
+CONFIG_ISDN_DRV_AVMB1_B1PCMCIA=m
+CONFIG_ISDN_DRV_AVMB1_T1PCI=m
+CONFIG_ISDN_DRV_AVMB1_C4=m
CONFIG_CAPI_EICON=y
CONFIG_ISDN_DIVAS=m
CONFIG_ISDN_DIVAS_BRIPCI=y
@@ -1596,7 +1601,6 @@ CONFIG_EFI_PARTITION=y
CONFIG_PROFILING=y
CONFIG_OPROFILE=m
# CONFIG_KPROBES is not set
-# CONFIG_4KSTACKS is not set
CONFIG_X86_FIND_SMP_CONFIG=y
CONFIG_X86_MPPARSE=y
CONFIG_CRYPTO_AES_586=m
diff --git a/debian/arch/i386/config.486 b/debian/arch/i386/config.486
index ddbe45c9b772..aa028ea004f1 100644
--- a/debian/arch/i386/config.486
+++ b/debian/arch/i386/config.486
@@ -61,14 +61,6 @@ CONFIG_MADGEMC=m
CONFIG_ISDN_DRV_LOOP=m
CONFIG_HYSDN=m
CONFIG_HYSDN_CAPI=y
-CONFIG_ISDN_DRV_AVMB1_B1ISA=m
-CONFIG_ISDN_DRV_AVMB1_B1PCI=m
-CONFIG_ISDN_DRV_AVMB1_B1PCIV4=y
-CONFIG_ISDN_DRV_AVMB1_T1ISA=m
-CONFIG_ISDN_DRV_AVMB1_B1PCMCIA=m
-CONFIG_ISDN_DRV_AVMB1_AVM_CS=m
-CONFIG_ISDN_DRV_AVMB1_T1PCI=m
-CONFIG_ISDN_DRV_AVMB1_C4=m
CONFIG_COMPUTONE=m
CONFIG_DIGIEPCA=m
CONFIG_MOXA_INTELLIO=m
diff --git a/debian/arch/i386/config.686 b/debian/arch/i386/config.686
index 5e8fe31e5cc8..cf7752f805a7 100644
--- a/debian/arch/i386/config.686
+++ b/debian/arch/i386/config.686
@@ -41,12 +41,6 @@ CONFIG_HAVE_DEC_LOCK=y
# CONFIG_PCMCIA_XIRTULIP is not set
# CONFIG_ISDN_DRV_LOOP is not set
# CONFIG_HYSDN is not set
-# CONFIG_ISDN_DRV_AVMB1_B1ISA is not set
-# CONFIG_ISDN_DRV_AVMB1_B1PCI is not set
-# CONFIG_ISDN_DRV_AVMB1_T1ISA is not set
-# CONFIG_ISDN_DRV_AVMB1_B1PCMCIA is not set
-# CONFIG_ISDN_DRV_AVMB1_T1PCI is not set
-# CONFIG_ISDN_DRV_AVMB1_C4 is not set
# CONFIG_COMPUTONE is not set
# CONFIG_DIGIEPCA is not set
# CONFIG_MOXA_INTELLIO is not set
diff --git a/debian/arch/i386/config.686-bigmem b/debian/arch/i386/config.686-bigmem
index fe4048f92c64..091726bcc2b8 100644
--- a/debian/arch/i386/config.686-bigmem
+++ b/debian/arch/i386/config.686-bigmem
@@ -43,12 +43,6 @@ CONFIG_HAVE_DEC_LOCK=y
# CONFIG_PCMCIA_XIRTULIP is not set
# CONFIG_ISDN_DRV_LOOP is not set
# CONFIG_HYSDN is not set
-# CONFIG_ISDN_DRV_AVMB1_B1ISA is not set
-# CONFIG_ISDN_DRV_AVMB1_B1PCI is not set
-# CONFIG_ISDN_DRV_AVMB1_T1ISA is not set
-# CONFIG_ISDN_DRV_AVMB1_B1PCMCIA is not set
-# CONFIG_ISDN_DRV_AVMB1_T1PCI is not set
-# CONFIG_ISDN_DRV_AVMB1_C4 is not set
# CONFIG_COMPUTONE is not set
# CONFIG_DIGIEPCA is not set
# CONFIG_MOXA_INTELLIO is not set
diff --git a/debian/arch/i386/config.k7 b/debian/arch/i386/config.k7
index 3624e9ec874a..ef4cd5095d47 100644
--- a/debian/arch/i386/config.k7
+++ b/debian/arch/i386/config.k7
@@ -42,12 +42,12 @@ CONFIG_HAVE_DEC_LOCK=y
# CONFIG_PCMCIA_XIRTULIP is not set
# CONFIG_ISDN_DRV_LOOP is not set
# CONFIG_HYSDN is not set
-# CONFIG_ISDN_DRV_AVMB1_B1ISA is not set
-# CONFIG_ISDN_DRV_AVMB1_B1PCI is not set
-# CONFIG_ISDN_DRV_AVMB1_T1ISA is not set
-# CONFIG_ISDN_DRV_AVMB1_B1PCMCIA is not set
-# CONFIG_ISDN_DRV_AVMB1_T1PCI is not set
-# CONFIG_ISDN_DRV_AVMB1_C4 is not set
+CONFIG_ISDN_DRV_AVMB1_B1ISA=m
+CONFIG_ISDN_DRV_AVMB1_B1PCI=m
+CONFIG_ISDN_DRV_AVMB1_T1ISA=m
+CONFIG_ISDN_DRV_AVMB1_B1PCMCIA=m
+CONFIG_ISDN_DRV_AVMB1_T1PCI=m
+CONFIG_ISDN_DRV_AVMB1_C4=m
# CONFIG_COMPUTONE is not set
# CONFIG_DIGIEPCA is not set
# CONFIG_MOXA_INTELLIO is not set
diff --git a/debian/arch/i386/xen-vserver/defines b/debian/arch/i386/xen-vserver/defines
index a1c704af7553..0ecbde08eaf9 100644
--- a/debian/arch/i386/xen-vserver/defines
+++ b/debian/arch/i386/xen-vserver/defines
@@ -13,8 +13,12 @@ suggests: grub (>= 0.97-16)
type: plain-xen
[xen]
-flavour: i386
+flavour: i386-pae
+
+[686]
+class: i686
+longclass: i686 and compatible
[686_image]
-configs: i386/config.686
+configs: i386/config.686-bigmem
diff --git a/debian/arch/i386/xen/defines b/debian/arch/i386/xen/defines
index 9d6b6a8f3c74..1006b683a5d4 100644
--- a/debian/arch/i386/xen/defines
+++ b/debian/arch/i386/xen/defines
@@ -1,21 +1,23 @@
[base]
flavours:
686
- k7
[image]
-configs: i386/xen/config _xen/config
+configs:
+ i386/xen/config
+ _xen/config
initramfs-generators: initramfs-tools
recommends: libc6-xen
suggests: grub (>= 0.97-16)
type: plain-xen
[xen]
-flavour: i386
+flavour: i386-pae
-[686_image]
-configs: i386/config.686
+[686]
+class: i686
+longclass: i686 and compatible
-[k7_image]
-configs: i386/config.k7
+[686_image]
+configs: i386/config.686-bigmem
diff --git a/debian/arch/ia64/config b/debian/arch/ia64/config
index e6821d6ab0f8..1fe9f1307ccf 100644
--- a/debian/arch/ia64/config
+++ b/debian/arch/ia64/config
@@ -236,6 +236,7 @@ CONFIG_BLK_DEV_PDC202XX_NEW=m
# CONFIG_PDC202XX_FORCE is not set
CONFIG_BLK_DEV_SVWKS=m
CONFIG_BLK_DEV_SGIIOC4=m
+CONFIG_BLK_DEV_SGIIOC3=m
CONFIG_BLK_DEV_SIIMAGE=m
CONFIG_BLK_DEV_SLC90E66=m
CONFIG_BLK_DEV_TRM290=m
@@ -654,6 +655,7 @@ CONFIG_SERIAL_CORE=y
CONFIG_SERIAL_CORE_CONSOLE=y
CONFIG_SERIAL_SGI_L1_CONSOLE=y
CONFIG_SERIAL_JSM=m
+CONFIG_SERIAL_SGI_IOC4=m
CONFIG_SERIAL_SGI_IOC3=m
CONFIG_PRINTER=m
# CONFIG_LP_CONSOLE is not set
@@ -685,7 +687,7 @@ CONFIG_RAW_DRIVER=m
# CONFIG_HPET is not set
CONFIG_MAX_RAW_DEVS=256
CONFIG_HANGCHECK_TIMER=m
-# CONFIG_MMTIMER is not set
+CONFIG_MMTIMER=m
CONFIG_I2C=m
CONFIG_I2C_CHARDEV=m
CONFIG_I2C_ALGOBIT=m
@@ -1122,6 +1124,7 @@ CONFIG_MMC_BLOCK=m
CONFIG_INFINIBAND=m
CONFIG_INFINIBAND_MTHCA=m
CONFIG_INFINIBAND_IPOIB=m
+CONFIG_SGI_IOC4=m
CONFIG_SGI_IOC3=m
CONFIG_JBD=m
CONFIG_FS_MBCACHE=m
@@ -1223,7 +1226,6 @@ CONFIG_LOG_BUF_SHIFT=16
# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
# CONFIG_DEBUG_KOBJECT is not set
# CONFIG_DEBUG_INFO is not set
-# CONFIG_DEBUG_FS is not set
# CONFIG_KPROBES is not set
CONFIG_IA64_GRANULE_16MB=y
# CONFIG_IA64_GRANULE_64MB is not set
diff --git a/debian/arch/m68k/config.atari b/debian/arch/m68k/config.atari
index 0bacaf42b6c0..73375ab3d40c 100644
--- a/debian/arch/m68k/config.atari
+++ b/debian/arch/m68k/config.atari
@@ -47,8 +47,10 @@ CONFIG_PPP_FILTER=y
CONFIG_PPP_ASYNC=m
CONFIG_PPP_SYNC_TTY=m
CONFIG_KEYBOARD_ATKBD=y
+CONFIG_KEYBOARD_ATARI=y
# CONFIG_KEYBOARD_SUNKBD is not set
CONFIG_MOUSE_PS2=y
+CONFIG_MOUSE_ATARI=y
# CONFIG_MOUSE_SERIAL is not set
# CONFIG_INPUT_JOYSTICK is not set
CONFIG_INPUT_MISC=y
@@ -70,6 +72,7 @@ CONFIG_FB=y
# CONFIG_FB_MACMODES is not set
# CONFIG_FB_MODE_HELPERS is not set
# CONFIG_FB_TILEBLITTING is not set
+CONFIG_FB_ATARI=y
CONFIG_FB_ATY=y
# CONFIG_FB_S1D13XXX is not set
# CONFIG_FB_VIRTUAL is not set
@@ -101,3 +104,14 @@ CONFIG_NCPFS_OS2_NS=y
# CONFIG_PARTITION_ADVANCED is not set
CONFIG_ATARI_PARTITION=y
CONFIG_CRC32=y
+# enable new ethernet drivers
+CONFIG_ATARI_ROM_ISA=y
+CONFIG_ARANYM=y
+CONFIG_NATFEAT=y
+# Atari SCSI driver is buggy
+# CONFIG_ATARI_SCSI is not set
+# enable ethernet
+CONFIG_NET_ETHERNET=y
+CONFIG_ATARILANCE=y
+CONFIG_ATARI_NFETH=y
+CONFIG_ATARI_ETHERNEC=m
diff --git a/debian/arch/m68k/config.mac b/debian/arch/m68k/config.mac
index bfa35a3962c6..8627eefe296c 100644
--- a/debian/arch/m68k/config.mac
+++ b/debian/arch/m68k/config.mac
@@ -39,7 +39,7 @@ CONFIG_MAC_SCSI=y
CONFIG_SCSI_MAC_ESP=y
CONFIG_ADB=y
# switched off the next four CONFIG_ADB_* as requested by Finn Thain
-CONFIG_ADB_MACII=n
+CONFIG_ADB_MACII=y
CONFIG_ADB_MACIISI=n
CONFIG_ADB_IOP=n
CONFIG_ADB_PMU68K=n
diff --git a/debian/arch/m68k/defines b/debian/arch/m68k/defines
index 2db3003fb733..566d491fc504 100644
--- a/debian/arch/m68k/defines
+++ b/debian/arch/m68k/defines
@@ -2,7 +2,7 @@
compiler: gcc-3.3
flavours:
amiga
-# atari
+ atari
# bvme6000
# hp
mac
diff --git a/debian/arch/mips/config.r5k-ip32 b/debian/arch/mips/config.r5k-ip32
index 2486b338b480..1d7291cac27d 100644
--- a/debian/arch/mips/config.r5k-ip32
+++ b/debian/arch/mips/config.r5k-ip32
@@ -685,7 +685,6 @@ CONFIG_SGI_O2MACE_ETH=y
# CONFIG_SIS190 is not set
# CONFIG_SKGE is not set
# CONFIG_SKY2 is not set
-# CONFIG_SK98LIN is not set
# CONFIG_TIGON3 is not set
# CONFIG_BNX2 is not set
diff --git a/debian/arch/mipsel/config.r5k-cobalt b/debian/arch/mipsel/config.r5k-cobalt
index df1bd9caac57..b141cfa51535 100644
--- a/debian/arch/mipsel/config.r5k-cobalt
+++ b/debian/arch/mipsel/config.r5k-cobalt
@@ -603,11 +603,7 @@ CONFIG_SCSI_INITIO=m
CONFIG_SCSI_INIA100=m
# CONFIG_SCSI_PPA is not set
# CONFIG_SCSI_IMM is not set
-CONFIG_SCSI_SYM53C8XX_2=m
-CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1
-CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16
-CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64
-# CONFIG_SCSI_SYM53C8XX_IOMAPPED is not set
+# CONFIG_SCSI_SYM53C8XX_2 is not set
CONFIG_SCSI_IPR=m
# CONFIG_SCSI_IPR_TRACE is not set
# CONFIG_SCSI_IPR_DUMP is not set
@@ -767,7 +763,6 @@ CONFIG_VIA_RHINE=m
# CONFIG_SIS190 is not set
# CONFIG_SKGE is not set
# CONFIG_SKY2 is not set
-# CONFIG_SK98LIN is not set
# CONFIG_VIA_VELOCITY is not set
# CONFIG_TIGON3 is not set
# CONFIG_BNX2 is not set
diff --git a/debian/arch/mipsel/config.sb1-bcm91250a b/debian/arch/mipsel/config.sb1-bcm91250a
index a70b34cb94a7..d553b98accba 100644
--- a/debian/arch/mipsel/config.sb1-bcm91250a
+++ b/debian/arch/mipsel/config.sb1-bcm91250a
@@ -816,7 +816,7 @@ CONFIG_R8169=m
CONFIG_SIS190=m
CONFIG_SKGE=m
CONFIG_SKY2=m
-CONFIG_SK98LIN=m
+# CONFIG_SK98LIN is not set
CONFIG_VIA_VELOCITY=m
CONFIG_TIGON3=m
CONFIG_BNX2=m
diff --git a/debian/arch/mipsel/config.sb1a-bcm91480b b/debian/arch/mipsel/config.sb1a-bcm91480b
index 1e592422791b..05a7c16d2512 100644
--- a/debian/arch/mipsel/config.sb1a-bcm91480b
+++ b/debian/arch/mipsel/config.sb1a-bcm91480b
@@ -812,7 +812,7 @@ CONFIG_R8169=m
CONFIG_SIS190=m
CONFIG_SKGE=m
CONFIG_SKY2=m
-CONFIG_SK98LIN=m
+# CONFIG_SK98LIN is not set
CONFIG_VIA_VELOCITY=m
CONFIG_TIGON3=m
CONFIG_BNX2=m
diff --git a/debian/arch/powerpc/config b/debian/arch/powerpc/config
index a4147e560cba..0426b0cc6b4b 100644
--- a/debian/arch/powerpc/config
+++ b/debian/arch/powerpc/config
@@ -248,6 +248,7 @@ CONFIG_ADB_PMU=y
CONFIG_PMAC_PBOOK=y
CONFIG_PMAC_APM_EMU=m
CONFIG_PMAC_BACKLIGHT=y
+CONFIG_PMAC_BACKLIGHT_LEGACY=y
CONFIG_ADB_MACIO=y
CONFIG_INPUT_ADBHID=y
CONFIG_MAC_EMUMOUSEBTN=y
diff --git a/debian/arch/sparc/config.sparc32 b/debian/arch/sparc/config.sparc32
index 5d7a950d3bb7..6d916dd63c6f 100644
--- a/debian/arch/sparc/config.sparc32
+++ b/debian/arch/sparc/config.sparc32
@@ -73,7 +73,6 @@ CONFIG_BLK_DEV_LOOP=m
# CONFIG_DRM is not set
# CONFIG_SCSI_DPT_I2O is not set
# CONFIG_TIGON3 is not set
-# CONFIG_SK98LIN is not set
# CONFIG_IXGB is not set
# CONFIG_SUN_VIDEOPIX is not set
# CONFIG_VIDEO_DEV is not set
diff --git a/debian/bin/gencontrol.py b/debian/bin/gencontrol.py
index 10e47453d142..3bdf2a76acaa 100755
--- a/debian/bin/gencontrol.py
+++ b/debian/bin/gencontrol.py
@@ -7,7 +7,6 @@ from debian_linux.debian import *
class gencontrol(debian_linux.gencontrol.gencontrol):
def __init__(self):
super(gencontrol, self).__init__()
- self.changelog = read_changelog()
self.process_changelog()
def do_main_setup(self, vars, makeflags, extra):
@@ -91,15 +90,13 @@ class gencontrol(debian_linux.gencontrol.gencontrol):
('kpkg-arch', 'KPKG_ARCH'),
('kpkg-subarch', 'KPKG_SUBARCH'),
('localversion', 'LOCALVERSION'),
+ ('override-host-type', 'OVERRIDE_HOST_TYPE'),
('type', 'TYPE'),
):
if vars.has_key(i[0]):
makeflags[i[1]] = vars[i[0]]
def do_flavour_packages(self, packages, makefile, arch, subarch, flavour, vars, makeflags, extra):
- image_type_modulesextra = self.templates["control.image.type-modulesextra"]
- image_type_modulesinline = self.templates["control.image.type-modulesinline"]
- image_type_standalone = self.templates["control.image.type-standalone"]
headers = self.templates["control.headers"]
config_entry_base = self.config.merge('base', arch, subarch, flavour)
@@ -113,23 +110,34 @@ class gencontrol(debian_linux.gencontrol.gencontrol):
item.arches = [arch]
packages['source']['Build-Depends'].extend(relations_compiler_build_dep)
- image_depends = package_relation_list()
+ image_relations = {
+ 'conflicts': package_relation_list(),
+ 'depends': package_relation_list(),
+ }
if vars.get('initramfs', True):
generators = vars['initramfs-generators']
config_entry_commands_initramfs = self.config.merge('commands-image-initramfs-generators', arch, subarch, flavour)
commands = [config_entry_commands_initramfs[i] for i in generators if config_entry_commands_initramfs.has_key(i)]
makeflags['INITRD_CMD'] = ' '.join(commands)
- l = package_relation_group()
- l.extend(generators)
- image_depends.append(l)
+ l_depends = package_relation_group()
+ for i in generators:
+ i = config_entry_relations.get(i, i)
+ l_depends.append(i)
+ a = package_relation(i)
+ if a.operator is not None:
+ a.operator = -a.operator
+ image_relations['conflicts'].append(package_relation_group([a]))
+ image_relations['depends'].append(l_depends)
packages_dummy = []
packages_own = []
if vars['type'] == 'plain-s390-tape':
- image = image_type_standalone
+ image = self.templates["control.image.type-standalone"]
+ build_modules = False
elif vars['type'] == 'plain-xen':
- image = image_type_modulesextra
+ image = self.templates["control.image.type-modulesextra"]
+ build_modules = True
config_entry_xen = self.config.merge('xen', arch, subarch, flavour)
p = self.process_packages(self.templates['control.xen-linux-system'], vars)
l = package_relation_group()
@@ -139,15 +147,17 @@ class gencontrol(debian_linux.gencontrol.gencontrol):
p[0]['Depends'].append(l)
packages_dummy.extend(p)
else:
- image = image_type_modulesinline
+ build_modules = True
+ image = self.templates["control.image.type-%s" % vars['type']]
+ #image = self.templates["control.image.type-modulesinline"]
if not vars.has_key('desc'):
vars['desc'] = None
- packages_own.append(self.process_real_image(image[0], {'depends': image_depends}, config_entry_relations, vars))
+ packages_own.append(self.process_real_image(image[0], image_relations, config_entry_relations, vars))
packages_own.extend(self.process_packages(image[1:], vars))
- if image in (image_type_modulesextra, image_type_modulesinline):
+ if build_modules:
makeflags['MODULES'] = True
package_headers = self.process_package(headers[0], vars)
package_headers['Depends'].extend(relations_compiler)
@@ -207,8 +217,9 @@ class gencontrol(debian_linux.gencontrol.gencontrol):
vars = {
'home': '/usr/src/kernel-patches/all/%s/debian' % self.version['linux']['upstream'],
'revisions': ' '.join([i['Version']['debian'] for i in self.changelog[::-1]]),
+ 'source': "%(upstream)s-%(debian)s" % self.version['linux'],
+ 'upstream': self.version['linux']['upstream'],
}
- vars.update(self.version['linux'])
apply = self.substitute(apply, vars)
unpatch = self.substitute(unpatch, vars)
@@ -217,6 +228,14 @@ class gencontrol(debian_linux.gencontrol.gencontrol):
file('debian/bin/patch.unpatch', 'w').write(unpatch)
def process_changelog(self):
+ in_changelog = read_changelog()
+ act_upstream = in_changelog[0]['Version']['linux']['upstream']
+ changelog = []
+ for i in in_changelog:
+ if i['Version']['linux']['upstream'] != act_upstream:
+ break
+ changelog.append(i)
+ self.changelog = changelog
self.version = self.changelog[0]['Version']
if self.version['linux']['modifier'] is not None:
self.abiname = ''
@@ -239,12 +258,7 @@ class gencontrol(debian_linux.gencontrol.gencontrol):
def process_real_tree(self, in_entry, vars):
entry = self.process_package(in_entry, vars)
- tmp = self.changelog[0]['Version']['linux']['upstream']
- versions = []
- for i in self.changelog:
- if i['Version']['linux']['upstream'] != tmp:
- break
- versions.insert(0, i['Version']['linux'])
+ versions = [i['Version']['linux'] for i in self.changelog[::-1]]
for i in (('Depends', 'Provides')):
value = package_relation_list()
value.extend(entry.get(i, []))
diff --git a/debian/changelog b/debian/changelog
index 96599abf48f5..d7db450b2fe8 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -23,7 +23,234 @@ linux-2.6 (2.6.20~rc6-1~experimental.1) UNRELEASED; urgency=low
-- Bastian Blank <waldi@debian.org> Mon, 4 Dec 2006 07:16:41 +0100
-linux-2.6 (2.6.18-6) UNRELEASED; urgency=low
+linux-2.6 (2.6.18.dfsg.1-9) unstable; urgency=low
+
+ [ Martin Michlmayr ]
+ * arm/iop32x: Enable CONFIG_IP_NF_CONNTRACK_EVENTS and _NETLINK.
+ * arm/ixp4xx: Enable some more I2C sensor modules.
+ * arm/ixp4xx: Enable CONFIG_USB_NET_RNDIS_HOST.
+ * arm/footbridge: Enable CONFIG_NATSEMI.
+ * Revert mm/msync patches because they cause filesystem corruption
+ (closes: #401006, #401980, #402707) ...
+ * ... and add an alternative msync patch from Hugh Dickins that
+ doesn't depend on the mm changes (closes: #394392).
+ * mips: provide pci_get_legacy_ide_irq needed by some IDE drivers
+ (see #404950).
+ * arm: Implement flush_anon_page(), which is needed for FUSE
+ (closes: #402876) and possibly dm-crypt/LUKS (see #403426).
+ * arm: Turn off PCI burst on the Cyber2010, otherwise X11 on
+ Netwinder will crash.
+ * arm/iop32x: Enable CONFIG_IEEE80211_SOFTMAC and drivers based
+ on it.
+ * arm/ixp4xx: Upgrade to version 0.3.1 of the IXP4xx NPE Ethernet
+ driver. This version fixes stuck connections, e.g. with scp and
+ NFS (closes: #404447).
+ * arm/ixp4xx: Enable CONFIG_VIDEO_CPIA_USB.
+ * arm/ixp4xx: Enable CONFIG_ISCSI_TCP.
+ * arm/iop32x: Likewise.
+
+ [ Bastian Blank ]
+ * Bump ABI to 4.
+ * Update vserver patch to 2.0.2.2-rc9. (closes: #402743, #403790)
+ * Update xen patch to changeset 36186 from Fedora 2.6.18 branch.
+ * i386/xen: Build only the pae version. (closes: #390862)
+ * hppa: Override host type when necessary.
+ * Fix tg3 reset. (closes: #405085)
+
+ [ dann frazier ]
+ * Fix potential fragmentation attacks in ip6_tables (CVE-2006-4572)
+ * Backport a number of fixes for the cciss driver
+ - Fix a bug with 1TB disks caused by converting total_size to an int
+ - Claim devices that are of the HP RAID class and have a valid cciss sig
+ - Make NR_CMDS a per-controller define - most can do 1024 commands, but
+ the E200 family can only support 128
+ - Change the SSID on the E500 as a workaround for a firmware bug
+ - Disable prefetch on the P600 controller. An ASIC bug may result in
+ prefetching beyond the end of physical memory
+ - Increase blk_queue_max_sectors from 512 to 2048 to increase performance
+ - Map out more memor for the PCI config table, required to reach offset
+ 0x214 to disable DMA on the P600
+ - Set a default raid level on a volume that either does not support
+ reading the geometry or reports an invalid geometry for whatever reason
+ to avoid problems with buggy firmware
+ - Revert change that replaed XFER_READ/XFER_WRITE macros with
+ h->cciss_read/h->cciss_write that caused command timeouts on older
+ controllers on ia32 (closes: #402787)
+ * Fix mincore hang (CVE-2006-4814)
+ * ia64: turn on IOC4 modules for SGI Altix systems. Thanks to Stephane Larose
+ for suggesting this.
+ * Add versioned build dep on findutils to make sure the system find command
+ supports the -execdir action (closes: #405150)
+ * Hardcode the output of the scripts under arch/ia64/scripts as executed
+ in an etch environment so that we can build out of tree modules correctly
+ (closes: #392592)
+ * Update unusual_devs entry for ipod to fix an eject issue (closes: #406124)
+ * Re-add verify_pmtmr_rate, resolving problems seen on older K6 ASUS
+ boards where the ACPI PM timer runs too fast (closes: #394753)
+ * Avoid condition where /proc/swaps header may not be printed
+ (closes: #292318)
+ * [hppa] disable XFS until it works (closes: #350482)
+
+ [ Norbert Tretkowski ]
+ * libata: handle 0xff status properly. (closes: #391867)
+ * alpha: enabled CONFIG_SCSI_ARCMSR. (closes: #401187)
+ * removed BROKEN_ON_SMP dependency from I2C_ELEKTOR. (closes: #402253)
+
+ [ Christian T. Steigies ]
+ * m68k/atari: enable keyboard, mouse and fb drivers
+ * m68k/atari: fixes for ethernec and video driver by Michael Schmitz
+ * m68k/atari: fixes for scsi driver by Michael Schmitz
+ * m68k/mac: fixes for mace and cuda driver by Finn Thain
+ * m68k/atari: fixes for ide driver by Michael Schmitz
+ * m68k/atari: fixes for ide driver by Michael Schmitz
+ * m68k/atari: fixes for ethernec and atakeyb driver by Michael Schmitz, build ethernec as module
+ * m68k/mac: fixes for mace and adb driver by Finn Thain
+
+ [ maximilian attems ]
+ * Add stable release 2.6.18.6:
+ - EBTABLES: Fix wraparounds in ebt_entries verification.
+ - EBTABLES: Verify that ebt_entries have zero ->distinguisher.
+ - EBTABLES: Deal with the worst-case behaviour in loop checks.
+ - EBTABLES: Prevent wraparounds in checks for entry components' sizes.
+ - skip data conversion in compat_sys_mount when data_page is NULL
+ - bonding: incorrect bonding state reported via ioctl
+ - x86-64: Mark rdtsc as sync only for netburst, not for core2
+ (closes: #406767)
+ - dm crypt: Fix data corruption with dm-crypt over RAID5 (closes: #402812)
+ - forcedeth: Disable INTx when enabling MSI in forcedeth
+ - PKT_SCHED act_gact: division by zero
+ - XFRM: Use output device disable_xfrm for forwarded packets
+ - IPSEC: Fix inetpeer leak in ipv4 xfrm dst entries.
+ - V4L: Fix broken TUNER_LG_NTSC_TAPE radio support
+ - m32r: make userspace headers platform-independent
+ - IrDA: Incorrect TTP header reservation
+ - SUNHME: Fix for sunhme failures on x86
+ - Bluetooth: Add packet size checks for CAPI messages (CVE-2006-6106)
+ - softmac: remove netif_tx_disable when scanning
+ - DVB: lgdt330x: fix signal / lock status detection bug
+ - dm snapshot: fix freeing pending exception
+ - NET_SCHED: policer: restore compatibility with old iproute binaries
+ - NETFILTER: ip_tables: revision support for compat code
+ - ARM: Add sys_*at syscalls
+ - ieee1394: ohci1394: add PPC_PMAC platform code to driver probe
+ - softirq: remove BUG_ONs which can incorrectly trigger
+ * Hand-picked from stable release 2.6.16.30:
+ - [PPPOE]: Advertise PPPoE MTU
+ * Hand-picked from stable release 2.6.16.31:
+ - [NETFILTER]: Fix ip6_tables extension header bypass bug (CVE-2006-4572)
+ - fix RARP ic_servaddr breakage
+ * Hand-picked from stable release 2.6.16.32:
+ - drivers/telephony/ixj: fix an array overrun
+ - flush D-cache in failure path
+ * Hand-picked from stable release 2.6.16.33:
+ - Add new PHY to sis900 supported list
+ - ipmi_si_intf.c: fix "&& 0xff" typos
+ - drivers/scsi/psi240i.c: fix an array overrun
+ * Hand-picked from stable release 2.6.16.34:
+ - [IPX]: Annotate and fix IPX checksum
+ - [IGMP]: Fix IGMPV3_EXP() normalization bit shift value.
+ * Hand-picked from stable release 2.6.16.35:
+ - sgiioc4: Disable module unload
+ - Fix a masking bug in the 6pack driver.
+ - drivers/usb/input/ati_remote.c: fix cut'n'paste error
+ - proper flags type of spin_lock_irqsave()
+ * Hand-picked from stable release 2.6.16.37:
+ - [CRYPTO] sha512: Fix sha384 block size
+ - [SCSI] gdth: Fix && typos
+ - Fix SUNRPC wakeup/execute race condition
+ * Enable DEBUG_FS for usbmon in generic config. Don't disable it on alpha,
+ amd64, hppa and ia64. (closes: 378542)
+ * Backport a number of upstream fixes for the r8169 driver, needed for
+ network performance (closes: 388870, 400524)
+ - r8169: more alignment for the 0x8168
+ - r8169: phy program update
+ - r8169: more magic during initialization of the hardware
+ - r8169: perform a PHY reset before any other operation at boot time
+ - r8169: Fix iteration variable sign
+ - r8169: remove extraneous Cmd{Tx/Rx}Enb write
+ * sound: hda: detect ALC883 on MSI K9A Platinum motherboards (MS-7280)
+ patch from Leonard Norrgard <leonard.norrgard@refactor.fi>
+ * tulip: Add i386 specific patch to remove duplicate pci ids.
+ Thanks Jurij Smakov <jurij@wooyd.org> (closes: #334104, #405203)
+ * amd64, i386: Disable SK98LIN as SKGE is the modern capable driver.
+ (closes: 405196)
+ * Backout net-bcm43xx_netdev_watchdog.patch and push 2.6.18.2 fix.
+ (closes: 402475)
+
+ [ Jurij Smakov ]
+ * Add bugfix/sparc/isa-dev-no-reg.patch to make sure that
+ isa_dev_get_resource() can deal with devices which do not have a 'reg'
+ PROM property. Failure to handle such devices properly resulted in an
+ oops during boot on Netra X1. Thanks to Richard Mortimer for debugging
+ and patch. (closes: #404216)
+ * Add bugfix/sparc/ehci-hub-contol-alignment.patch to prevent unaligned
+ memory accesses in ehci-hub-control() by adding an alignment attribute
+ to the tbuf array declaration. Thanks to David Miller for the patch.
+
+ [ Sven Luther ]
+ * [powerpc] Enable CONFIG_PMAC_BACKLIGHT_LEGACY (Closes: #407671).
+
+ -- Bastian Blank <waldi@debian.org> Wed, 24 Jan 2007 13:21:51 +0100
+
+linux-2.6 (2.6.18-8) unstable; urgency=low
+
+ * Fix relations in the generated control file. (closes: #400544)
+ * Add stable release 2.6.18.4:
+ - bridge: fix possible overflow in get_fdb_entries (CVE-2006-5751)
+ * Add stable release 2.6.18.5:
+ - pcmcia: fix 'rmmod pcmcia' with unbound devices
+ - BLUETOOTH: Fix unaligned access in hci_send_to_sock.
+ - alpha: Fix ALPHA_EV56 dependencies typo
+ - TG3: Add missing unlock in tg3_open() error path.
+ - softmac: fix a slab corruption in WEP restricted key association
+ - AGP: Allocate AGP pages with GFP_DMA32 by default
+ - V4L: Do not enable VIDEO_V4L2 unconditionally
+ - bcm43xx: Drain TX status before starting IRQs
+ - fuse: fix Oops in lookup
+ - UDP: Make udp_encap_rcv use pskb_may_pull
+ - NETFILTER: Missing check for CAP_NET_ADMIN in iptables compat layer
+ - NETFILTER: ip_tables: compat error way cleanup
+ - NETFILTER: ip_tables: fix module refcount leaks in compat error paths
+ - NETFILTER: Missed and reordered checks in {arp,ip,ip6}_tables
+ - NETFILTER: arp_tables: missing unregistration on module unload
+ - NETFILTER: Kconfig: fix xt_physdev dependencies
+ - NETFILTER: xt_CONNSECMARK: fix Kconfig dependencies
+ - NETFILTER: H.323 conntrack: fix crash with CONFIG_IP_NF_CT_ACCT
+ - IA64: bte_unaligned_copy() transfers one extra cache line.
+ - x86 microcode: don't check the size
+ - scsi: clear garbage after CDBs on SG_IO
+ - IPV6: Fix address/interface handling in UDP and DCCP, according to the scoping architecture.
+ * Revert abi changing patch from 2.6.18.5.
+
+ -- Bastian Blank <waldi@debian.org> Sun, 10 Dec 2006 17:51:53 +0100
+
+linux-2.6 (2.6.18-7) unstable; urgency=low
+
+ [ Bastian Blank ]
+ * Emit conflict lines for initramfs generators. (closes: #400305)
+ * Update vserver patch to 2.0.2.2-rc8.
+ * s390: Add patch to fix posix types.
+
+ [ Martin Michlmayr ]
+ * r8169: Add an option to ignore parity errors.
+ * r8169: Ignore parity errors on the Thecus N2100.
+ * rtc: Add patch from Riku Voipio to get RS5C372 going on the N2100.
+ * arm/iop32x: Build RS5C372 support into the kernel.
+
+ [ maximilian attems ]
+ * hfs: Fix up error handling in HFS. (MOKB-14-11-2006)
+ * sata: Avoid null pointer dereference in SATA Promise.
+ * cifs: Set CIFS preferred IO size.
+
+ [ Jurij Smakov ]
+ * Add bugfix/sunhme-pci-enable.patch, fixing the failure of sunhme
+ driver on x86/PCI hosts due to missing pci_enable_device() and
+ pci_set_master() calls, lost during code refactoring upstream.
+ (closes: #397460)
+
+ -- Bastian Blank <waldi@debian.org> Mon, 4 Dec 2006 15:20:30 +0100
+
+linux-2.6 (2.6.18-6) unstable; urgency=low
[ maximilian attems ]
* Enable the new ACT modules globally. They were already set for amd64, hppa
@@ -35,9 +262,8 @@ linux-2.6 (2.6.18-6) UNRELEASED; urgency=low
- mm: small cleanup of install_page()
- mm: fixup do_wp_page()
- mm: msync() cleanup (closes: #394392)
- * Add another bcm43xx patch queued for 2.6.18.3.
- * [i386] Enable CONFIG_USB_APPLETOUCH=m (closes: #382298)
- * Add stable release 2.6.18.2:
+ * [amd64,i386] Enable CONFIG_USB_APPLETOUCH=m (closes: #382298)
+ * Add stable release 2.6.18.3:
- x86_64: Fix FPU corruption
- e1000: Fix regression: garbled stats and irq allocation during swsusp
- POWERPC: Make alignment exception always check exception table
@@ -77,11 +303,15 @@ linux-2.6 (2.6.18-6) UNRELEASED; urgency=low
[ Martin Michlmayr ]
* arm: Set CONFIG_BINFMT_MISC=m
- * arm/ixp4xx: Set CONFIG_ATM=m so CONFIG_USB_ATM has an effect.
+ * arm/ixp4xx: Set CONFIG_ATM=m (and related modules) so CONFIG_USB_ATM has
+ an effect.
* arm/iop32x: Likewise.
* arm/s3c2410: Unset CONFIG_PM_LEGACY.
* arm/versatile: Fix Versatile PCI config byte accesses
* arm/ixp4xx: Swap the disk 1 and disk 2 LED definitions so they're right.
+ * mipsel/r5k-cobalt: Unset CONFIG_SCSI_SYM53C8XX_2 because the timeout is
+ just too long.
+ * arm/ixp4xx: Enable more V4L USB devices.
[ dann frazier ]
* Backport various SCTP changesets from 2.6.19, recommended by Vlad Yasevich
@@ -101,7 +331,14 @@ linux-2.6 (2.6.18-6) UNRELEASED; urgency=low
* Added support for TI ez430 development tool ID in ti_usb.
Thanks to Oleg Verych for providing the patch.
- -- maximilian attems <maks@sternwelten.at> Sun, 19 Nov 2006 11:58:09 +0100
+ [ Christian T. Steigies ]
+ * Added support for Atari EtherNEC, Aranym, video, keyboard, mouse, and serial
+ by Michael Schmitz
+
+ [ Bastian Blank ]
+ * [i386] Reenable AVM isdn card modules. (closes: #386872)
+
+ -- Bastian Blank <waldi@debian.org> Tue, 21 Nov 2006 11:28:09 +0100
linux-2.6 (2.6.18-5) unstable; urgency=low
diff --git a/debian/lib/python/debian_linux/debian.py b/debian/lib/python/debian_linux/debian.py
index 7b6e9ba101be..41817edb81ee 100644
--- a/debian/lib/python/debian_linux/debian.py
+++ b/debian/lib/python/debian_linux/debian.py
@@ -24,7 +24,6 @@ def read_changelog(dir = ''):
""", re.VERBOSE)
f = file(os.path.join(dir, "debian/changelog"))
entries = []
- act_upstream = None
while True:
line = f.readline()
if not line:
@@ -39,10 +38,6 @@ def read_changelog(dir = ''):
e['Source'] = match.group('header_source')
version = parse_version(match.group('header_version'))
e['Version'] = version
- if act_upstream is None:
- act_upstream = version['upstream']
- elif version['upstream'] != act_upstream:
- break
entries.append(e)
return entries
@@ -80,6 +75,9 @@ def parse_version_linux(version):
.+?
)
)?
+ (?:
+ \.dfsg\.\d+
+ )?
-
(?P<debian>[^-]+)
)
@@ -88,14 +86,7 @@ $
match = re.match(version_re, version, re.X)
if match is None:
raise ValueError
- ret = match.groupdict()
- if ret['modifier'] is not None:
- ret['upstream'] = '%s-%s' % (ret['version'], ret['modifier'])
- ret['source_upstream'] = '%s~%s' % (ret['version'], ret['modifier'])
- else:
- ret['upstream'] = ret['version']
- ret['source_upstream'] = ret['version']
- return ret
+ return match.groupdict()
class package_description(object):
__slots__ = "short", "long"
@@ -122,22 +113,60 @@ class package_description(object):
self.long.extend(str.split("\n.\n"))
class package_relation(object):
- __slots__ = "name", "version", "arches"
-
- _re = re.compile(r'^(\S+)(?: \(([^)]+)\))?(?: \[([^]]+)\])?$')
+ __slots__ = "name", "operator", "version", "arches"
+
+ _re = re.compile(r'^(\S+)(?: \((<<|<=|=|!=|>=|>>)\s*([^)]+)\))?(?: \[([^]]+)\])?$')
+
+ class _operator(object):
+ OP_LT = 1
+ OP_LE = 2
+ OP_EQ = 3
+ OP_NE = 4
+ OP_GE = 5
+ OP_GT = 6
+
+ operators = {
+ '<<': OP_LT,
+ '<=': OP_LE,
+ '=': OP_EQ,
+ '!=': OP_NE,
+ '>=': OP_GE,
+ '>>': OP_GT,
+ }
+ operators_neg = {
+ OP_LT: OP_GE,
+ OP_LE: OP_GT,
+ OP_EQ: OP_NE,
+ OP_NE: OP_EQ,
+ OP_GE: OP_LT,
+ OP_GT: OP_LE,
+ }
+ operators_text = dict([(b, a) for a, b in operators.iteritems()])
+
+ __slots__ = '_op',
+
+ def __init__(self, value):
+ self._op = self.operators[value]
+
+ def __neg__(self):
+ return self.__class__(self.operators_text[self.operators_neg[self._op]])
+
+ def __str__(self):
+ return self.operators_text[self._op]
def __init__(self, value = None):
if value is not None:
self.parse(value)
else:
self.name = None
+ self.operator = None
self.version = None
self.arches = []
def __str__(self):
ret = [self.name]
- if self.version is not None:
- ret.extend([' (', self.version, ')'])
+ if self.operator is not None and self.version is not None:
+ ret.extend([' (', str(self.operator), ' ', self.version, ')'])
if self.arches:
ret.extend([' [', ' '.join(self.arches), ']'])
return ''.join(ret)
@@ -156,9 +185,13 @@ class package_relation(object):
raise RuntimeError, "Can't parse dependency %s" % value
match = match.groups()
self.name = match[0]
- self.version = match[1]
- if match[2] is not None:
- self.arches = re.split('\s+', match[2])
+ if match[1] is not None:
+ self.operator = self._operator(match[1])
+ else:
+ self.operator = None
+ self.version = match[2]
+ if match[3] is not None:
+ self.arches = re.split('\s+', match[3])
else:
self.arches = []
@@ -252,6 +285,7 @@ class package(dict):
('Build-Depends', package_relation_list),
('Build-Depends-Indep', package_relation_list),
('Provides', package_relation_list),
+ ('Pre-Depends', package_relation_list),
('Depends', package_relation_list),
('Recommends', package_relation_list),
('Suggests', package_relation_list),
diff --git a/debian/lib/python/debian_linux/gencontrol.py b/debian/lib/python/debian_linux/gencontrol.py
index b8316dd56089..7fd2505d83d1 100644
--- a/debian/lib/python/debian_linux/gencontrol.py
+++ b/debian/lib/python/debian_linux/gencontrol.py
@@ -202,6 +202,7 @@ class gencontrol(object):
for in_item in in_groups:
item = package_relation()
item.name = self.substitute(in_item.name, vars)
+ item.operator = in_item.operator
if in_item.version is not None:
item.version = self.substitute(in_item.version, vars)
item.arches = in_item.arches
@@ -240,7 +241,7 @@ class gencontrol(object):
return {
'upstreamversion': version['linux']['upstream'],
'version': version['linux']['version'],
- 'source_upstream': version['linux']['source_upstream'],
+ 'source_upstream': version['upstream'],
'major': version['linux']['major'],
'abiname': abiname,
}
diff --git a/debian/patches/debian/dfsg/drivers-media-video-dabus.patch b/debian/patches/debian/dfsg/drivers-media-video-dabus.patch
new file mode 100644
index 000000000000..ee87cf3bfed6
--- /dev/null
+++ b/debian/patches/debian/dfsg/drivers-media-video-dabus.patch
@@ -0,0 +1,33 @@
+diff -ruN a/drivers/media/Kconfig b/drivers/media/Kconfig
+--- a/drivers/media/Kconfig 2006-09-20 03:42:06.000000000 +0000
++++ b/drivers/media/Kconfig 2007-01-05 16:43:58.000000000 +0000
+@@ -82,18 +82,4 @@
+ config VIDEO_TVEEPROM
+ tristate
+
+-config USB_DABUSB
+- tristate "DABUSB driver"
+- depends on USB
+- ---help---
+- A Digital Audio Broadcasting (DAB) Receiver for USB and Linux
+- brought to you by the DAB-Team
+- <http://wwwbode.cs.tum.edu/Par/arch/dab/>. This driver can be taken
+- as an example for URB-based bulk, control, and isochronous
+- transactions. URB's are explained in
+- <Documentation/usb/URB.txt>.
+-
+- To compile this driver as a module, choose M here: the
+- module will be called dabusb.
+-
+ endmenu
+diff -ruN a/drivers/media/video/Makefile b/drivers/media/video/Makefile
+--- a/drivers/media/video/Makefile 2006-09-20 03:42:06.000000000 +0000
++++ b/drivers/media/video/Makefile 2007-01-05 16:43:45.000000000 +0000
+@@ -76,7 +76,6 @@
+ obj-$(CONFIG_VIDEO_UPD64083) += upd64083.o
+ obj-$(CONFIG_VIDEO_CX2341X) += cx2341x.o
+
+-obj-$(CONFIG_USB_DABUSB) += dabusb.o
+ obj-$(CONFIG_USB_OV511) += ov511.o
+ obj-$(CONFIG_USB_SE401) += se401.o
+ obj-$(CONFIG_USB_STV680) += stv680.o
diff --git a/debian/patches/debian/dfsg/drivers-net-appletalk-cops.patch b/debian/patches/debian/dfsg/drivers-net-appletalk-cops.patch
new file mode 100644
index 000000000000..3c1f03f2071e
--- /dev/null
+++ b/debian/patches/debian/dfsg/drivers-net-appletalk-cops.patch
@@ -0,0 +1,45 @@
+diff -ruN a/drivers/net/appletalk/Kconfig b/drivers/net/appletalk/Kconfig
+--- a/drivers/net/appletalk/Kconfig 2006-11-29 21:57:37.000000000 +0000
++++ b/drivers/net/appletalk/Kconfig 2007-01-05 15:34:44.000000000 +0000
+@@ -49,32 +49,6 @@
+ This driver is experimental, which means that it may not work.
+ See the file <file:Documentation/networking/ltpc.txt>.
+
+-config COPS
+- tristate "COPS LocalTalk PC support"
+- depends on DEV_APPLETALK && (ISA || EISA)
+- help
+- This allows you to use COPS AppleTalk cards to connect to LocalTalk
+- networks. You also need version 1.3.3 or later of the netatalk
+- package. This driver is experimental, which means that it may not
+- work. This driver will only work if you choose "AppleTalk DDP"
+- networking support, above.
+- Please read the file <file:Documentation/networking/cops.txt>.
+-
+-config COPS_DAYNA
+- bool "Dayna firmware support"
+- depends on COPS
+- help
+- Support COPS compatible cards with Dayna style firmware (Dayna
+- DL2000/ Daynatalk/PC (half length), COPS LT-95, Farallon PhoneNET PC
+- III, Farallon PhoneNET PC II).
+-
+-config COPS_TANGENT
+- bool "Tangent firmware support"
+- depends on COPS
+- help
+- Support COPS compatible cards with Tangent style firmware (Tangent
+- ATB_II, Novell NL-1000, Daystar Digital LT-200.
+-
+ config IPDDP
+ tristate "Appletalk-IP driver support"
+ depends on DEV_APPLETALK && ATALK
+diff -ruN a/drivers/net/appletalk/Makefile b/drivers/net/appletalk/Makefile
+--- a/drivers/net/appletalk/Makefile 2006-11-29 21:57:37.000000000 +0000
++++ b/drivers/net/appletalk/Makefile 2007-01-05 15:34:11.000000000 +0000
+@@ -3,5 +3,4 @@
+ #
+
+ obj-$(CONFIG_IPDDP) += ipddp.o
+-obj-$(CONFIG_COPS) += cops.o
+ obj-$(CONFIG_LTPC) += ltpc.o
diff --git a/debian/patches/debian/dfsg/drivers-net-dgrs.patch b/debian/patches/debian/dfsg/drivers-net-dgrs.patch
new file mode 100644
index 000000000000..deea7420c34b
--- /dev/null
+++ b/debian/patches/debian/dfsg/drivers-net-dgrs.patch
@@ -0,0 +1,36 @@
+diff -ruN a/drivers/net/Kconfig b/drivers/net/Kconfig
+--- a/drivers/net/Kconfig 2006-09-20 03:42:06.000000000 +0000
++++ b/drivers/net/Kconfig 2007-01-05 16:45:01.000000000 +0000
+@@ -1430,21 +1430,6 @@
+ tristate "TOSHIBA TC35815 Ethernet support"
+ depends on NET_PCI && PCI && TOSHIBA_JMR3927
+
+-config DGRS
+- tristate "Digi Intl. RightSwitch SE-X support"
+- depends on NET_PCI && (PCI || EISA)
+- ---help---
+- This is support for the Digi International RightSwitch series of
+- PCI/EISA Ethernet switch cards. These include the SE-4 and the SE-6
+- models. If you have a network card of this type, say Y and read the
+- Ethernet-HOWTO, available from
+- <http://www.tldp.org/docs.html#howto>. More specific
+- information is contained in <file:Documentation/networking/dgrs.txt>.
+-
+- To compile this driver as a module, choose M here and read
+- <file:Documentation/networking/net-modules.txt>. The module
+- will be called dgrs.
+-
+ config EEPRO100
+ tristate "EtherExpressPro/100 support (eepro100, original Becker driver)"
+ depends on NET_PCI && PCI
+diff -ruN a/drivers/net/Makefile b/drivers/net/Makefile
+--- a/drivers/net/Makefile 2006-09-20 03:42:06.000000000 +0000
++++ b/drivers/net/Makefile 2007-01-05 16:45:01.000000000 +0000
+@@ -41,7 +41,6 @@
+
+ obj-$(CONFIG_OAKNET) += oaknet.o 8390.o
+
+-obj-$(CONFIG_DGRS) += dgrs.o
+ obj-$(CONFIG_VORTEX) += 3c59x.o
+ obj-$(CONFIG_TYPHOON) += typhoon.o
+ obj-$(CONFIG_NE2K_PCI) += ne2k-pci.o 8390.o
diff --git a/debian/patches/debian/dfsg/drivers-net-tokenring-3c359-smctr.patch b/debian/patches/debian/dfsg/drivers-net-tokenring-3c359-smctr.patch
new file mode 100644
index 000000000000..1541ca7323d2
--- /dev/null
+++ b/debian/patches/debian/dfsg/drivers-net-tokenring-3c359-smctr.patch
@@ -0,0 +1,59 @@
+diff -ruN a/drivers/net/tokenring/Kconfig b/drivers/net/tokenring/Kconfig
+--- a/drivers/net/tokenring/Kconfig 2006-11-29 21:57:37.000000000 +0000
++++ b/drivers/net/tokenring/Kconfig 2007-01-05 15:26:27.000000000 +0000
+@@ -64,24 +64,6 @@
+ To compile this driver as a module, choose M here: the module will be
+ called lanstreamer.
+
+-config 3C359
+- tristate "3Com 3C359 Token Link Velocity XL adapter support"
+- depends on TR && PCI
+- ---help---
+- This is support for the 3Com PCI Velocity XL cards, specifically
+- the 3Com 3C359, please note this is not for the 3C339 cards, you
+- should use the tms380 driver instead.
+-
+- If you have such an adapter, say Y and read the Token-Ring
+- mini-HOWTO, available from <http://www.tldp.org/docs.html#howto>.
+-
+- To compile this driver as a module, choose M here: the module will be
+- called 3c359.
+-
+- Also read the file <file:Documentation/networking/3c359.txt> or check the
+- Linux Token Ring Project site for the latest information at
+- <http://www.linuxtr.net>
+-
+ config TMS380TR
+ tristate "Generic TMS380 Token Ring ISA/PCI adapter support"
+ depends on TR && (PCI || ISA && ISA_DMA_API || MCA)
+@@ -166,21 +148,5 @@
+ To compile this driver as a module, choose M here: the module will be
+ called madgemc.
+
+-config SMCTR
+- tristate "SMC ISA/MCA adapter support"
+- depends on TR && (ISA || MCA_LEGACY) && (BROKEN || !64BIT)
+- ---help---
+- This is support for the ISA and MCA SMC Token Ring cards,
+- specifically SMC TokenCard Elite (8115T) and SMC TokenCard Elite/A
+- (8115T/A) adapters.
+-
+- If you have such an adapter and would like to use it, say Y or M and
+- read the Token-Ring mini-HOWTO, available from
+- <http://www.tldp.org/docs.html#howto> and the file
+- <file:Documentation/networking/smctr.txt>.
+-
+- To compile this driver as a module, choose M here: the module will be
+- called smctr.
+-
+ endmenu
+
+diff -ruN a/drivers/net/tokenring/Makefile b/drivers/net/tokenring/Makefile
+--- a/drivers/net/tokenring/Makefile 2006-11-29 21:57:37.000000000 +0000
++++ b/drivers/net/tokenring/Makefile 2007-01-05 15:26:04.000000000 +0000
+@@ -11,5 +11,3 @@
+ obj-$(CONFIG_PROTEON) += proteon.o
+ obj-$(CONFIG_TMSPCI) += tmspci.o
+ obj-$(CONFIG_SKISA) += skisa.o
+-obj-$(CONFIG_SMCTR) += smctr.o
+-obj-$(CONFIG_3C359) += 3c359.o
diff --git a/debian/patches/debian/dfsg/drivers-usb-misc-emi62-emi26.patch b/debian/patches/debian/dfsg/drivers-usb-misc-emi62-emi26.patch
new file mode 100644
index 000000000000..0988e136da49
--- /dev/null
+++ b/debian/patches/debian/dfsg/drivers-usb-misc-emi62-emi26.patch
@@ -0,0 +1,50 @@
+diff -ruN a/drivers/usb/misc/Kconfig b/drivers/usb/misc/Kconfig
+--- a/drivers/usb/misc/Kconfig 2006-09-20 03:42:06.000000000 +0000
++++ b/drivers/usb/misc/Kconfig 2007-01-05 17:02:19.000000000 +0000
+@@ -4,34 +4,6 @@
+ comment "USB Miscellaneous drivers"
+ depends on USB
+
+-config USB_EMI62
+- tristate "EMI 6|2m USB Audio interface support"
+- depends on USB
+- ---help---
+- This driver loads firmware to Emagic EMI 6|2m low latency USB
+- Audio and Midi interface.
+-
+- After firmware load the device is handled with standard linux
+- USB Audio driver.
+-
+- This code is also available as a module ( = code which can be
+- inserted in and removed from the running kernel whenever you want).
+- The module will be called audio. If you want to compile it as a
+- module, say M here and read <file:Documentation/kbuild/modules.txt>.
+-
+-config USB_EMI26
+- tristate "EMI 2|6 USB Audio interface support"
+- depends on USB
+- ---help---
+- This driver loads firmware to Emagic EMI 2|6 low latency USB
+- Audio interface.
+-
+- After firmware load the device is handled with standard linux
+- USB Audio driver.
+-
+- To compile this driver as a module, choose M here: the
+- module will be called emi26.
+-
+ config USB_AUERSWALD
+ tristate "USB Auerswald ISDN support (EXPERIMENTAL)"
+ depends on USB && EXPERIMENTAL
+diff -ruN a/drivers/usb/misc/Makefile b/drivers/usb/misc/Makefile
+--- a/drivers/usb/misc/Makefile 2006-09-20 03:42:06.000000000 +0000
++++ b/drivers/usb/misc/Makefile 2007-01-05 17:01:14.000000000 +0000
+@@ -6,8 +6,6 @@
+ obj-$(CONFIG_USB_AUERSWALD) += auerswald.o
+ obj-$(CONFIG_USB_CYPRESS_CY7C63)+= cypress_cy7c63.o
+ obj-$(CONFIG_USB_CYTHERM) += cytherm.o
+-obj-$(CONFIG_USB_EMI26) += emi26.o
+-obj-$(CONFIG_USB_EMI62) += emi62.o
+ obj-$(CONFIG_USB_IDMOUSE) += idmouse.o
+ obj-$(CONFIG_USB_LCD) += usblcd.o
+ obj-$(CONFIG_USB_LD) += ldusb.o
diff --git a/debian/patches/debian/dfsg/drivers-usb-serial-keyspan.patch b/debian/patches/debian/dfsg/drivers-usb-serial-keyspan.patch
new file mode 100644
index 000000000000..6c6493704178
--- /dev/null
+++ b/debian/patches/debian/dfsg/drivers-usb-serial-keyspan.patch
@@ -0,0 +1,113 @@
+diff -ruN a/drivers/usb/serial/Kconfig b/drivers/usb/serial/Kconfig
+--- a/drivers/usb/serial/Kconfig 2006-09-20 03:42:06.000000000 +0000
++++ b/drivers/usb/serial/Kconfig 2007-01-05 17:04:16.000000000 +0000
+@@ -274,98 +274,6 @@
+ To compile this driver as a module, choose M here: the
+ module will be called keyspan_pda.
+
+-config USB_SERIAL_KEYSPAN
+- tristate "USB Keyspan USA-xxx Serial Driver"
+- depends on USB_SERIAL
+- ---help---
+- Say Y here if you want to use Keyspan USB to serial converter
+- devices. This driver makes use of Keyspan's official firmware
+- and was developed with their support. You must also include
+- firmware to support your particular device(s).
+-
+- See <http://misc.nu/hugh/keyspan.html> for more information.
+-
+- To compile this driver as a module, choose M here: the
+- module will be called keyspan.
+-
+-config USB_SERIAL_KEYSPAN_MPR
+- bool "USB Keyspan MPR Firmware"
+- depends on USB_SERIAL_KEYSPAN
+- help
+- Say Y here to include firmware for the Keyspan MPR converter.
+-
+-config USB_SERIAL_KEYSPAN_USA28
+- bool "USB Keyspan USA-28 Firmware"
+- depends on USB_SERIAL_KEYSPAN
+- help
+- Say Y here to include firmware for the USA-28 converter.
+-
+-config USB_SERIAL_KEYSPAN_USA28X
+- bool "USB Keyspan USA-28X Firmware"
+- depends on USB_SERIAL_KEYSPAN
+- help
+- Say Y here to include firmware for the USA-28X converter.
+- Be sure you have a USA-28X, there are also 28XA and 28XB
+- models, the label underneath has the actual part number.
+-
+-config USB_SERIAL_KEYSPAN_USA28XA
+- bool "USB Keyspan USA-28XA Firmware"
+- depends on USB_SERIAL_KEYSPAN
+- help
+- Say Y here to include firmware for the USA-28XA converter.
+- Be sure you have a USA-28XA, there are also 28X and 28XB
+- models, the label underneath has the actual part number.
+-
+-config USB_SERIAL_KEYSPAN_USA28XB
+- bool "USB Keyspan USA-28XB Firmware"
+- depends on USB_SERIAL_KEYSPAN
+- help
+- Say Y here to include firmware for the USA-28XB converter.
+- Be sure you have a USA-28XB, there are also 28X and 28XA
+- models, the label underneath has the actual part number.
+-
+-config USB_SERIAL_KEYSPAN_USA19
+- bool "USB Keyspan USA-19 Firmware"
+- depends on USB_SERIAL_KEYSPAN
+- help
+- Say Y here to include firmware for the USA-19 converter.
+-
+-config USB_SERIAL_KEYSPAN_USA18X
+- bool "USB Keyspan USA-18X Firmware"
+- depends on USB_SERIAL_KEYSPAN
+- help
+- Say Y here to include firmware for the USA-18X converter.
+-
+-config USB_SERIAL_KEYSPAN_USA19W
+- bool "USB Keyspan USA-19W Firmware"
+- depends on USB_SERIAL_KEYSPAN
+- help
+- Say Y here to include firmware for the USA-19W converter.
+-
+-config USB_SERIAL_KEYSPAN_USA19QW
+- bool "USB Keyspan USA-19QW Firmware"
+- depends on USB_SERIAL_KEYSPAN
+- help
+- Say Y here to include firmware for the USA-19QW converter.
+-
+-config USB_SERIAL_KEYSPAN_USA19QI
+- bool "USB Keyspan USA-19QI Firmware"
+- depends on USB_SERIAL_KEYSPAN
+- help
+- Say Y here to include firmware for the USA-19QI converter.
+-
+-config USB_SERIAL_KEYSPAN_USA49W
+- bool "USB Keyspan USA-49W Firmware"
+- depends on USB_SERIAL_KEYSPAN
+- help
+- Say Y here to include firmware for the USA-49W converter.
+-
+-config USB_SERIAL_KEYSPAN_USA49WLC
+- bool "USB Keyspan USA-49WLC Firmware"
+- depends on USB_SERIAL_KEYSPAN
+- help
+- Say Y here to include firmware for the USA-49WLC converter.
+-
+ config USB_SERIAL_KLSI
+ tristate "USB KL5KUSB105 (Palmconnect) Driver (EXPERIMENTAL)"
+ depends on USB_SERIAL && EXPERIMENTAL
+diff -ruN a/drivers/usb/serial/Makefile b/drivers/usb/serial/Makefile
+--- a/drivers/usb/serial/Makefile 2006-09-20 03:42:06.000000000 +0000
++++ b/drivers/usb/serial/Makefile 2007-01-05 17:04:16.000000000 +0000
+@@ -28,7 +28,6 @@
+ obj-$(CONFIG_USB_SERIAL_IPAQ) += ipaq.o
+ obj-$(CONFIG_USB_SERIAL_IPW) += ipw.o
+ obj-$(CONFIG_USB_SERIAL_IR) += ir-usb.o
+-obj-$(CONFIG_USB_SERIAL_KEYSPAN) += keyspan.o
+ obj-$(CONFIG_USB_SERIAL_KEYSPAN_PDA) += keyspan_pda.o
+ obj-$(CONFIG_USB_SERIAL_KLSI) += kl5kusb105.o
+ obj-$(CONFIG_USB_SERIAL_KOBIL_SCT) += kobil_sct.o
diff --git a/debian/patches/debian/dfsg/files-1 b/debian/patches/debian/dfsg/files-1
new file mode 100644
index 000000000000..6e3e109be863
--- /dev/null
+++ b/debian/patches/debian/dfsg/files-1
@@ -0,0 +1,46 @@
+drivers/media/video/dabfirmware.h
+drivers/media/video/dabusb.c
+drivers/media/video/dabusb.h
+
+drivers/net/dgrs.c
+drivers/net/dgrs_es4h.h
+drivers/net/dgrs.h
+drivers/net/dgrs_ether.h
+drivers/net/dgrs_firmware.c
+drivers/net/dgrs_asstruct.h
+drivers/net/dgrs_plx9060.h
+drivers/net/dgrs_i82596.h
+drivers/net/dgrs_bcomm.h
+
+drivers/usb/misc/emi62.c
+drivers/usb/misc/emi62_fw_s.h
+drivers/usb/misc/emi62_fw_m.h
+
+drivers/usb/misc/emi26.c
+drivers/usb/misc/emi26_fw.h
+
+drivers/net/tokenring/3c359_microcode.h
+drivers/net/tokenring/3c359.h
+drivers/net/tokenring/3c359.c
+
+drivers/net/tokenring/smctr.h
+drivers/net/tokenring/smctr_firmware.h
+drivers/net/tokenring/smctr.c
+
+drivers/net/appletalk/cops.h
+drivers/net/appletalk/cops_ltdrv.h
+drivers/net/appletalk/cops.c
+drivers/net/appletalk/cops_ffdrv.h
+
+drivers/usb/serial/keyspan_usa19_fw.h
+drivers/usb/serial/keyspan_usa19qi_fw.h
+drivers/usb/serial/keyspan_usa19qw_fw.h
+drivers/usb/serial/keyspan_usa18x_fw.h
+drivers/usb/serial/keyspan_usa19w_fw.h
+drivers/usb/serial/keyspan_usa49wlc_fw.h
+drivers/usb/serial/keyspan_usa28xb_fw.h
+drivers/usb/serial/keyspan_usa28x_fw.h
+drivers/usb/serial/keyspan_usa49w_fw.h
+drivers/usb/serial/keyspan_usa28xa_fw.h
+drivers/usb/serial/keyspan_usa28_fw.h
+drivers/usb/serial/keyspan_mpr_fw.h
diff --git a/debian/patches/features/all/vserver/gen-patch b/debian/patches/features/all/vserver/gen-patch
index cff116c0c0bb..a1ad83eb1ca3 100755
--- a/debian/patches/features/all/vserver/gen-patch
+++ b/debian/patches/features/all/vserver/gen-patch
@@ -11,4 +11,4 @@ version=$(filterdiff -p 1 -i Makefile "$patch" | grep "+EXTRAVERSION" | sed -e '
file="$(dirname $0)/$version.patch"
-filterdiff -p 1 -x Makefile -x init/version.c "$patch" > "$file"
+filterdiff -p 1 -x Makefile -x init/version.c "$patch" | grep -v "^diff" > "$file"
diff --git a/debian/patches/features/all/vserver/vs2.0.2.2-rc6.patch b/debian/patches/features/all/vserver/vs2.0.2.2-rc9.patch
index d1f504e90f55..b3bac6be892f 100644
--- a/debian/patches/features/all/vserver/vs2.0.2.2-rc6.patch
+++ b/debian/patches/features/all/vserver/vs2.0.2.2-rc9.patch
@@ -1,6 +1,5 @@
-diff -NurpP --minimal linux-2.6.18.2/arch/alpha/Kconfig linux-2.6.18.2-vs2.0.2.2-rc6/arch/alpha/Kconfig
---- linux-2.6.18.2/arch/alpha/Kconfig 2006-06-18 04:51:38 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/alpha/Kconfig 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/alpha/Kconfig 2006-12-04 06:13:47 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/alpha/Kconfig 2006-12-10 19:44:56 +0100
@@ -632,6 +632,8 @@ source "arch/alpha/oprofile/Kconfig"
source "arch/alpha/Kconfig.debug"
@@ -10,9 +9,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/alpha/Kconfig linux-2.6.18.2-vs2.0.2.2
source "security/Kconfig"
source "crypto/Kconfig"
-diff -NurpP --minimal linux-2.6.18.2/arch/alpha/kernel/entry.S linux-2.6.18.2-vs2.0.2.2-rc6/arch/alpha/kernel/entry.S
---- linux-2.6.18.2/arch/alpha/kernel/entry.S 2006-09-20 16:57:57 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/alpha/kernel/entry.S 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/alpha/kernel/entry.S 2006-09-20 16:57:57 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/alpha/kernel/entry.S 2006-09-20 17:01:44 +0200
@@ -873,24 +873,15 @@ sys_getxgid:
.globl sys_getxpid
.ent sys_getxpid
@@ -45,9 +43,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/alpha/kernel/entry.S linux-2.6.18.2-vs
ret
.end sys_getxpid
-diff -NurpP --minimal linux-2.6.18.2/arch/alpha/kernel/osf_sys.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/alpha/kernel/osf_sys.c
---- linux-2.6.18.2/arch/alpha/kernel/osf_sys.c 2006-09-20 16:57:57 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/alpha/kernel/osf_sys.c 2006-09-20 20:11:48 +0200
+--- linux-2.6.18.5/arch/alpha/kernel/osf_sys.c 2006-09-20 16:57:57 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/alpha/kernel/osf_sys.c 2006-09-20 20:11:48 +0200
@@ -38,6 +38,7 @@
#include <linux/uio.h>
#include <linux/vfs.h>
@@ -147,9 +144,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/alpha/kernel/osf_sys.c linux-2.6.18.2-
len = strlen(res)+1;
if (len > count)
len = count;
-diff -NurpP --minimal linux-2.6.18.2/arch/alpha/kernel/ptrace.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/alpha/kernel/ptrace.c
---- linux-2.6.18.2/arch/alpha/kernel/ptrace.c 2006-04-09 13:49:39 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/alpha/kernel/ptrace.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/alpha/kernel/ptrace.c 2006-04-09 13:49:39 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/alpha/kernel/ptrace.c 2006-09-20 17:01:44 +0200
@@ -283,6 +283,11 @@ do_sys_ptrace(long request, long pid, lo
goto out_notsk;
}
@@ -162,9 +158,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/alpha/kernel/ptrace.c linux-2.6.18.2-v
if (request == PTRACE_ATTACH) {
ret = ptrace_attach(child);
goto out;
-diff -NurpP --minimal linux-2.6.18.2/arch/alpha/kernel/systbls.S linux-2.6.18.2-vs2.0.2.2-rc6/arch/alpha/kernel/systbls.S
---- linux-2.6.18.2/arch/alpha/kernel/systbls.S 2005-08-29 22:24:49 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/alpha/kernel/systbls.S 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/alpha/kernel/systbls.S 2005-08-29 22:24:49 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/alpha/kernel/systbls.S 2006-09-20 17:01:44 +0200
@@ -447,7 +447,7 @@ sys_call_table:
.quad sys_stat64 /* 425 */
.quad sys_lstat64
@@ -174,9 +169,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/alpha/kernel/systbls.S linux-2.6.18.2-
.quad sys_ni_syscall /* sys_mbind */
.quad sys_ni_syscall /* sys_get_mempolicy */
.quad sys_ni_syscall /* sys_set_mempolicy */
-diff -NurpP --minimal linux-2.6.18.2/arch/alpha/mm/init.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/alpha/mm/init.c
---- linux-2.6.18.2/arch/alpha/mm/init.c 2006-09-20 16:57:57 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/alpha/mm/init.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/alpha/mm/init.c 2006-09-20 16:57:57 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/alpha/mm/init.c 2006-09-20 17:01:44 +0200
@@ -20,6 +20,7 @@
#include <linux/init.h>
#include <linux/bootmem.h> /* max_low_pfn */
@@ -185,9 +179,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/alpha/mm/init.c linux-2.6.18.2-vs2.0.2
#include <asm/system.h>
#include <asm/uaccess.h>
-diff -NurpP --minimal linux-2.6.18.2/arch/arm/Kconfig linux-2.6.18.2-vs2.0.2.2-rc6/arch/arm/Kconfig
---- linux-2.6.18.2/arch/arm/Kconfig 2006-09-20 16:57:57 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/arm/Kconfig 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/arm/Kconfig 2006-09-20 16:57:57 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/arm/Kconfig 2006-09-20 17:01:44 +0200
@@ -907,6 +907,8 @@ source "arch/arm/oprofile/Kconfig"
source "arch/arm/Kconfig.debug"
@@ -197,9 +190,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/arm/Kconfig linux-2.6.18.2-vs2.0.2.2-r
source "security/Kconfig"
source "crypto/Kconfig"
-diff -NurpP --minimal linux-2.6.18.2/arch/arm/kernel/calls.S linux-2.6.18.2-vs2.0.2.2-rc6/arch/arm/kernel/calls.S
---- linux-2.6.18.2/arch/arm/kernel/calls.S 2006-02-18 14:39:40 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/arm/kernel/calls.S 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/arm/kernel/calls.S 2006-02-18 14:39:40 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/arm/kernel/calls.S 2006-09-20 17:01:44 +0200
@@ -322,7 +322,7 @@
/* 310 */ CALL(sys_request_key)
CALL(sys_keyctl)
@@ -209,18 +201,9 @@ diff -NurpP --minimal linux-2.6.18.2/arch/arm/kernel/calls.S linux-2.6.18.2-vs2.
CALL(sys_ioprio_set)
/* 315 */ CALL(sys_ioprio_get)
CALL(sys_inotify_init)
-diff -NurpP --minimal linux-2.6.18.2/arch/arm/kernel/irq.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/arm/kernel/irq.c
---- linux-2.6.18.2/arch/arm/kernel/irq.c 2006-09-20 16:57:57 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/arm/kernel/irq.c 2006-11-07 18:55:37 +0100
-@@ -37,6 +37,7 @@
- #include <linux/list.h>
- #include <linux/kallsyms.h>
- #include <linux/proc_fs.h>
-+#include <linux/vs_context.h>
-
- #include <asm/system.h>
- #include <asm/mach/time.h>
-@@ -112,7 +113,8 @@ static struct irq_desc bad_irq_desc = {
+--- linux-2.6.18.5/arch/arm/kernel/irq.c 2006-09-20 16:57:57 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/arm/kernel/irq.c 2006-12-10 02:04:47 +0100
+@@ -112,7 +112,8 @@ static struct irq_desc bad_irq_desc = {
asmlinkage void asm_do_IRQ(unsigned int irq, struct pt_regs *regs)
{
struct irqdesc *desc = irq_desc + irq;
@@ -230,24 +213,21 @@ diff -NurpP --minimal linux-2.6.18.2/arch/arm/kernel/irq.c linux-2.6.18.2-vs2.0.
/*
* Some hardware gives randomly wrong interrupts. Rather
* than crashing, do something sensible.
-@@ -121,12 +123,12 @@ asmlinkage void asm_do_IRQ(unsigned int
+@@ -121,12 +122,10 @@ asmlinkage void asm_do_IRQ(unsigned int
desc = &bad_irq_desc;
irq_enter();
-
-+ __enter_vx_admin(&vxis);
desc_handle_irq(irq, desc, regs);
/* AT91 specific workaround */
irq_finish(irq);
-
-+ __leave_vx_admin(&vxis);
irq_exit();
}
-diff -NurpP --minimal linux-2.6.18.2/arch/arm26/Kconfig linux-2.6.18.2-vs2.0.2.2-rc6/arch/arm26/Kconfig
---- linux-2.6.18.2/arch/arm26/Kconfig 2006-09-20 16:57:57 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/arm26/Kconfig 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/arm26/Kconfig 2006-09-20 16:57:57 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/arm26/Kconfig 2006-09-20 17:01:44 +0200
@@ -234,6 +234,8 @@ source "drivers/usb/Kconfig"
source "arch/arm26/Kconfig.debug"
@@ -257,9 +237,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/arm26/Kconfig linux-2.6.18.2-vs2.0.2.2
source "security/Kconfig"
source "crypto/Kconfig"
-diff -NurpP --minimal linux-2.6.18.2/arch/arm26/kernel/calls.S linux-2.6.18.2-vs2.0.2.2-rc6/arch/arm26/kernel/calls.S
---- linux-2.6.18.2/arch/arm26/kernel/calls.S 2005-03-02 12:38:19 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/arm26/kernel/calls.S 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/arm26/kernel/calls.S 2005-03-02 12:38:19 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/arm26/kernel/calls.S 2006-09-20 17:01:44 +0200
@@ -257,6 +257,11 @@ __syscall_start:
.long sys_lremovexattr
.long sys_fremovexattr
@@ -272,38 +251,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/arm26/kernel/calls.S linux-2.6.18.2-vs
__syscall_end:
.rept NR_syscalls - (__syscall_end - __syscall_start) / 4
-diff -NurpP --minimal linux-2.6.18.2/arch/arm26/kernel/irq.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/arm26/kernel/irq.c
---- linux-2.6.18.2/arch/arm26/kernel/irq.c 2006-09-20 16:57:57 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/arm26/kernel/irq.c 2006-11-07 19:00:31 +0100
-@@ -31,6 +31,7 @@
- #include <linux/init.h>
- #include <linux/seq_file.h>
- #include <linux/errno.h>
-+#include <linux/vs_context.h>
-
- #include <asm/irq.h>
- #include <asm/system.h>
-@@ -331,6 +332,7 @@ do_level_IRQ(unsigned int irq, struct ir
- asmlinkage void asm_do_IRQ(int irq, struct pt_regs *regs)
- {
- struct irqdesc *desc = irq_desc + irq;
-+ struct vx_info_save vxis;
-
- /*
- * Some hardware gives randomly wrong interrupts. Rather
-@@ -341,7 +343,9 @@ asmlinkage void asm_do_IRQ(int irq, stru
-
- irq_enter();
- spin_lock(&irq_controller_lock);
-+ __enter_vx_admin(&vxis);
- desc->handle(irq, desc, regs);
-+ __leave_vx_admin(&vxis);
- spin_unlock(&irq_controller_lock);
- irq_exit();
- }
-diff -NurpP --minimal linux-2.6.18.2/arch/arm26/kernel/traps.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/arm26/kernel/traps.c
---- linux-2.6.18.2/arch/arm26/kernel/traps.c 2006-09-20 16:57:57 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/arm26/kernel/traps.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/arm26/kernel/traps.c 2006-09-20 16:57:57 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/arm26/kernel/traps.c 2006-09-20 17:01:44 +0200
@@ -185,8 +185,9 @@ NORET_TYPE void die(const char *str, str
printk("Internal error: %s: %x\n", str, err);
printk("CPU: %d\n", smp_processor_id());
@@ -316,9 +265,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/arm26/kernel/traps.c linux-2.6.18.2-vs
if (!user_mode(regs) || in_interrupt()) {
__dump_stack(tsk, (unsigned long)(regs + 1));
-diff -NurpP --minimal linux-2.6.18.2/arch/cris/Kconfig linux-2.6.18.2-vs2.0.2.2-rc6/arch/cris/Kconfig
---- linux-2.6.18.2/arch/cris/Kconfig 2006-09-20 16:57:57 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/cris/Kconfig 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/cris/Kconfig 2006-09-20 16:57:57 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/cris/Kconfig 2006-09-20 17:01:44 +0200
@@ -185,6 +185,8 @@ source "drivers/usb/Kconfig"
source "arch/cris/Kconfig.debug"
@@ -328,9 +276,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/cris/Kconfig linux-2.6.18.2-vs2.0.2.2-
source "security/Kconfig"
source "crypto/Kconfig"
-diff -NurpP --minimal linux-2.6.18.2/arch/cris/kernel/irq.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/cris/kernel/irq.c
---- linux-2.6.18.2/arch/cris/kernel/irq.c 2006-09-20 16:57:57 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/cris/kernel/irq.c 2006-11-07 18:59:56 +0100
+--- linux-2.6.18.5/arch/cris/kernel/irq.c 2006-09-20 16:57:57 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/cris/kernel/irq.c 2006-11-07 18:59:56 +0100
@@ -92,6 +92,7 @@ skip:
asmlinkage void do_IRQ(int irq, struct pt_regs * regs)
{
@@ -339,39 +286,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/cris/kernel/irq.c linux-2.6.18.2-vs2.0
irq_enter();
sp = rdsp();
if (unlikely((sp & (PAGE_SIZE - 1)) < (PAGE_SIZE/8))) {
-diff -NurpP --minimal linux-2.6.18.2/arch/frv/kernel/irq.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/frv/kernel/irq.c
---- linux-2.6.18.2/arch/frv/kernel/irq.c 2006-09-20 16:57:57 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/frv/kernel/irq.c 2006-10-17 02:35:27 +0200
-@@ -32,6 +32,7 @@
- #include <linux/proc_fs.h>
- #include <linux/seq_file.h>
- #include <linux/module.h>
-+#include <linux/vs_context.h>
-
- #include <asm/atomic.h>
- #include <asm/io.h>
-@@ -282,6 +283,7 @@ EXPORT_SYMBOL(enable_irq);
- asmlinkage void do_IRQ(void)
- {
- struct irq_source *source;
-+ struct vx_info_save vxis;
- int level, cpu;
-
- irq_enter();
-@@ -298,8 +300,10 @@ asmlinkage void do_IRQ(void)
-
- kstat_this_cpu.irqs[level]++;
-
-+ __enter_vx_admin(&vxis);
- for (source = frv_irq_levels[level].sources; source; source = source->next)
- source->doirq(source);
-+ __leave_vx_admin(&vxis);
-
- __clr_MASK(level);
-
-diff -NurpP --minimal linux-2.6.18.2/arch/h8300/Kconfig linux-2.6.18.2-vs2.0.2.2-rc6/arch/h8300/Kconfig
---- linux-2.6.18.2/arch/h8300/Kconfig 2006-06-18 04:51:49 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/h8300/Kconfig 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/h8300/Kconfig 2006-06-18 04:51:49 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/h8300/Kconfig 2006-09-20 17:01:44 +0200
@@ -199,6 +199,8 @@ source "fs/Kconfig"
source "arch/h8300/Kconfig.debug"
@@ -381,71 +297,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/h8300/Kconfig linux-2.6.18.2-vs2.0.2.2
source "security/Kconfig"
source "crypto/Kconfig"
-diff -NurpP --minimal linux-2.6.18.2/arch/h8300/kernel/ints.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/h8300/kernel/ints.c
---- linux-2.6.18.2/arch/h8300/kernel/ints.c 2006-09-20 16:57:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/h8300/kernel/ints.c 2006-11-07 19:03:38 +0100
-@@ -23,6 +23,7 @@
- #include <linux/random.h>
- #include <linux/bootmem.h>
- #include <linux/hardirq.h>
-+#include <linux/vs_context.h>
-
- #include <asm/system.h>
- #include <asm/irq.h>
-@@ -216,7 +217,10 @@ void disable_irq(unsigned int irq)
-
- asmlinkage void process_int(int irq, struct pt_regs *fp)
- {
-+ struct vx_info_save vxis;
-+
- irq_enter();
-+ __enter_vx_admin(&vxis);
- h8300_clear_isr(irq);
- if (irq >= NR_TRAPS && irq < NR_IRQS) {
- if (irq_list[irq]) {
-@@ -228,6 +232,7 @@ asmlinkage void process_int(int irq, str
- } else {
- BUG();
- }
-+ __leave_vx_admin(&vxis);
- irq_exit();
- }
-
-diff -NurpP --minimal linux-2.6.18.2/arch/h8300/platform/h8s/ints.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/h8300/platform/h8s/ints.c
---- linux-2.6.18.2/arch/h8300/platform/h8s/ints.c 2006-09-20 16:57:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/h8300/platform/h8s/ints.c 2006-11-07 19:04:16 +0100
-@@ -23,6 +23,7 @@
- #include <linux/bootmem.h>
- #include <linux/random.h>
- #include <linux/hardirq.h>
-+#include <linux/vs_context.h>
-
- #include <asm/system.h>
- #include <asm/irq.h>
-@@ -261,9 +262,12 @@ void disable_irq(unsigned int irq)
-
- asmlinkage void process_int(unsigned long vec, struct pt_regs *fp)
- {
-+ struct vx_info_save vxis;
-+
- irq_enter();
- /* ISR clear */
- /* compatible i386 */
-+ __enter_vx_admin(&vxis);
- if (vec >= EXT_IRQ0 && vec <= EXT_IRQ15)
- *(volatile unsigned short *)ISR &= ~(1 << (vec - EXT_IRQ0));
- if (vec < NR_IRQS) {
-@@ -276,6 +280,7 @@ asmlinkage void process_int(unsigned lon
- } else {
- BUG();
- }
-+ __leave_vx_admin(&vxis);
- irq_exit();
- }
-
-diff -NurpP --minimal linux-2.6.18.2/arch/i386/Kconfig linux-2.6.18.2-vs2.0.2.2-rc6/arch/i386/Kconfig
---- linux-2.6.18.2/arch/i386/Kconfig 2006-09-20 16:57:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/i386/Kconfig 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/i386/Kconfig 2006-09-20 16:57:58 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/i386/Kconfig 2006-09-20 17:01:44 +0200
@@ -1142,6 +1142,8 @@ endmenu
source "arch/i386/Kconfig.debug"
@@ -455,45 +308,18 @@ diff -NurpP --minimal linux-2.6.18.2/arch/i386/Kconfig linux-2.6.18.2-vs2.0.2.2-
source "security/Kconfig"
source "crypto/Kconfig"
-diff -NurpP --minimal linux-2.6.18.2/arch/i386/kernel/irq.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/i386/kernel/irq.c
---- linux-2.6.18.2/arch/i386/kernel/irq.c 2006-09-20 16:57:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/i386/kernel/irq.c 2006-10-17 02:35:27 +0200
-@@ -18,6 +18,7 @@
- #include <linux/notifier.h>
- #include <linux/cpu.h>
- #include <linux/delay.h>
-+#include <linux/vs_context.h>
-
- DEFINE_PER_CPU(irq_cpustat_t, irq_stat) ____cacheline_internodealigned_in_smp;
- EXPORT_PER_CPU_SYMBOL(irq_stat);
-@@ -55,6 +56,7 @@ fastcall unsigned int do_IRQ(struct pt_r
- {
- /* high bit used in ret_from_ code */
- int irq = ~regs->orig_eax;
-+ struct vx_info_save vxis;
- #ifdef CONFIG_4KSTACKS
- union irq_ctx *curctx, *irqctx;
- u32 *isp;
-@@ -81,7 +83,7 @@ fastcall unsigned int do_IRQ(struct pt_r
+--- linux-2.6.18.5/arch/i386/kernel/irq.c 2006-09-20 16:57:58 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/i386/kernel/irq.c 2006-12-10 02:04:47 +0100
+@@ -81,7 +81,6 @@ fastcall unsigned int do_IRQ(struct pt_r
}
}
#endif
-
-+ __enter_vx_admin(&vxis);
#ifdef CONFIG_4KSTACKS
curctx = (union irq_ctx *) current_thread_info();
-@@ -120,6 +122,7 @@ fastcall unsigned int do_IRQ(struct pt_r
- } else
- #endif
- __do_IRQ(irq, regs);
-+ __leave_vx_admin(&vxis);
-
- irq_exit();
-
-diff -NurpP --minimal linux-2.6.18.2/arch/i386/kernel/sys_i386.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/i386/kernel/sys_i386.c
---- linux-2.6.18.2/arch/i386/kernel/sys_i386.c 2006-06-18 04:51:53 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/i386/kernel/sys_i386.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/i386/kernel/sys_i386.c 2006-06-18 04:51:53 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/i386/kernel/sys_i386.c 2006-09-20 17:01:44 +0200
@@ -19,6 +19,7 @@
#include <linux/mman.h>
#include <linux/file.h>
@@ -541,9 +367,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/i386/kernel/sys_i386.c linux-2.6.18.2-
error |= __put_user(0,name->machine+__OLD_UTS_LEN);
up_read(&uts_sem);
-diff -NurpP --minimal linux-2.6.18.2/arch/i386/kernel/syscall_table.S linux-2.6.18.2-vs2.0.2.2-rc6/arch/i386/kernel/syscall_table.S
---- linux-2.6.18.2/arch/i386/kernel/syscall_table.S 2006-09-20 16:57:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/i386/kernel/syscall_table.S 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/i386/kernel/syscall_table.S 2006-09-20 16:57:58 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/i386/kernel/syscall_table.S 2006-09-20 17:01:44 +0200
@@ -272,7 +272,7 @@ ENTRY(sys_call_table)
.long sys_tgkill /* 270 */
.long sys_utimes
@@ -553,9 +378,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/i386/kernel/syscall_table.S linux-2.6.
.long sys_mbind
.long sys_get_mempolicy
.long sys_set_mempolicy
-diff -NurpP --minimal linux-2.6.18.2/arch/i386/kernel/sysenter.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/i386/kernel/sysenter.c
---- linux-2.6.18.2/arch/i386/kernel/sysenter.c 2006-09-20 16:57:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/i386/kernel/sysenter.c 2006-09-20 21:46:26 +0200
+--- linux-2.6.18.5/arch/i386/kernel/sysenter.c 2006-09-20 16:57:58 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/i386/kernel/sysenter.c 2006-09-20 21:46:26 +0200
@@ -17,6 +17,7 @@
#include <linux/elf.h>
#include <linux/mm.h>
@@ -573,9 +397,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/i386/kernel/sysenter.c linux-2.6.18.2-
up_fail:
up_write(&mm->mmap_sem);
return ret;
-diff -NurpP --minimal linux-2.6.18.2/arch/i386/kernel/traps.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/i386/kernel/traps.c
---- linux-2.6.18.2/arch/i386/kernel/traps.c 2006-09-20 16:57:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/i386/kernel/traps.c 2006-09-20 20:10:14 +0200
+--- linux-2.6.18.5/arch/i386/kernel/traps.c 2006-09-20 16:57:58 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/i386/kernel/traps.c 2006-09-20 20:10:14 +0200
@@ -53,6 +53,7 @@
#include <asm/kdebug.h>
@@ -616,9 +439,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/i386/kernel/traps.c linux-2.6.18.2-vs2
/* Executive summary in case the oops scrolled away */
esp = (unsigned long) (&regs->esp);
savesegment(ss, ss);
-diff -NurpP --minimal linux-2.6.18.2/arch/ia64/Kconfig linux-2.6.18.2-vs2.0.2.2-rc6/arch/ia64/Kconfig
---- linux-2.6.18.2/arch/ia64/Kconfig 2006-09-20 16:57:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/ia64/Kconfig 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/ia64/Kconfig 2006-09-20 16:57:58 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/ia64/Kconfig 2006-09-20 17:01:44 +0200
@@ -525,6 +525,8 @@ endmenu
source "arch/ia64/Kconfig.debug"
@@ -628,9 +450,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/ia64/Kconfig linux-2.6.18.2-vs2.0.2.2-
source "security/Kconfig"
source "crypto/Kconfig"
-diff -NurpP --minimal linux-2.6.18.2/arch/ia64/ia32/binfmt_elf32.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/ia64/ia32/binfmt_elf32.c
---- linux-2.6.18.2/arch/ia64/ia32/binfmt_elf32.c 2006-09-20 16:57:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/ia64/ia32/binfmt_elf32.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/ia64/ia32/binfmt_elf32.c 2006-09-20 16:57:58 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/ia64/ia32/binfmt_elf32.c 2006-09-20 17:01:44 +0200
@@ -238,7 +238,8 @@ ia32_setup_arg_pages (struct linux_binpr
kmem_cache_free(vm_area_cachep, mpnt);
return ret;
@@ -641,9 +462,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/ia64/ia32/binfmt_elf32.c linux-2.6.18.
}
for (i = 0 ; i < MAX_ARG_PAGES ; i++) {
-diff -NurpP --minimal linux-2.6.18.2/arch/ia64/ia32/ia32_entry.S linux-2.6.18.2-vs2.0.2.2-rc6/arch/ia64/ia32/ia32_entry.S
---- linux-2.6.18.2/arch/ia64/ia32/ia32_entry.S 2006-06-18 04:51:55 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/ia64/ia32/ia32_entry.S 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/ia64/ia32/ia32_entry.S 2006-06-18 04:51:55 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/ia64/ia32/ia32_entry.S 2006-09-20 17:01:44 +0200
@@ -483,7 +483,7 @@ ia32_syscall_table:
data8 sys_tgkill /* 270 */
data8 compat_sys_utimes
@@ -653,9 +473,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/ia64/ia32/ia32_entry.S linux-2.6.18.2-
data8 sys_ni_syscall
data8 sys_ni_syscall /* 275 */
data8 sys_ni_syscall
-diff -NurpP --minimal linux-2.6.18.2/arch/ia64/kernel/entry.S linux-2.6.18.2-vs2.0.2.2-rc6/arch/ia64/kernel/entry.S
---- linux-2.6.18.2/arch/ia64/kernel/entry.S 2006-09-20 16:57:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/ia64/kernel/entry.S 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/ia64/kernel/entry.S 2006-09-20 16:57:58 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/ia64/kernel/entry.S 2006-09-20 17:01:44 +0200
@@ -1576,7 +1576,7 @@ sys_call_table:
data8 sys_mq_notify
data8 sys_mq_getsetattr
@@ -665,9 +484,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/ia64/kernel/entry.S linux-2.6.18.2-vs2
data8 sys_waitid // 1270
data8 sys_add_key
data8 sys_request_key
-diff -NurpP --minimal linux-2.6.18.2/arch/ia64/kernel/perfmon.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/ia64/kernel/perfmon.c
---- linux-2.6.18.2/arch/ia64/kernel/perfmon.c 2006-09-20 16:57:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/ia64/kernel/perfmon.c 2006-10-18 01:19:40 +0200
+--- linux-2.6.18.5/arch/ia64/kernel/perfmon.c 2006-09-20 16:57:58 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/ia64/kernel/perfmon.c 2006-10-18 01:19:40 +0200
@@ -40,6 +40,7 @@
#include <linux/capability.h>
#include <linux/rcupdate.h>
@@ -685,9 +503,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/ia64/kernel/perfmon.c linux-2.6.18.2-v
vm_stat_account(vma->vm_mm, vma->vm_flags, vma->vm_file,
vma_pages(vma));
up_write(&task->mm->mmap_sem);
-diff -NurpP --minimal linux-2.6.18.2/arch/ia64/kernel/ptrace.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/ia64/kernel/ptrace.c
---- linux-2.6.18.2/arch/ia64/kernel/ptrace.c 2006-09-20 16:57:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/ia64/kernel/ptrace.c 2006-10-18 01:19:40 +0200
+--- linux-2.6.18.5/arch/ia64/kernel/ptrace.c 2006-09-20 16:57:58 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/ia64/kernel/ptrace.c 2006-10-18 01:19:40 +0200
@@ -1442,6 +1442,9 @@ sys_ptrace (long request, pid_t pid, uns
read_unlock(&tasklist_lock);
if (!child)
@@ -698,9 +515,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/ia64/kernel/ptrace.c linux-2.6.18.2-vs
ret = -EPERM;
if (pid == 1) /* no messing around with init! */
goto out_tsk;
-diff -NurpP --minimal linux-2.6.18.2/arch/ia64/mm/fault.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/ia64/mm/fault.c
---- linux-2.6.18.2/arch/ia64/mm/fault.c 2006-09-20 16:57:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/ia64/mm/fault.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/ia64/mm/fault.c 2006-09-20 16:57:58 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/ia64/mm/fault.c 2006-09-20 17:01:44 +0200
@@ -10,6 +10,7 @@
#include <linux/smp_lock.h>
#include <linux/interrupt.h>
@@ -709,9 +525,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/ia64/mm/fault.c linux-2.6.18.2-vs2.0.2
#include <asm/pgtable.h>
#include <asm/processor.h>
-diff -NurpP --minimal linux-2.6.18.2/arch/ia64/sn/kernel/xpc_main.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/ia64/sn/kernel/xpc_main.c
---- linux-2.6.18.2/arch/ia64/sn/kernel/xpc_main.c 2006-09-20 16:57:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/ia64/sn/kernel/xpc_main.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/ia64/sn/kernel/xpc_main.c 2006-09-20 16:57:58 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/ia64/sn/kernel/xpc_main.c 2006-09-20 17:01:44 +0200
@@ -108,6 +108,7 @@ static ctl_table xpc_sys_xpc_hb_dir[] =
0644,
NULL,
@@ -736,9 +551,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/ia64/sn/kernel/xpc_main.c linux-2.6.18
&sysctl_intvec,
NULL,
&xpc_disengage_request_min_timelimit,
-diff -NurpP --minimal linux-2.6.18.2/arch/m32r/kernel/sys_m32r.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/m32r/kernel/sys_m32r.c
---- linux-2.6.18.2/arch/m32r/kernel/sys_m32r.c 2006-09-20 16:57:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/m32r/kernel/sys_m32r.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/m32r/kernel/sys_m32r.c 2006-09-20 16:57:58 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/m32r/kernel/sys_m32r.c 2006-09-20 17:01:44 +0200
@@ -20,6 +20,7 @@
#include <linux/mman.h>
#include <linux/file.h>
@@ -756,9 +570,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/m32r/kernel/sys_m32r.c linux-2.6.18.2-
up_read(&uts_sem);
return err?-EFAULT:0;
}
-diff -NurpP --minimal linux-2.6.18.2/arch/m68k/Kconfig linux-2.6.18.2-vs2.0.2.2-rc6/arch/m68k/Kconfig
---- linux-2.6.18.2/arch/m68k/Kconfig 2006-06-18 04:51:57 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/m68k/Kconfig 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/m68k/Kconfig 2006-06-18 04:51:57 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/m68k/Kconfig 2006-09-20 17:01:44 +0200
@@ -654,6 +654,8 @@ source "fs/Kconfig"
source "arch/m68k/Kconfig.debug"
@@ -768,9 +581,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/m68k/Kconfig linux-2.6.18.2-vs2.0.2.2-
source "security/Kconfig"
source "crypto/Kconfig"
-diff -NurpP --minimal linux-2.6.18.2/arch/m68k/kernel/ptrace.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/m68k/kernel/ptrace.c
---- linux-2.6.18.2/arch/m68k/kernel/ptrace.c 2006-09-20 16:57:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/m68k/kernel/ptrace.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/m68k/kernel/ptrace.c 2006-09-20 16:57:58 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/m68k/kernel/ptrace.c 2006-09-20 17:01:44 +0200
@@ -279,6 +279,8 @@ long arch_ptrace(struct task_struct *chi
ret = ptrace_request(child, request, addr, data);
break;
@@ -780,9 +592,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/m68k/kernel/ptrace.c linux-2.6.18.2-vs
return ret;
out_eio:
-diff -NurpP --minimal linux-2.6.18.2/arch/m68knommu/Kconfig linux-2.6.18.2-vs2.0.2.2-rc6/arch/m68knommu/Kconfig
---- linux-2.6.18.2/arch/m68knommu/Kconfig 2006-09-20 16:57:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/m68knommu/Kconfig 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/m68knommu/Kconfig 2006-09-20 16:57:58 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/m68knommu/Kconfig 2006-09-20 17:01:44 +0200
@@ -663,6 +663,8 @@ source "fs/Kconfig"
source "arch/m68knommu/Kconfig.debug"
@@ -792,9 +603,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/m68knommu/Kconfig linux-2.6.18.2-vs2.0
source "security/Kconfig"
source "crypto/Kconfig"
-diff -NurpP --minimal linux-2.6.18.2/arch/mips/Kconfig linux-2.6.18.2-vs2.0.2.2-rc6/arch/mips/Kconfig
---- linux-2.6.18.2/arch/mips/Kconfig 2006-09-20 16:57:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/mips/Kconfig 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/mips/Kconfig 2006-09-20 16:57:58 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/mips/Kconfig 2006-09-20 17:01:44 +0200
@@ -2057,6 +2057,8 @@ source "arch/mips/oprofile/Kconfig"
source "arch/mips/Kconfig.debug"
@@ -804,9 +614,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/mips/Kconfig linux-2.6.18.2-vs2.0.2.2-
source "security/Kconfig"
source "crypto/Kconfig"
-diff -NurpP --minimal linux-2.6.18.2/arch/mips/kernel/linux32.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/mips/kernel/linux32.c
---- linux-2.6.18.2/arch/mips/kernel/linux32.c 2006-09-20 16:57:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/mips/kernel/linux32.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/mips/kernel/linux32.c 2006-09-20 16:57:58 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/mips/kernel/linux32.c 2006-09-20 17:01:44 +0200
@@ -35,6 +35,7 @@
#include <linux/security.h>
#include <linux/compat.h>
@@ -824,9 +633,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/mips/kernel/linux32.c linux-2.6.18.2-v
ret = -EFAULT;
up_read(&uts_sem);
-diff -NurpP --minimal linux-2.6.18.2/arch/mips/kernel/ptrace.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/mips/kernel/ptrace.c
---- linux-2.6.18.2/arch/mips/kernel/ptrace.c 2006-09-20 16:57:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/mips/kernel/ptrace.c 2006-11-06 05:10:07 +0100
+--- linux-2.6.18.5/arch/mips/kernel/ptrace.c 2006-09-20 16:57:58 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/mips/kernel/ptrace.c 2006-11-06 05:10:07 +0100
@@ -171,6 +171,9 @@ long arch_ptrace(struct task_struct *chi
{
int ret;
@@ -837,9 +645,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/mips/kernel/ptrace.c linux-2.6.18.2-vs
switch (request) {
/* when I and D space are separate, these will need to be fixed. */
case PTRACE_PEEKTEXT: /* read word at location addr. */
-diff -NurpP --minimal linux-2.6.18.2/arch/mips/kernel/scall32-o32.S linux-2.6.18.2-vs2.0.2.2-rc6/arch/mips/kernel/scall32-o32.S
---- linux-2.6.18.2/arch/mips/kernel/scall32-o32.S 2006-09-20 16:57:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/mips/kernel/scall32-o32.S 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/mips/kernel/scall32-o32.S 2006-09-20 16:57:58 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/mips/kernel/scall32-o32.S 2006-09-20 17:01:44 +0200
@@ -630,7 +630,7 @@ einval: li v0, -EINVAL
sys sys_mq_timedreceive 5
sys sys_mq_notify 2 /* 4275 */
@@ -849,9 +656,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/mips/kernel/scall32-o32.S linux-2.6.18
sys sys_waitid 5
sys sys_ni_syscall 0 /* available, was setaltroot */
sys sys_add_key 5 /* 4280 */
-diff -NurpP --minimal linux-2.6.18.2/arch/mips/kernel/scall64-64.S linux-2.6.18.2-vs2.0.2.2-rc6/arch/mips/kernel/scall64-64.S
---- linux-2.6.18.2/arch/mips/kernel/scall64-64.S 2006-09-20 16:57:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/mips/kernel/scall64-64.S 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/mips/kernel/scall64-64.S 2006-09-20 16:57:58 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/mips/kernel/scall64-64.S 2006-09-20 17:01:44 +0200
@@ -434,7 +434,7 @@ sys_call_table:
PTR sys_mq_timedreceive
PTR sys_mq_notify
@@ -861,9 +667,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/mips/kernel/scall64-64.S linux-2.6.18.
PTR sys_waitid
PTR sys_ni_syscall /* available, was setaltroot */
PTR sys_add_key
-diff -NurpP --minimal linux-2.6.18.2/arch/mips/kernel/scall64-n32.S linux-2.6.18.2-vs2.0.2.2-rc6/arch/mips/kernel/scall64-n32.S
---- linux-2.6.18.2/arch/mips/kernel/scall64-n32.S 2006-09-20 16:57:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/mips/kernel/scall64-n32.S 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/mips/kernel/scall64-n32.S 2006-09-20 16:57:58 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/mips/kernel/scall64-n32.S 2006-09-20 17:01:44 +0200
@@ -360,7 +360,7 @@ EXPORT(sysn32_call_table)
PTR compat_sys_mq_timedreceive
PTR compat_sys_mq_notify
@@ -873,9 +678,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/mips/kernel/scall64-n32.S linux-2.6.18
PTR sysn32_waitid
PTR sys_ni_syscall /* available, was setaltroot */
PTR sys_add_key
-diff -NurpP --minimal linux-2.6.18.2/arch/mips/kernel/scall64-o32.S linux-2.6.18.2-vs2.0.2.2-rc6/arch/mips/kernel/scall64-o32.S
---- linux-2.6.18.2/arch/mips/kernel/scall64-o32.S 2006-09-20 16:57:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/mips/kernel/scall64-o32.S 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/mips/kernel/scall64-o32.S 2006-09-20 16:57:58 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/mips/kernel/scall64-o32.S 2006-09-20 17:01:44 +0200
@@ -482,7 +482,7 @@ sys_call_table:
PTR compat_sys_mq_timedreceive
PTR compat_sys_mq_notify /* 4275 */
@@ -885,9 +689,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/mips/kernel/scall64-o32.S linux-2.6.18
PTR sys32_waitid
PTR sys_ni_syscall /* available, was setaltroot */
PTR sys_add_key /* 4280 */
-diff -NurpP --minimal linux-2.6.18.2/arch/mips/kernel/syscall.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/mips/kernel/syscall.c
---- linux-2.6.18.2/arch/mips/kernel/syscall.c 2006-09-20 16:57:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/mips/kernel/syscall.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/mips/kernel/syscall.c 2006-09-20 16:57:58 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/mips/kernel/syscall.c 2006-09-20 17:01:44 +0200
@@ -28,6 +28,7 @@
#include <linux/shm.h>
#include <linux/compiler.h>
@@ -934,9 +737,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/mips/kernel/syscall.c linux-2.6.18.2-v
error = __put_user(0,name->machine+__OLD_UTS_LEN);
error = error ? -EFAULT : 0;
-diff -NurpP --minimal linux-2.6.18.2/arch/mips/kernel/sysirix.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/mips/kernel/sysirix.c
---- linux-2.6.18.2/arch/mips/kernel/sysirix.c 2006-09-20 16:57:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/mips/kernel/sysirix.c 2006-09-20 20:02:24 +0200
+--- linux-2.6.18.5/arch/mips/kernel/sysirix.c 2006-09-20 16:57:58 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/mips/kernel/sysirix.c 2006-09-20 20:02:24 +0200
@@ -32,6 +32,7 @@
#include <linux/security.h>
#include <linux/syscalls.h>
@@ -971,9 +773,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/mips/kernel/sysirix.c linux-2.6.18.2-v
return -EFAULT;
}
up_read(&uts_sem);
-diff -NurpP --minimal linux-2.6.18.2/arch/parisc/Kconfig linux-2.6.18.2-vs2.0.2.2-rc6/arch/parisc/Kconfig
---- linux-2.6.18.2/arch/parisc/Kconfig 2006-09-20 16:58:00 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/parisc/Kconfig 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/parisc/Kconfig 2006-09-20 16:58:00 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/parisc/Kconfig 2006-09-20 17:01:44 +0200
@@ -257,6 +257,8 @@ source "arch/parisc/oprofile/Kconfig"
source "arch/parisc/Kconfig.debug"
@@ -983,9 +784,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/parisc/Kconfig linux-2.6.18.2-vs2.0.2.
source "security/Kconfig"
source "crypto/Kconfig"
-diff -NurpP --minimal linux-2.6.18.2/arch/parisc/hpux/sys_hpux.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/parisc/hpux/sys_hpux.c
---- linux-2.6.18.2/arch/parisc/hpux/sys_hpux.c 2006-09-20 16:58:01 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/parisc/hpux/sys_hpux.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/parisc/hpux/sys_hpux.c 2006-09-20 16:58:01 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/parisc/hpux/sys_hpux.c 2006-09-20 17:01:44 +0200
@@ -33,6 +33,7 @@
#include <linux/utsname.h>
#include <linux/vfs.h>
@@ -1053,9 +853,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/parisc/hpux/sys_hpux.c linux-2.6.18.2-
goto done;
err = 0;
done:
-diff -NurpP --minimal linux-2.6.18.2/arch/parisc/kernel/sys_parisc32.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/parisc/kernel/sys_parisc32.c
---- linux-2.6.18.2/arch/parisc/kernel/sys_parisc32.c 2006-09-20 16:58:01 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/parisc/kernel/sys_parisc32.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/parisc/kernel/sys_parisc32.c 2006-09-20 16:58:01 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/parisc/kernel/sys_parisc32.c 2006-09-20 17:01:44 +0200
@@ -598,6 +598,7 @@ asmlinkage int sys32_sysinfo(struct sysi
do {
@@ -1064,9 +863,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/parisc/kernel/sys_parisc32.c linux-2.6
val.uptime = jiffies / HZ;
val.loads[0] = avenrun[0] << (SI_LOAD_SHIFT - FSHIFT);
-diff -NurpP --minimal linux-2.6.18.2/arch/parisc/kernel/syscall_table.S linux-2.6.18.2-vs2.0.2.2-rc6/arch/parisc/kernel/syscall_table.S
---- linux-2.6.18.2/arch/parisc/kernel/syscall_table.S 2006-06-18 04:52:15 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/parisc/kernel/syscall_table.S 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/parisc/kernel/syscall_table.S 2006-06-18 04:52:15 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/parisc/kernel/syscall_table.S 2006-09-20 17:01:44 +0200
@@ -368,7 +368,7 @@
ENTRY_COMP(mbind) /* 260 */
ENTRY_COMP(get_mempolicy)
@@ -1076,9 +874,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/parisc/kernel/syscall_table.S linux-2.
ENTRY_SAME(add_key)
ENTRY_SAME(request_key) /* 265 */
ENTRY_SAME(keyctl)
-diff -NurpP --minimal linux-2.6.18.2/arch/powerpc/Kconfig linux-2.6.18.2-vs2.0.2.2-rc6/arch/powerpc/Kconfig
---- linux-2.6.18.2/arch/powerpc/Kconfig 2006-11-04 19:43:22 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/powerpc/Kconfig 2006-11-06 04:47:17 +0100
+--- linux-2.6.18.5/arch/powerpc/Kconfig 2006-12-04 06:13:47 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/powerpc/Kconfig 2006-11-06 04:47:17 +0100
@@ -1078,6 +1078,8 @@ endmenu
source "arch/powerpc/Kconfig.debug"
@@ -1088,36 +885,9 @@ diff -NurpP --minimal linux-2.6.18.2/arch/powerpc/Kconfig linux-2.6.18.2-vs2.0.2
source "security/Kconfig"
config KEYS_COMPAT
-diff -NurpP --minimal linux-2.6.18.2/arch/powerpc/kernel/irq.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/powerpc/kernel/irq.c
---- linux-2.6.18.2/arch/powerpc/kernel/irq.c 2006-09-20 16:58:01 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/powerpc/kernel/irq.c 2006-11-07 19:11:37 +0100
-@@ -52,6 +52,7 @@
- #include <linux/radix-tree.h>
- #include <linux/mutex.h>
- #include <linux/bootmem.h>
-+#include <linux/vs_context.h>
-
- #include <asm/uaccess.h>
- #include <asm/system.h>
-@@ -218,6 +219,9 @@ void do_IRQ(struct pt_regs *regs)
- irq = ppc_md.get_irq(regs);
-
- if (irq != NO_IRQ && irq != NO_IRQ_IGNORE) {
-+ struct vx_info_save vxis;
-+
-+ __enter_vx_admin(&vxis);
- #ifdef CONFIG_IRQSTACKS
- /* Switch to the irq stack to handle this */
- curtp = current_thread_info();
-@@ -236,6 +240,7 @@ void do_IRQ(struct pt_regs *regs)
- } else
- #endif
- generic_handle_irq(irq, regs);
-+ __leave_vx_admin(&vxis);
- } else if (irq != NO_IRQ_IGNORE)
- /* That's not SMP safe ... but who cares ? */
- ppc_spurious_interrupts++;
-@@ -244,6 +249,7 @@ void do_IRQ(struct pt_regs *regs)
+--- linux-2.6.18.5/arch/powerpc/kernel/irq.c 2006-09-20 16:58:01 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/powerpc/kernel/irq.c 2006-12-10 02:04:47 +0100
+@@ -244,6 +244,7 @@ void do_IRQ(struct pt_regs *regs)
#ifdef CONFIG_PPC_ISERIES
if (get_lppaca()->int_dword.fields.decr_int) {
@@ -1125,9 +895,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/powerpc/kernel/irq.c linux-2.6.18.2-vs
get_lppaca()->int_dword.fields.decr_int = 0;
/* Signal a fake decrementer interrupt */
timer_interrupt(regs);
-diff -NurpP --minimal linux-2.6.18.2/arch/powerpc/kernel/process.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/powerpc/kernel/process.c
---- linux-2.6.18.2/arch/powerpc/kernel/process.c 2006-09-20 16:58:01 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/powerpc/kernel/process.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/powerpc/kernel/process.c 2006-09-20 16:58:01 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/powerpc/kernel/process.c 2006-09-20 17:01:44 +0200
@@ -431,8 +431,9 @@ void show_regs(struct pt_regs * regs)
trap = TRAP(regs);
if (trap == 0x300 || trap == 0x600)
@@ -1140,9 +909,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/powerpc/kernel/process.c linux-2.6.18.
#ifdef CONFIG_SMP
printk(" CPU: %d", smp_processor_id());
-diff -NurpP --minimal linux-2.6.18.2/arch/powerpc/kernel/syscalls.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/powerpc/kernel/syscalls.c
---- linux-2.6.18.2/arch/powerpc/kernel/syscalls.c 2006-06-18 04:52:17 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/powerpc/kernel/syscalls.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/powerpc/kernel/syscalls.c 2006-06-18 04:52:17 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/powerpc/kernel/syscalls.c 2006-09-20 17:01:44 +0200
@@ -36,6 +36,7 @@
#include <linux/file.h>
#include <linux/init.h>
@@ -1202,9 +970,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/powerpc/kernel/syscalls.c linux-2.6.18
error |= override_machine(name->machine);
up_read(&uts_sem);
-diff -NurpP --minimal linux-2.6.18.2/arch/powerpc/kernel/vdso.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/powerpc/kernel/vdso.c
---- linux-2.6.18.2/arch/powerpc/kernel/vdso.c 2006-09-20 16:58:01 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/powerpc/kernel/vdso.c 2006-09-20 19:58:24 +0200
+--- linux-2.6.18.5/arch/powerpc/kernel/vdso.c 2006-09-20 16:58:01 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/powerpc/kernel/vdso.c 2006-09-20 19:58:24 +0200
@@ -22,6 +22,7 @@
#include <linux/elf.h>
#include <linux/security.h>
@@ -1222,9 +989,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/powerpc/kernel/vdso.c linux-2.6.18.2-v
up_write(&mm->mmap_sem);
return 0;
-diff -NurpP --minimal linux-2.6.18.2/arch/ppc/Kconfig linux-2.6.18.2-vs2.0.2.2-rc6/arch/ppc/Kconfig
---- linux-2.6.18.2/arch/ppc/Kconfig 2006-09-20 16:58:01 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/ppc/Kconfig 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/ppc/Kconfig 2006-09-20 16:58:01 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/ppc/Kconfig 2006-09-20 17:01:44 +0200
@@ -1418,6 +1418,8 @@ source "arch/powerpc/oprofile/Kconfig"
source "arch/ppc/Kconfig.debug"
@@ -1234,9 +1000,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/ppc/Kconfig linux-2.6.18.2-vs2.0.2.2-r
source "security/Kconfig"
source "crypto/Kconfig"
-diff -NurpP --minimal linux-2.6.18.2/arch/s390/Kconfig linux-2.6.18.2-vs2.0.2.2-rc6/arch/s390/Kconfig
---- linux-2.6.18.2/arch/s390/Kconfig 2006-11-04 19:43:22 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/s390/Kconfig 2006-11-06 04:47:17 +0100
+--- linux-2.6.18.5/arch/s390/Kconfig 2006-12-04 06:13:47 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/s390/Kconfig 2006-11-06 04:47:17 +0100
@@ -495,6 +495,8 @@ source "arch/s390/oprofile/Kconfig"
source "arch/s390/Kconfig.debug"
@@ -1246,9 +1011,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/s390/Kconfig linux-2.6.18.2-vs2.0.2.2-
source "security/Kconfig"
source "crypto/Kconfig"
-diff -NurpP --minimal linux-2.6.18.2/arch/s390/kernel/process.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/s390/kernel/process.c
---- linux-2.6.18.2/arch/s390/kernel/process.c 2006-09-20 16:58:01 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/s390/kernel/process.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/s390/kernel/process.c 2006-09-20 16:58:01 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/s390/kernel/process.c 2006-09-20 17:01:44 +0200
@@ -165,9 +165,9 @@ void show_regs(struct pt_regs *regs)
struct task_struct *tsk = current;
@@ -1262,9 +1026,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/s390/kernel/process.c linux-2.6.18.2-v
show_registers(regs);
/* Show stack backtrace if pt_regs is from kernel mode */
-diff -NurpP --minimal linux-2.6.18.2/arch/s390/kernel/ptrace.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/s390/kernel/ptrace.c
---- linux-2.6.18.2/arch/s390/kernel/ptrace.c 2006-06-18 04:52:33 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/s390/kernel/ptrace.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/s390/kernel/ptrace.c 2006-06-18 04:52:33 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/s390/kernel/ptrace.c 2006-09-20 17:01:44 +0200
@@ -723,7 +723,13 @@ sys_ptrace(long request, long pid, long
goto out;
}
@@ -1279,9 +1042,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/s390/kernel/ptrace.c linux-2.6.18.2-vs
put_task_struct(child);
out:
unlock_kernel();
-diff -NurpP --minimal linux-2.6.18.2/arch/s390/kernel/s390_ext.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/s390/kernel/s390_ext.c
---- linux-2.6.18.2/arch/s390/kernel/s390_ext.c 2006-09-20 16:58:01 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/s390/kernel/s390_ext.c 2006-11-07 19:13:22 +0100
+--- linux-2.6.18.5/arch/s390/kernel/s390_ext.c 2006-09-20 16:58:01 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/s390/kernel/s390_ext.c 2006-12-10 02:04:47 +0100
@@ -13,6 +13,7 @@
#include <linux/errno.h>
#include <linux/kernel_stat.h>
@@ -1290,32 +1052,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/s390/kernel/s390_ext.c linux-2.6.18.2-
#include <asm/lowcore.h>
#include <asm/s390_ext.h>
-@@ -113,6 +114,7 @@ int unregister_early_external_interrupt(
- void do_extint(struct pt_regs *regs, unsigned short code)
- {
- ext_int_info_t *p;
-+ struct vx_info_save vxis;
- int index;
-
- irq_enter();
-@@ -125,12 +127,14 @@ void do_extint(struct pt_regs *regs, uns
- account_ticks(regs);
- kstat_cpu(smp_processor_id()).irqs[EXTERNAL_INTERRUPT]++;
- index = ext_hash(code);
-+ __enter_vx_admin(&vxis);
- for (p = ext_int_hash[index]; p; p = p->next) {
- if (likely(p->code == code)) {
- if (likely(p->handler))
- p->handler(regs, code);
- }
- }
-+ __leave_vx_admin(&vxis);
- irq_exit();
- }
-
-diff -NurpP --minimal linux-2.6.18.2/arch/s390/kernel/syscalls.S linux-2.6.18.2-vs2.0.2.2-rc6/arch/s390/kernel/syscalls.S
---- linux-2.6.18.2/arch/s390/kernel/syscalls.S 2006-06-18 04:52:33 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/s390/kernel/syscalls.S 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/s390/kernel/syscalls.S 2006-06-18 04:52:33 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/s390/kernel/syscalls.S 2006-09-20 17:01:44 +0200
@@ -271,7 +271,7 @@ SYSCALL(sys_clock_settime,sys_clock_sett
SYSCALL(sys_clock_gettime,sys_clock_gettime,sys32_clock_gettime_wrapper) /* 260 */
SYSCALL(sys_clock_getres,sys_clock_getres,sys32_clock_getres_wrapper)
@@ -1325,9 +1063,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/s390/kernel/syscalls.S linux-2.6.18.2-
SYSCALL(s390_fadvise64_64,sys_ni_syscall,sys32_fadvise64_64_wrapper)
SYSCALL(sys_statfs64,sys_statfs64,compat_sys_statfs64_wrapper)
SYSCALL(sys_fstatfs64,sys_fstatfs64,compat_sys_fstatfs64_wrapper)
-diff -NurpP --minimal linux-2.6.18.2/arch/sh/Kconfig linux-2.6.18.2-vs2.0.2.2-rc6/arch/sh/Kconfig
---- linux-2.6.18.2/arch/sh/Kconfig 2006-09-20 16:58:01 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/sh/Kconfig 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/sh/Kconfig 2006-09-20 16:58:01 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/sh/Kconfig 2006-09-20 17:01:44 +0200
@@ -646,6 +646,8 @@ source "arch/sh/oprofile/Kconfig"
source "arch/sh/Kconfig.debug"
@@ -1337,9 +1074,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/sh/Kconfig linux-2.6.18.2-vs2.0.2.2-rc
source "security/Kconfig"
source "crypto/Kconfig"
-diff -NurpP --minimal linux-2.6.18.2/arch/sh/kernel/kgdb_stub.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/sh/kernel/kgdb_stub.c
---- linux-2.6.18.2/arch/sh/kernel/kgdb_stub.c 2004-08-14 12:54:51 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/sh/kernel/kgdb_stub.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/sh/kernel/kgdb_stub.c 2004-08-14 12:54:51 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/sh/kernel/kgdb_stub.c 2006-09-20 17:01:44 +0200
@@ -412,7 +412,7 @@ static struct task_struct *get_thread(in
if (pid == PID_MAX) pid = 0;
@@ -1349,9 +1085,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/sh/kernel/kgdb_stub.c linux-2.6.18.2-v
if (thread)
return thread;
-diff -NurpP --minimal linux-2.6.18.2/arch/sh/kernel/setup.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/sh/kernel/setup.c
---- linux-2.6.18.2/arch/sh/kernel/setup.c 2006-09-20 16:58:01 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/sh/kernel/setup.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/sh/kernel/setup.c 2006-09-20 16:58:01 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/sh/kernel/setup.c 2006-09-20 17:01:44 +0200
@@ -21,6 +21,7 @@
#include <linux/utsname.h>
#include <linux/cpu.h>
@@ -1369,9 +1104,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/sh/kernel/setup.c linux-2.6.18.2-vs2.0
seq_printf(m, "cpu type\t: %s\n", get_cpu_subtype());
show_cpuflags(m);
-diff -NurpP --minimal linux-2.6.18.2/arch/sh/kernel/sys_sh.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/sh/kernel/sys_sh.c
---- linux-2.6.18.2/arch/sh/kernel/sys_sh.c 2005-08-29 22:24:55 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/sh/kernel/sys_sh.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/sh/kernel/sys_sh.c 2005-08-29 22:24:55 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/sh/kernel/sys_sh.c 2006-09-20 17:01:44 +0200
@@ -21,6 +21,7 @@
#include <linux/mman.h>
#include <linux/file.h>
@@ -1389,9 +1123,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/sh/kernel/sys_sh.c linux-2.6.18.2-vs2.
up_read(&uts_sem);
return err?-EFAULT:0;
}
-diff -NurpP --minimal linux-2.6.18.2/arch/sh64/kernel/sys_sh64.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/sh64/kernel/sys_sh64.c
---- linux-2.6.18.2/arch/sh64/kernel/sys_sh64.c 2005-06-22 02:37:59 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/sh64/kernel/sys_sh64.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/sh64/kernel/sys_sh64.c 2005-06-22 02:37:59 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/sh64/kernel/sys_sh64.c 2006-09-20 17:01:44 +0200
@@ -29,6 +29,7 @@
#include <linux/file.h>
#include <linux/utsname.h>
@@ -1409,9 +1142,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/sh64/kernel/sys_sh64.c linux-2.6.18.2-
up_read(&uts_sem);
return err?-EFAULT:0;
}
-diff -NurpP --minimal linux-2.6.18.2/arch/sparc/Kconfig linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc/Kconfig
---- linux-2.6.18.2/arch/sparc/Kconfig 2006-06-18 04:52:33 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc/Kconfig 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/sparc/Kconfig 2006-06-18 04:52:33 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/sparc/Kconfig 2006-09-20 17:01:44 +0200
@@ -291,6 +291,8 @@ source "fs/Kconfig"
source "arch/sparc/Kconfig.debug"
@@ -1421,58 +1153,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/sparc/Kconfig linux-2.6.18.2-vs2.0.2.2
source "security/Kconfig"
source "crypto/Kconfig"
-diff -NurpP --minimal linux-2.6.18.2/arch/sparc/kernel/irq.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc/kernel/irq.c
---- linux-2.6.18.2/arch/sparc/kernel/irq.c 2006-09-20 16:58:01 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc/kernel/irq.c 2006-11-07 19:15:34 +0100
-@@ -29,6 +29,7 @@
- #include <linux/threads.h>
- #include <linux/spinlock.h>
- #include <linux/seq_file.h>
-+#include <linux/vs_context.h>
-
- #include <asm/ptrace.h>
- #include <asm/processor.h>
-@@ -321,6 +322,7 @@ void handler_irq(int irq, struct pt_regs
- {
- struct irqaction * action;
- int cpu = smp_processor_id();
-+ struct vx_info_save vxis;
- #ifdef CONFIG_SMP
- extern void smp4m_irq_rotate(int cpu);
- #endif
-@@ -335,12 +337,14 @@ void handler_irq(int irq, struct pt_regs
- action = sparc_irq[irq].action;
- sparc_irq[irq].flags |= SPARC_IRQ_INPROGRESS;
- kstat_cpu(cpu).irqs[irq]++;
-+ __enter_vx_admin(&vxis);
- do {
- if (!action || !action->handler)
- unexpected_irq(irq, NULL, regs);
- action->handler(irq, action->dev_id, regs);
- action = action->next;
- } while (action);
-+ __leave_vx_admin(&vxis);
- sparc_irq[irq].flags &= ~SPARC_IRQ_INPROGRESS;
- enable_pil_irq(irq);
- irq_exit();
-@@ -352,11 +356,14 @@ extern void floppy_interrupt(int irq, vo
- void sparc_floppy_irq(int irq, void *dev_id, struct pt_regs *regs)
- {
- int cpu = smp_processor_id();
-+ struct vx_info_save vxis;
-
- disable_pil_irq(irq);
- irq_enter();
- kstat_cpu(cpu).irqs[irq]++;
-+ __enter_vx_admin(&vxis);
- floppy_interrupt(irq, dev_id, regs);
-+ __leave_vx_admin(&vxis);
- irq_exit();
- enable_pil_irq(irq);
- // XXX Eek, it's totally changed with preempt_count() and such
-diff -NurpP --minimal linux-2.6.18.2/arch/sparc/kernel/ptrace.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc/kernel/ptrace.c
---- linux-2.6.18.2/arch/sparc/kernel/ptrace.c 2006-04-09 13:49:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc/kernel/ptrace.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/sparc/kernel/ptrace.c 2006-04-09 13:49:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/sparc/kernel/ptrace.c 2006-09-20 17:01:44 +0200
@@ -299,6 +299,10 @@ asmlinkage void do_ptrace(struct pt_regs
pt_error_return(regs, -ret);
goto out;
@@ -1484,9 +1166,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/sparc/kernel/ptrace.c linux-2.6.18.2-v
if ((current->personality == PER_SUNOS && request == PTRACE_SUNATTACH)
|| (current->personality != PER_SUNOS && request == PTRACE_ATTACH)) {
-diff -NurpP --minimal linux-2.6.18.2/arch/sparc/kernel/sun4d_irq.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc/kernel/sun4d_irq.c
---- linux-2.6.18.2/arch/sparc/kernel/sun4d_irq.c 2006-09-20 16:58:01 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc/kernel/sun4d_irq.c 2006-11-07 19:16:21 +0100
+--- linux-2.6.18.5/arch/sparc/kernel/sun4d_irq.c 2006-09-20 16:58:01 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/sparc/kernel/sun4d_irq.c 2006-12-10 02:04:47 +0100
@@ -20,6 +20,7 @@
#include <linux/smp_lock.h>
#include <linux/spinlock.h>
@@ -1495,33 +1176,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/sparc/kernel/sun4d_irq.c linux-2.6.18.
#include <asm/ptrace.h>
#include <asm/processor.h>
-@@ -199,6 +200,7 @@ extern void unexpected_irq(int, void *,
- void sun4d_handler_irq(int irq, struct pt_regs * regs)
- {
- struct irqaction * action;
-+ struct vx_info_save vxis;
- int cpu = smp_processor_id();
- /* SBUS IRQ level (1 - 7) */
- int sbusl = pil_to_sbus[irq];
-@@ -210,6 +212,7 @@ void sun4d_handler_irq(int irq, struct p
-
- irq_enter();
- kstat_cpu(cpu).irqs[irq]++;
-+ __enter_vx_admin(&vxis);
- if (!sbusl) {
- action = *(irq + irq_action);
- if (!action)
-@@ -249,6 +252,7 @@ void sun4d_handler_irq(int irq, struct p
- }
- }
- }
-+ __leave_vx_admin(&vxis);
- irq_exit();
- }
-
-diff -NurpP --minimal linux-2.6.18.2/arch/sparc/kernel/sys_sparc.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc/kernel/sys_sparc.c
---- linux-2.6.18.2/arch/sparc/kernel/sys_sparc.c 2006-09-20 16:58:04 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc/kernel/sys_sparc.c 2006-09-20 19:57:58 +0200
+--- linux-2.6.18.5/arch/sparc/kernel/sys_sparc.c 2006-09-20 16:58:04 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/sparc/kernel/sys_sparc.c 2006-09-20 19:57:58 +0200
@@ -21,6 +21,7 @@
#include <linux/utsname.h>
#include <linux/smp.h>
@@ -1546,9 +1202,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/sparc/kernel/sys_sparc.c linux-2.6.18.
err = 0;
out:
-diff -NurpP --minimal linux-2.6.18.2/arch/sparc/kernel/sys_sunos.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc/kernel/sys_sunos.c
---- linux-2.6.18.2/arch/sparc/kernel/sys_sunos.c 2006-09-20 16:58:06 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc/kernel/sys_sunos.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/sparc/kernel/sys_sunos.c 2006-09-20 16:58:06 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/sparc/kernel/sys_sunos.c 2006-09-20 17:01:44 +0200
@@ -35,6 +35,7 @@
#include <linux/smp.h>
#include <linux/smp_lock.h>
@@ -1579,9 +1234,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/sparc/kernel/sys_sunos.c linux-2.6.18.
}
up_read(&uts_sem);
return ret ? -EFAULT : 0;
-diff -NurpP --minimal linux-2.6.18.2/arch/sparc/kernel/systbls.S linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc/kernel/systbls.S
---- linux-2.6.18.2/arch/sparc/kernel/systbls.S 2006-09-20 16:58:06 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc/kernel/systbls.S 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/sparc/kernel/systbls.S 2006-09-20 16:58:06 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/sparc/kernel/systbls.S 2006-09-20 17:01:44 +0200
@@ -71,7 +71,7 @@ sys_call_table:
/*250*/ .long sparc_mremap, sys_sysctl, sys_getsid, sys_fdatasync, sys_nfsservctl
/*255*/ .long sys_sync_file_range, sys_clock_settime, sys_clock_gettime, sys_clock_getres, sys_clock_nanosleep
@@ -1591,9 +1245,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/sparc/kernel/systbls.S linux-2.6.18.2-
/*270*/ .long sys_io_submit, sys_io_cancel, sys_io_getevents, sys_mq_open, sys_mq_unlink
/*275*/ .long sys_mq_timedsend, sys_mq_timedreceive, sys_mq_notify, sys_mq_getsetattr, sys_waitid
/*280*/ .long sys_tee, sys_add_key, sys_request_key, sys_keyctl, sys_openat
-diff -NurpP --minimal linux-2.6.18.2/arch/sparc64/Kconfig linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc64/Kconfig
---- linux-2.6.18.2/arch/sparc64/Kconfig 2006-09-20 16:58:06 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc64/Kconfig 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/sparc64/Kconfig 2006-09-20 16:58:06 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/sparc64/Kconfig 2006-09-20 17:01:44 +0200
@@ -431,6 +431,8 @@ endmenu
source "arch/sparc64/Kconfig.debug"
@@ -1603,9 +1256,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/sparc64/Kconfig linux-2.6.18.2-vs2.0.2
source "security/Kconfig"
source "crypto/Kconfig"
-diff -NurpP --minimal linux-2.6.18.2/arch/sparc64/kernel/binfmt_aout32.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc64/kernel/binfmt_aout32.c
---- linux-2.6.18.2/arch/sparc64/kernel/binfmt_aout32.c 2006-06-18 04:52:34 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc64/kernel/binfmt_aout32.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/sparc64/kernel/binfmt_aout32.c 2006-06-18 04:52:34 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/sparc64/kernel/binfmt_aout32.c 2006-09-20 17:01:44 +0200
@@ -27,6 +27,7 @@
#include <linux/binfmts.h>
#include <linux/personality.h>
@@ -1614,9 +1266,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/sparc64/kernel/binfmt_aout32.c linux-2
#include <asm/system.h>
#include <asm/uaccess.h>
-diff -NurpP --minimal linux-2.6.18.2/arch/sparc64/kernel/ptrace.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc64/kernel/ptrace.c
---- linux-2.6.18.2/arch/sparc64/kernel/ptrace.c 2006-06-18 04:52:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc64/kernel/ptrace.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/sparc64/kernel/ptrace.c 2006-06-18 04:52:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/sparc64/kernel/ptrace.c 2006-09-20 17:01:44 +0200
@@ -212,6 +212,10 @@ asmlinkage void do_ptrace(struct pt_regs
pt_error_return(regs, -ret);
goto out;
@@ -1628,9 +1279,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/sparc64/kernel/ptrace.c linux-2.6.18.2
if ((current->personality == PER_SUNOS && request == PTRACE_SUNATTACH)
|| (current->personality != PER_SUNOS && request == PTRACE_ATTACH)) {
-diff -NurpP --minimal linux-2.6.18.2/arch/sparc64/kernel/sys_sparc.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc64/kernel/sys_sparc.c
---- linux-2.6.18.2/arch/sparc64/kernel/sys_sparc.c 2006-09-20 16:58:06 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc64/kernel/sys_sparc.c 2006-09-20 19:57:05 +0200
+--- linux-2.6.18.5/arch/sparc64/kernel/sys_sparc.c 2006-09-20 16:58:06 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/sparc64/kernel/sys_sparc.c 2006-09-20 19:57:05 +0200
@@ -25,6 +25,7 @@
#include <linux/ipc.h>
#include <linux/personality.h>
@@ -1655,9 +1305,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/sparc64/kernel/sys_sparc.c linux-2.6.1
err = 0;
out:
-diff -NurpP --minimal linux-2.6.18.2/arch/sparc64/kernel/sys_sunos32.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc64/kernel/sys_sunos32.c
---- linux-2.6.18.2/arch/sparc64/kernel/sys_sunos32.c 2006-09-20 16:58:06 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc64/kernel/sys_sunos32.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/sparc64/kernel/sys_sunos32.c 2006-09-20 16:58:06 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/sparc64/kernel/sys_sunos32.c 2006-09-20 17:01:44 +0200
@@ -35,6 +35,7 @@
#include <linux/smp.h>
#include <linux/smp_lock.h>
@@ -1692,9 +1341,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/sparc64/kernel/sys_sunos32.c linux-2.6
sizeof(name->mach) - 1);
up_read(&uts_sem);
return (ret ? -EFAULT : 0);
-diff -NurpP --minimal linux-2.6.18.2/arch/sparc64/kernel/systbls.S linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc64/kernel/systbls.S
---- linux-2.6.18.2/arch/sparc64/kernel/systbls.S 2006-09-20 16:58:06 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc64/kernel/systbls.S 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/sparc64/kernel/systbls.S 2006-09-20 16:58:06 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/sparc64/kernel/systbls.S 2006-09-20 17:01:44 +0200
@@ -72,7 +72,7 @@ sys_call_table32:
/*250*/ .word sys32_mremap, sys32_sysctl, sys32_getsid, sys_fdatasync, sys32_nfsservctl
.word sys32_sync_file_range, compat_sys_clock_settime, compat_sys_clock_gettime, compat_sys_clock_getres, sys32_clock_nanosleep
@@ -1713,9 +1361,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/sparc64/kernel/systbls.S linux-2.6.18.
/*270*/ .word sys_io_submit, sys_io_cancel, sys_io_getevents, sys_mq_open, sys_mq_unlink
.word sys_mq_timedsend, sys_mq_timedreceive, sys_mq_notify, sys_mq_getsetattr, sys_waitid
/*280*/ .word sys_tee, sys_add_key, sys_request_key, sys_keyctl, sys_openat
-diff -NurpP --minimal linux-2.6.18.2/arch/sparc64/solaris/fs.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc64/solaris/fs.c
---- linux-2.6.18.2/arch/sparc64/solaris/fs.c 2006-09-20 16:58:06 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc64/solaris/fs.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/sparc64/solaris/fs.c 2006-09-20 16:58:06 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/sparc64/solaris/fs.c 2006-09-20 17:01:44 +0200
@@ -363,7 +363,7 @@ static int report_statvfs(struct vfsmoun
int j = strlen (p);
@@ -1734,9 +1381,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/sparc64/solaris/fs.c linux-2.6.18.2-vs
if (mnt->mnt_flags & MNT_NOSUID) i |= 2;
if (!sysv_valid_dev(inode->i_sb->s_dev))
return -EOVERFLOW;
-diff -NurpP --minimal linux-2.6.18.2/arch/sparc64/solaris/misc.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc64/solaris/misc.c
---- linux-2.6.18.2/arch/sparc64/solaris/misc.c 2006-09-20 16:58:06 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/sparc64/solaris/misc.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/sparc64/solaris/misc.c 2006-09-20 16:58:06 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/sparc64/solaris/misc.c 2006-09-20 17:01:44 +0200
@@ -16,6 +16,7 @@
#include <linux/timex.h>
#include <linux/major.h>
@@ -1772,9 +1418,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/sparc64/solaris/misc.c linux-2.6.18.2-
q < r && *p && *p != '.'; *q++ = *p++);
up_read(&uts_sem);
*q = 0;
-diff -NurpP --minimal linux-2.6.18.2/arch/um/Kconfig linux-2.6.18.2-vs2.0.2.2-rc6/arch/um/Kconfig
---- linux-2.6.18.2/arch/um/Kconfig 2006-11-04 19:43:22 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/um/Kconfig 2006-10-16 18:56:10 +0200
+--- linux-2.6.18.5/arch/um/Kconfig 2006-12-04 06:13:47 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/um/Kconfig 2006-10-16 18:56:10 +0200
@@ -284,6 +284,8 @@ source "drivers/connector/Kconfig"
source "fs/Kconfig"
@@ -1784,9 +1429,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/um/Kconfig linux-2.6.18.2-vs2.0.2.2-rc
source "security/Kconfig"
source "crypto/Kconfig"
-diff -NurpP --minimal linux-2.6.18.2/arch/um/kernel/irq.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/um/kernel/irq.c
---- linux-2.6.18.2/arch/um/kernel/irq.c 2006-09-20 16:58:06 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/um/kernel/irq.c 2006-11-07 19:17:23 +0100
+--- linux-2.6.18.5/arch/um/kernel/irq.c 2006-09-20 16:58:06 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/um/kernel/irq.c 2006-11-07 19:17:23 +0100
@@ -370,10 +370,11 @@ void forward_interrupts(int pid)
*/
unsigned int do_IRQ(int irq, union uml_pt_regs *regs)
@@ -1803,9 +1447,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/um/kernel/irq.c linux-2.6.18.2-vs2.0.2
}
int um_request_irq(unsigned int irq, int fd, int type,
-diff -NurpP --minimal linux-2.6.18.2/arch/um/kernel/syscall.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/um/kernel/syscall.c
---- linux-2.6.18.2/arch/um/kernel/syscall.c 2006-09-20 16:58:06 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/um/kernel/syscall.c 2006-09-21 16:41:49 +0200
+--- linux-2.6.18.5/arch/um/kernel/syscall.c 2006-09-20 16:58:06 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/um/kernel/syscall.c 2006-09-21 16:41:49 +0200
@@ -15,6 +15,8 @@
#include "linux/unistd.h"
#include "linux/slab.h"
@@ -1858,9 +1501,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/um/kernel/syscall.c linux-2.6.18.2-vs2
__OLD_UTS_LEN);
error |= __put_user(0,name->machine+__OLD_UTS_LEN);
-diff -NurpP --minimal linux-2.6.18.2/arch/um/sys-x86_64/syscalls.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/um/sys-x86_64/syscalls.c
---- linux-2.6.18.2/arch/um/sys-x86_64/syscalls.c 2006-06-18 04:52:42 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/um/sys-x86_64/syscalls.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/um/sys-x86_64/syscalls.c 2006-06-18 04:52:42 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/um/sys-x86_64/syscalls.c 2006-09-20 17:01:44 +0200
@@ -9,6 +9,7 @@
#include "linux/shm.h"
#include "linux/utsname.h"
@@ -1878,9 +1520,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/um/sys-x86_64/syscalls.c linux-2.6.18.
up_read(&uts_sem);
if (personality(current->personality) == PER_LINUX32)
err |= copy_to_user(&name->machine, "i686", 5);
-diff -NurpP --minimal linux-2.6.18.2/arch/v850/Kconfig linux-2.6.18.2-vs2.0.2.2-rc6/arch/v850/Kconfig
---- linux-2.6.18.2/arch/v850/Kconfig 2006-06-18 04:52:42 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/v850/Kconfig 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/v850/Kconfig 2006-06-18 04:52:42 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/v850/Kconfig 2006-09-20 17:01:44 +0200
@@ -326,6 +326,8 @@ source "drivers/usb/Kconfig"
source "arch/v850/Kconfig.debug"
@@ -1890,9 +1531,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/v850/Kconfig linux-2.6.18.2-vs2.0.2.2-
source "security/Kconfig"
source "crypto/Kconfig"
-diff -NurpP --minimal linux-2.6.18.2/arch/v850/kernel/ptrace.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/v850/kernel/ptrace.c
---- linux-2.6.18.2/arch/v850/kernel/ptrace.c 2006-04-09 13:49:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/v850/kernel/ptrace.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/v850/kernel/ptrace.c 2006-04-09 13:49:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/v850/kernel/ptrace.c 2006-09-20 17:01:44 +0200
@@ -117,6 +117,9 @@ long arch_ptrace(struct task_struct *chi
{
int rval;
@@ -1903,9 +1543,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/v850/kernel/ptrace.c linux-2.6.18.2-vs
switch (request) {
unsigned long val, copied;
-diff -NurpP --minimal linux-2.6.18.2/arch/x86_64/Kconfig linux-2.6.18.2-vs2.0.2.2-rc6/arch/x86_64/Kconfig
---- linux-2.6.18.2/arch/x86_64/Kconfig 2006-09-20 16:58:06 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/x86_64/Kconfig 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/x86_64/Kconfig 2006-09-20 16:58:06 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/x86_64/Kconfig 2006-09-20 17:01:44 +0200
@@ -654,6 +654,8 @@ endmenu
source "arch/x86_64/Kconfig.debug"
@@ -1915,9 +1554,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/x86_64/Kconfig linux-2.6.18.2-vs2.0.2.
source "security/Kconfig"
source "crypto/Kconfig"
-diff -NurpP --minimal linux-2.6.18.2/arch/x86_64/ia32/ia32_aout.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/x86_64/ia32/ia32_aout.c
---- linux-2.6.18.2/arch/x86_64/ia32/ia32_aout.c 2006-01-03 17:29:20 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/x86_64/ia32/ia32_aout.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/x86_64/ia32/ia32_aout.c 2006-01-03 17:29:20 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/x86_64/ia32/ia32_aout.c 2006-09-20 17:01:44 +0200
@@ -25,6 +25,7 @@
#include <linux/binfmts.h>
#include <linux/personality.h>
@@ -1926,9 +1564,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/x86_64/ia32/ia32_aout.c linux-2.6.18.2
#include <asm/system.h>
#include <asm/uaccess.h>
-diff -NurpP --minimal linux-2.6.18.2/arch/x86_64/ia32/ia32_binfmt.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/x86_64/ia32/ia32_binfmt.c
---- linux-2.6.18.2/arch/x86_64/ia32/ia32_binfmt.c 2006-09-20 16:58:06 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/x86_64/ia32/ia32_binfmt.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/x86_64/ia32/ia32_binfmt.c 2006-09-20 16:58:06 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/x86_64/ia32/ia32_binfmt.c 2006-09-20 17:01:44 +0200
@@ -376,7 +376,8 @@ int ia32_setup_arg_pages(struct linux_bi
kmem_cache_free(vm_area_cachep, mpnt);
return ret;
@@ -1939,9 +1576,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/x86_64/ia32/ia32_binfmt.c linux-2.6.18
}
for (i = 0 ; i < MAX_ARG_PAGES ; i++) {
-diff -NurpP --minimal linux-2.6.18.2/arch/x86_64/ia32/ia32entry.S linux-2.6.18.2-vs2.0.2.2-rc6/arch/x86_64/ia32/ia32entry.S
---- linux-2.6.18.2/arch/x86_64/ia32/ia32entry.S 2006-09-20 16:58:06 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/x86_64/ia32/ia32entry.S 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/x86_64/ia32/ia32entry.S 2006-09-20 16:58:06 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/x86_64/ia32/ia32entry.S 2006-09-20 17:01:44 +0200
@@ -668,7 +668,7 @@ ia32_sys_call_table:
.quad sys_tgkill /* 270 */
.quad compat_sys_utimes
@@ -1951,9 +1587,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/x86_64/ia32/ia32entry.S linux-2.6.18.2
.quad sys_mbind
.quad compat_sys_get_mempolicy /* 275 */
.quad sys_set_mempolicy
-diff -NurpP --minimal linux-2.6.18.2/arch/x86_64/ia32/sys_ia32.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/x86_64/ia32/sys_ia32.c
---- linux-2.6.18.2/arch/x86_64/ia32/sys_ia32.c 2006-09-20 16:58:06 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/x86_64/ia32/sys_ia32.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/x86_64/ia32/sys_ia32.c 2006-09-20 16:58:06 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/x86_64/ia32/sys_ia32.c 2006-09-20 17:01:44 +0200
@@ -60,6 +60,7 @@
#include <linux/highuid.h>
#include <linux/vmalloc.h>
@@ -1998,9 +1633,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/x86_64/ia32/sys_ia32.c linux-2.6.18.2-
up_read(&uts_sem);
if (personality(current->personality) == PER_LINUX32)
err |= copy_to_user(&name->machine, "i686", 5);
-diff -NurpP --minimal linux-2.6.18.2/arch/x86_64/ia32/syscall32.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/x86_64/ia32/syscall32.c
---- linux-2.6.18.2/arch/x86_64/ia32/syscall32.c 2005-10-28 20:49:18 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/x86_64/ia32/syscall32.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/x86_64/ia32/syscall32.c 2005-10-28 20:49:18 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/x86_64/ia32/syscall32.c 2006-09-20 17:01:44 +0200
@@ -10,6 +10,7 @@
#include <linux/init.h>
#include <linux/stringify.h>
@@ -2018,9 +1652,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/x86_64/ia32/syscall32.c linux-2.6.18.2
up_write(&mm->mmap_sem);
return 0;
}
-diff -NurpP --minimal linux-2.6.18.2/arch/x86_64/kernel/sys_x86_64.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/x86_64/kernel/sys_x86_64.c
---- linux-2.6.18.2/arch/x86_64/kernel/sys_x86_64.c 2006-01-03 17:29:20 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/x86_64/kernel/sys_x86_64.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/x86_64/kernel/sys_x86_64.c 2006-01-03 17:29:20 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/x86_64/kernel/sys_x86_64.c 2006-09-20 17:01:44 +0200
@@ -16,6 +16,7 @@
#include <linux/file.h>
#include <linux/utsname.h>
@@ -2038,9 +1671,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/x86_64/kernel/sys_x86_64.c linux-2.6.1
up_read(&uts_sem);
if (personality(current->personality) == PER_LINUX32)
err |= copy_to_user(&name->machine, "i686", 5);
-diff -NurpP --minimal linux-2.6.18.2/arch/x86_64/kernel/traps.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/x86_64/kernel/traps.c
---- linux-2.6.18.2/arch/x86_64/kernel/traps.c 2006-09-20 16:58:06 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/x86_64/kernel/traps.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/x86_64/kernel/traps.c 2006-09-20 16:58:06 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/x86_64/kernel/traps.c 2006-09-20 17:01:44 +0200
@@ -435,8 +435,9 @@ void show_registers(struct pt_regs *regs
printk("CPU %d ", cpu);
@@ -2053,9 +1685,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/x86_64/kernel/traps.c linux-2.6.18.2-v
/*
* When in-kernel, we also print out the stack and code at the
-diff -NurpP --minimal linux-2.6.18.2/arch/xtensa/kernel/irq.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/xtensa/kernel/irq.c
---- linux-2.6.18.2/arch/xtensa/kernel/irq.c 2006-09-20 16:58:06 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/xtensa/kernel/irq.c 2006-11-07 19:19:14 +0100
+--- linux-2.6.18.5/arch/xtensa/kernel/irq.c 2006-09-20 16:58:06 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/xtensa/kernel/irq.c 2006-11-07 19:19:14 +0100
@@ -63,9 +63,7 @@ unsigned int do_IRQ(int irq, struct pt_
sp - sizeof(struct thread_info));
}
@@ -2066,9 +1697,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/xtensa/kernel/irq.c linux-2.6.18.2-vs2
irq_exit();
return 1;
-diff -NurpP --minimal linux-2.6.18.2/arch/xtensa/kernel/syscalls.c linux-2.6.18.2-vs2.0.2.2-rc6/arch/xtensa/kernel/syscalls.c
---- linux-2.6.18.2/arch/xtensa/kernel/syscalls.c 2006-09-20 16:58:06 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/arch/xtensa/kernel/syscalls.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/arch/xtensa/kernel/syscalls.c 2006-09-20 16:58:06 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/arch/xtensa/kernel/syscalls.c 2006-09-20 17:01:44 +0200
@@ -34,6 +34,7 @@
#include <linux/msg.h>
#include <linux/shm.h>
@@ -2086,9 +1716,8 @@ diff -NurpP --minimal linux-2.6.18.2/arch/xtensa/kernel/syscalls.c linux-2.6.18.
return 0;
return -EFAULT;
}
-diff -NurpP --minimal linux-2.6.18.2/block/cfq-iosched.c linux-2.6.18.2-vs2.0.2.2-rc6/block/cfq-iosched.c
---- linux-2.6.18.2/block/cfq-iosched.c 2006-09-20 16:58:06 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/block/cfq-iosched.c 2006-10-17 01:20:07 +0200
+--- linux-2.6.18.5/block/cfq-iosched.c 2006-09-20 16:58:06 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/block/cfq-iosched.c 2006-10-17 01:20:07 +0200
@@ -326,6 +326,8 @@ static int cfq_queue_empty(request_queue
static inline pid_t cfq_queue_pid(struct task_struct *task, int rw)
@@ -2098,9 +1727,8 @@ diff -NurpP --minimal linux-2.6.18.2/block/cfq-iosched.c linux-2.6.18.2-vs2.0.2.
if (rw == READ || rw == WRITE_SYNC)
return task->pid;
-diff -NurpP --minimal linux-2.6.18.2/drivers/block/Kconfig linux-2.6.18.2-vs2.0.2.2-rc6/drivers/block/Kconfig
---- linux-2.6.18.2/drivers/block/Kconfig 2006-09-20 16:58:07 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/drivers/block/Kconfig 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/drivers/block/Kconfig 2006-09-20 16:58:07 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/drivers/block/Kconfig 2006-09-20 17:01:44 +0200
@@ -315,6 +315,13 @@ config BLK_DEV_CRYPTOLOOP
instead, which can be configured to be on-disk compatible with the
cryptoloop device.
@@ -2115,18 +1743,16 @@ diff -NurpP --minimal linux-2.6.18.2/drivers/block/Kconfig linux-2.6.18.2-vs2.0.
config BLK_DEV_NBD
tristate "Network block device support"
depends on NET
-diff -NurpP --minimal linux-2.6.18.2/drivers/block/Makefile linux-2.6.18.2-vs2.0.2.2-rc6/drivers/block/Makefile
---- linux-2.6.18.2/drivers/block/Makefile 2006-06-18 04:52:46 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/drivers/block/Makefile 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/drivers/block/Makefile 2006-06-18 04:52:46 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/drivers/block/Makefile 2006-09-20 17:01:44 +0200
@@ -29,4 +29,5 @@ obj-$(CONFIG_BLK_DEV_CRYPTOLOOP) += cryp
obj-$(CONFIG_VIODASD) += viodasd.o
obj-$(CONFIG_BLK_DEV_SX8) += sx8.o
obj-$(CONFIG_BLK_DEV_UB) += ub.o
+obj-$(CONFIG_BLK_DEV_VROOT) += vroot.o
-diff -NurpP --minimal linux-2.6.18.2/drivers/block/loop.c linux-2.6.18.2-vs2.0.2.2-rc6/drivers/block/loop.c
---- linux-2.6.18.2/drivers/block/loop.c 2006-09-20 16:58:07 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/drivers/block/loop.c 2006-10-17 02:40:33 +0200
+--- linux-2.6.18.5/drivers/block/loop.c 2006-09-20 16:58:07 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/drivers/block/loop.c 2006-12-10 02:04:47 +0100
@@ -72,6 +72,7 @@
#include <linux/completion.h>
#include <linux/highmem.h>
@@ -2135,27 +1761,8 @@ diff -NurpP --minimal linux-2.6.18.2/drivers/block/loop.c linux-2.6.18.2-vs2.0.2
#include <asm/uaccess.h>
-@@ -741,6 +742,7 @@ static int loop_set_fd(struct loop_devic
- struct file *file, *f;
- struct inode *inode;
- struct address_space *mapping;
-+ struct vx_info_save vxis;
- unsigned lo_blocksize;
- int lo_flags = 0;
- int error;
-@@ -837,7 +839,9 @@ static int loop_set_fd(struct loop_devic
-
- set_blocksize(bdev, lo_blocksize);
-
-+ __enter_vx_admin(&vxis);
- error = kernel_thread(loop_thread, lo, CLONE_KERNEL);
-+ __leave_vx_admin(&vxis);
- if (error < 0)
- goto out_putf;
- wait_for_completion(&lo->lo_done);
-diff -NurpP --minimal linux-2.6.18.2/drivers/block/vroot.c linux-2.6.18.2-vs2.0.2.2-rc6/drivers/block/vroot.c
---- linux-2.6.18.2/drivers/block/vroot.c 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/drivers/block/vroot.c 2006-09-21 01:26:54 +0200
+--- linux-2.6.18.5/drivers/block/vroot.c 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/drivers/block/vroot.c 2006-09-21 01:26:54 +0200
@@ -0,0 +1,281 @@
+/*
+ * linux/drivers/block/vroot.c
@@ -2438,9 +2045,8 @@ diff -NurpP --minimal linux-2.6.18.2/drivers/block/vroot.c linux-2.6.18.2-vs2.0.
+
+#endif
+
-diff -NurpP --minimal linux-2.6.18.2/drivers/char/random.c linux-2.6.18.2-vs2.0.2.2-rc6/drivers/char/random.c
---- linux-2.6.18.2/drivers/char/random.c 2006-09-20 16:58:13 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/drivers/char/random.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/drivers/char/random.c 2006-09-20 16:58:13 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/drivers/char/random.c 2006-09-20 17:01:44 +0200
@@ -1173,7 +1173,7 @@ static char sysctl_bootid[16];
static int proc_do_uuid(ctl_table *table, int write, struct file *filp,
void __user *buffer, size_t *lenp, loff_t *ppos)
@@ -2450,9 +2056,8 @@ diff -NurpP --minimal linux-2.6.18.2/drivers/char/random.c linux-2.6.18.2-vs2.0.
unsigned char buf[64], tmp_uuid[16], *uuid;
uuid = table->data;
-diff -NurpP --minimal linux-2.6.18.2/drivers/char/tty_io.c linux-2.6.18.2-vs2.0.2.2-rc6/drivers/char/tty_io.c
---- linux-2.6.18.2/drivers/char/tty_io.c 2006-09-20 16:58:13 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/drivers/char/tty_io.c 2006-09-20 19:55:41 +0200
+--- linux-2.6.18.5/drivers/char/tty_io.c 2006-09-20 16:58:13 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/drivers/char/tty_io.c 2006-09-20 19:55:41 +0200
@@ -103,6 +103,7 @@
#include <linux/selection.h>
@@ -2488,9 +2093,8 @@ diff -NurpP --minimal linux-2.6.18.2/drivers/char/tty_io.c linux-2.6.18.2-vs2.0.
if (pgrp < 0)
return -EINVAL;
if (session_of_pgrp(pgrp) != current->signal->session)
-diff -NurpP --minimal linux-2.6.18.2/drivers/infiniband/core/uverbs_mem.c linux-2.6.18.2-vs2.0.2.2-rc6/drivers/infiniband/core/uverbs_mem.c
---- linux-2.6.18.2/drivers/infiniband/core/uverbs_mem.c 2006-06-18 04:53:04 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/drivers/infiniband/core/uverbs_mem.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/drivers/infiniband/core/uverbs_mem.c 2006-06-18 04:53:04 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/drivers/infiniband/core/uverbs_mem.c 2006-09-20 17:01:44 +0200
@@ -36,6 +36,7 @@
#include <linux/mm.h>
@@ -2528,9 +2132,8 @@ diff -NurpP --minimal linux-2.6.18.2/drivers/infiniband/core/uverbs_mem.c linux-
up_write(&work->mm->mmap_sem);
mmput(work->mm);
kfree(work);
-diff -NurpP --minimal linux-2.6.18.2/drivers/infiniband/hw/ipath/ipath_user_pages.c linux-2.6.18.2-vs2.0.2.2-rc6/drivers/infiniband/hw/ipath/ipath_user_pages.c
---- linux-2.6.18.2/drivers/infiniband/hw/ipath/ipath_user_pages.c 2006-09-20 16:58:14 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/drivers/infiniband/hw/ipath/ipath_user_pages.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/drivers/infiniband/hw/ipath/ipath_user_pages.c 2006-09-20 16:58:14 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/drivers/infiniband/hw/ipath/ipath_user_pages.c 2006-09-20 17:01:44 +0200
@@ -33,6 +33,7 @@
#include <linux/mm.h>
@@ -2576,9 +2179,8 @@ diff -NurpP --minimal linux-2.6.18.2/drivers/infiniband/hw/ipath/ipath_user_page
up_write(&work->mm->mmap_sem);
mmput(work->mm);
kfree(work);
-diff -NurpP --minimal linux-2.6.18.2/drivers/s390/cio/cio.c linux-2.6.18.2-vs2.0.2.2-rc6/drivers/s390/cio/cio.c
---- linux-2.6.18.2/drivers/s390/cio/cio.c 2006-09-20 16:58:27 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/drivers/s390/cio/cio.c 2006-11-07 05:13:49 +0100
+--- linux-2.6.18.5/drivers/s390/cio/cio.c 2006-09-20 16:58:27 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/drivers/s390/cio/cio.c 2006-12-10 02:04:47 +0100
@@ -16,6 +16,7 @@
#include <linux/device.h>
#include <linux/kernel_stat.h>
@@ -2587,26 +2189,16 @@ diff -NurpP --minimal linux-2.6.18.2/drivers/s390/cio/cio.c linux-2.6.18.2-vs2.0
#include <asm/cio.h>
#include <asm/delay.h>
-@@ -639,12 +640,16 @@ do_IRQ (struct pt_regs *regs)
+@@ -639,6 +640,7 @@ do_IRQ (struct pt_regs *regs)
spin_lock(&sch->lock);
/* Store interrupt response block to lowcore. */
if (tsch (tpi_info->schid, irb) == 0 && sch) {
-+ struct vx_info_save vxis;
+
/* Keep subchannel information word up to date. */
memcpy (&sch->schib.scsw, &irb->scsw,
sizeof (irb->scsw));
- /* Call interrupt handler if there is one. */
-+ __enter_vx_admin(&vxis);
- if (sch->driver && sch->driver->irq)
- sch->driver->irq(&sch->dev);
-+ __leave_vx_admin(&vxis);
- }
- if (sch)
- spin_unlock(&sch->lock);
-diff -NurpP --minimal linux-2.6.18.2/fs/attr.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/attr.c
---- linux-2.6.18.2/fs/attr.c 2006-04-09 13:49:53 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/attr.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/attr.c 2006-04-09 13:49:53 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/attr.c 2006-09-20 17:01:44 +0200
@@ -15,6 +15,9 @@
#include <linux/fcntl.h>
#include <linux/quotaops.h>
@@ -2665,9 +2257,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/attr.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/a
error = DQUOT_TRANSFER(inode, attr) ? -EDQUOT : 0;
if (!error)
error = inode_setattr(inode, attr);
-diff -NurpP --minimal linux-2.6.18.2/fs/binfmt_aout.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/binfmt_aout.c
---- linux-2.6.18.2/fs/binfmt_aout.c 2006-04-09 13:49:53 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/binfmt_aout.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/binfmt_aout.c 2006-04-09 13:49:53 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/binfmt_aout.c 2006-09-20 17:01:44 +0200
@@ -24,6 +24,7 @@
#include <linux/binfmts.h>
#include <linux/personality.h>
@@ -2676,9 +2267,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/binfmt_aout.c linux-2.6.18.2-vs2.0.2.2-r
#include <asm/system.h>
#include <asm/uaccess.h>
-diff -NurpP --minimal linux-2.6.18.2/fs/binfmt_elf.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/binfmt_elf.c
---- linux-2.6.18.2/fs/binfmt_elf.c 2006-09-20 16:58:34 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/binfmt_elf.c 2006-09-20 18:28:33 +0200
+--- linux-2.6.18.5/fs/binfmt_elf.c 2006-09-20 16:58:34 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/binfmt_elf.c 2006-09-20 18:28:33 +0200
@@ -39,6 +39,8 @@
#include <linux/syscalls.h>
#include <linux/random.h>
@@ -2688,9 +2278,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/binfmt_elf.c linux-2.6.18.2-vs2.0.2.2-rc
#include <asm/uaccess.h>
#include <asm/param.h>
#include <asm/page.h>
-diff -NurpP --minimal linux-2.6.18.2/fs/binfmt_elf_fdpic.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/binfmt_elf_fdpic.c
---- linux-2.6.18.2/fs/binfmt_elf_fdpic.c 2006-09-20 16:58:34 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/binfmt_elf_fdpic.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/binfmt_elf_fdpic.c 2006-09-20 16:58:34 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/binfmt_elf_fdpic.c 2006-09-20 17:01:44 +0200
@@ -34,6 +34,7 @@
#include <linux/elf.h>
#include <linux/elf-fdpic.h>
@@ -2699,9 +2288,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/binfmt_elf_fdpic.c linux-2.6.18.2-vs2.0.
#include <asm/uaccess.h>
#include <asm/param.h>
-diff -NurpP --minimal linux-2.6.18.2/fs/binfmt_flat.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/binfmt_flat.c
---- linux-2.6.18.2/fs/binfmt_flat.c 2006-09-20 16:58:34 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/binfmt_flat.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/binfmt_flat.c 2006-09-20 16:58:34 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/binfmt_flat.c 2006-09-20 17:01:44 +0200
@@ -36,6 +36,7 @@
#include <linux/init.h>
#include <linux/flat.h>
@@ -2710,9 +2298,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/binfmt_flat.c linux-2.6.18.2-vs2.0.2.2-r
#include <asm/byteorder.h>
#include <asm/system.h>
-diff -NurpP --minimal linux-2.6.18.2/fs/binfmt_som.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/binfmt_som.c
---- linux-2.6.18.2/fs/binfmt_som.c 2006-09-20 16:58:34 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/binfmt_som.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/binfmt_som.c 2006-09-20 16:58:34 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/binfmt_som.c 2006-09-20 17:01:44 +0200
@@ -28,6 +28,7 @@
#include <linux/shm.h>
#include <linux/personality.h>
@@ -2721,9 +2308,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/binfmt_som.c linux-2.6.18.2-vs2.0.2.2-rc
#include <asm/uaccess.h>
#include <asm/pgtable.h>
-diff -NurpP --minimal linux-2.6.18.2/fs/devpts/inode.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/devpts/inode.c
---- linux-2.6.18.2/fs/devpts/inode.c 2006-09-20 16:58:34 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/devpts/inode.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/devpts/inode.c 2006-09-20 16:58:34 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/devpts/inode.c 2006-09-20 17:01:44 +0200
@@ -20,7 +20,19 @@
#include <linux/devpts_fs.h>
#include <linux/parser.h>
@@ -2790,9 +2376,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/devpts/inode.c linux-2.6.18.2-vs2.0.2.2-
inode->u.generic_ip = tty;
dentry = get_node(number);
-diff -NurpP --minimal linux-2.6.18.2/fs/exec.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/exec.c
---- linux-2.6.18.2/fs/exec.c 2006-09-20 16:58:34 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/exec.c 2006-09-20 18:03:28 +0200
+--- linux-2.6.18.5/fs/exec.c 2006-09-20 16:58:34 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/exec.c 2006-09-20 18:03:28 +0200
@@ -49,6 +49,8 @@
#include <linux/acct.h>
#include <linux/cn_proc.h>
@@ -2821,9 +2406,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/exec.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/e
up_read(&uts_sem);
if (rc > out_end - out_ptr)
goto out;
-diff -NurpP --minimal linux-2.6.18.2/fs/ext2/balloc.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext2/balloc.c
---- linux-2.6.18.2/fs/ext2/balloc.c 2006-09-20 16:58:34 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext2/balloc.c 2006-10-16 19:05:41 +0200
+--- linux-2.6.18.5/fs/ext2/balloc.c 2006-09-20 16:58:34 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/ext2/balloc.c 2006-10-16 19:05:41 +0200
@@ -16,6 +16,7 @@
#include <linux/sched.h>
#include <linux/buffer_head.h>
@@ -2877,9 +2461,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/ext2/balloc.c linux-2.6.18.2-vs2.0.2.2-r
release_blocks(sb, es_alloc);
out_dquot:
DQUOT_FREE_BLOCK(inode, dq_alloc);
-diff -NurpP --minimal linux-2.6.18.2/fs/ext2/ext2.h linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext2/ext2.h
---- linux-2.6.18.2/fs/ext2/ext2.h 2006-09-20 16:58:34 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext2/ext2.h 2006-09-20 19:55:12 +0200
+--- linux-2.6.18.5/fs/ext2/ext2.h 2006-09-20 16:58:34 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/ext2/ext2.h 2006-09-20 19:55:12 +0200
@@ -165,6 +165,7 @@ extern const struct file_operations ext2
extern const struct address_space_operations ext2_aops;
extern const struct address_space_operations ext2_aops_xip;
@@ -2888,18 +2471,16 @@ diff -NurpP --minimal linux-2.6.18.2/fs/ext2/ext2.h linux-2.6.18.2-vs2.0.2.2-rc6
/* namei.c */
extern struct inode_operations ext2_dir_inode_operations;
-diff -NurpP --minimal linux-2.6.18.2/fs/ext2/file.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext2/file.c
---- linux-2.6.18.2/fs/ext2/file.c 2006-06-18 04:54:33 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext2/file.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/ext2/file.c 2006-06-18 04:54:33 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/ext2/file.c 2006-09-20 17:01:44 +0200
@@ -81,4 +81,5 @@ struct inode_operations ext2_file_inode_
#endif
.setattr = ext2_setattr,
.permission = ext2_permission,
+ .sync_flags = ext2_sync_flags,
};
-diff -NurpP --minimal linux-2.6.18.2/fs/ext2/ialloc.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext2/ialloc.c
---- linux-2.6.18.2/fs/ext2/ialloc.c 2006-09-20 16:58:34 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext2/ialloc.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/ext2/ialloc.c 2006-09-20 16:58:34 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/ext2/ialloc.c 2006-09-20 17:01:44 +0200
@@ -17,6 +17,8 @@
#include <linux/backing-dev.h>
#include <linux/buffer_head.h>
@@ -2955,9 +2536,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/ext2/ialloc.c linux-2.6.18.2-vs2.0.2.2-r
make_bad_inode(inode);
iput(inode);
return ERR_PTR(err);
-diff -NurpP --minimal linux-2.6.18.2/fs/ext2/inode.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext2/inode.c
---- linux-2.6.18.2/fs/ext2/inode.c 2006-09-20 16:58:34 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext2/inode.c 2006-11-06 05:08:58 +0100
+--- linux-2.6.18.5/fs/ext2/inode.c 2006-09-20 16:58:34 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/ext2/inode.c 2006-11-06 05:08:58 +0100
@@ -31,6 +31,7 @@
#include <linux/writeback.h>
#include <linux/buffer_head.h>
@@ -3102,9 +2682,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/ext2/inode.c linux-2.6.18.2-vs2.0.2.2-rc
error = DQUOT_TRANSFER(inode, iattr) ? -EDQUOT : 0;
if (error)
return error;
-diff -NurpP --minimal linux-2.6.18.2/fs/ext2/ioctl.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext2/ioctl.c
---- linux-2.6.18.2/fs/ext2/ioctl.c 2006-04-09 13:49:53 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext2/ioctl.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/ext2/ioctl.c 2006-04-09 13:49:53 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/ext2/ioctl.c 2006-09-20 17:01:44 +0200
@@ -11,6 +11,7 @@
#include <linux/capability.h>
#include <linux/time.h>
@@ -3144,9 +2723,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/ext2/ioctl.c linux-2.6.18.2-vs2.0.2.2-rc
return -EROFS;
if (get_user(inode->i_generation, (int __user *) arg))
return -EFAULT;
-diff -NurpP --minimal linux-2.6.18.2/fs/ext2/namei.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext2/namei.c
---- linux-2.6.18.2/fs/ext2/namei.c 2006-06-18 04:54:33 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext2/namei.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/ext2/namei.c 2006-06-18 04:54:33 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/ext2/namei.c 2006-09-20 17:01:44 +0200
@@ -31,6 +31,7 @@
*/
@@ -3177,9 +2755,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/ext2/namei.c linux-2.6.18.2-vs2.0.2.2-rc
.permission = ext2_permission,
+ .sync_flags = ext2_sync_flags,
};
-diff -NurpP --minimal linux-2.6.18.2/fs/ext2/super.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext2/super.c
---- linux-2.6.18.2/fs/ext2/super.c 2006-09-20 16:58:34 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext2/super.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/ext2/super.c 2006-09-20 16:58:34 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/ext2/super.c 2006-09-20 17:01:44 +0200
@@ -325,7 +325,7 @@ enum {
Opt_err_ro, Opt_nouid32, Opt_nocheck, Opt_debug,
Opt_oldalloc, Opt_orlov, Opt_nobh, Opt_user_xattr, Opt_nouser_xattr,
@@ -3232,9 +2809,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/ext2/super.c linux-2.6.18.2-vs2.0.2.2-rc
sb->s_flags = (sb->s_flags & ~MS_POSIXACL) |
((sbi->s_mount_opt & EXT2_MOUNT_POSIX_ACL) ? MS_POSIXACL : 0);
-diff -NurpP --minimal linux-2.6.18.2/fs/ext2/symlink.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext2/symlink.c
---- linux-2.6.18.2/fs/ext2/symlink.c 2005-08-29 22:25:30 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext2/symlink.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/ext2/symlink.c 2005-08-29 22:25:30 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/ext2/symlink.c 2006-09-20 17:01:44 +0200
@@ -38,6 +38,7 @@ struct inode_operations ext2_symlink_ino
.listxattr = ext2_listxattr,
.removexattr = generic_removexattr,
@@ -3249,9 +2825,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/ext2/symlink.c linux-2.6.18.2-vs2.0.2.2-
#endif
+ .sync_flags = ext2_sync_flags,
};
-diff -NurpP --minimal linux-2.6.18.2/fs/ext2/xattr.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext2/xattr.c
---- linux-2.6.18.2/fs/ext2/xattr.c 2006-02-18 14:40:21 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext2/xattr.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/ext2/xattr.c 2006-02-18 14:40:21 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/ext2/xattr.c 2006-09-20 17:01:44 +0200
@@ -60,6 +60,7 @@
#include <linux/mbcache.h>
#include <linux/quotaops.h>
@@ -3289,9 +2864,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/ext2/xattr.c linux-2.6.18.2-vs2.0.2.2-rc
DQUOT_FREE_BLOCK(inode, 1);
}
EXT2_I(inode)->i_file_acl = 0;
-diff -NurpP --minimal linux-2.6.18.2/fs/ext3/balloc.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext3/balloc.c
---- linux-2.6.18.2/fs/ext3/balloc.c 2006-09-20 16:58:34 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext3/balloc.c 2006-10-16 19:06:32 +0200
+--- linux-2.6.18.5/fs/ext3/balloc.c 2006-09-20 16:58:34 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/ext3/balloc.c 2006-10-16 19:06:32 +0200
@@ -19,6 +19,7 @@
#include <linux/ext3_jbd.h>
#include <linux/quotaops.h>
@@ -3390,9 +2964,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/ext3/balloc.c linux-2.6.18.2-vs2.0.2.2-r
if (fatal) {
*errp = fatal;
ext3_std_error(sb, fatal);
-diff -NurpP --minimal linux-2.6.18.2/fs/ext3/file.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext3/file.c
---- linux-2.6.18.2/fs/ext3/file.c 2006-06-18 04:54:33 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext3/file.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/ext3/file.c 2006-06-18 04:54:33 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/ext3/file.c 2006-09-20 17:01:44 +0200
@@ -133,5 +133,6 @@ struct inode_operations ext3_file_inode_
.removexattr = generic_removexattr,
#endif
@@ -3400,9 +2973,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/ext3/file.c linux-2.6.18.2-vs2.0.2.2-rc6
+ .sync_flags = ext3_sync_flags,
};
-diff -NurpP --minimal linux-2.6.18.2/fs/ext3/ialloc.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext3/ialloc.c
---- linux-2.6.18.2/fs/ext3/ialloc.c 2006-09-20 16:58:34 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext3/ialloc.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/ext3/ialloc.c 2006-09-20 16:58:34 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/ext3/ialloc.c 2006-09-20 17:01:44 +0200
@@ -23,6 +23,8 @@
#include <linux/buffer_head.h>
#include <linux/random.h>
@@ -3460,9 +3032,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/ext3/ialloc.c linux-2.6.18.2-vs2.0.2.2-r
inode->i_flags |= S_NOQUOTA;
inode->i_nlink = 0;
iput(inode);
-diff -NurpP --minimal linux-2.6.18.2/fs/ext3/inode.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext3/inode.c
---- linux-2.6.18.2/fs/ext3/inode.c 2006-09-20 16:58:34 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext3/inode.c 2006-11-06 05:08:58 +0100
+--- linux-2.6.18.5/fs/ext3/inode.c 2006-09-20 16:58:34 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/ext3/inode.c 2006-11-06 05:08:58 +0100
@@ -36,6 +36,7 @@
#include <linux/writeback.h>
#include <linux/mpage.h>
@@ -3659,9 +3230,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/ext3/inode.c linux-2.6.18.2-vs2.0.2.2-rc
error = ext3_mark_inode_dirty(handle, inode);
ext3_journal_stop(handle);
}
-diff -NurpP --minimal linux-2.6.18.2/fs/ext3/ioctl.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext3/ioctl.c
---- linux-2.6.18.2/fs/ext3/ioctl.c 2006-09-20 16:58:34 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext3/ioctl.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/ext3/ioctl.c 2006-09-20 16:58:34 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/ext3/ioctl.c 2006-09-20 17:01:44 +0200
@@ -8,11 +8,13 @@
*/
@@ -3776,9 +3346,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/ext3/ioctl.c linux-2.6.18.2-vs2.0.2.2-rc
default:
return -ENOTTY;
-diff -NurpP --minimal linux-2.6.18.2/fs/ext3/namei.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext3/namei.c
---- linux-2.6.18.2/fs/ext3/namei.c 2006-09-20 16:58:34 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext3/namei.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/ext3/namei.c 2006-09-20 16:58:34 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/ext3/namei.c 2006-09-20 17:01:44 +0200
@@ -36,6 +36,7 @@
#include <linux/quotaops.h>
#include <linux/buffer_head.h>
@@ -3809,9 +3378,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/ext3/namei.c linux-2.6.18.2-vs2.0.2.2-rc
.permission = ext3_permission,
+ .sync_flags = ext3_sync_flags,
};
-diff -NurpP --minimal linux-2.6.18.2/fs/ext3/super.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext3/super.c
---- linux-2.6.18.2/fs/ext3/super.c 2006-09-20 16:58:34 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext3/super.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/ext3/super.c 2006-09-20 16:58:34 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/ext3/super.c 2006-09-20 17:01:44 +0200
@@ -677,7 +677,7 @@ enum {
Opt_usrjquota, Opt_grpjquota, Opt_offusrjquota, Opt_offgrpjquota,
Opt_jqfmt_vfsold, Opt_jqfmt_vfsv0, Opt_quota, Opt_noquota,
@@ -3864,9 +3432,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/ext3/super.c linux-2.6.18.2-vs2.0.2.2-rc
sb->s_flags = (sb->s_flags & ~MS_POSIXACL) |
((sbi->s_mount_opt & EXT3_MOUNT_POSIX_ACL) ? MS_POSIXACL : 0);
-diff -NurpP --minimal linux-2.6.18.2/fs/ext3/symlink.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext3/symlink.c
---- linux-2.6.18.2/fs/ext3/symlink.c 2005-08-29 22:25:30 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext3/symlink.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/ext3/symlink.c 2005-08-29 22:25:30 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/ext3/symlink.c 2006-09-20 17:01:44 +0200
@@ -40,6 +40,7 @@ struct inode_operations ext3_symlink_ino
.listxattr = ext3_listxattr,
.removexattr = generic_removexattr,
@@ -3881,9 +3448,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/ext3/symlink.c linux-2.6.18.2-vs2.0.2.2-
#endif
+ .sync_flags = ext3_sync_flags,
};
-diff -NurpP --minimal linux-2.6.18.2/fs/ext3/xattr.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext3/xattr.c
---- linux-2.6.18.2/fs/ext3/xattr.c 2006-09-20 16:58:34 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/ext3/xattr.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/ext3/xattr.c 2006-09-20 16:58:34 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/ext3/xattr.c 2006-09-20 17:01:44 +0200
@@ -58,6 +58,7 @@
#include <linux/mbcache.h>
#include <linux/quotaops.h>
@@ -3925,9 +3491,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/ext3/xattr.c linux-2.6.18.2-vs2.0.2.2-rc
goto cleanup;
bad_block:
-diff -NurpP --minimal linux-2.6.18.2/fs/fcntl.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/fcntl.c
---- linux-2.6.18.2/fs/fcntl.c 2006-06-18 04:54:34 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/fcntl.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/fcntl.c 2006-06-18 04:54:34 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/fcntl.c 2006-09-20 17:01:44 +0200
@@ -18,6 +18,7 @@
#include <linux/ptrace.h>
#include <linux/signal.h>
@@ -3981,9 +3546,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/fcntl.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/
if (p) {
send_sigurg_to_task(p, fown);
}
-diff -NurpP --minimal linux-2.6.18.2/fs/file_table.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/file_table.c
---- linux-2.6.18.2/fs/file_table.c 2006-09-20 16:58:34 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/file_table.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/file_table.c 2006-09-20 16:58:34 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/file_table.c 2006-09-20 17:01:44 +0200
@@ -21,6 +21,8 @@
#include <linux/fsnotify.h>
#include <linux/sysctl.h>
@@ -4020,9 +3584,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/file_table.c linux-2.6.18.2-vs2.0.2.2-rc
file_kill(file);
file_free(file);
}
-diff -NurpP --minimal linux-2.6.18.2/fs/hfsplus/ioctl.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/hfsplus/ioctl.c
---- linux-2.6.18.2/fs/hfsplus/ioctl.c 2006-04-09 13:49:53 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/hfsplus/ioctl.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/hfsplus/ioctl.c 2006-04-09 13:49:53 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/hfsplus/ioctl.c 2006-09-20 17:01:44 +0200
@@ -16,6 +16,7 @@
#include <linux/fs.h>
#include <linux/sched.h>
@@ -4041,9 +3604,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/hfsplus/ioctl.c linux-2.6.18.2-vs2.0.2.2
return -EROFS;
if ((current->fsuid != inode->i_uid) && !capable(CAP_FOWNER))
-diff -NurpP --minimal linux-2.6.18.2/fs/inode.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/inode.c
---- linux-2.6.18.2/fs/inode.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/inode.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/inode.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/inode.c 2006-09-20 17:01:44 +0200
@@ -115,6 +115,9 @@ static struct inode *alloc_inode(struct
struct address_space * const mapping = &inode->i_data;
@@ -4063,9 +3625,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/inode.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/
/**
* clear_inode - clear an inode
* @inode: inode to clear
-diff -NurpP --minimal linux-2.6.18.2/fs/ioctl.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/ioctl.c
---- linux-2.6.18.2/fs/ioctl.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/ioctl.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/ioctl.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/ioctl.c 2006-09-20 17:01:44 +0200
@@ -12,10 +12,19 @@
#include <linux/fs.h>
#include <linux/security.h>
@@ -4135,9 +3696,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/ioctl.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/
default:
if (S_ISREG(filp->f_dentry->d_inode->i_mode))
error = file_ioctl(filp, cmd, arg);
-diff -NurpP --minimal linux-2.6.18.2/fs/ioprio.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/ioprio.c
---- linux-2.6.18.2/fs/ioprio.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/ioprio.c 2006-10-18 01:19:40 +0200
+--- linux-2.6.18.5/fs/ioprio.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/ioprio.c 2006-10-18 01:19:40 +0200
@@ -104,7 +104,7 @@ asmlinkage long sys_ioprio_set(int which
if (!who)
user = current->user;
@@ -4156,9 +3716,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/ioprio.c linux-2.6.18.2-vs2.0.2.2-rc6/fs
if (!user)
break;
-diff -NurpP --minimal linux-2.6.18.2/fs/jfs/acl.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/acl.c
---- linux-2.6.18.2/fs/jfs/acl.c 2006-06-18 04:54:36 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/acl.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/jfs/acl.c 2006-06-18 04:54:36 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/jfs/acl.c 2006-09-20 17:01:44 +0200
@@ -232,7 +232,8 @@ int jfs_setattr(struct dentry *dentry, s
return rc;
@@ -4169,9 +3728,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/jfs/acl.c linux-2.6.18.2-vs2.0.2.2-rc6/f
if (DQUOT_TRANSFER(inode, iattr))
return -EDQUOT;
}
-diff -NurpP --minimal linux-2.6.18.2/fs/jfs/file.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/file.c
---- linux-2.6.18.2/fs/jfs/file.c 2006-06-18 04:54:36 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/file.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/jfs/file.c 2006-06-18 04:54:36 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/jfs/file.c 2006-09-20 17:01:44 +0200
@@ -98,6 +98,7 @@ struct inode_operations jfs_file_inode_o
.setattr = jfs_setattr,
.permission = jfs_permission,
@@ -4180,9 +3738,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/jfs/file.c linux-2.6.18.2-vs2.0.2.2-rc6/
};
const struct file_operations jfs_file_operations = {
-diff -NurpP --minimal linux-2.6.18.2/fs/jfs/inode.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/inode.c
---- linux-2.6.18.2/fs/jfs/inode.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/inode.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/jfs/inode.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/jfs/inode.c 2006-09-20 17:01:44 +0200
@@ -22,6 +22,7 @@
#include <linux/buffer_head.h>
#include <linux/pagemap.h>
@@ -4199,9 +3756,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/jfs/inode.c linux-2.6.18.2-vs2.0.2.2-rc6
}
clear_inode(inode);
-diff -NurpP --minimal linux-2.6.18.2/fs/jfs/ioctl.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/ioctl.c
---- linux-2.6.18.2/fs/jfs/ioctl.c 2006-06-18 04:54:36 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/ioctl.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/jfs/ioctl.c 2006-06-18 04:54:36 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/jfs/ioctl.c 2006-09-20 17:01:44 +0200
@@ -10,6 +10,7 @@
#include <linux/ctype.h>
#include <linux/capability.h>
@@ -4231,9 +3787,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/jfs/ioctl.c linux-2.6.18.2-vs2.0.2.2-rc6
if (!capable(CAP_LINUX_IMMUTABLE))
return -EPERM;
}
-diff -NurpP --minimal linux-2.6.18.2/fs/jfs/jfs_dinode.h linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/jfs_dinode.h
---- linux-2.6.18.2/fs/jfs/jfs_dinode.h 2006-06-18 04:54:36 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/jfs_dinode.h 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/jfs/jfs_dinode.h 2006-06-18 04:54:36 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/jfs/jfs_dinode.h 2006-09-20 17:01:44 +0200
@@ -162,9 +162,12 @@ struct dinode {
#define JFS_APPEND_FL 0x01000000 /* writes to file may only append */
#define JFS_IMMUTABLE_FL 0x02000000 /* Immutable file */
@@ -4249,9 +3804,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/jfs/jfs_dinode.h linux-2.6.18.2-vs2.0.2.
/* These are identical to EXT[23]_IOC_GETFLAGS/SETFLAGS */
#define JFS_IOC_GETFLAGS _IOR('f', 1, long)
-diff -NurpP --minimal linux-2.6.18.2/fs/jfs/jfs_dtree.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/jfs_dtree.c
---- linux-2.6.18.2/fs/jfs/jfs_dtree.c 2006-06-18 04:54:36 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/jfs_dtree.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/jfs/jfs_dtree.c 2006-06-18 04:54:36 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/jfs/jfs_dtree.c 2006-09-20 17:01:44 +0200
@@ -102,6 +102,7 @@
#include <linux/fs.h>
@@ -4361,9 +3915,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/jfs/jfs_dtree.c linux-2.6.18.2-vs2.0.2.2
/* Free quota allocation */
DQUOT_FREE_BLOCK(ip, xlen);
-diff -NurpP --minimal linux-2.6.18.2/fs/jfs/jfs_extent.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/jfs_extent.c
---- linux-2.6.18.2/fs/jfs/jfs_extent.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/jfs_extent.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/jfs/jfs_extent.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/jfs/jfs_extent.c 2006-09-20 17:01:44 +0200
@@ -18,6 +18,7 @@
#include <linux/fs.h>
@@ -4424,9 +3977,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/jfs/jfs_extent.c linux-2.6.18.2-vs2.0.2.
DQUOT_FREE_BLOCK(ip, nxlen);
goto exit;
}
-diff -NurpP --minimal linux-2.6.18.2/fs/jfs/jfs_filsys.h linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/jfs_filsys.h
---- linux-2.6.18.2/fs/jfs/jfs_filsys.h 2005-10-28 20:49:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/jfs_filsys.h 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/jfs/jfs_filsys.h 2005-10-28 20:49:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/jfs/jfs_filsys.h 2006-09-20 17:01:44 +0200
@@ -84,6 +84,7 @@
#define JFS_DIR_INDEX 0x00200000 /* Persistant index for */
/* directory entries */
@@ -4435,9 +3987,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/jfs/jfs_filsys.h linux-2.6.18.2-vs2.0.2.
/*
* buffer cache configuration
-diff -NurpP --minimal linux-2.6.18.2/fs/jfs/jfs_imap.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/jfs_imap.c
---- linux-2.6.18.2/fs/jfs/jfs_imap.c 2006-11-04 19:43:23 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/jfs_imap.c 2006-11-06 04:47:17 +0100
+--- linux-2.6.18.5/fs/jfs/jfs_imap.c 2006-12-04 06:13:51 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/jfs/jfs_imap.c 2006-11-06 04:47:17 +0100
@@ -45,6 +45,7 @@
#include <linux/buffer_head.h>
#include <linux/pagemap.h>
@@ -4497,9 +4048,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/jfs/jfs_imap.c linux-2.6.18.2-vs2.0.2.2-
/*
* mode2 is only needed for storing the higher order bits.
* Trust i_mode for the lower order ones
-diff -NurpP --minimal linux-2.6.18.2/fs/jfs/jfs_inode.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/jfs_inode.c
---- linux-2.6.18.2/fs/jfs/jfs_inode.c 2006-06-18 04:54:36 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/jfs_inode.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/jfs/jfs_inode.c 2006-06-18 04:54:36 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/jfs/jfs_inode.c 2006-09-20 17:01:44 +0200
@@ -18,6 +18,8 @@
#include <linux/fs.h>
@@ -4591,9 +4141,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/jfs/jfs_inode.c linux-2.6.18.2-vs2.0.2.2
DQUOT_DROP(inode);
inode->i_flags |= S_NOQUOTA;
inode->i_nlink = 0;
-diff -NurpP --minimal linux-2.6.18.2/fs/jfs/jfs_inode.h linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/jfs_inode.h
---- linux-2.6.18.2/fs/jfs/jfs_inode.h 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/jfs_inode.h 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/jfs/jfs_inode.h 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/jfs/jfs_inode.h 2006-09-20 17:01:44 +0200
@@ -31,6 +31,7 @@ extern void jfs_truncate(struct inode *)
extern void jfs_truncate_nolock(struct inode *, loff_t);
extern void jfs_free_zero_link(struct inode *);
@@ -4602,9 +4151,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/jfs/jfs_inode.h linux-2.6.18.2-vs2.0.2.2
extern void jfs_set_inode_flags(struct inode *);
extern int jfs_get_block(struct inode *, sector_t, struct buffer_head *, int);
-diff -NurpP --minimal linux-2.6.18.2/fs/jfs/jfs_xtree.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/jfs_xtree.c
---- linux-2.6.18.2/fs/jfs/jfs_xtree.c 2006-01-03 17:29:57 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/jfs_xtree.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/jfs/jfs_xtree.c 2006-01-03 17:29:57 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/jfs/jfs_xtree.c 2006-09-20 17:01:44 +0200
@@ -21,6 +21,7 @@
#include <linux/fs.h>
@@ -4688,9 +4236,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/jfs/jfs_xtree.c linux-2.6.18.2-vs2.0.2.2
/* update quota allocation to reflect freed blocks */
DQUOT_FREE_BLOCK(ip, nfreed);
-diff -NurpP --minimal linux-2.6.18.2/fs/jfs/namei.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/namei.c
---- linux-2.6.18.2/fs/jfs/namei.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/namei.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/jfs/namei.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/jfs/namei.c 2006-09-20 17:01:44 +0200
@@ -20,6 +20,7 @@
#include <linux/fs.h>
#include <linux/ctype.h>
@@ -4715,9 +4262,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/jfs/namei.c linux-2.6.18.2-vs2.0.2.2-rc6
};
const struct file_operations jfs_dir_operations = {
-diff -NurpP --minimal linux-2.6.18.2/fs/jfs/super.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/super.c
---- linux-2.6.18.2/fs/jfs/super.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/super.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/jfs/super.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/jfs/super.c 2006-09-20 17:01:44 +0200
@@ -194,7 +194,8 @@ static void jfs_put_super(struct super_b
enum {
Opt_integrity, Opt_nointegrity, Opt_iocharset, Opt_resize,
@@ -4772,9 +4318,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/jfs/super.c linux-2.6.18.2-vs2.0.2.2-rc6
if (newLVSize) {
printk(KERN_ERR "resize option for remount only\n");
-diff -NurpP --minimal linux-2.6.18.2/fs/jfs/xattr.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/xattr.c
---- linux-2.6.18.2/fs/jfs/xattr.c 2006-06-18 04:54:36 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/jfs/xattr.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/jfs/xattr.c 2006-06-18 04:54:36 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/jfs/xattr.c 2006-09-20 17:01:44 +0200
@@ -23,6 +23,7 @@
#include <linux/posix_acl_xattr.h>
#include <linux/quotaops.h>
@@ -4852,9 +4397,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/jfs/xattr.c linux-2.6.18.2-vs2.0.2.2-rc6
inode->i_ctime = CURRENT_TIME;
-diff -NurpP --minimal linux-2.6.18.2/fs/libfs.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/libfs.c
---- linux-2.6.18.2/fs/libfs.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/libfs.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/libfs.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/libfs.c 2006-09-20 17:01:44 +0200
@@ -124,7 +124,8 @@ static inline unsigned char dt_type(stru
* both impossible due to the lock on directory.
*/
@@ -4901,9 +4445,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/libfs.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/
EXPORT_SYMBOL(generic_read_dir);
EXPORT_SYMBOL(get_sb_pseudo);
EXPORT_SYMBOL(simple_commit_write);
-diff -NurpP --minimal linux-2.6.18.2/fs/lockd/clntproc.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/lockd/clntproc.c
---- linux-2.6.18.2/fs/lockd/clntproc.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/lockd/clntproc.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/lockd/clntproc.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/lockd/clntproc.c 2006-09-20 17:01:44 +0200
@@ -17,6 +17,7 @@
#include <linux/sunrpc/svc.h>
#include <linux/lockd/lockd.h>
@@ -4926,9 +4469,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/lockd/clntproc.c linux-2.6.18.2-vs2.0.2.
lock->svid = fl->fl_u.nfs_fl.owner->pid;
lock->fl.fl_start = fl->fl_start;
lock->fl.fl_end = fl->fl_end;
-diff -NurpP --minimal linux-2.6.18.2/fs/locks.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/locks.c
---- linux-2.6.18.2/fs/locks.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/locks.c 2006-09-20 18:02:37 +0200
+--- linux-2.6.18.5/fs/locks.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/locks.c 2006-09-20 18:02:37 +0200
@@ -125,6 +125,7 @@
#include <linux/syscalls.h>
#include <linux/time.h>
@@ -5087,9 +4629,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/locks.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/
lock_get_status(q, fl, ++i, "");
move_lock_status(&q, &pos, offset);
-diff -NurpP --minimal linux-2.6.18.2/fs/namei.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/namei.c
---- linux-2.6.18.2/fs/namei.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/namei.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/namei.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/namei.c 2006-11-21 10:50:41 +0100
@@ -32,6 +32,9 @@
#include <linux/file.h>
#include <linux/fcntl.h>
@@ -5106,7 +4647,7 @@ diff -NurpP --minimal linux-2.6.18.2/fs/namei.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/
+static inline int vx_barrier(struct inode *inode)
+{
-+ if (IS_BARRIER(inode) && !vx_check(0, VX_ADMIN)) {
++ if (IS_BARRIER(inode) && !vx_check(0, VX_ADMIN|VX_WATCH)) {
+ vxwprintk(1, "xid=%d did hit the barrier.",
+ vx_current_xid());
+ return 1;
@@ -5424,9 +4965,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/namei.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/
new_dentry = lookup_hash(&newnd);
error = PTR_ERR(new_dentry);
if (IS_ERR(new_dentry))
-diff -NurpP --minimal linux-2.6.18.2/fs/namespace.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/namespace.c
---- linux-2.6.18.2/fs/namespace.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/namespace.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/namespace.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/namespace.c 2006-09-20 17:01:44 +0200
@@ -22,6 +22,8 @@
#include <linux/namei.h>
#include <linux/security.h>
@@ -5738,9 +5278,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/namespace.c linux-2.6.18.2-vs2.0.2.2-rc6
err = -EPERM;
goto out;
}
-diff -NurpP --minimal linux-2.6.18.2/fs/nfs/dir.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/nfs/dir.c
---- linux-2.6.18.2/fs/nfs/dir.c 2006-11-04 19:43:23 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/nfs/dir.c 2006-11-06 04:47:17 +0100
+--- linux-2.6.18.5/fs/nfs/dir.c 2006-12-04 06:13:51 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/nfs/dir.c 2006-11-06 04:47:17 +0100
@@ -28,9 +28,11 @@
#include <linux/sunrpc/clnt.h>
#include <linux/nfs_fs.h>
@@ -5771,9 +5310,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/nfs/dir.c linux-2.6.18.2-vs2.0.2.2-rc6/f
return 0;
return 1;
}
-diff -NurpP --minimal linux-2.6.18.2/fs/nfs/inode.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/nfs/inode.c
---- linux-2.6.18.2/fs/nfs/inode.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/nfs/inode.c 2006-09-21 01:31:36 +0200
+--- linux-2.6.18.5/fs/nfs/inode.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/nfs/inode.c 2006-09-21 01:31:36 +0200
@@ -37,6 +37,7 @@
#include <linux/vfs.h>
#include <linux/inet.h>
@@ -5868,9 +5406,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/nfs/inode.c linux-2.6.18.2-vs2.0.2.2-rc6
if (fattr->valid & (NFS_ATTR_FATTR_V3 | NFS_ATTR_FATTR_V4)) {
/*
-diff -NurpP --minimal linux-2.6.18.2/fs/nfs/nfs3xdr.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/nfs/nfs3xdr.c
---- linux-2.6.18.2/fs/nfs/nfs3xdr.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/nfs/nfs3xdr.c 2006-09-20 19:47:41 +0200
+--- linux-2.6.18.5/fs/nfs/nfs3xdr.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/nfs/nfs3xdr.c 2006-09-20 19:47:41 +0200
@@ -22,6 +22,7 @@
#include <linux/nfs3.h>
#include <linux/nfs_fs.h>
@@ -5960,9 +5497,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/nfs/nfs3xdr.c linux-2.6.18.2-vs2.0.2.2-r
if (args->type == NF3CHR || args->type == NF3BLK) {
*p++ = htonl(MAJOR(args->rdev));
*p++ = htonl(MINOR(args->rdev));
-diff -NurpP --minimal linux-2.6.18.2/fs/nfs/nfsroot.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/nfs/nfsroot.c
---- linux-2.6.18.2/fs/nfs/nfsroot.c 2006-02-18 14:40:23 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/nfs/nfsroot.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/nfs/nfsroot.c 2006-02-18 14:40:23 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/nfs/nfsroot.c 2006-09-20 17:01:44 +0200
@@ -87,6 +87,7 @@
#include <linux/root_dev.h>
#include <net/ipconfig.h>
@@ -6009,9 +5545,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/nfs/nfsroot.c linux-2.6.18.2-vs2.0.2.2-r
if (strlen(buf) + strlen(cp) > NFS_MAXPATHLEN) {
printk(KERN_ERR "Root-NFS: Pathname for remote directory too long.\n");
return -1;
-diff -NurpP --minimal linux-2.6.18.2/fs/nfs/super.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/nfs/super.c
---- linux-2.6.18.2/fs/nfs/super.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/nfs/super.c 2006-09-20 20:28:12 +0200
+--- linux-2.6.18.5/fs/nfs/super.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/nfs/super.c 2006-09-20 20:28:12 +0200
@@ -40,6 +40,7 @@
#include <linux/vfs.h>
#include <linux/inet.h>
@@ -6051,9 +5586,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/nfs/super.c linux-2.6.18.2-vs2.0.2.2-rc6
return clnt;
-diff -NurpP --minimal linux-2.6.18.2/fs/nfsd/auth.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/nfsd/auth.c
---- linux-2.6.18.2/fs/nfsd/auth.c 2006-06-18 04:54:42 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/nfsd/auth.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/nfsd/auth.c 2006-06-18 04:54:42 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/nfsd/auth.c 2006-09-20 17:01:44 +0200
@@ -9,6 +9,7 @@
#include <linux/sunrpc/svc.h>
#include <linux/sunrpc/svcauth.h>
@@ -6088,9 +5622,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/nfsd/auth.c linux-2.6.18.2-vs2.0.2.2-rc6
cap_t(current->cap_effective) &= ~CAP_NFSD_MASK;
} else {
cap_t(current->cap_effective) |= (CAP_NFSD_MASK &
-diff -NurpP --minimal linux-2.6.18.2/fs/nfsd/nfs3xdr.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/nfsd/nfs3xdr.c
---- linux-2.6.18.2/fs/nfsd/nfs3xdr.c 2006-04-09 13:49:54 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/nfsd/nfs3xdr.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/nfsd/nfs3xdr.c 2006-04-09 13:49:54 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/nfsd/nfs3xdr.c 2006-09-20 17:01:44 +0200
@@ -21,6 +21,7 @@
#include <linux/sunrpc/svc.h>
#include <linux/nfsd/nfsd.h>
@@ -6139,9 +5672,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/nfsd/nfs3xdr.c linux-2.6.18.2-vs2.0.2.2-
if (S_ISLNK(stat->mode) && stat->size > NFS3_MAXPATHLEN) {
p = xdr_encode_hyper(p, (u64) NFS3_MAXPATHLEN);
} else {
-diff -NurpP --minimal linux-2.6.18.2/fs/nfsd/nfs4recover.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/nfsd/nfs4recover.c
---- linux-2.6.18.2/fs/nfsd/nfs4recover.c 2006-02-18 14:40:23 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/nfsd/nfs4recover.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/nfsd/nfs4recover.c 2006-02-18 14:40:23 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/nfsd/nfs4recover.c 2006-09-20 17:01:44 +0200
@@ -155,7 +155,7 @@ nfsd4_create_clid_dir(struct nfs4_client
dprintk("NFSD: nfsd4_create_clid_dir: DIRECTORY EXISTS\n");
goto out_put;
@@ -6169,9 +5701,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/nfsd/nfs4recover.c linux-2.6.18.2-vs2.0.
mutex_unlock(&dir->d_inode->i_mutex);
return status;
}
-diff -NurpP --minimal linux-2.6.18.2/fs/nfsd/nfs4xdr.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/nfsd/nfs4xdr.c
---- linux-2.6.18.2/fs/nfsd/nfs4xdr.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/nfsd/nfs4xdr.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/nfsd/nfs4xdr.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/nfsd/nfs4xdr.c 2006-09-20 17:01:44 +0200
@@ -57,6 +57,7 @@
#include <linux/nfsd_idmap.h>
#include <linux/nfs4.h>
@@ -6201,9 +5732,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/nfsd/nfs4xdr.c linux-2.6.18.2-vs2.0.2.2-
if (status == nfserr_resource)
goto out_resource;
if (status)
-diff -NurpP --minimal linux-2.6.18.2/fs/nfsd/nfsxdr.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/nfsd/nfsxdr.c
---- linux-2.6.18.2/fs/nfsd/nfsxdr.c 2006-04-09 13:49:54 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/nfsd/nfsxdr.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/nfsd/nfsxdr.c 2006-04-09 13:49:54 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/nfsd/nfsxdr.c 2006-09-20 17:01:44 +0200
@@ -15,6 +15,7 @@
#include <linux/nfsd/nfsd.h>
#include <linux/nfsd/xdr.h>
@@ -6252,9 +5782,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/nfsd/nfsxdr.c linux-2.6.18.2-vs2.0.2.2-r
if (S_ISLNK(type) && stat->size > NFS_MAXPATHLEN) {
*p++ = htonl(NFS_MAXPATHLEN);
-diff -NurpP --minimal linux-2.6.18.2/fs/nfsd/vfs.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/nfsd/vfs.c
---- linux-2.6.18.2/fs/nfsd/vfs.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/nfsd/vfs.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/nfsd/vfs.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/nfsd/vfs.c 2006-09-20 17:01:44 +0200
@@ -1158,13 +1158,13 @@ nfsd_create(struct svc_rqst *rqstp, stru
err = vfs_create(dirp, dchild, iap->ia_mode, NULL);
break;
@@ -6318,9 +5847,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/nfsd/vfs.c linux-2.6.18.2-vs2.0.2.2-rc6/
return nfserr_rofs;
if (/* (acc & MAY_WRITE) && */ IS_IMMUTABLE(inode))
return nfserr_perm;
-diff -NurpP --minimal linux-2.6.18.2/fs/open.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/open.c
---- linux-2.6.18.2/fs/open.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/open.c 2006-09-20 21:05:31 +0200
+--- linux-2.6.18.5/fs/open.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/open.c 2006-09-20 21:05:31 +0200
@@ -28,6 +28,9 @@
#include <linux/syscalls.h>
#include <linux/rcupdate.h>
@@ -6494,9 +6022,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/open.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/o
}
void fastcall put_unused_fd(unsigned int fd)
-diff -NurpP --minimal linux-2.6.18.2/fs/proc/array.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/proc/array.c
---- linux-2.6.18.2/fs/proc/array.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/proc/array.c 2006-10-25 03:43:38 +0200
+--- linux-2.6.18.5/fs/proc/array.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/proc/array.c 2006-10-25 03:43:38 +0200
@@ -75,6 +75,8 @@
#include <linux/cpuset.h>
#include <linux/rcupdate.h>
@@ -6658,9 +6185,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/proc/array.c linux-2.6.18.2-vs2.0.2.2-rc
tcomm,
state,
ppid,
-diff -NurpP --minimal linux-2.6.18.2/fs/proc/base.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/proc/base.c
---- linux-2.6.18.2/fs/proc/base.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/proc/base.c 2006-11-06 05:36:38 +0100
+--- linux-2.6.18.5/fs/proc/base.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/proc/base.c 2006-11-06 05:36:38 +0100
@@ -71,6 +71,9 @@
#include <linux/cpuset.h>
#include <linux/audit.h>
@@ -6914,9 +6440,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/proc/base.c linux-2.6.18.2-vs2.0.2.2-rc6
len = snprintf(buf, sizeof(buf), "%d", tid);
ino = fake_ino(tid, PROC_TID_INO);
if (filldir(dirent, buf, len, pos, ino, DT_DIR < 0)) {
-diff -NurpP --minimal linux-2.6.18.2/fs/proc/generic.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/proc/generic.c
---- linux-2.6.18.2/fs/proc/generic.c 2006-06-18 04:54:45 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/proc/generic.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/proc/generic.c 2006-06-18 04:54:45 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/proc/generic.c 2006-09-20 17:01:44 +0200
@@ -20,6 +20,7 @@
#include <linux/namei.h>
#include <linux/bitops.h>
@@ -6976,9 +6501,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/proc/generic.c linux-2.6.18.2-vs2.0.2.2-
} else {
kfree(ent);
ent = NULL;
-diff -NurpP --minimal linux-2.6.18.2/fs/proc/inode.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/proc/inode.c
---- linux-2.6.18.2/fs/proc/inode.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/proc/inode.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/proc/inode.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/proc/inode.c 2006-09-20 17:01:44 +0200
@@ -168,6 +168,8 @@ struct inode *proc_get_inode(struct supe
inode->i_uid = de->uid;
inode->i_gid = de->gid;
@@ -6988,9 +6512,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/proc/inode.c linux-2.6.18.2-vs2.0.2.2-rc
if (de->size)
inode->i_size = de->size;
if (de->nlink)
-diff -NurpP --minimal linux-2.6.18.2/fs/proc/internal.h linux-2.6.18.2-vs2.0.2.2-rc6/fs/proc/internal.h
---- linux-2.6.18.2/fs/proc/internal.h 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/proc/internal.h 2006-11-06 05:08:58 +0100
+--- linux-2.6.18.5/fs/proc/internal.h 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/proc/internal.h 2006-11-06 05:08:58 +0100
@@ -10,6 +10,7 @@
*/
@@ -7008,9 +6531,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/proc/internal.h linux-2.6.18.2-vs2.0.2.2
}
static inline int proc_fd(struct inode *inode)
-diff -NurpP --minimal linux-2.6.18.2/fs/proc/proc_misc.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/proc/proc_misc.c
---- linux-2.6.18.2/fs/proc/proc_misc.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/proc/proc_misc.c 2006-10-25 03:50:01 +0200
+--- linux-2.6.18.5/fs/proc/proc_misc.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/proc/proc_misc.c 2006-10-25 03:50:01 +0200
@@ -81,17 +81,32 @@ static int proc_calc_metrics(char *page,
static int loadavg_read_proc(char *page, char **start, off_t off,
int count, int *eof, void *data)
@@ -7080,9 +6602,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/proc/proc_misc.c linux-2.6.18.2-vs2.0.2.
return proc_calc_metrics(page, start, off, count, eof, len);
}
-diff -NurpP --minimal linux-2.6.18.2/fs/proc/root.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/proc/root.c
---- linux-2.6.18.2/fs/proc/root.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/proc/root.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/proc/root.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/proc/root.c 2006-09-20 17:01:44 +0200
@@ -24,6 +24,9 @@ struct proc_dir_entry *proc_net, *proc_n
#ifdef CONFIG_SYSCTL
struct proc_dir_entry *proc_sys_root;
@@ -7101,9 +6622,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/proc/root.c linux-2.6.18.2-vs2.0.2.2-rc6
}
static int proc_root_getattr(struct vfsmount *mnt, struct dentry *dentry, struct kstat *stat
-diff -NurpP --minimal linux-2.6.18.2/fs/quota.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/quota.c
---- linux-2.6.18.2/fs/quota.c 2006-06-18 04:54:47 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/quota.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/quota.c 2006-06-18 04:54:47 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/quota.c 2006-09-20 17:01:44 +0200
@@ -17,6 +17,9 @@
#include <linux/buffer_head.h>
#include <linux/capability.h>
@@ -7209,9 +6729,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/quota.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/
sb = get_super(bdev);
bdput(bdev);
if (!sb)
-diff -NurpP --minimal linux-2.6.18.2/fs/reiserfs/bitmap.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/reiserfs/bitmap.c
---- linux-2.6.18.2/fs/reiserfs/bitmap.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/reiserfs/bitmap.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/reiserfs/bitmap.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/reiserfs/bitmap.c 2006-09-20 17:01:44 +0200
@@ -12,6 +12,7 @@
#include <linux/reiserfs_fs_sb.h>
#include <linux/reiserfs_fs_i.h>
@@ -7304,18 +6823,16 @@ diff -NurpP --minimal linux-2.6.18.2/fs/reiserfs/bitmap.c linux-2.6.18.2-vs2.0.2
}
return CARRY_ON;
-diff -NurpP --minimal linux-2.6.18.2/fs/reiserfs/file.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/reiserfs/file.c
---- linux-2.6.18.2/fs/reiserfs/file.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/reiserfs/file.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/reiserfs/file.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/reiserfs/file.c 2006-09-20 17:01:44 +0200
@@ -1586,4 +1586,5 @@ struct inode_operations reiserfs_file_in
.listxattr = reiserfs_listxattr,
.removexattr = reiserfs_removexattr,
.permission = reiserfs_permission,
+ .sync_flags = reiserfs_sync_flags,
};
-diff -NurpP --minimal linux-2.6.18.2/fs/reiserfs/inode.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/reiserfs/inode.c
---- linux-2.6.18.2/fs/reiserfs/inode.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/reiserfs/inode.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/reiserfs/inode.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/reiserfs/inode.c 2006-09-20 17:01:44 +0200
@@ -16,6 +16,8 @@
#include <linux/mpage.h>
#include <linux/writeback.h>
@@ -7499,9 +7016,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/reiserfs/inode.c linux-2.6.18.2-vs2.0.2.
mark_inode_dirty(inode);
error =
journal_end(&th, inode->i_sb, jbegin_count);
-diff -NurpP --minimal linux-2.6.18.2/fs/reiserfs/ioctl.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/reiserfs/ioctl.c
---- linux-2.6.18.2/fs/reiserfs/ioctl.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/reiserfs/ioctl.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/reiserfs/ioctl.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/reiserfs/ioctl.c 2006-09-20 17:01:44 +0200
@@ -4,6 +4,7 @@
#include <linux/capability.h>
@@ -7572,9 +7088,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/reiserfs/ioctl.c linux-2.6.18.2-vs2.0.2.
return -EROFS;
if (get_user(inode->i_generation, (int __user *)arg))
return -EFAULT;
-diff -NurpP --minimal linux-2.6.18.2/fs/reiserfs/namei.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/reiserfs/namei.c
---- linux-2.6.18.2/fs/reiserfs/namei.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/reiserfs/namei.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/reiserfs/namei.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/reiserfs/namei.c 2006-09-20 17:01:44 +0200
@@ -18,6 +18,7 @@
#include <linux/reiserfs_xattr.h>
#include <linux/smp_lock.h>
@@ -7622,9 +7137,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/reiserfs/namei.c linux-2.6.18.2-vs2.0.2.
+ .sync_flags = reiserfs_sync_flags,
};
-diff -NurpP --minimal linux-2.6.18.2/fs/reiserfs/stree.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/reiserfs/stree.c
---- linux-2.6.18.2/fs/reiserfs/stree.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/reiserfs/stree.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/reiserfs/stree.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/reiserfs/stree.c 2006-09-20 17:01:44 +0200
@@ -56,6 +56,7 @@
#include <linux/smp_lock.h>
#include <linux/buffer_head.h>
@@ -7700,9 +7214,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/reiserfs/stree.c linux-2.6.18.2-vs2.0.2.
+ }
return retval;
}
-diff -NurpP --minimal linux-2.6.18.2/fs/reiserfs/super.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/reiserfs/super.c
---- linux-2.6.18.2/fs/reiserfs/super.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/reiserfs/super.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/reiserfs/super.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/reiserfs/super.c 2006-09-20 17:01:44 +0200
@@ -882,6 +882,9 @@ static int reiserfs_parse_options(struct
{"user_xattr",.setmask = 1 << REISERFS_UNSUPPORTED_OPT},
{"nouser_xattr",.clrmask = 1 << REISERFS_UNSUPPORTED_OPT},
@@ -7737,9 +7250,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/reiserfs/super.c linux-2.6.18.2-vs2.0.2.
rs = SB_DISK_SUPER_BLOCK(s);
/* Let's do basic sanity check to verify that underlying device is not
smaller than the filesystem. If the check fails then abort and scream,
-diff -NurpP --minimal linux-2.6.18.2/fs/reiserfs/xattr.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/reiserfs/xattr.c
---- linux-2.6.18.2/fs/reiserfs/xattr.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/reiserfs/xattr.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/reiserfs/xattr.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/reiserfs/xattr.c 2006-09-20 17:01:44 +0200
@@ -35,6 +35,7 @@
#include <linux/namei.h>
#include <linux/errno.h>
@@ -7757,9 +7269,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/reiserfs/xattr.c linux-2.6.18.2-vs2.0.2.
reiserfs_write_unlock_xattrs(inode->i_sb);
dput(root);
} else {
-diff -NurpP --minimal linux-2.6.18.2/fs/stat.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/stat.c
---- linux-2.6.18.2/fs/stat.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/stat.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/stat.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/stat.c 2006-09-20 17:01:44 +0200
@@ -26,6 +26,7 @@ void generic_fillattr(struct inode *inod
stat->nlink = inode->i_nlink;
stat->uid = inode->i_uid;
@@ -7768,9 +7279,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/stat.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/s
stat->rdev = inode->i_rdev;
stat->atime = inode->i_atime;
stat->mtime = inode->i_mtime;
-diff -NurpP --minimal linux-2.6.18.2/fs/super.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/super.c
---- linux-2.6.18.2/fs/super.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/super.c 2006-09-20 17:59:47 +0200
+--- linux-2.6.18.5/fs/super.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/super.c 2006-09-20 17:59:47 +0200
@@ -37,6 +37,8 @@
#include <linux/idr.h>
#include <linux/kobject.h>
@@ -7822,9 +7332,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/super.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/
put_filesystem(type);
return mnt;
}
-diff -NurpP --minimal linux-2.6.18.2/fs/sysfs/mount.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/sysfs/mount.c
---- linux-2.6.18.2/fs/sysfs/mount.c 2006-09-20 16:58:35 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/sysfs/mount.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/sysfs/mount.c 2006-09-20 16:58:35 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/sysfs/mount.c 2006-09-20 17:01:44 +0200
@@ -11,8 +11,6 @@
#include "sysfs.h"
@@ -7843,9 +7352,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/sysfs/mount.c linux-2.6.18.2-vs2.0.2.2-r
sb->s_op = &sysfs_ops;
sb->s_time_gran = 1;
sysfs_sb = sb;
-diff -NurpP --minimal linux-2.6.18.2/fs/xattr.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/xattr.c
---- linux-2.6.18.2/fs/xattr.c 2006-09-20 16:58:37 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/xattr.c 2006-09-20 21:08:52 +0200
+--- linux-2.6.18.5/fs/xattr.c 2006-09-20 16:58:37 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/xattr.c 2006-09-20 21:08:52 +0200
@@ -18,6 +18,7 @@
#include <linux/module.h>
#include <linux/fsnotify.h>
@@ -7946,9 +7454,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/xattr.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/
fput(f);
return error;
}
-diff -NurpP --minimal linux-2.6.18.2/fs/xfs/linux-2.6/xfs_ioctl.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/linux-2.6/xfs_ioctl.c
---- linux-2.6.18.2/fs/xfs/linux-2.6/xfs_ioctl.c 2006-09-20 16:58:39 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/linux-2.6/xfs_ioctl.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/xfs/linux-2.6/xfs_ioctl.c 2006-09-20 16:58:39 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/xfs/linux-2.6/xfs_ioctl.c 2006-09-20 17:01:44 +0200
@@ -1095,6 +1095,8 @@ xfs_ioc_fsgeometry(
#define LINUX_XFLAG_APPEND 0x00000020 /* writes to file may only append */
#define LINUX_XFLAG_NODUMP 0x00000040 /* do not dump file */
@@ -7969,9 +7476,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/xfs/linux-2.6/xfs_ioctl.c linux-2.6.18.2
if (di_flags & XFS_DIFLAG_APPEND)
flags |= LINUX_XFLAG_APPEND;
if (di_flags & XFS_DIFLAG_SYNC)
-diff -NurpP --minimal linux-2.6.18.2/fs/xfs/linux-2.6/xfs_iops.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/linux-2.6/xfs_iops.c
---- linux-2.6.18.2/fs/xfs/linux-2.6/xfs_iops.c 2006-09-20 16:58:39 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/linux-2.6/xfs_iops.c 2006-09-21 16:42:52 +0200
+--- linux-2.6.18.5/fs/xfs/linux-2.6/xfs_iops.c 2006-09-20 16:58:39 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/xfs/linux-2.6/xfs_iops.c 2006-09-21 16:42:52 +0200
@@ -53,6 +53,7 @@
#include <linux/xattr.h>
#include <linux/namei.h>
@@ -8075,9 +7581,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/xfs/linux-2.6/xfs_iops.c linux-2.6.18.2-
.removexattr = xfs_vn_removexattr,
+ .sync_flags = xfs_vn_sync_flags,
};
-diff -NurpP --minimal linux-2.6.18.2/fs/xfs/linux-2.6/xfs_linux.h linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/linux-2.6/xfs_linux.h
---- linux-2.6.18.2/fs/xfs/linux-2.6/xfs_linux.h 2006-09-20 16:58:39 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/linux-2.6/xfs_linux.h 2006-09-20 18:35:45 +0200
+--- linux-2.6.18.5/fs/xfs/linux-2.6/xfs_linux.h 2006-09-20 16:58:39 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/xfs/linux-2.6/xfs_linux.h 2006-09-20 18:35:45 +0200
@@ -139,6 +139,7 @@ BUFFER_FNS(PrivateStart, unwritten);
#define current_pid() (current->pid)
#define current_fsuid(cred) (current->fsuid)
@@ -8086,9 +7591,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/xfs/linux-2.6/xfs_linux.h linux-2.6.18.2
#define current_test_flags(f) (current->flags & (f))
#define current_set_flags_nested(sp, f) \
(*(sp) = current->flags, current->flags |= (f))
-diff -NurpP --minimal linux-2.6.18.2/fs/xfs/linux-2.6/xfs_super.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/linux-2.6/xfs_super.c
---- linux-2.6.18.2/fs/xfs/linux-2.6/xfs_super.c 2006-09-20 16:58:39 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/linux-2.6/xfs_super.c 2006-09-20 18:34:48 +0200
+--- linux-2.6.18.5/fs/xfs/linux-2.6/xfs_super.c 2006-09-20 16:58:39 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/xfs/linux-2.6/xfs_super.c 2006-09-20 18:34:48 +0200
@@ -158,6 +158,7 @@ xfs_revalidate_inode(
inode->i_nlink = ip->i_d.di_nlink;
inode->i_uid = ip->i_d.di_uid;
@@ -8125,9 +7629,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/xfs/linux-2.6/xfs_super.c linux-2.6.18.2
if (!error)
error = bhv_vfs_mntupdate(vfsp, flags, args);
kmem_free(args, sizeof(*args));
-diff -NurpP --minimal linux-2.6.18.2/fs/xfs/linux-2.6/xfs_sysctl.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/linux-2.6/xfs_sysctl.c
---- linux-2.6.18.2/fs/xfs/linux-2.6/xfs_sysctl.c 2006-09-20 16:58:39 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/linux-2.6/xfs_sysctl.c 2006-09-20 18:32:51 +0200
+--- linux-2.6.18.5/fs/xfs/linux-2.6/xfs_sysctl.c 2006-09-20 16:58:39 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/xfs/linux-2.6/xfs_sysctl.c 2006-09-20 18:32:51 +0200
@@ -57,79 +57,79 @@ xfs_stats_clear_proc_handler(
STATIC ctl_table xfs_table[] = {
{XFS_RESTRICT_CHOWN, "restrict_chown", &xfs_params.restrict_chown.val,
@@ -8223,9 +7726,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/xfs/linux-2.6/xfs_sysctl.c linux-2.6.18.
&xfs_params.stats_clear.min, &xfs_params.stats_clear.max},
#endif /* CONFIG_PROC_FS */
-diff -NurpP --minimal linux-2.6.18.2/fs/xfs/linux-2.6/xfs_vnode.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/linux-2.6/xfs_vnode.c
---- linux-2.6.18.2/fs/xfs/linux-2.6/xfs_vnode.c 2006-09-20 16:58:40 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/linux-2.6/xfs_vnode.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/xfs/linux-2.6/xfs_vnode.c 2006-09-20 16:58:40 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/xfs/linux-2.6/xfs_vnode.c 2006-09-20 17:01:44 +0200
@@ -119,6 +119,7 @@ vn_revalidate_core(
inode->i_nlink = vap->va_nlink;
inode->i_uid = vap->va_uid;
@@ -8249,9 +7751,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/xfs/linux-2.6/xfs_vnode.c linux-2.6.18.2
if (vap->va_xflags & XFS_XFLAG_APPEND)
inode->i_flags |= S_APPEND;
else
-diff -NurpP --minimal linux-2.6.18.2/fs/xfs/linux-2.6/xfs_vnode.h linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/linux-2.6/xfs_vnode.h
---- linux-2.6.18.2/fs/xfs/linux-2.6/xfs_vnode.h 2006-09-20 16:58:40 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/linux-2.6/xfs_vnode.h 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/xfs/linux-2.6/xfs_vnode.h 2006-09-20 16:58:40 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/xfs/linux-2.6/xfs_vnode.h 2006-09-20 17:01:44 +0200
@@ -352,6 +352,7 @@ typedef struct bhv_vattr {
xfs_nlink_t va_nlink; /* number of references to file */
uid_t va_uid; /* owner user id */
@@ -8277,9 +7778,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/xfs/linux-2.6/xfs_vnode.h linux-2.6.18.2
#define XFS_AT_STAT (XFS_AT_TYPE|XFS_AT_MODE|XFS_AT_UID|XFS_AT_GID|\
XFS_AT_FSID|XFS_AT_NODEID|XFS_AT_NLINK|XFS_AT_SIZE|\
-diff -NurpP --minimal linux-2.6.18.2/fs/xfs/quota/xfs_qm_syscalls.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/quota/xfs_qm_syscalls.c
---- linux-2.6.18.2/fs/xfs/quota/xfs_qm_syscalls.c 2006-09-20 16:58:40 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/quota/xfs_qm_syscalls.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/xfs/quota/xfs_qm_syscalls.c 2006-09-20 16:58:40 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/xfs/quota/xfs_qm_syscalls.c 2006-09-20 17:01:44 +0200
@@ -213,7 +213,7 @@ xfs_qm_scall_quotaoff(
xfs_qoff_logitem_t *qoffstart;
int nculprits;
@@ -8316,9 +7816,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/xfs/quota/xfs_qm_syscalls.c linux-2.6.18
return XFS_ERROR(EPERM);
if ((newlim->d_fieldmask &
-diff -NurpP --minimal linux-2.6.18.2/fs/xfs/xfs_clnt.h linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/xfs_clnt.h
---- linux-2.6.18.2/fs/xfs/xfs_clnt.h 2006-06-18 04:54:50 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/xfs_clnt.h 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/xfs/xfs_clnt.h 2006-06-18 04:54:50 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/xfs/xfs_clnt.h 2006-09-20 17:01:44 +0200
@@ -99,5 +99,7 @@ struct xfs_mount_args {
*/
#define XFSMNT2_COMPAT_IOSIZE 0x00000001 /* don't report large preferred
@@ -8327,9 +7826,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/xfs/xfs_clnt.h linux-2.6.18.2-vs2.0.2.2-
+
#endif /* __XFS_CLNT_H__ */
-diff -NurpP --minimal linux-2.6.18.2/fs/xfs/xfs_dinode.h linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/xfs_dinode.h
---- linux-2.6.18.2/fs/xfs/xfs_dinode.h 2006-09-20 16:58:40 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/xfs_dinode.h 2006-09-20 18:30:41 +0200
+--- linux-2.6.18.5/fs/xfs/xfs_dinode.h 2006-09-20 16:58:40 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/xfs/xfs_dinode.h 2006-09-20 18:30:41 +0200
@@ -53,7 +53,8 @@ typedef struct xfs_dinode_core
__uint32_t di_gid; /* owner's group id */
__uint32_t di_nlink; /* number of links to file */
@@ -8367,9 +7865,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/xfs/xfs_dinode.h linux-2.6.18.2-vs2.0.2.
+ XFS_DIFLAG_IUNLINK)
#endif /* __XFS_DINODE_H__ */
-diff -NurpP --minimal linux-2.6.18.2/fs/xfs/xfs_fs.h linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/xfs_fs.h
---- linux-2.6.18.2/fs/xfs/xfs_fs.h 2006-09-20 16:58:40 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/xfs_fs.h 2006-09-20 18:29:07 +0200
+--- linux-2.6.18.5/fs/xfs/xfs_fs.h 2006-09-20 16:58:40 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/xfs/xfs_fs.h 2006-09-20 18:29:07 +0200
@@ -68,6 +68,8 @@ struct fsxattr {
#define XFS_XFLAG_EXTSIZE 0x00000800 /* extent size allocator hint */
#define XFS_XFLAG_EXTSZINHERIT 0x00001000 /* inherit inode extent size */
@@ -8389,9 +7886,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/xfs/xfs_fs.h linux-2.6.18.2-vs2.0.2.2-rc
__u32 bs_dmevmask; /* DMIG event mask */
__u16 bs_dmstate; /* DMIG state info */
__u16 bs_aextents; /* attribute number of extents */
-diff -NurpP --minimal linux-2.6.18.2/fs/xfs/xfs_inode.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/xfs_inode.c
---- linux-2.6.18.2/fs/xfs/xfs_inode.c 2006-09-20 16:58:40 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/xfs_inode.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/xfs/xfs_inode.c 2006-09-20 16:58:40 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/xfs/xfs_inode.c 2006-09-20 17:01:44 +0200
@@ -50,6 +50,7 @@
#include "xfs_mac.h"
#include "xfs_acl.h"
@@ -8457,9 +7953,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/xfs/xfs_inode.c linux-2.6.18.2-vs2.0.2.2
ip->i_d.di_projid = prid;
memset(&(ip->i_d.di_pad[0]), 0, sizeof(ip->i_d.di_pad));
-diff -NurpP --minimal linux-2.6.18.2/fs/xfs/xfs_itable.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/xfs_itable.c
---- linux-2.6.18.2/fs/xfs/xfs_itable.c 2006-09-20 16:58:40 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/xfs_itable.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/xfs/xfs_itable.c 2006-09-20 16:58:40 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/xfs/xfs_itable.c 2006-09-20 17:01:44 +0200
@@ -78,6 +78,7 @@ xfs_bulkstat_one_iget(
buf->bs_mode = dic->di_mode;
buf->bs_uid = dic->di_uid;
@@ -8476,9 +7971,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/xfs/xfs_itable.c linux-2.6.18.2-vs2.0.2.
buf->bs_size = INT_GET(dic->di_size, ARCH_CONVERT);
buf->bs_atime.tv_sec = INT_GET(dic->di_atime.t_sec, ARCH_CONVERT);
buf->bs_atime.tv_nsec = INT_GET(dic->di_atime.t_nsec, ARCH_CONVERT);
-diff -NurpP --minimal linux-2.6.18.2/fs/xfs/xfs_mount.h linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/xfs_mount.h
---- linux-2.6.18.2/fs/xfs/xfs_mount.h 2006-09-20 16:58:40 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/xfs_mount.h 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/xfs/xfs_mount.h 2006-09-20 16:58:40 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/xfs/xfs_mount.h 2006-09-20 17:01:44 +0200
@@ -460,6 +460,7 @@ typedef struct xfs_mount {
#define XFS_MOUNT_NO_PERCPU_SB (1ULL << 23) /* don't use per-cpu superblock
counters */
@@ -8487,9 +7981,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/xfs/xfs_mount.h linux-2.6.18.2-vs2.0.2.2
/*
* Default minimum read and write sizes.
-diff -NurpP --minimal linux-2.6.18.2/fs/xfs/xfs_vfsops.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/xfs_vfsops.c
---- linux-2.6.18.2/fs/xfs/xfs_vfsops.c 2006-09-20 16:58:40 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/xfs_vfsops.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/xfs/xfs_vfsops.c 2006-09-20 16:58:40 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/xfs/xfs_vfsops.c 2006-09-20 17:01:44 +0200
@@ -300,6 +300,8 @@ xfs_start_flags(
if (ap->flags2 & XFSMNT2_COMPAT_IOSIZE)
@@ -8527,9 +8020,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/xfs/xfs_vfsops.c linux-2.6.18.2-vs2.0.2.
} else if (!strcmp(this_char, "osyncisdsync")) {
/* no-op, this is now the default */
cmn_err(CE_WARN,
-diff -NurpP --minimal linux-2.6.18.2/fs/xfs/xfs_vnodeops.c linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/xfs_vnodeops.c
---- linux-2.6.18.2/fs/xfs/xfs_vnodeops.c 2006-09-20 16:58:40 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/fs/xfs/xfs_vnodeops.c 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/fs/xfs/xfs_vnodeops.c 2006-09-20 16:58:40 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/fs/xfs/xfs_vnodeops.c 2006-09-20 17:01:44 +0200
@@ -160,6 +160,7 @@ xfs_getattr(
vap->va_mode = ip->i_d.di_mode;
vap->va_uid = ip->i_d.di_uid;
@@ -8628,9 +8120,8 @@ diff -NurpP --minimal linux-2.6.18.2/fs/xfs/xfs_vnodeops.c linux-2.6.18.2-vs2.0.
if (vap->va_xflags & XFS_XFLAG_APPEND)
di_flags |= XFS_DIFLAG_APPEND;
if (vap->va_xflags & XFS_XFLAG_SYNC)
-diff -NurpP --minimal linux-2.6.18.2/include/asm-arm/tlb.h linux-2.6.18.2-vs2.0.2.2-rc6/include/asm-arm/tlb.h
---- linux-2.6.18.2/include/asm-arm/tlb.h 2006-06-18 04:54:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/asm-arm/tlb.h 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/include/asm-arm/tlb.h 2006-06-18 04:54:58 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/asm-arm/tlb.h 2006-09-20 17:01:44 +0200
@@ -28,6 +28,7 @@
#else /* !CONFIG_MMU */
@@ -8639,9 +8130,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/asm-arm/tlb.h linux-2.6.18.2-vs2.0.
/*
* TLB handling. This allows us to remove pages from the page
-diff -NurpP --minimal linux-2.6.18.2/include/asm-arm26/tlb.h linux-2.6.18.2-vs2.0.2.2-rc6/include/asm-arm26/tlb.h
---- linux-2.6.18.2/include/asm-arm26/tlb.h 2006-01-03 17:30:02 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/asm-arm26/tlb.h 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/include/asm-arm26/tlb.h 2006-01-03 17:30:02 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/asm-arm26/tlb.h 2006-09-20 17:01:44 +0200
@@ -3,6 +3,7 @@
#include <asm/pgalloc.h>
@@ -8650,9 +8140,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/asm-arm26/tlb.h linux-2.6.18.2-vs2.
/*
* TLB handling. This allows us to remove pages from the page
-diff -NurpP --minimal linux-2.6.18.2/include/asm-arm26/unistd.h linux-2.6.18.2-vs2.0.2.2-rc6/include/asm-arm26/unistd.h
---- linux-2.6.18.2/include/asm-arm26/unistd.h 2006-09-20 16:58:40 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/asm-arm26/unistd.h 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/include/asm-arm26/unistd.h 2006-09-20 16:58:40 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/asm-arm26/unistd.h 2006-09-20 17:01:44 +0200
@@ -302,6 +302,8 @@
#define __NR_mq_getsetattr (__NR_SYSCALL_BASE+279)
#define __NR_waitid (__NR_SYSCALL_BASE+280)
@@ -8662,9 +8151,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/asm-arm26/unistd.h linux-2.6.18.2-v
/*
* The following SWIs are ARM private. FIXME - make appropriate for arm26
*/
-diff -NurpP --minimal linux-2.6.18.2/include/asm-generic/tlb.h linux-2.6.18.2-vs2.0.2.2-rc6/include/asm-generic/tlb.h
---- linux-2.6.18.2/include/asm-generic/tlb.h 2006-09-20 16:58:40 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/asm-generic/tlb.h 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/include/asm-generic/tlb.h 2006-09-20 16:58:40 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/asm-generic/tlb.h 2006-09-20 17:01:44 +0200
@@ -14,6 +14,7 @@
#define _ASM_GENERIC__TLB_H
@@ -8673,9 +8161,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/asm-generic/tlb.h linux-2.6.18.2-vs
#include <asm/pgalloc.h>
#include <asm/tlbflush.h>
-diff -NurpP --minimal linux-2.6.18.2/include/asm-i386/elf.h linux-2.6.18.2-vs2.0.2.2-rc6/include/asm-i386/elf.h
---- linux-2.6.18.2/include/asm-i386/elf.h 2006-09-20 16:58:40 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/asm-i386/elf.h 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/include/asm-i386/elf.h 2006-09-20 16:58:40 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/asm-i386/elf.h 2006-09-20 17:01:44 +0200
@@ -112,7 +112,7 @@ typedef struct user_fxsr_struct elf_fpxr
For the moment, we have only optimizations for the Intel generations,
but that could change... */
@@ -8685,9 +8172,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/asm-i386/elf.h linux-2.6.18.2-vs2.0
#define SET_PERSONALITY(ex, ibcs2) do { } while (0)
-diff -NurpP --minimal linux-2.6.18.2/include/asm-ia64/tlb.h linux-2.6.18.2-vs2.0.2.2-rc6/include/asm-ia64/tlb.h
---- linux-2.6.18.2/include/asm-ia64/tlb.h 2006-09-20 16:58:40 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/asm-ia64/tlb.h 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/include/asm-ia64/tlb.h 2006-09-20 16:58:40 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/asm-ia64/tlb.h 2006-09-20 17:01:44 +0200
@@ -40,6 +40,7 @@
#include <linux/mm.h>
#include <linux/pagemap.h>
@@ -8696,9 +8182,18 @@ diff -NurpP --minimal linux-2.6.18.2/include/asm-ia64/tlb.h linux-2.6.18.2-vs2.0
#include <asm/pgalloc.h>
#include <asm/processor.h>
-diff -NurpP --minimal linux-2.6.18.2/include/asm-powerpc/systbl.h linux-2.6.18.2-vs2.0.2.2-rc6/include/asm-powerpc/systbl.h
---- linux-2.6.18.2/include/asm-powerpc/systbl.h 2006-09-20 16:58:41 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/asm-powerpc/systbl.h 2006-09-20 20:01:36 +0200
+--- linux-2.6.18.5/include/asm-mips/irq.h 2006-09-20 16:58:41 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/asm-mips/irq.h 2006-11-21 02:45:10 +0100
+@@ -10,6 +10,7 @@
+ #define _ASM_IRQ_H
+
+ #include <linux/linkage.h>
++#include <linux/vs_context.h>
+
+ #include <asm/mipsmtregs.h>
+
+--- linux-2.6.18.5/include/asm-powerpc/systbl.h 2006-09-20 16:58:41 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/asm-powerpc/systbl.h 2006-09-20 20:01:36 +0200
@@ -260,7 +260,7 @@ COMPAT_SYS_SPU(fstatfs64)
SYSX(sys_ni_syscall, ppc_fadvise64_64, ppc_fadvise64_64)
PPC_SYS_SPU(rtas)
@@ -8708,9 +8203,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/asm-powerpc/systbl.h linux-2.6.18.2
SYSCALL(ni_syscall)
COMPAT_SYS(mbind)
COMPAT_SYS(get_mempolicy)
-diff -NurpP --minimal linux-2.6.18.2/include/asm-powerpc/unistd.h linux-2.6.18.2-vs2.0.2.2-rc6/include/asm-powerpc/unistd.h
---- linux-2.6.18.2/include/asm-powerpc/unistd.h 2006-09-20 16:58:41 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/asm-powerpc/unistd.h 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/include/asm-powerpc/unistd.h 2006-09-20 16:58:41 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/asm-powerpc/unistd.h 2006-09-20 17:01:44 +0200
@@ -275,7 +275,7 @@
#endif
#define __NR_rtas 255
@@ -8720,9 +8214,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/asm-powerpc/unistd.h linux-2.6.18.2
/* 258 currently unused */
#define __NR_mbind 259
#define __NR_get_mempolicy 260
-diff -NurpP --minimal linux-2.6.18.2/include/asm-s390/unistd.h linux-2.6.18.2-vs2.0.2.2-rc6/include/asm-s390/unistd.h
---- linux-2.6.18.2/include/asm-s390/unistd.h 2006-09-20 16:58:43 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/asm-s390/unistd.h 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/include/asm-s390/unistd.h 2006-09-20 16:58:43 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/asm-s390/unistd.h 2006-09-20 17:01:44 +0200
@@ -255,7 +255,7 @@
#define __NR_clock_gettime (__NR_timer_create+6)
#define __NR_clock_getres (__NR_timer_create+7)
@@ -8732,9 +8225,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/asm-s390/unistd.h linux-2.6.18.2-vs
#define __NR_fadvise64_64 264
#define __NR_statfs64 265
#define __NR_fstatfs64 266
-diff -NurpP --minimal linux-2.6.18.2/include/asm-sparc/unistd.h linux-2.6.18.2-vs2.0.2.2-rc6/include/asm-sparc/unistd.h
---- linux-2.6.18.2/include/asm-sparc/unistd.h 2006-09-20 16:58:43 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/asm-sparc/unistd.h 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/include/asm-sparc/unistd.h 2006-12-04 06:13:52 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/asm-sparc/unistd.h 2006-11-19 17:04:56 +0100
@@ -283,7 +283,7 @@
#define __NR_timer_getoverrun 264
#define __NR_timer_delete 265
@@ -8744,9 +8236,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/asm-sparc/unistd.h linux-2.6.18.2-v
#define __NR_io_setup 268
#define __NR_io_destroy 269
#define __NR_io_submit 270
-diff -NurpP --minimal linux-2.6.18.2/include/asm-sparc64/tlb.h linux-2.6.18.2-vs2.0.2.2-rc6/include/asm-sparc64/tlb.h
---- linux-2.6.18.2/include/asm-sparc64/tlb.h 2006-09-20 16:58:43 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/asm-sparc64/tlb.h 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/include/asm-sparc64/tlb.h 2006-09-20 16:58:43 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/asm-sparc64/tlb.h 2006-09-20 17:01:44 +0200
@@ -2,6 +2,7 @@
#define _SPARC64_TLB_H
@@ -8755,9 +8246,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/asm-sparc64/tlb.h linux-2.6.18.2-vs
#include <asm/pgalloc.h>
#include <asm/tlbflush.h>
#include <asm/mmu_context.h>
-diff -NurpP --minimal linux-2.6.18.2/include/asm-sparc64/unistd.h linux-2.6.18.2-vs2.0.2.2-rc6/include/asm-sparc64/unistd.h
---- linux-2.6.18.2/include/asm-sparc64/unistd.h 2006-09-20 16:58:43 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/asm-sparc64/unistd.h 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/include/asm-sparc64/unistd.h 2006-12-04 06:13:52 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/asm-sparc64/unistd.h 2006-11-19 17:04:56 +0100
@@ -285,7 +285,7 @@
#define __NR_timer_getoverrun 264
#define __NR_timer_delete 265
@@ -8767,9 +8257,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/asm-sparc64/unistd.h linux-2.6.18.2
#define __NR_io_setup 268
#define __NR_io_destroy 269
#define __NR_io_submit 270
-diff -NurpP --minimal linux-2.6.18.2/include/asm-x86_64/unistd.h linux-2.6.18.2-vs2.0.2.2-rc6/include/asm-x86_64/unistd.h
---- linux-2.6.18.2/include/asm-x86_64/unistd.h 2006-09-20 16:58:43 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/asm-x86_64/unistd.h 2006-09-20 17:01:44 +0200
+--- linux-2.6.18.5/include/asm-x86_64/unistd.h 2006-09-20 16:58:43 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/asm-x86_64/unistd.h 2006-09-20 17:01:44 +0200
@@ -532,7 +532,7 @@ __SYSCALL(__NR_tgkill, sys_tgkill)
#define __NR_utimes 235
__SYSCALL(__NR_utimes, sys_utimes)
@@ -8779,9 +8268,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/asm-x86_64/unistd.h linux-2.6.18.2-
#define __NR_mbind 237
__SYSCALL(__NR_mbind, sys_mbind)
#define __NR_set_mempolicy 238
-diff -NurpP --minimal linux-2.6.18.2/include/linux/capability.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/capability.h
---- linux-2.6.18.2/include/linux/capability.h 2006-06-18 04:55:15 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/capability.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/capability.h 2006-06-18 04:55:15 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/capability.h 2006-09-20 17:01:45 +0200
@@ -235,6 +235,7 @@ typedef __u32 kernel_cap_t;
arbitrary SCSI commands */
/* Allow setting encryption key on loopback filesystem */
@@ -8802,9 +8290,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/capability.h linux-2.6.18.2-v
#ifdef __KERNEL__
/*
* Bounding set
-diff -NurpP --minimal linux-2.6.18.2/include/linux/devpts_fs.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/devpts_fs.h
---- linux-2.6.18.2/include/linux/devpts_fs.h 2004-08-14 12:55:59 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/devpts_fs.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/devpts_fs.h 2004-08-14 12:55:59 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/devpts_fs.h 2006-09-20 17:01:45 +0200
@@ -30,5 +30,7 @@ static inline void devpts_pty_kill(int n
#endif
@@ -8813,9 +8300,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/devpts_fs.h linux-2.6.18.2-vs
+
#endif /* _LINUX_DEVPTS_FS_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/ext2_fs.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/ext2_fs.h
---- linux-2.6.18.2/include/linux/ext2_fs.h 2006-09-20 16:58:43 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/ext2_fs.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/ext2_fs.h 2006-09-20 16:58:43 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/ext2_fs.h 2006-09-20 17:01:45 +0200
@@ -192,10 +192,17 @@ struct ext2_group_desc
#define EXT2_NOTAIL_FL 0x00008000 /* file tail should not be merged */
#define EXT2_DIRSYNC_FL 0x00010000 /* dirsync behaviour (directories only) */
@@ -8863,9 +8349,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/ext2_fs.h linux-2.6.18.2-vs2.
#define clear_opt(o, opt) o &= ~EXT2_MOUNT_##opt
-diff -NurpP --minimal linux-2.6.18.2/include/linux/ext3_fs.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/ext3_fs.h
---- linux-2.6.18.2/include/linux/ext3_fs.h 2006-09-20 16:58:43 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/ext3_fs.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/ext3_fs.h 2006-09-20 16:58:43 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/ext3_fs.h 2006-09-20 17:01:45 +0200
@@ -181,10 +181,20 @@ struct ext3_group_desc
#define EXT3_NOTAIL_FL 0x00008000 /* file tail should not be merged */
#define EXT3_DIRSYNC_FL 0x00010000 /* dirsync behaviour (directories only) */
@@ -8920,9 +8405,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/ext3_fs.h linux-2.6.18.2-vs2.
extern void ext3_read_inode (struct inode *);
extern int ext3_write_inode (struct inode *, int);
-diff -NurpP --minimal linux-2.6.18.2/include/linux/fs.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/fs.h
---- linux-2.6.18.2/include/linux/fs.h 2006-09-20 16:58:43 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/fs.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/fs.h 2006-09-20 16:58:43 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/fs.h 2006-09-20 17:01:45 +0200
@@ -119,6 +119,8 @@ extern int dir_notify_enable;
#define MS_PRIVATE (1<<18) /* change to private */
#define MS_SLAVE (1<<19) /* change to slave */
@@ -9050,9 +8534,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/fs.h linux-2.6.18.2-vs2.0.2.2
extern int simple_getattr(struct vfsmount *, struct dentry *, struct kstat *);
extern int simple_statfs(struct dentry *, struct kstatfs *);
extern int simple_link(struct dentry *, struct inode *, struct dentry *);
-diff -NurpP --minimal linux-2.6.18.2/include/linux/init_task.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/init_task.h
---- linux-2.6.18.2/include/linux/init_task.h 2006-09-20 16:58:43 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/init_task.h 2006-09-20 17:51:11 +0200
+--- linux-2.6.18.5/include/linux/init_task.h 2006-09-20 16:58:43 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/init_task.h 2006-09-20 17:51:11 +0200
@@ -128,6 +128,10 @@ extern struct group_info init_groups;
.pi_lock = SPIN_LOCK_UNLOCKED, \
INIT_TRACE_IRQFLAGS \
@@ -9064,9 +8547,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/init_task.h linux-2.6.18.2-vs
}
-diff -NurpP --minimal linux-2.6.18.2/include/linux/ipc.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/ipc.h
---- linux-2.6.18.2/include/linux/ipc.h 2004-08-14 12:54:46 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/ipc.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/ipc.h 2004-08-14 12:54:46 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/ipc.h 2006-09-20 17:01:45 +0200
@@ -66,6 +66,7 @@ struct kern_ipc_perm
mode_t mode;
unsigned long seq;
@@ -9075,9 +8557,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/ipc.h linux-2.6.18.2-vs2.0.2.
};
#endif /* __KERNEL__ */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/kernel.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/kernel.h
---- linux-2.6.18.2/include/linux/kernel.h 2006-09-20 16:58:43 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/kernel.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/kernel.h 2006-09-20 16:58:43 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/kernel.h 2006-09-20 17:01:45 +0200
@@ -17,6 +17,7 @@
#include <asm/bug.h>
@@ -9086,9 +8567,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/kernel.h linux-2.6.18.2-vs2.0
#define INT_MAX ((int)(~0U>>1))
#define INT_MIN (-INT_MAX - 1)
-diff -NurpP --minimal linux-2.6.18.2/include/linux/major.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/major.h
---- linux-2.6.18.2/include/linux/major.h 2006-06-18 04:55:19 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/major.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/major.h 2006-06-18 04:55:19 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/major.h 2006-09-20 17:01:45 +0200
@@ -15,6 +15,7 @@
#define HD_MAJOR IDE0_MAJOR
#define PTY_SLAVE_MAJOR 3
@@ -9097,9 +8577,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/major.h linux-2.6.18.2-vs2.0.
#define TTYAUX_MAJOR 5
#define LP_MAJOR 6
#define VCS_MAJOR 7
-diff -NurpP --minimal linux-2.6.18.2/include/linux/mount.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/mount.h
---- linux-2.6.18.2/include/linux/mount.h 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/mount.h 2006-09-20 17:50:23 +0200
+--- linux-2.6.18.5/include/linux/mount.h 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/mount.h 2006-09-20 17:50:23 +0200
@@ -27,12 +27,16 @@ struct namespace;
#define MNT_NOEXEC 0x04
#define MNT_NOATIME 0x08
@@ -9125,9 +8604,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/mount.h linux-2.6.18.2-vs2.0.
};
static inline struct vfsmount *mntget(struct vfsmount *mnt)
-diff -NurpP --minimal linux-2.6.18.2/include/linux/net.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/net.h
---- linux-2.6.18.2/include/linux/net.h 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/net.h 2006-09-20 17:47:13 +0200
+--- linux-2.6.18.5/include/linux/net.h 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/net.h 2006-09-20 17:47:13 +0200
@@ -62,6 +62,7 @@ typedef enum {
#define SOCK_NOSPACE 2
#define SOCK_PASSCRED 3
@@ -9136,9 +8614,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/net.h linux-2.6.18.2-vs2.0.2.
#ifndef ARCH_HAS_SOCKET_TYPES
/**
-diff -NurpP --minimal linux-2.6.18.2/include/linux/nfs_mount.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/nfs_mount.h
---- linux-2.6.18.2/include/linux/nfs_mount.h 2005-08-29 22:25:42 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/nfs_mount.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/nfs_mount.h 2005-08-29 22:25:42 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/nfs_mount.h 2006-09-20 17:01:45 +0200
@@ -61,6 +61,7 @@ struct nfs_mount_data {
#define NFS_MOUNT_NOACL 0x0800 /* 4 */
#define NFS_MOUNT_STRICTLOCK 0x1000 /* reserved for NFSv4 */
@@ -9147,9 +8624,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/nfs_mount.h linux-2.6.18.2-vs
#define NFS_MOUNT_FLAGMASK 0xFFFF
#endif
-diff -NurpP --minimal linux-2.6.18.2/include/linux/percpu.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/percpu.h
---- linux-2.6.18.2/include/linux/percpu.h 2006-04-09 13:49:57 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/percpu.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/percpu.h 2006-04-09 13:49:57 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/percpu.h 2006-09-20 17:01:45 +0200
@@ -8,7 +8,7 @@
/* Enough to cover all DEFINE_PER_CPUs in kernel, including modules. */
@@ -9159,9 +8635,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/percpu.h linux-2.6.18.2-vs2.0
#endif
/* Must be an lvalue. */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/pid.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/pid.h
---- linux-2.6.18.2/include/linux/pid.h 2006-06-18 04:55:21 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/pid.h 2006-10-17 01:48:03 +0200
+--- linux-2.6.18.5/include/linux/pid.h 2006-06-18 04:55:21 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/pid.h 2006-10-17 01:48:03 +0200
@@ -8,7 +8,8 @@ enum pid_type
PIDTYPE_PID,
PIDTYPE_PGID,
@@ -9172,9 +8647,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/pid.h linux-2.6.18.2-vs2.0.2.
};
/*
-diff -NurpP --minimal linux-2.6.18.2/include/linux/proc_fs.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/proc_fs.h
---- linux-2.6.18.2/include/linux/proc_fs.h 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/proc_fs.h 2006-09-20 17:46:14 +0200
+--- linux-2.6.18.5/include/linux/proc_fs.h 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/proc_fs.h 2006-09-20 17:46:14 +0200
@@ -55,6 +55,7 @@ struct proc_dir_entry {
nlink_t nlink;
uid_t uid;
@@ -9196,9 +8670,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/proc_fs.h linux-2.6.18.2-vs2.
} op;
struct proc_dir_entry *pde;
struct inode vfs_inode;
-diff -NurpP --minimal linux-2.6.18.2/include/linux/reiserfs_fs.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/reiserfs_fs.h
---- linux-2.6.18.2/include/linux/reiserfs_fs.h 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/reiserfs_fs.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/reiserfs_fs.h 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/reiserfs_fs.h 2006-09-20 17:01:45 +0200
@@ -829,6 +829,18 @@ struct stat_data_v1 {
#define REISERFS_COMPR_FL EXT2_COMPR_FL
#define REISERFS_NOTAIL_FL EXT2_NOTAIL_FL
@@ -9226,9 +8699,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/reiserfs_fs.h linux-2.6.18.2-
/* namei.c */
void set_de_name_and_namelen(struct reiserfs_dir_entry *de);
-diff -NurpP --minimal linux-2.6.18.2/include/linux/reiserfs_fs_sb.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/reiserfs_fs_sb.h
---- linux-2.6.18.2/include/linux/reiserfs_fs_sb.h 2006-02-18 14:40:35 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/reiserfs_fs_sb.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/reiserfs_fs_sb.h 2006-02-18 14:40:35 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/reiserfs_fs_sb.h 2006-09-20 17:01:45 +0200
@@ -456,6 +456,7 @@ enum reiserfs_mount_options {
REISERFS_POSIXACL,
REISERFS_BARRIER_NONE,
@@ -9237,9 +8709,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/reiserfs_fs_sb.h linux-2.6.18
/* Actions on error */
REISERFS_ERROR_PANIC,
-diff -NurpP --minimal linux-2.6.18.2/include/linux/sched.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/sched.h
---- linux-2.6.18.2/include/linux/sched.h 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/sched.h 2006-10-17 01:48:03 +0200
+--- linux-2.6.18.5/include/linux/sched.h 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/sched.h 2006-12-10 02:36:48 +0100
@@ -52,6 +52,7 @@ struct sched_param {
#include <linux/cpumask.h>
#include <linux/errno.h>
@@ -9353,9 +8824,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/sched.h linux-2.6.18.2-vs2.0.
static inline struct user_struct *get_uid(struct user_struct *u)
{
atomic_inc(&u->__count);
-diff -NurpP --minimal linux-2.6.18.2/include/linux/shmem_fs.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/shmem_fs.h
---- linux-2.6.18.2/include/linux/shmem_fs.h 2006-04-09 13:49:57 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/shmem_fs.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/shmem_fs.h 2006-04-09 13:49:57 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/shmem_fs.h 2006-09-20 17:01:45 +0200
@@ -8,6 +8,9 @@
#define SHMEM_NR_DIRECT 16
@@ -9366,9 +8836,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/shmem_fs.h linux-2.6.18.2-vs2
struct shmem_inode_info {
spinlock_t lock;
unsigned long flags;
-diff -NurpP --minimal linux-2.6.18.2/include/linux/stat.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/stat.h
---- linux-2.6.18.2/include/linux/stat.h 2006-06-18 04:55:25 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/stat.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/stat.h 2006-06-18 04:55:25 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/stat.h 2006-09-20 17:01:45 +0200
@@ -63,6 +63,7 @@ struct kstat {
unsigned int nlink;
uid_t uid;
@@ -9377,9 +8846,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/stat.h linux-2.6.18.2-vs2.0.2
dev_t rdev;
loff_t size;
struct timespec atime;
-diff -NurpP --minimal linux-2.6.18.2/include/linux/sunrpc/auth.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/sunrpc/auth.h
---- linux-2.6.18.2/include/linux/sunrpc/auth.h 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/sunrpc/auth.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/sunrpc/auth.h 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/sunrpc/auth.h 2006-09-20 17:01:45 +0200
@@ -27,6 +27,7 @@
struct auth_cred {
uid_t uid;
@@ -9388,9 +8856,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/sunrpc/auth.h linux-2.6.18.2-
struct group_info *group_info;
};
-diff -NurpP --minimal linux-2.6.18.2/include/linux/sunrpc/clnt.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/sunrpc/clnt.h
---- linux-2.6.18.2/include/linux/sunrpc/clnt.h 2006-06-18 04:55:25 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/sunrpc/clnt.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/sunrpc/clnt.h 2006-06-18 04:55:25 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/sunrpc/clnt.h 2006-09-20 17:01:45 +0200
@@ -52,7 +52,8 @@ struct rpc_clnt {
cl_intr : 1,/* interruptible */
cl_autobind : 1,/* use getport() */
@@ -9401,9 +8868,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/sunrpc/clnt.h linux-2.6.18.2-
struct rpc_rtt * cl_rtt; /* RTO estimator data */
struct rpc_portmap * cl_pmap; /* port mapping */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/sysctl.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/sysctl.h
---- linux-2.6.18.2/include/linux/sysctl.h 2006-11-04 19:43:24 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/sysctl.h 2006-10-16 18:56:11 +0200
+--- linux-2.6.18.5/include/linux/sysctl.h 2006-12-04 06:13:52 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/sysctl.h 2006-10-16 18:56:11 +0200
@@ -93,6 +93,7 @@ enum
KERN_CAP_BSET=14, /* int: capability bounding set */
KERN_PANIC=15, /* int: panic timeout */
@@ -9430,9 +8896,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/sysctl.h linux-2.6.18.2-vs2.0
ctl_handler *strategy; /* Callback function for all r/w */
struct proc_dir_entry *de; /* /proc control block */
void *extra1;
-diff -NurpP --minimal linux-2.6.18.2/include/linux/sysfs.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/sysfs.h
---- linux-2.6.18.2/include/linux/sysfs.h 2006-06-18 04:55:25 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/sysfs.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/sysfs.h 2006-06-18 04:55:25 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/sysfs.h 2006-09-20 17:01:45 +0200
@@ -12,6 +12,8 @@
#include <asm/atomic.h>
@@ -9442,9 +8907,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/sysfs.h linux-2.6.18.2-vs2.0.
struct kobject;
struct module;
-diff -NurpP --minimal linux-2.6.18.2/include/linux/types.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/types.h
---- linux-2.6.18.2/include/linux/types.h 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/types.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/types.h 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/types.h 2006-09-20 17:01:45 +0200
@@ -37,6 +37,8 @@ typedef __kernel_uid32_t uid_t;
typedef __kernel_gid32_t gid_t;
typedef __kernel_uid16_t uid16_t;
@@ -9454,9 +8918,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/types.h linux-2.6.18.2-vs2.0.
#ifdef CONFIG_UID16
/* This is defined by include/asm-{arch}/posix_types.h */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vroot.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vroot.h
---- linux-2.6.18.2/include/linux/vroot.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vroot.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/vroot.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vroot.h 2006-09-20 17:01:45 +0200
@@ -0,0 +1,51 @@
+
+/*
@@ -9509,10 +8972,9 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vroot.h linux-2.6.18.2-vs2.0.
+#define VROOT_CLR_DEV 0x5601
+
+#endif /* _LINUX_VROOT_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vs_base.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vs_base.h
---- linux-2.6.18.2/include/linux/vs_base.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vs_base.h 2006-09-20 17:01:45 +0200
-@@ -0,0 +1,106 @@
+--- linux-2.6.18.5/include/linux/vs_base.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vs_base.h 2006-11-21 02:45:10 +0100
+@@ -0,0 +1,109 @@
+#ifndef _VX_VS_BASE_H
+#define _VX_VS_BASE_H
+
@@ -9523,6 +8985,9 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vs_base.h linux-2.6.18.2-vs2.
+
+#define vx_current_xid() vx_task_xid(current)
+
++#define current_vx_info() (current->vx_info)
++
++
+#define vx_check(c,m) __vx_check(vx_current_xid(),c,m)
+
+#define vx_weak_check(c,m) ((m) ? vx_check(c,m) : 1)
@@ -9619,9 +9084,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vs_base.h linux-2.6.18.2-vs2.
+#else
+#warning duplicate inclusion
+#endif
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vs_context.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vs_context.h
---- linux-2.6.18.2/include/linux/vs_context.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vs_context.h 2006-11-06 05:08:58 +0100
+--- linux-2.6.18.5/include/linux/vs_context.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vs_context.h 2006-11-21 02:45:10 +0100
@@ -0,0 +1,242 @@
+#ifndef _VX_VS_CONTEXT_H
+#define _VX_VS_CONTEXT_H
@@ -9865,9 +9329,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vs_context.h linux-2.6.18.2-v
+#else
+#warning duplicate inclusion
+#endif
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vs_cvirt.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vs_cvirt.h
---- linux-2.6.18.2/include/linux/vs_cvirt.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vs_cvirt.h 2006-11-07 19:01:49 +0100
+--- linux-2.6.18.5/include/linux/vs_cvirt.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vs_cvirt.h 2006-11-07 19:01:49 +0100
@@ -0,0 +1,157 @@
+#ifndef _VX_VS_CVIRT_H
+#define _VX_VS_CVIRT_H
@@ -10026,9 +9489,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vs_cvirt.h linux-2.6.18.2-vs2
+#else
+#warning duplicate inclusion
+#endif
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vs_dlimit.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vs_dlimit.h
---- linux-2.6.18.2/include/linux/vs_dlimit.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vs_dlimit.h 2006-10-16 19:04:59 +0200
+--- linux-2.6.18.5/include/linux/vs_dlimit.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vs_dlimit.h 2006-10-16 19:04:59 +0200
@@ -0,0 +1,213 @@
+#ifndef _VX_VS_DLIMIT_H
+#define _VX_VS_DLIMIT_H
@@ -10243,9 +9705,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vs_dlimit.h linux-2.6.18.2-vs
+#else
+#warning duplicate inclusion
+#endif
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vs_limit.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vs_limit.h
---- linux-2.6.18.2/include/linux/vs_limit.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vs_limit.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/vs_limit.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vs_limit.h 2006-09-20 17:01:45 +0200
@@ -0,0 +1,107 @@
+#ifndef _VX_VS_LIMIT_H
+#define _VX_VS_LIMIT_H
@@ -10354,9 +9815,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vs_limit.h linux-2.6.18.2-vs2
+#else
+#warning duplicate inclusion
+#endif
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vs_memory.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vs_memory.h
---- linux-2.6.18.2/include/linux/vs_memory.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vs_memory.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/vs_memory.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vs_memory.h 2006-09-20 17:01:45 +0200
@@ -0,0 +1,107 @@
+#ifndef _VX_VS_MEMORY_H
+#define _VX_VS_MEMORY_H
@@ -10465,10 +9925,9 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vs_memory.h linux-2.6.18.2-vs
+#else
+#warning duplicate inclusion
+#endif
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vs_network.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vs_network.h
---- linux-2.6.18.2/include/linux/vs_network.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vs_network.h 2006-09-20 17:01:45 +0200
-@@ -0,0 +1,215 @@
+--- linux-2.6.18.5/include/linux/vs_network.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vs_network.h 2006-11-21 02:45:10 +0100
+@@ -0,0 +1,220 @@
+#ifndef _NX_VS_NETWORK_H
+#define _NX_VS_NETWORK_H
+
@@ -10625,6 +10084,9 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vs_network.h linux-2.6.18.2-v
+
+#define nx_current_nid() nx_task_nid(current)
+
++#define current_nx_info() (current->nx_info)
++
++
+#define nx_check(c,m) __nx_check(nx_current_nid(),c,m)
+
+#define nx_weak_check(c,m) ((m) ? nx_check(c,m) : 1)
@@ -10667,6 +10129,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vs_network.h linux-2.6.18.2-v
+ return 1;
+
+ n = nxi->nbipv4;
++ if (n && (nxi->ipv4[0] == 0))
++ return 1;
+ for (i=0; i<n; i++) {
+ if (nxi->ipv4[i] == addr)
+ return 1;
@@ -10684,9 +10148,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vs_network.h linux-2.6.18.2-v
+#else
+#warning duplicate inclusion
+#endif
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vs_sched.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vs_sched.h
---- linux-2.6.18.2/include/linux/vs_sched.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vs_sched.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/vs_sched.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vs_sched.h 2006-09-20 17:01:45 +0200
@@ -0,0 +1,92 @@
+#ifndef _VX_VS_SCHED_H
+#define _VX_VS_SCHED_H
@@ -10780,10 +10243,9 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vs_sched.h linux-2.6.18.2-vs2
+#else
+#warning duplicate inclusion
+#endif
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vs_socket.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vs_socket.h
---- linux-2.6.18.2/include/linux/vs_socket.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vs_socket.h 2006-09-20 17:01:45 +0200
-@@ -0,0 +1,57 @@
+--- linux-2.6.18.5/include/linux/vs_socket.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vs_socket.h 2006-11-21 04:54:54 +0100
+@@ -0,0 +1,65 @@
+#ifndef _VX_VS_SOCKET_H
+#define _VX_VS_SOCKET_H
+
@@ -10793,16 +10255,24 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vs_socket.h linux-2.6.18.2-vs
+/* socket accounting */
+
+#include <linux/socket.h>
++#include <linux/vserver/cacct.h>
+
+static inline int vx_sock_type(int family)
+{
-+ int type = 4;
-+
-+ if (family > 0 && family < 3)
-+ type = family;
-+ else if (family == PF_INET6)
-+ type = 3;
-+ return type;
++ switch (family) {
++ case PF_UNSPEC:
++ return VXA_SOCK_UNSPEC;
++ case PF_UNIX:
++ return VXA_SOCK_UNIX;
++ case PF_INET:
++ return VXA_SOCK_INET;
++ case PF_INET6:
++ return VXA_SOCK_INET6;
++ case PF_PACKET:
++ return VXA_SOCK_PACKET;
++ default:
++ return VXA_SOCK_OTHER;
++ }
+}
+
+#define vx_acc_sock(v,f,p,s) \
@@ -10841,10 +10311,27 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vs_socket.h linux-2.6.18.2-vs
+#else
+#warning duplicate inclusion
+#endif
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/context.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/context.h
---- linux-2.6.18.2/include/linux/vserver/context.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/context.h 2006-10-17 02:05:58 +0200
-@@ -0,0 +1,178 @@
+--- linux-2.6.18.5/include/linux/vserver/cacct.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/cacct.h 2006-11-21 02:45:10 +0100
+@@ -0,0 +1,15 @@
++#ifndef _VX_CACCT_H
++#define _VX_CACCT_H
++
++
++enum sock_acc_field {
++ VXA_SOCK_UNSPEC = 0,
++ VXA_SOCK_UNIX,
++ VXA_SOCK_INET,
++ VXA_SOCK_INET6,
++ VXA_SOCK_PACKET,
++ VXA_SOCK_OTHER,
++ VXA_SOCK_SIZE /* array size */
++};
++
++#endif /* _VX_CACCT_H */
+--- linux-2.6.18.5/include/linux/vserver/context.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/context.h 2006-11-23 16:37:07 +0100
+@@ -0,0 +1,177 @@
+#ifndef _VX_CONTEXT_H
+#define _VX_CONTEXT_H
+
@@ -10858,7 +10345,6 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/context.h linux-2.6.1
+
+/* context flags */
+
-+#define VXF_INFO_LOCK 0x00000001
+#define VXF_INFO_SCHED 0x00000002
+#define VXF_INFO_NPROC 0x00000004
+#define VXF_INFO_PRIVATE 0x00000008
@@ -11023,9 +10509,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/context.h linux-2.6.1
+#else /* _VX_CONTEXT_H */
+#warning duplicate inclusion
+#endif /* _VX_CONTEXT_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/context_cmd.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/context_cmd.h
---- linux-2.6.18.2/include/linux/vserver/context_cmd.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/context_cmd.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/vserver/context_cmd.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/context_cmd.h 2006-09-20 17:01:45 +0200
@@ -0,0 +1,84 @@
+#ifndef _VX_CONTEXT_CMD_H
+#define _VX_CONTEXT_CMD_H
@@ -11111,9 +10596,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/context_cmd.h linux-2
+
+#endif /* __KERNEL__ */
+#endif /* _VX_CONTEXT_CMD_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/cvirt.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/cvirt.h
---- linux-2.6.18.2/include/linux/vserver/cvirt.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/cvirt.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/vserver/cvirt.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/cvirt.h 2006-09-20 17:01:45 +0200
@@ -0,0 +1,26 @@
+#ifndef _VX_CVIRT_H
+#define _VX_CVIRT_H
@@ -11141,9 +10625,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/cvirt.h linux-2.6.18.
+#else /* _VX_CVIRT_H */
+#warning duplicate inclusion
+#endif /* _VX_CVIRT_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/cvirt_cmd.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/cvirt_cmd.h
---- linux-2.6.18.2/include/linux/vserver/cvirt_cmd.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/cvirt_cmd.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/vserver/cvirt_cmd.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/cvirt_cmd.h 2006-09-20 17:01:45 +0200
@@ -0,0 +1,35 @@
+#ifndef _VX_CVIRT_CMD_H
+#define _VX_CVIRT_CMD_H
@@ -11180,10 +10663,9 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/cvirt_cmd.h linux-2.6
+
+#endif /* __KERNEL__ */
+#endif /* _VX_CVIRT_CMD_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/cvirt_def.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/cvirt_def.h
---- linux-2.6.18.2/include/linux/vserver/cvirt_def.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/cvirt_def.h 2006-10-20 03:12:44 +0200
-@@ -0,0 +1,75 @@
+--- linux-2.6.18.5/include/linux/vserver/cvirt_def.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/cvirt_def.h 2006-12-10 02:48:07 +0100
+@@ -0,0 +1,77 @@
+#ifndef _VX_CVIRT_DEF_H
+#define _VX_CVIRT_DEF_H
+
@@ -11194,6 +10676,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/cvirt_def.h linux-2.6
+#include <linux/time.h>
+#include <asm/atomic.h>
+
++#include "cacct.h"
++
+
+struct _vx_usage_stat {
+ uint64_t user;
@@ -11255,13 +10739,12 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/cvirt_def.h linux-2.6
+struct _vx_cacct {
+ unsigned long total_forks;
+
-+ struct _vx_sock_acc sock[5][3];
++ struct _vx_sock_acc sock[VXA_SOCK_SIZE][3];
+};
+
+#endif /* _VX_CVIRT_DEF_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/debug.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/debug.h
---- linux-2.6.18.2/include/linux/vserver/debug.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/debug.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/vserver/debug.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/debug.h 2006-09-20 17:01:45 +0200
@@ -0,0 +1,298 @@
+#ifndef _VX_DEBUG_H
+#define _VX_DEBUG_H
@@ -11561,9 +11044,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/debug.h linux-2.6.18.
+
+
+#endif /* _VX_DEBUG_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/debug_cmd.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/debug_cmd.h
---- linux-2.6.18.2/include/linux/vserver/debug_cmd.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/debug_cmd.h 2006-11-06 05:08:58 +0100
+--- linux-2.6.18.5/include/linux/vserver/debug_cmd.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/debug_cmd.h 2006-11-06 05:08:58 +0100
@@ -0,0 +1,14 @@
+#ifndef _VX_DEBUG_CMD_H
+#define _VX_DEBUG_CMD_H
@@ -11579,9 +11061,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/debug_cmd.h linux-2.6
+
+#endif /* __KERNEL__ */
+#endif /* _VX_DEBUG_CMD_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/dlimit.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/dlimit.h
---- linux-2.6.18.2/include/linux/vserver/dlimit.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/dlimit.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/vserver/dlimit.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/dlimit.h 2006-09-20 17:01:45 +0200
@@ -0,0 +1,53 @@
+#ifndef _VX_DLIMIT_H
+#define _VX_DLIMIT_H
@@ -11636,9 +11117,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/dlimit.h linux-2.6.18
+#else /* _VX_DLIMIT_H */
+#warning duplicate inclusion
+#endif /* _VX_DLIMIT_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/dlimit_cmd.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/dlimit_cmd.h
---- linux-2.6.18.2/include/linux/vserver/dlimit_cmd.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/dlimit_cmd.h 2006-11-06 05:31:43 +0100
+--- linux-2.6.18.5/include/linux/vserver/dlimit_cmd.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/dlimit_cmd.h 2006-11-06 05:31:43 +0100
@@ -0,0 +1,71 @@
+#ifndef _VX_DLIMIT_CMD_H
+#define _VX_DLIMIT_CMD_H
@@ -11711,9 +11191,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/dlimit_cmd.h linux-2.
+
+#endif /* __KERNEL__ */
+#endif /* _VX_DLIMIT_CMD_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/inode.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/inode.h
---- linux-2.6.18.2/include/linux/vserver/inode.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/inode.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/vserver/inode.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/inode.h 2006-09-20 17:01:45 +0200
@@ -0,0 +1,38 @@
+#ifndef _VX_INODE_H
+#define _VX_INODE_H
@@ -11753,9 +11232,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/inode.h linux-2.6.18.
+#else /* _VX_INODE_H */
+#warning duplicate inclusion
+#endif /* _VX_INODE_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/inode_cmd.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/inode_cmd.h
---- linux-2.6.18.2/include/linux/vserver/inode_cmd.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/inode_cmd.h 2006-11-06 05:31:43 +0100
+--- linux-2.6.18.5/include/linux/vserver/inode_cmd.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/inode_cmd.h 2006-11-06 05:31:43 +0100
@@ -0,0 +1,61 @@
+#ifndef _VX_INODE_CMD_H
+#define _VX_INODE_CMD_H
@@ -11818,9 +11296,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/inode_cmd.h linux-2.6
+
+#endif /* __KERNEL__ */
+#endif /* _VX_INODE_CMD_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/legacy.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/legacy.h
---- linux-2.6.18.2/include/linux/vserver/legacy.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/legacy.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/vserver/legacy.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/legacy.h 2006-09-20 17:01:45 +0200
@@ -0,0 +1,49 @@
+#ifndef _VX_LEGACY_H
+#define _VX_LEGACY_H
@@ -11871,9 +11348,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/legacy.h linux-2.6.18
+
+#endif /* __KERNEL__ */
+#endif /* _VX_LEGACY_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/limit.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/limit.h
---- linux-2.6.18.2/include/linux/vserver/limit.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/limit.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/vserver/limit.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/limit.h 2006-09-20 17:01:45 +0200
@@ -0,0 +1,20 @@
+#ifndef _VX_LIMIT_H
+#define _VX_LIMIT_H
@@ -11895,9 +11371,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/limit.h linux-2.6.18.
+
+#endif /* __KERNEL__ */
+#endif /* _VX_LIMIT_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/limit_cmd.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/limit_cmd.h
---- linux-2.6.18.2/include/linux/vserver/limit_cmd.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/limit_cmd.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/vserver/limit_cmd.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/limit_cmd.h 2006-09-20 17:01:45 +0200
@@ -0,0 +1,55 @@
+#ifndef _VX_LIMIT_CMD_H
+#define _VX_LIMIT_CMD_H
@@ -11954,9 +11429,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/limit_cmd.h linux-2.6
+
+#endif /* __KERNEL__ */
+#endif /* _VX_LIMIT_CMD_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/limit_def.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/limit_def.h
---- linux-2.6.18.2/include/linux/vserver/limit_def.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/limit_def.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/vserver/limit_def.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/limit_def.h 2006-09-20 17:01:45 +0200
@@ -0,0 +1,22 @@
+#ifndef _VX_LIMIT_DEF_H
+#define _VX_LIMIT_DEF_H
@@ -11980,9 +11454,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/limit_def.h linux-2.6
+
+
+#endif /* _VX_LIMIT_DEF_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/limit_int.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/limit_int.h
---- linux-2.6.18.2/include/linux/vserver/limit_int.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/limit_int.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/vserver/limit_int.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/limit_int.h 2006-09-20 17:01:45 +0200
@@ -0,0 +1,76 @@
+#ifndef _VX_LIMIT_INT_H
+#define _VX_LIMIT_INT_H
@@ -12060,9 +11533,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/limit_int.h linux-2.6
+
+#endif /* __KERNEL__ */
+#endif /* _VX_LIMIT_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/namespace.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/namespace.h
---- linux-2.6.18.2/include/linux/vserver/namespace.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/namespace.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/vserver/namespace.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/namespace.h 2006-09-20 17:01:45 +0200
@@ -0,0 +1,15 @@
+#ifndef _VX_NAMESPACE_H
+#define _VX_NAMESPACE_H
@@ -12079,9 +11551,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/namespace.h linux-2.6
+#else /* _VX_NAMESPACE_H */
+#warning duplicate inclusion
+#endif /* _VX_NAMESPACE_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/namespace_cmd.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/namespace_cmd.h
---- linux-2.6.18.2/include/linux/vserver/namespace_cmd.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/namespace_cmd.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/vserver/namespace_cmd.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/namespace_cmd.h 2006-09-20 17:01:45 +0200
@@ -0,0 +1,17 @@
+#ifndef _VX_NAMESPACE_CMD_H
+#define _VX_NAMESPACE_CMD_H
@@ -12100,10 +11571,9 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/namespace_cmd.h linux
+
+#endif /* __KERNEL__ */
+#endif /* _VX_NAMESPACE_CMD_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/network.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/network.h
---- linux-2.6.18.2/include/linux/vserver/network.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/network.h 2006-09-20 17:01:45 +0200
-@@ -0,0 +1,119 @@
+--- linux-2.6.18.5/include/linux/vserver/network.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/network.h 2006-11-23 16:37:07 +0100
+@@ -0,0 +1,121 @@
+#ifndef _VX_NETWORK_H
+#define _VX_NETWORK_H
+
@@ -12119,6 +11589,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/network.h linux-2.6.1
+
+/* network flags */
+
++#define NXF_INFO_PRIVATE 0x00000008
++
+#define NXF_STATE_SETUP (1ULL<<32)
+
+#define NXF_SC_HELPER (1ULL<<36)
@@ -12223,9 +11695,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/network.h linux-2.6.1
+#else /* _VX_NETWORK_H */
+#warning duplicate inclusion
+#endif /* _VX_NETWORK_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/network_cmd.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/network_cmd.h
---- linux-2.6.18.2/include/linux/vserver/network_cmd.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/network_cmd.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/vserver/network_cmd.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/network_cmd.h 2006-09-20 17:01:45 +0200
@@ -0,0 +1,89 @@
+#ifndef _VX_NETWORK_CMD_H
+#define _VX_NETWORK_CMD_H
@@ -12316,9 +11787,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/network_cmd.h linux-2
+
+#endif /* __KERNEL__ */
+#endif /* _VX_CONTEXT_CMD_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/sched.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/sched.h
---- linux-2.6.18.2/include/linux/vserver/sched.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/sched.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/vserver/sched.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/sched.h 2006-09-20 17:01:45 +0200
@@ -0,0 +1,26 @@
+#ifndef _VX_SCHED_H
+#define _VX_SCHED_H
@@ -12346,9 +11816,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/sched.h linux-2.6.18.
+#else /* _VX_SCHED_H */
+#warning duplicate inclusion
+#endif /* _VX_SCHED_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/sched_cmd.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/sched_cmd.h
---- linux-2.6.18.2/include/linux/vserver/sched_cmd.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/sched_cmd.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/vserver/sched_cmd.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/sched_cmd.h 2006-09-20 17:01:45 +0200
@@ -0,0 +1,48 @@
+#ifndef _VX_SCHED_CMD_H
+#define _VX_SCHED_CMD_H
@@ -12398,9 +11867,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/sched_cmd.h linux-2.6
+
+#endif /* __KERNEL__ */
+#endif /* _VX_SCHED_CMD_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/sched_def.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/sched_def.h
---- linux-2.6.18.2/include/linux/vserver/sched_def.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/sched_def.h 2006-10-20 00:46:11 +0200
+--- linux-2.6.18.5/include/linux/vserver/sched_def.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/sched_def.h 2006-10-20 00:46:11 +0200
@@ -0,0 +1,38 @@
+#ifndef _VX_SCHED_DEF_H
+#define _VX_SCHED_DEF_H
@@ -12440,9 +11908,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/sched_def.h linux-2.6
+};
+
+#endif /* _VX_SCHED_DEF_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/signal.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/signal.h
---- linux-2.6.18.2/include/linux/vserver/signal.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/signal.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/vserver/signal.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/signal.h 2006-09-20 17:01:45 +0200
@@ -0,0 +1,14 @@
+#ifndef _VX_SIGNAL_H
+#define _VX_SIGNAL_H
@@ -12458,9 +11925,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/signal.h linux-2.6.18
+#else /* _VX_SIGNAL_H */
+#warning duplicate inclusion
+#endif /* _VX_SIGNAL_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/signal_cmd.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/signal_cmd.h
---- linux-2.6.18.2/include/linux/vserver/signal_cmd.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/signal_cmd.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/vserver/signal_cmd.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/signal_cmd.h 2006-09-20 17:01:45 +0200
@@ -0,0 +1,26 @@
+#ifndef _VX_SIGNAL_CMD_H
+#define _VX_SIGNAL_CMD_H
@@ -12488,9 +11954,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/signal_cmd.h linux-2.
+
+#endif /* __KERNEL__ */
+#endif /* _VX_SIGNAL_CMD_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/switch.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/switch.h
---- linux-2.6.18.2/include/linux/vserver/switch.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/switch.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/linux/vserver/switch.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/switch.h 2006-09-20 17:01:45 +0200
@@ -0,0 +1,98 @@
+#ifndef _VX_SWITCH_H
+#define _VX_SWITCH_H
@@ -12590,9 +12055,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/switch.h linux-2.6.18
+#endif /* __KERNEL__ */
+
+#endif /* _VX_SWITCH_H */
-diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/xid.h linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/xid.h
---- linux-2.6.18.2/include/linux/vserver/xid.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/linux/vserver/xid.h 2006-10-29 05:06:18 +0100
+--- linux-2.6.18.5/include/linux/vserver/xid.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/linux/vserver/xid.h 2006-10-29 05:06:18 +0100
@@ -0,0 +1,144 @@
+#ifndef _VX_XID_H
+#define _VX_XID_H
@@ -12738,9 +12202,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/linux/vserver/xid.h linux-2.6.18.2-
+void vx_propagate_xid(struct nameidata *nd, struct inode *inode);
+
+#endif /* _VX_XID_H */
-diff -NurpP --minimal linux-2.6.18.2/include/net/af_unix.h linux-2.6.18.2-vs2.0.2.2-rc6/include/net/af_unix.h
---- linux-2.6.18.2/include/net/af_unix.h 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/net/af_unix.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/net/af_unix.h 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/net/af_unix.h 2006-09-20 17:01:45 +0200
@@ -17,9 +17,9 @@ extern spinlock_t unix_table_lock;
extern atomic_t unix_tot_inflight;
@@ -12783,9 +12246,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/net/af_unix.h linux-2.6.18.2-vs2.0.
}
#define forall_unix_sockets(i, s) \
-diff -NurpP --minimal linux-2.6.18.2/include/net/inet_hashtables.h linux-2.6.18.2-vs2.0.2.2-rc6/include/net/inet_hashtables.h
---- linux-2.6.18.2/include/net/inet_hashtables.h 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/net/inet_hashtables.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/net/inet_hashtables.h 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/net/inet_hashtables.h 2006-09-20 17:01:45 +0200
@@ -271,6 +271,25 @@ static inline int inet_iif(const struct
return ((struct rtable *)skb->dst)->rt_iif;
}
@@ -12821,9 +12283,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/net/inet_hashtables.h linux-2.6.18.
(sk->sk_family == PF_INET || !ipv6_only_sock(sk)) &&
!sk->sk_bound_dev_if)
goto sherry_cache;
-diff -NurpP --minimal linux-2.6.18.2/include/net/inet_sock.h linux-2.6.18.2-vs2.0.2.2-rc6/include/net/inet_sock.h
---- linux-2.6.18.2/include/net/inet_sock.h 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/net/inet_sock.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/net/inet_sock.h 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/net/inet_sock.h 2006-09-20 17:01:45 +0200
@@ -114,6 +114,7 @@ struct inet_sock {
/* Socket demultiplex comparisons on incoming packets. */
__u32 daddr;
@@ -12832,9 +12293,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/net/inet_sock.h linux-2.6.18.2-vs2.
__u16 dport;
__u16 num;
__u32 saddr;
-diff -NurpP --minimal linux-2.6.18.2/include/net/inet_timewait_sock.h linux-2.6.18.2-vs2.0.2.2-rc6/include/net/inet_timewait_sock.h
---- linux-2.6.18.2/include/net/inet_timewait_sock.h 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/net/inet_timewait_sock.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/net/inet_timewait_sock.h 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/net/inet_timewait_sock.h 2006-09-20 17:01:45 +0200
@@ -115,6 +115,10 @@ struct inet_timewait_sock {
#define tw_refcnt __tw_common.skc_refcnt
#define tw_hash __tw_common.skc_hash
@@ -12846,9 +12306,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/net/inet_timewait_sock.h linux-2.6.
volatile unsigned char tw_substate;
/* 3 bits hole, try to pack */
unsigned char tw_rcv_wscale;
-diff -NurpP --minimal linux-2.6.18.2/include/net/route.h linux-2.6.18.2-vs2.0.2.2-rc6/include/net/route.h
---- linux-2.6.18.2/include/net/route.h 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/net/route.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/net/route.h 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/net/route.h 2006-09-20 17:01:45 +0200
@@ -27,11 +27,14 @@
#include <net/dst.h>
#include <net/inetpeer.h>
@@ -12953,9 +12412,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/net/route.h linux-2.6.18.2-vs2.0.2.
err = __ip_route_output_key(rp, &fl);
if (err)
return err;
-diff -NurpP --minimal linux-2.6.18.2/include/net/sock.h linux-2.6.18.2-vs2.0.2.2-rc6/include/net/sock.h
---- linux-2.6.18.2/include/net/sock.h 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/include/net/sock.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/include/net/sock.h 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/include/net/sock.h 2006-09-20 17:01:45 +0200
@@ -118,6 +118,10 @@ struct sock_common {
atomic_t skc_refcnt;
unsigned int skc_hash;
@@ -12978,9 +12436,8 @@ diff -NurpP --minimal linux-2.6.18.2/include/net/sock.h linux-2.6.18.2-vs2.0.2.2
unsigned char sk_shutdown : 2,
sk_no_check : 2,
sk_userlocks : 4;
-diff -NurpP --minimal linux-2.6.18.2/ipc/mqueue.c linux-2.6.18.2-vs2.0.2.2-rc6/ipc/mqueue.c
---- linux-2.6.18.2/ipc/mqueue.c 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/ipc/mqueue.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/ipc/mqueue.c 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/ipc/mqueue.c 2006-09-20 17:01:45 +0200
@@ -29,6 +29,8 @@
#include <linux/audit.h>
#include <linux/signal.h>
@@ -13036,9 +12493,8 @@ diff -NurpP --minimal linux-2.6.18.2/ipc/mqueue.c linux-2.6.18.2-vs2.0.2.2-rc6/i
out_err:
dput(dentry);
-diff -NurpP --minimal linux-2.6.18.2/ipc/msg.c linux-2.6.18.2-vs2.0.2.2-rc6/ipc/msg.c
---- linux-2.6.18.2/ipc/msg.c 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/ipc/msg.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/ipc/msg.c 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/ipc/msg.c 2006-09-20 17:01:45 +0200
@@ -103,6 +103,7 @@ static int newque(key_t key, int msgflg)
msq->q_perm.mode = msgflg & S_IRWXUGO;
@@ -13057,9 +12513,8 @@ diff -NurpP --minimal linux-2.6.18.2/ipc/msg.c linux-2.6.18.2-vs2.0.2.2-rc6/ipc/
return seq_printf(s,
"%10d %10d %4o %10lu %10lu %5u %5u %5u %5u %5u %5u %10lu %10lu %10lu\n",
msq->q_perm.key,
-diff -NurpP --minimal linux-2.6.18.2/ipc/sem.c linux-2.6.18.2-vs2.0.2.2-rc6/ipc/sem.c
---- linux-2.6.18.2/ipc/sem.c 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/ipc/sem.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/ipc/sem.c 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/ipc/sem.c 2006-09-20 17:01:45 +0200
@@ -183,6 +183,7 @@ static int newary (key_t key, int nsems,
sma->sem_perm.mode = (semflg & S_IRWXUGO);
@@ -13078,9 +12533,8 @@ diff -NurpP --minimal linux-2.6.18.2/ipc/sem.c linux-2.6.18.2-vs2.0.2.2-rc6/ipc/
return seq_printf(s,
"%10d %10d %4o %10lu %5u %5u %5u %5u %10lu %10lu\n",
sma->sem_perm.key,
-diff -NurpP --minimal linux-2.6.18.2/ipc/shm.c linux-2.6.18.2-vs2.0.2.2-rc6/ipc/shm.c
---- linux-2.6.18.2/ipc/shm.c 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/ipc/shm.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/ipc/shm.c 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/ipc/shm.c 2006-09-20 17:01:45 +0200
@@ -32,6 +32,8 @@
#include <linux/ptrace.h>
#include <linux/seq_file.h>
@@ -13146,9 +12600,8 @@ diff -NurpP --minimal linux-2.6.18.2/ipc/shm.c linux-2.6.18.2-vs2.0.2.2-rc6/ipc/
if (sizeof(size_t) <= sizeof(int))
format = SMALL_STRING;
else
-diff -NurpP --minimal linux-2.6.18.2/ipc/util.c linux-2.6.18.2-vs2.0.2.2-rc6/ipc/util.c
---- linux-2.6.18.2/ipc/util.c 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/ipc/util.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/ipc/util.c 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/ipc/util.c 2006-09-20 17:01:45 +0200
@@ -157,7 +157,9 @@ int ipc_findkey(struct ipc_ids* ids, key
*/
for (id = 0; id <= max_id; id++) {
@@ -13170,9 +12623,8 @@ diff -NurpP --minimal linux-2.6.18.2/ipc/util.c linux-2.6.18.2-vs2.0.2.2-rc6/ipc
requested_mode = (flag >> 6) | (flag >> 3) | flag;
granted_mode = ipcp->mode;
if (current->euid == ipcp->cuid || current->euid == ipcp->uid)
-diff -NurpP --minimal linux-2.6.18.2/kernel/Makefile linux-2.6.18.2-vs2.0.2.2-rc6/kernel/Makefile
---- linux-2.6.18.2/kernel/Makefile 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/Makefile 2006-09-20 17:38:59 +0200
+--- linux-2.6.18.5/kernel/Makefile 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/Makefile 2006-09-20 17:38:59 +0200
@@ -10,6 +10,8 @@ obj-y = sched.o fork.o exec_domain.o
kthread.o wait.o kfifo.o sys_ni.o posix-cpu-timers.o mutex.o \
hrtimer.o rwsem.o
@@ -13182,9 +12634,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/Makefile linux-2.6.18.2-vs2.0.2.2-rc
obj-$(CONFIG_STACKTRACE) += stacktrace.o
obj-y += time/
obj-$(CONFIG_DEBUG_MUTEXES) += mutex-debug.o
-diff -NurpP --minimal linux-2.6.18.2/kernel/capability.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/capability.c
---- linux-2.6.18.2/kernel/capability.c 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/capability.c 2006-10-18 01:19:40 +0200
+--- linux-2.6.18.5/kernel/capability.c 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/capability.c 2006-10-18 01:19:40 +0200
@@ -246,6 +246,9 @@ EXPORT_SYMBOL(__capable);
int capable(int cap)
@@ -13195,9 +12646,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/capability.c linux-2.6.18.2-vs2.0.2.
return __capable(current, cap);
}
EXPORT_SYMBOL(capable);
-diff -NurpP --minimal linux-2.6.18.2/kernel/exit.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/exit.c
---- linux-2.6.18.2/kernel/exit.c 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/exit.c 2006-11-06 05:08:58 +0100
+--- linux-2.6.18.5/kernel/exit.c 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/exit.c 2006-11-06 05:08:58 +0100
@@ -38,6 +38,9 @@
#include <linux/pipe_fs_i.h>
#include <linux/audit.h> /* for audit_free() */
@@ -13270,9 +12720,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/exit.c linux-2.6.18.2-vs2.0.2.2-rc6/
/* PF_DEAD causes final put_task_struct after we schedule. */
preempt_disable();
BUG_ON(tsk->flags & PF_DEAD);
-diff -NurpP --minimal linux-2.6.18.2/kernel/fork.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/fork.c
---- linux-2.6.18.2/kernel/fork.c 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/fork.c 2006-09-20 17:35:08 +0200
+--- linux-2.6.18.5/kernel/fork.c 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/fork.c 2006-09-20 17:35:08 +0200
@@ -45,6 +45,10 @@
#include <linux/cn_proc.h>
#include <linux/delayacct.h>
@@ -13431,9 +12880,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/fork.c linux-2.6.18.2-vs2.0.2.2-rc6/
bad_fork_free:
free_task(p);
fork_out:
-diff -NurpP --minimal linux-2.6.18.2/kernel/irq/handle.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/irq/handle.c
---- linux-2.6.18.2/kernel/irq/handle.c 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/irq/handle.c 2006-11-06 05:08:58 +0100
+--- linux-2.6.18.5/kernel/irq/handle.c 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/irq/handle.c 2006-12-10 02:04:47 +0100
@@ -15,6 +15,7 @@
#include <linux/random.h>
#include <linux/interrupt.h>
@@ -13442,43 +12890,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/irq/handle.c linux-2.6.18.2-vs2.0.2.
#include "internals.h"
-@@ -170,6 +171,7 @@ fastcall unsigned int __do_IRQ(unsigned
- {
- struct irq_desc *desc = irq_desc + irq;
- struct irqaction *action;
-+ struct vx_info_save vxis;
- unsigned int status;
-
- kstat_this_cpu.irqs[irq]++;
-@@ -179,14 +181,17 @@ fastcall unsigned int __do_IRQ(unsigned
- /*
- * No locking required for CPU-local interrupts:
- */
-+ __enter_vx_admin(&vxis);
- if (desc->chip->ack)
- desc->chip->ack(irq);
- action_ret = handle_IRQ_event(irq, regs, desc->action);
- desc->chip->end(irq);
-+ __leave_vx_admin(&vxis);
- return 1;
- }
-
- spin_lock(&desc->lock);
-+ __enter_vx_admin(&vxis);
- if (desc->chip->ack)
- desc->chip->ack(irq);
- /*
-@@ -249,6 +254,7 @@ out:
- * disabled while the handler was running.
- */
- desc->chip->end(irq);
-+ __leave_vx_admin(&vxis);
- spin_unlock(&desc->lock);
-
- return 1;
-diff -NurpP --minimal linux-2.6.18.2/kernel/kthread.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/kthread.c
---- linux-2.6.18.2/kernel/kthread.c 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/kthread.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/kernel/kthread.c 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/kthread.c 2006-09-20 17:01:45 +0200
@@ -123,7 +123,7 @@ static void keventd_create_kthread(void
} else {
wait_for_completion(&create->started);
@@ -13488,9 +12901,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/kthread.c linux-2.6.18.2-vs2.0.2.2-r
read_unlock(&tasklist_lock);
}
complete(&create->done);
-diff -NurpP --minimal linux-2.6.18.2/kernel/pid.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/pid.c
---- linux-2.6.18.2/kernel/pid.c 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/pid.c 2006-11-06 05:17:10 +0100
+--- linux-2.6.18.5/kernel/pid.c 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/pid.c 2006-11-06 05:17:10 +0100
@@ -26,6 +26,7 @@
#include <linux/init.h>
#include <linux/bootmem.h>
@@ -13525,9 +12937,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/pid.c linux-2.6.18.2-vs2.0.2.2-rc6/k
return pid_task(find_pid(nr), type);
}
-diff -NurpP --minimal linux-2.6.18.2/kernel/posix-timers.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/posix-timers.c
---- linux-2.6.18.2/kernel/posix-timers.c 2006-06-18 04:55:31 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/posix-timers.c 2006-10-17 02:39:53 +0200
+--- linux-2.6.18.5/kernel/posix-timers.c 2006-06-18 04:55:31 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/posix-timers.c 2006-10-17 02:39:53 +0200
@@ -48,6 +48,7 @@
#include <linux/wait.h>
#include <linux/workqueue.h>
@@ -13586,19 +12997,17 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/posix-timers.c linux-2.6.18.2-vs2.0.
rtn->tgid != current->tgid ||
(event->sigev_notify & ~SIGEV_THREAD_ID) != SIGEV_SIGNAL))
return NULL;
-diff -NurpP --minimal linux-2.6.18.2/kernel/printk.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/printk.c
---- linux-2.6.18.2/kernel/printk.c 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/printk.c 2006-10-17 02:37:14 +0200
-@@ -31,6 +31,8 @@
+--- linux-2.6.18.5/kernel/printk.c 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/printk.c 2006-12-10 02:04:47 +0100
+@@ -31,6 +31,7 @@
#include <linux/security.h>
#include <linux/bootmem.h>
#include <linux/syscalls.h>
-+#include <linux/vs_context.h>
+#include <linux/vserver/cvirt.h>
#include <asm/uaccess.h>
-@@ -184,18 +186,13 @@ int do_syslog(int type, char __user *buf
+@@ -184,18 +185,13 @@ int do_syslog(int type, char __user *buf
unsigned long i, j, limit, count;
int do_clear = 0;
char c;
@@ -13619,7 +13028,7 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/printk.c linux-2.6.18.2-vs2.0.2.2-rc
error = -EINVAL;
if (!buf || len < 0)
goto out;
-@@ -206,6 +203,16 @@ int do_syslog(int type, char __user *buf
+@@ -206,6 +202,16 @@ int do_syslog(int type, char __user *buf
error = -EFAULT;
goto out;
}
@@ -13636,7 +13045,7 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/printk.c linux-2.6.18.2-vs2.0.2.2-rc
error = wait_event_interruptible(log_wait,
(log_start - log_end));
if (error)
-@@ -230,16 +237,6 @@ int do_syslog(int type, char __user *buf
+@@ -230,16 +236,6 @@ int do_syslog(int type, char __user *buf
do_clear = 1;
/* FALL THRU */
case 3: /* Read last kernel messages */
@@ -13653,28 +13062,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/printk.c linux-2.6.18.2-vs2.0.2.2-rc
count = len;
if (count > log_buf_len)
count = log_buf_len;
-@@ -510,8 +507,10 @@ asmlinkage int vprintk(const char *fmt,
- char *p;
- static char printk_buf[1024];
- static int log_level_unknown = 1;
-+ struct vx_info_save vxis;
-
- preempt_disable();
-+ __enter_vx_admin(&vxis);
- if (unlikely(oops_in_progress) && printk_cpu == smp_processor_id())
- /* If a crash is occurring during printk() on this CPU,
- * make sure we can't deadlock */
-@@ -620,6 +619,7 @@ asmlinkage int vprintk(const char *fmt,
- local_irq_restore(flags);
- }
-
-+ __leave_vx_admin(&vxis);
- preempt_enable();
- return printed_len;
- }
-diff -NurpP --minimal linux-2.6.18.2/kernel/ptrace.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/ptrace.c
---- linux-2.6.18.2/kernel/ptrace.c 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/ptrace.c 2006-10-18 01:19:40 +0200
+--- linux-2.6.18.5/kernel/ptrace.c 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/ptrace.c 2006-10-18 01:19:40 +0200
@@ -521,6 +521,10 @@ asmlinkage long sys_ptrace(long request,
goto out;
}
@@ -13686,9 +13075,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/ptrace.c linux-2.6.18.2-vs2.0.2.2-rc
if (request == PTRACE_ATTACH) {
ret = ptrace_attach(child);
goto out_put_task_struct;
-diff -NurpP --minimal linux-2.6.18.2/kernel/sched.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/sched.c
---- linux-2.6.18.2/kernel/sched.c 2006-11-04 19:43:24 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/sched.c 2006-11-06 05:08:58 +0100
+--- linux-2.6.18.5/kernel/sched.c 2006-12-04 06:13:53 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/sched.c 2006-11-06 05:08:58 +0100
@@ -55,6 +55,9 @@
#include <asm/tlb.h>
@@ -14045,9 +13433,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/sched.c linux-2.6.18.2-vs2.0.2.2-rc6
__activate_task(p, task_rq(p));
resched_task(rq->curr);
}
-diff -NurpP --minimal linux-2.6.18.2/kernel/signal.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/signal.c
---- linux-2.6.18.2/kernel/signal.c 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/signal.c 2006-11-06 05:08:58 +0100
+--- linux-2.6.18.5/kernel/signal.c 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/signal.c 2006-11-06 05:08:58 +0100
@@ -571,18 +571,27 @@ static int rm_from_queue(unsigned long m
static int check_kill_permission(int sig, struct siginfo *info,
struct task_struct *t)
@@ -14109,44 +13496,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/signal.c linux-2.6.18.2-vs2.0.2.2-rc
if (sig_kernel_stop(signr)) {
/*
* The default action is to stop all threads in
-diff -NurpP --minimal linux-2.6.18.2/kernel/softirq.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/softirq.c
---- linux-2.6.18.2/kernel/softirq.c 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/softirq.c 2006-10-17 02:35:27 +0200
-@@ -17,6 +17,7 @@
- #include <linux/kthread.h>
- #include <linux/rcupdate.h>
- #include <linux/smp.h>
-+#include <linux/vs_context.h>
-
- #include <asm/irq.h>
- /*
-@@ -205,6 +206,7 @@ EXPORT_SYMBOL(local_bh_enable_ip);
-
- asmlinkage void __do_softirq(void)
- {
-+ struct vx_info_save vxis;
- struct softirq_action *h;
- __u32 pending;
- int max_restart = MAX_SOFTIRQ_RESTART;
-@@ -214,6 +216,7 @@ asmlinkage void __do_softirq(void)
- account_system_vtime(current);
-
- __local_bh_disable((unsigned long)__builtin_return_address(0));
-+ __enter_vx_admin(&vxis);
- trace_softirq_enter();
-
- cpu = smp_processor_id();
-@@ -245,6 +248,7 @@ restart:
-
- trace_softirq_exit();
-
-+ __leave_vx_admin(&vxis);
- account_system_vtime(current);
- _local_bh_enable();
- }
-diff -NurpP --minimal linux-2.6.18.2/kernel/sys.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/sys.c
---- linux-2.6.18.2/kernel/sys.c 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/sys.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/kernel/sys.c 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/sys.c 2006-09-20 17:01:45 +0200
@@ -10,6 +10,7 @@
#include <linux/mman.h>
#include <linux/smp_lock.h>
@@ -14372,9 +13723,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/sys.c linux-2.6.18.2-vs2.0.2.2-rc6/k
return -EPERM;
if (resource == RLIMIT_NOFILE && new_rlim.rlim_max > NR_OPEN)
return -EPERM;
-diff -NurpP --minimal linux-2.6.18.2/kernel/sysctl.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/sysctl.c
---- linux-2.6.18.2/kernel/sysctl.c 2006-11-04 19:43:24 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/sysctl.c 2006-10-16 18:56:11 +0200
+--- linux-2.6.18.5/kernel/sysctl.c 2006-12-04 06:13:53 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/sysctl.c 2006-10-16 18:56:11 +0200
@@ -45,6 +45,7 @@
#include <linux/syscalls.h>
#include <linux/nfs_fs.h>
@@ -14504,9 +13854,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/sysctl.c linux-2.6.18.2-vs2.0.2.2-rc
return -EFAULT;
if (len < *lenp) {
if(put_user('\n', ((char __user *) buffer) + len))
-diff -NurpP --minimal linux-2.6.18.2/kernel/timer.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/timer.c
---- linux-2.6.18.2/kernel/timer.c 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/timer.c 2006-11-06 05:08:58 +0100
+--- linux-2.6.18.5/kernel/timer.c 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/timer.c 2006-11-06 05:08:58 +0100
@@ -34,6 +34,8 @@
#include <linux/cpu.h>
#include <linux/syscalls.h>
@@ -14572,9 +13921,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/timer.c linux-2.6.18.2-vs2.0.2.2-rc6
val.uptime = tp.tv_sec + (tp.tv_nsec ? 1 : 0);
val.loads[0] = avenrun[0] << (SI_LOAD_SHIFT - FSHIFT);
-diff -NurpP --minimal linux-2.6.18.2/kernel/user.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/user.c
---- linux-2.6.18.2/kernel/user.c 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/user.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/kernel/user.c 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/user.c 2006-09-20 17:01:45 +0200
@@ -23,8 +23,8 @@
#define UIDHASH_BITS (CONFIG_BASE_SMALL ? 3 : 8)
#define UIDHASH_SZ (1 << UIDHASH_BITS)
@@ -14663,9 +14011,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/user.c linux-2.6.18.2-vs2.0.2.2-rc6/
spin_unlock_irq(&uidhash_lock);
return 0;
-diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/Kconfig linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/Kconfig
---- linux-2.6.18.2/kernel/vserver/Kconfig 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/Kconfig 2006-10-29 03:18:56 +0100
+--- linux-2.6.18.5/kernel/vserver/Kconfig 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/vserver/Kconfig 2006-10-29 03:18:56 +0100
@@ -0,0 +1,189 @@
+#
+# Linux VServer configuration
@@ -14856,9 +14203,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/Kconfig linux-2.6.18.2-vs2.0
+ depends on EXPERIMENTAL && !VSERVER_LEGACYNET
+ default y
+
-diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/Makefile linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/Makefile
---- linux-2.6.18.2/kernel/vserver/Makefile 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/Makefile 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/kernel/vserver/Makefile 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/vserver/Makefile 2006-09-20 17:01:45 +0200
@@ -0,0 +1,16 @@
+#
+# Makefile for the Linux vserver routines.
@@ -14876,10 +14222,9 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/Makefile linux-2.6.18.2-vs2.
+vserver-$(CONFIG_VSERVER_LEGACYNET) += legacynet.o
+vserver-$(CONFIG_VSERVER_HISTORY) += history.o
+
-diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/context.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/context.c
---- linux-2.6.18.2/kernel/vserver/context.c 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/context.c 2006-11-06 05:31:43 +0100
-@@ -0,0 +1,926 @@
+--- linux-2.6.18.5/kernel/vserver/context.c 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/vserver/context.c 2006-11-23 16:37:49 +0100
+@@ -0,0 +1,923 @@
+/*
+ * linux/kernel/vserver/context.c
+ *
@@ -14898,6 +14243,7 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/context.c linux-2.6.18.2-vs2
+ * V0.09 revert to non RCU for now
+ * V0.10 and back to working RCU hash
+ * V0.11 and back to locking again
++ * V0.12 have __create claim() the vxi
+ *
+ */
+
@@ -15077,9 +14423,9 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/context.c linux-2.6.18.2-vs2
+
+static inline void __unhash_vx_info(struct vx_info *vxi)
+{
-+ vxd_assert_lock(&vx_info_hash_lock);
+ vxdprintk(VXD_CBIT(xid, 4),
+ "__unhash_vx_info: %p[#%d]", vxi, vxi->vx_id);
++ spin_lock(&vx_info_hash_lock);
+ vxh_unhash_vx_info(vxi);
+
+ /* context must be hashed */
@@ -15087,6 +14433,7 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/context.c linux-2.6.18.2-vs2
+
+ vxi->vx_state &= ~VXS_HASHED;
+ hlist_del(&vxi->vx_hlist);
++ spin_unlock(&vx_info_hash_lock);
+}
+
+
@@ -15208,7 +14555,7 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/context.c linux-2.6.18.2-vs2
+/* __create_vx_info()
+
+ * create the requested context
-+ * get() and hash it */
++ * get(), claim() and hash it */
+
+static struct vx_info * __create_vx_info(int id)
+{
@@ -15253,6 +14600,7 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/context.c linux-2.6.18.2-vs2
+ /* new context */
+ vxdprintk(VXD_CBIT(xid, 0),
+ "create_vx_info(%d) = %p (new)", id, new);
++ claim_vx_info(new, NULL);
+ __hash_vx_info(get_vx_info(new));
+ vxi = new, new = NULL;
+
@@ -15271,9 +14619,7 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/context.c linux-2.6.18.2-vs2
+void unhash_vx_info(struct vx_info *vxi)
+{
+ __shutdown_vx_info(vxi);
-+ spin_lock(&vx_info_hash_lock);
+ __unhash_vx_info(vxi);
-+ spin_unlock(&vx_info_hash_lock);
+ __wakeup_vx_info(vxi);
+}
+
@@ -15518,7 +14864,7 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/context.c linux-2.6.18.2-vs2
+ "vx_set_persistent(%p[#%d])", vxi, vxi->vx_id);
+
+ get_vx_info(vxi);
-+ claim_vx_info(vxi, current);
++ claim_vx_info(vxi, NULL);
+}
+
+void vx_clear_persistent(struct vx_info *vxi)
@@ -15526,7 +14872,7 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/context.c linux-2.6.18.2-vs2
+ vxdprintk(VXD_CBIT(xid, 6),
+ "vx_clear_persistent(%p[#%d])", vxi, vxi->vx_id);
+
-+ release_vx_info(vxi, current);
++ release_vx_info(vxi, NULL);
+ put_vx_info(vxi);
+}
+
@@ -15644,26 +14990,22 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/context.c linux-2.6.18.2-vs2
+ /* initial flags */
+ new_vxi->vx_flags = vc_data.flagword;
+
-+ /* get a reference for persistent contexts */
-+ if ((vc_data.flagword & VXF_PERSISTENT))
-+ vx_set_persistent(new_vxi);
-+
+ ret = -ENOEXEC;
+ if (vs_state_change(new_vxi, VSC_STARTUP))
-+ goto out_unhash;
++ goto out;
++
+ ret = vx_migrate_task(current, new_vxi);
-+ if (!ret) {
-+ /* return context id on success */
-+ ret = new_vxi->vx_id;
++ if (ret)
+ goto out;
-+ }
-+out_unhash:
-+ /* prepare for context disposal */
-+ new_vxi->vx_state |= VXS_SHUTDOWN;
++
++ /* return context id on success */
++ ret = new_vxi->vx_id;
++
++ /* get a reference for persistent contexts */
+ if ((vc_data.flagword & VXF_PERSISTENT))
-+ vx_clear_persistent(new_vxi);
-+ __unhash_vx_info(new_vxi);
++ vx_set_persistent(new_vxi);
+out:
++ release_vx_info(new_vxi, NULL);
+ put_vx_info(new_vxi);
+ return ret;
+}
@@ -15806,9 +15148,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/context.c linux-2.6.18.2-vs2
+
+EXPORT_SYMBOL_GPL(free_vx_info);
+
-diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/cvirt.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/cvirt.c
---- linux-2.6.18.2/kernel/vserver/cvirt.c 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/cvirt.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/kernel/vserver/cvirt.c 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/vserver/cvirt.c 2006-09-20 17:01:45 +0200
@@ -0,0 +1,260 @@
+/*
+ * linux/kernel/vserver/cvirt.c
@@ -16070,9 +15411,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/cvirt.c linux-2.6.18.2-vs2.0
+ put_vx_info(vxi);
+ return (name ? 0 : -EFAULT);
+}
-diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/cvirt_init.h linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/cvirt_init.h
---- linux-2.6.18.2/kernel/vserver/cvirt_init.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/cvirt_init.h 2006-10-29 05:06:18 +0100
+--- linux-2.6.18.5/kernel/vserver/cvirt_init.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/vserver/cvirt_init.h 2006-10-29 05:06:18 +0100
@@ -0,0 +1,78 @@
+
+
@@ -16152,9 +15492,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/cvirt_init.h linux-2.6.18.2-
+ return;
+}
+
-diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/cvirt_proc.h linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/cvirt_proc.h
---- linux-2.6.18.2/kernel/vserver/cvirt_proc.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/cvirt_proc.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/kernel/vserver/cvirt_proc.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/vserver/cvirt_proc.h 2006-09-20 17:01:45 +0200
@@ -0,0 +1,92 @@
+#ifndef _VX_CVIRT_PROC_H
+#define _VX_CVIRT_PROC_H
@@ -16248,9 +15587,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/cvirt_proc.h linux-2.6.18.2-
+}
+
+#endif /* _VX_CVIRT_PROC_H */
-diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/dlimit.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/dlimit.c
---- linux-2.6.18.2/kernel/vserver/dlimit.c 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/dlimit.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/kernel/vserver/dlimit.c 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/vserver/dlimit.c 2006-09-20 17:01:45 +0200
@@ -0,0 +1,548 @@
+/*
+ * linux/kernel/vserver/dlimit.c
@@ -16800,9 +16138,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/dlimit.c linux-2.6.18.2-vs2.
+EXPORT_SYMBOL_GPL(locate_dl_info);
+EXPORT_SYMBOL_GPL(rcu_free_dl_info);
+
-diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/helper.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/helper.c
---- linux-2.6.18.2/kernel/vserver/helper.c 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/helper.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/kernel/vserver/helper.c 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/vserver/helper.c 2006-09-20 17:01:45 +0200
@@ -0,0 +1,210 @@
+/*
+ * linux/kernel/vserver/helper.c
@@ -17014,9 +16351,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/helper.c linux-2.6.18.2-vs2.
+ return 0;
+}
+
-diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/history.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/history.c
---- linux-2.6.18.2/kernel/vserver/history.c 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/history.c 2006-11-06 05:08:58 +0100
+--- linux-2.6.18.5/kernel/vserver/history.c 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/vserver/history.c 2006-11-06 05:08:58 +0100
@@ -0,0 +1,183 @@
+/*
+ * kernel/vserver/history.c
@@ -17201,9 +16537,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/history.c linux-2.6.18.2-vs2
+
+EXPORT_SYMBOL_GPL(vxh_advance);
+
-diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/init.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/init.c
---- linux-2.6.18.2/kernel/vserver/init.c 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/init.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/kernel/vserver/init.c 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/vserver/init.c 2006-09-20 17:01:45 +0200
@@ -0,0 +1,43 @@
+/*
+ * linux/kernel/init.c
@@ -17248,9 +16583,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/init.c linux-2.6.18.2-vs2.0.
+module_init(init_vserver);
+module_exit(exit_vserver);
+
-diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/inode.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/inode.c
---- linux-2.6.18.2/kernel/vserver/inode.c 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/inode.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/kernel/vserver/inode.c 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/vserver/inode.c 2006-09-20 17:01:45 +0200
@@ -0,0 +1,368 @@
+/*
+ * linux/kernel/vserver/inode.c
@@ -17620,10 +16954,9 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/inode.c linux-2.6.18.2-vs2.0
+
+EXPORT_SYMBOL_GPL(vx_propagate_xid);
+
-diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/legacy.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/legacy.c
---- linux-2.6.18.2/kernel/vserver/legacy.c 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/legacy.c 2006-11-06 05:08:58 +0100
-@@ -0,0 +1,113 @@
+--- linux-2.6.18.5/kernel/vserver/legacy.c 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/vserver/legacy.c 2006-11-23 17:15:51 +0100
+@@ -0,0 +1,111 @@
+/*
+ * linux/kernel/vserver/legacy.c
+ *
@@ -17685,9 +17018,7 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/legacy.c linux-2.6.18.2-vs2.
+ return ret;
+ }
+
-+ if (!vx_check(0, VX_ADMIN) || !capable(CAP_SYS_ADMIN)
-+ /* might make sense in the future, or not ... */
-+ || vx_flags(VX_INFO_LOCK, 0))
++ if (!vx_check(0, VX_ADMIN) || !capable(CAP_SYS_ADMIN))
+ return -EPERM;
+
+ /* ugly hack for Spectator */
@@ -17737,10 +17068,9 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/legacy.c linux-2.6.18.2-vs2.
+ return ret;
+}
+
-diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/legacynet.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/legacynet.c
---- linux-2.6.18.2/kernel/vserver/legacynet.c 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/legacynet.c 2006-09-20 17:01:45 +0200
-@@ -0,0 +1,84 @@
+--- linux-2.6.18.5/kernel/vserver/legacynet.c 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/vserver/legacynet.c 2006-11-23 16:37:07 +0100
+@@ -0,0 +1,85 @@
+
+/*
+ * linux/kernel/vserver/legacynet.c
@@ -17820,23 +17150,24 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/legacynet.c linux-2.6.18.2-v
+ printk("!!! switching nx_info %p->%p\n", nxi, new_nxi);
+
+ nx_migrate_task(current, new_nxi);
++ release_nx_info(new_nxi, NULL);
+ put_nx_info(new_nxi);
+ return 0;
+}
+
+
-diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/limit.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/limit.c
---- linux-2.6.18.2/kernel/vserver/limit.c 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/limit.c 2006-09-20 17:01:45 +0200
-@@ -0,0 +1,238 @@
+--- linux-2.6.18.5/kernel/vserver/limit.c 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/vserver/limit.c 2006-11-21 02:50:26 +0100
+@@ -0,0 +1,233 @@
+/*
+ * linux/kernel/vserver/limit.c
+ *
+ * Virtual Server: Context Limits
+ *
-+ * Copyright (C) 2004-2005 Herbert Pötzl
++ * Copyright (C) 2004-2006 Herbert Pötzl
+ *
+ * V0.01 broken out from vcontext V0.05
++ * V0.02 sync to valid limit check from 2.1.1
+ *
+ */
+
@@ -17871,25 +17202,37 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/limit.c linux-2.6.18.2-vs2.0
+EXPORT_SYMBOL_GPL(vlimit_name);
+
+
-+static int is_valid_rlimit(int id)
-+{
-+ int valid = 0;
++#define MASK_ENTRY(x) (1 << (x))
++
++const struct vcmd_ctx_rlimit_mask_v0 vlimit_mask = {
++ /* minimum */
++ 0
++ , /* softlimit */
++ MASK_ENTRY( RLIMIT_RSS ) |
++ MASK_ENTRY( VLIMIT_ANON ) |
++ 0
++ , /* maximum */
++ MASK_ENTRY( RLIMIT_RSS ) |
++ MASK_ENTRY( RLIMIT_NPROC ) |
++ MASK_ENTRY( RLIMIT_NOFILE ) |
++ MASK_ENTRY( RLIMIT_MEMLOCK ) |
++ MASK_ENTRY( RLIMIT_AS ) |
++ MASK_ENTRY( RLIMIT_LOCKS ) |
++ MASK_ENTRY( RLIMIT_MSGQUEUE ) |
++
++ MASK_ENTRY( VLIMIT_NSOCK ) |
++ MASK_ENTRY( VLIMIT_OPENFD ) |
++ MASK_ENTRY( VLIMIT_ANON ) |
++ MASK_ENTRY( VLIMIT_SHMEM ) |
++ 0
++};
+
-+ switch (id) {
-+ case RLIMIT_RSS:
-+ case RLIMIT_NPROC:
-+ case RLIMIT_NOFILE:
-+ case RLIMIT_MEMLOCK:
-+ case RLIMIT_AS:
-+
-+ case VLIMIT_NSOCK:
-+ case VLIMIT_OPENFD:
-+ case VLIMIT_ANON:
-+ case VLIMIT_SHMEM:
-+ valid = 1;
-+ break;
-+ }
-+ return valid;
++
++static int is_valid_vlimit(int id)
++{
++ uint32_t mask = vlimit_mask.minimum |
++ vlimit_mask.softlimit | vlimit_mask.maximum;
++ return mask & (1 << id);
+}
+
+static inline uint64_t vc_get_rlim(struct vx_info *vxi, int id)
@@ -17907,7 +17250,7 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/limit.c linux-2.6.18.2-vs2.0
+{
+ struct vx_info *vxi;
+
-+ if (!is_valid_rlimit(id))
++ if (!is_valid_vlimit(id))
+ return -EINVAL;
+
+ vxi = lookup_vx_info(xid);
@@ -17947,7 +17290,7 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/limit.c linux-2.6.18.2-vs2.0
+{
+ struct vx_info *vxi;
+
-+ if (!is_valid_rlimit(id))
++ if (!is_valid_vlimit(id))
+ return -EINVAL;
+
+ vxi = lookup_vx_info(xid);
@@ -18012,25 +17355,7 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/limit.c linux-2.6.18.2-vs2.0
+
+int vc_get_rlimit_mask(uint32_t id, void __user *data)
+{
-+ static struct vcmd_ctx_rlimit_mask_v0 mask = {
-+ /* minimum */
-+ 0
-+ , /* softlimit */
-+ 0
-+ , /* maximum */
-+ (1 << RLIMIT_RSS) |
-+ (1 << RLIMIT_NPROC) |
-+ (1 << RLIMIT_NOFILE) |
-+ (1 << RLIMIT_MEMLOCK) |
-+ (1 << RLIMIT_LOCKS) |
-+ (1 << RLIMIT_AS) |
-+ (1 << VLIMIT_ANON) |
-+ 0
-+ };
-+
-+ if (!capable(CAP_SYS_ADMIN) || !capable(CAP_SYS_RESOURCE))
-+ return -EPERM;
-+ if (copy_to_user(data, &mask, sizeof(mask)))
++ if (copy_to_user(data, &vlimit_mask, sizeof(vlimit_mask)))
+ return -EFAULT;
+ return 0;
+}
@@ -18067,9 +17392,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/limit.c linux-2.6.18.2-vs2.0
+ return;
+}
+
-diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/limit_init.h linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/limit_init.h
---- linux-2.6.18.2/kernel/vserver/limit_init.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/limit_init.h 2006-10-29 05:06:18 +0100
+--- linux-2.6.18.5/kernel/vserver/limit_init.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/vserver/limit_init.h 2006-10-29 05:06:18 +0100
@@ -0,0 +1,29 @@
+
+
@@ -18100,9 +17424,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/limit_init.h linux-2.6.18.2-
+#endif
+}
+
-diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/limit_proc.h linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/limit_proc.h
---- linux-2.6.18.2/kernel/vserver/limit_proc.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/limit_proc.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/kernel/vserver/limit_proc.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/vserver/limit_proc.h 2006-09-20 17:01:45 +0200
@@ -0,0 +1,58 @@
+#ifndef _VX_LIMIT_PROC_H
+#define _VX_LIMIT_PROC_H
@@ -18162,9 +17485,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/limit_proc.h linux-2.6.18.2-
+#endif /* _VX_LIMIT_PROC_H */
+
+
-diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/namespace.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/namespace.c
---- linux-2.6.18.2/kernel/vserver/namespace.c 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/namespace.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/kernel/vserver/namespace.c 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/vserver/namespace.c 2006-09-20 17:01:45 +0200
@@ -0,0 +1,113 @@
+/*
+ * linux/kernel/vserver/namespace.c
@@ -18279,22 +17601,22 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/namespace.c linux-2.6.18.2-v
+ return ret;
+}
+
-diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/network.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/network.c
---- linux-2.6.18.2/kernel/vserver/network.c 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/network.c 2006-09-20 17:01:45 +0200
-@@ -0,0 +1,807 @@
+--- linux-2.6.18.5/kernel/vserver/network.c 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/vserver/network.c 2006-12-10 16:35:48 +0100
+@@ -0,0 +1,808 @@
+/*
+ * linux/kernel/vserver/network.c
+ *
+ * Virtual Server: Network Support
+ *
-+ * Copyright (C) 2003-2005 Herbert Pötzl
++ * Copyright (C) 2003-2006 Herbert Pötzl
+ *
+ * V0.01 broken out from vcontext V0.05
+ * V0.02 cleaned up implementation
+ * V0.03 added equiv nx commands
+ * V0.04 switch to RCU based hash
+ * V0.05 and back to locking again
++ * V0.06 have __create claim() the nxi
+ *
+ */
+
@@ -18424,15 +17746,16 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/network.c linux-2.6.18.2-vs2
+
+static inline void __unhash_nx_info(struct nx_info *nxi)
+{
-+ vxd_assert_lock(&nx_info_hash_lock);
+ vxdprintk(VXD_CBIT(nid, 4),
+ "__unhash_nx_info: %p[#%d]", nxi, nxi->nx_id);
+
++ spin_lock(&nx_info_hash_lock);
+ /* context must be hashed */
+ BUG_ON(!nx_info_state(nxi, NXS_HASHED));
+
+ nxi->nx_state &= ~NXS_HASHED;
+ hlist_del(&nxi->nx_hlist);
++ spin_unlock(&nx_info_hash_lock);
+}
+
+
@@ -18489,7 +17812,7 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/network.c linux-2.6.18.2-vs2
+/* __create_nx_info()
+
+ * create the requested context
-+ * get() and hash it */
++ * get(), claim() and hash it */
+
+static struct nx_info * __create_nx_info(int id)
+{
@@ -18534,6 +17857,7 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/network.c linux-2.6.18.2-vs2
+ /* new context */
+ vxdprintk(VXD_CBIT(nid, 0),
+ "create_nx_info(%d) = %p (new)", id, new);
++ claim_nx_info(new, NULL);
+ __hash_nx_info(get_nx_info(new));
+ nxi = new, new = NULL;
+
@@ -18552,9 +17876,7 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/network.c linux-2.6.18.2-vs2
+void unhash_nx_info(struct nx_info *nxi)
+{
+ __shutdown_nx_info(nxi);
-+ spin_lock(&nx_info_hash_lock);
+ __unhash_nx_info(nxi);
-+ spin_unlock(&nx_info_hash_lock);
+}
+
+#ifdef CONFIG_VSERVER_LEGACYNET
@@ -18671,6 +17993,7 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/network.c linux-2.6.18.2-vs2
+
+ if (old_nxi)
+ release_nx_info(old_nxi, p);
++ ret = 0;
+out:
+ put_nx_info(old_nxi);
+ return ret;
@@ -18773,8 +18096,11 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/network.c linux-2.6.18.2-vs2
+
+void nx_set_persistent(struct nx_info *nxi)
+{
++ vxdprintk(VXD_CBIT(nid, 6),
++ "nx_set_persistent(%p[#%d])", nxi, nxi->nx_id);
++
+ get_nx_info(nxi);
-+ claim_nx_info(nxi, current);
++ claim_nx_info(nxi, NULL);
+}
+
+void nx_clear_persistent(struct nx_info *nxi)
@@ -18782,7 +18108,7 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/network.c linux-2.6.18.2-vs2
+ vxdprintk(VXD_CBIT(nid, 6),
+ "nx_clear_persistent(%p[#%d])", nxi, nxi->nx_id);
+
-+ release_nx_info(nxi, current);
++ release_nx_info(nxi, NULL);
+ put_nx_info(nxi);
+}
+
@@ -18870,26 +18196,22 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/network.c linux-2.6.18.2-vs2
+ /* initial flags */
+ new_nxi->nx_flags = vc_data.flagword;
+
-+ /* get a reference for persistent contexts */
-+ if ((vc_data.flagword & NXF_PERSISTENT))
-+ nx_set_persistent(new_nxi);
-+
+ ret = -ENOEXEC;
+ if (vs_net_change(new_nxi, VSC_NETUP))
-+ goto out_unhash;
++ goto out;
++
+ ret = nx_migrate_task(current, new_nxi);
-+ if (!ret) {
-+ /* return context id on success */
-+ ret = new_nxi->nx_id;
++ if (ret)
+ goto out;
-+ }
-+out_unhash:
-+ /* prepare for context disposal */
-+ new_nxi->nx_state |= NXS_SHUTDOWN;
++
++ /* return context id on success */
++ ret = new_nxi->nx_id;
++
++ /* get a reference for persistent contexts */
+ if ((vc_data.flagword & NXF_PERSISTENT))
-+ nx_clear_persistent(new_nxi);
-+ __unhash_nx_info(new_nxi);
++ nx_set_persistent(new_nxi);
+out:
++ release_nx_info(new_nxi, NULL);
+ put_nx_info(new_nxi);
+ return ret;
+}
@@ -19090,10 +18412,9 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/network.c linux-2.6.18.2-vs2
+EXPORT_SYMBOL_GPL(free_nx_info);
+EXPORT_SYMBOL_GPL(unhash_nx_info);
+
-diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/proc.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/proc.c
---- linux-2.6.18.2/kernel/vserver/proc.c 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/proc.c 2006-11-06 05:08:58 +0100
-@@ -0,0 +1,860 @@
+--- linux-2.6.18.5/kernel/vserver/proc.c 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/vserver/proc.c 2006-11-21 00:13:49 +0100
+@@ -0,0 +1,862 @@
+/*
+ * linux/kernel/vserver/proc.c
+ *
@@ -19313,8 +18634,10 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/proc.c linux-2.6.18.2-vs2.0.
+ length = sprintf(buffer,
+ "UseCnt:\t%d\n"
+ "Tasks:\t%d\n"
++ "Flags:\t%016llx\n"
+ ,atomic_read(&nxi->nx_usecnt)
+ ,atomic_read(&nxi->nx_tasks)
++ ,(unsigned long long)nxi->nx_flags
+ );
+ put_nx_info(nxi);
+ return length;
@@ -19954,9 +19277,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/proc.c linux-2.6.18.2-vs2.0.
+ return buffer - orig;
+}
+
-diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/sched.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/sched.c
---- linux-2.6.18.2/kernel/vserver/sched.c 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/sched.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/kernel/vserver/sched.c 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/vserver/sched.c 2006-09-20 17:01:45 +0200
@@ -0,0 +1,217 @@
+/*
+ * linux/kernel/vserver/sched.c
@@ -20175,9 +19497,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/sched.c linux-2.6.18.2-vs2.0
+ return 0;
+}
+
-diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/sched_init.h linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/sched_init.h
---- linux-2.6.18.2/kernel/vserver/sched_init.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/sched_init.h 2006-11-06 05:08:58 +0100
+--- linux-2.6.18.5/kernel/vserver/sched_init.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/vserver/sched_init.h 2006-11-06 05:08:58 +0100
@@ -0,0 +1,33 @@
+
+static inline void vx_info_init_sched(struct _vx_sched *sched)
@@ -20212,9 +19533,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/sched_init.h linux-2.6.18.2-
+ return;
+}
+
-diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/sched_proc.h linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/sched_proc.h
---- linux-2.6.18.2/kernel/vserver/sched_proc.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/sched_proc.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/kernel/vserver/sched_proc.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/vserver/sched_proc.h 2006-09-20 17:01:45 +0200
@@ -0,0 +1,40 @@
+#ifndef _VX_SCHED_PROC_H
+#define _VX_SCHED_PROC_H
@@ -20256,9 +19576,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/sched_proc.h linux-2.6.18.2-
+}
+
+#endif /* _VX_SCHED_PROC_H */
-diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/signal.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/signal.c
---- linux-2.6.18.2/kernel/vserver/signal.c 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/signal.c 2006-11-06 05:08:58 +0100
+--- linux-2.6.18.5/kernel/vserver/signal.c 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/vserver/signal.c 2006-11-06 05:08:58 +0100
@@ -0,0 +1,139 @@
+/*
+ * linux/kernel/vserver/signal.c
@@ -20399,9 +19718,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/signal.c linux-2.6.18.2-vs2.
+ return ret;
+}
+
-diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/switch.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/switch.c
---- linux-2.6.18.2/kernel/vserver/switch.c 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/switch.c 2006-11-06 05:08:58 +0100
+--- linux-2.6.18.5/kernel/vserver/switch.c 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/vserver/switch.c 2006-11-06 05:08:58 +0100
@@ -0,0 +1,268 @@
+/*
+ * linux/kernel/vserver/switch.c
@@ -20671,9 +19989,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/switch.c linux-2.6.18.2-vs2.
+}
+
+#endif /* CONFIG_COMPAT */
-diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/sysctl.c linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/sysctl.c
---- linux-2.6.18.2/kernel/vserver/sysctl.c 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/sysctl.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/kernel/vserver/sysctl.c 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/vserver/sysctl.c 2006-09-20 17:01:45 +0200
@@ -0,0 +1,227 @@
+/*
+ * kernel/vserver/sysctl.c
@@ -20902,9 +20219,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/sysctl.c linux-2.6.18.2-vs2.
+EXPORT_SYMBOL_GPL(vx_debug_cvirt);
+EXPORT_SYMBOL_GPL(vx_debug_misc);
+
-diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/vci_config.h linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/vci_config.h
---- linux-2.6.18.2/kernel/vserver/vci_config.h 1970-01-01 01:00:00 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/kernel/vserver/vci_config.h 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/kernel/vserver/vci_config.h 1970-01-01 01:00:00 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/kernel/vserver/vci_config.h 2006-09-20 17:01:45 +0200
@@ -0,0 +1,70 @@
+
+enum {
@@ -20976,9 +20292,8 @@ diff -NurpP --minimal linux-2.6.18.2/kernel/vserver/vci_config.h linux-2.6.18.2-
+ 0;
+}
+
-diff -NurpP --minimal linux-2.6.18.2/mm/filemap_xip.c linux-2.6.18.2-vs2.0.2.2-rc6/mm/filemap_xip.c
---- linux-2.6.18.2/mm/filemap_xip.c 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/mm/filemap_xip.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/mm/filemap_xip.c 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/mm/filemap_xip.c 2006-09-20 17:01:45 +0200
@@ -13,6 +13,7 @@
#include <linux/module.h>
#include <linux/uio.h>
@@ -20987,9 +20302,8 @@ diff -NurpP --minimal linux-2.6.18.2/mm/filemap_xip.c linux-2.6.18.2-vs2.0.2.2-r
#include <asm/tlbflush.h>
#include "filemap.h"
-diff -NurpP --minimal linux-2.6.18.2/mm/fremap.c linux-2.6.18.2-vs2.0.2.2-rc6/mm/fremap.c
---- linux-2.6.18.2/mm/fremap.c 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/mm/fremap.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/mm/fremap.c 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/mm/fremap.c 2006-09-20 17:01:45 +0200
@@ -15,6 +15,7 @@
#include <linux/rmap.h>
#include <linux/module.h>
@@ -21007,9 +20321,8 @@ diff -NurpP --minimal linux-2.6.18.2/mm/fremap.c linux-2.6.18.2-vs2.0.2.2-rc6/mm
if (pte_none(*pte) || !zap_pte(mm, vma, addr, pte))
inc_mm_counter(mm, file_rss);
-diff -NurpP --minimal linux-2.6.18.2/mm/hugetlb.c linux-2.6.18.2-vs2.0.2.2-rc6/mm/hugetlb.c
---- linux-2.6.18.2/mm/hugetlb.c 2006-09-20 16:58:44 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/mm/hugetlb.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/mm/hugetlb.c 2006-09-20 16:58:44 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/mm/hugetlb.c 2006-09-20 17:01:45 +0200
@@ -19,6 +19,7 @@
#include <asm/pgtable.h>
@@ -21018,9 +20331,8 @@ diff -NurpP --minimal linux-2.6.18.2/mm/hugetlb.c linux-2.6.18.2-vs2.0.2.2-rc6/m
#include "internal.h"
const unsigned long hugetlb_zero = 0, hugetlb_infinity = ~0UL;
-diff -NurpP --minimal linux-2.6.18.2/mm/memory.c linux-2.6.18.2-vs2.0.2.2-rc6/mm/memory.c
---- linux-2.6.18.2/mm/memory.c 2006-11-04 19:43:24 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/mm/memory.c 2006-11-06 04:47:17 +0100
+--- linux-2.6.18.5/mm/memory.c 2006-12-04 06:13:53 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/mm/memory.c 2006-11-06 04:47:17 +0100
@@ -1965,6 +1965,11 @@ static int do_swap_page(struct mm_struct
grab_swap_token();
}
@@ -21052,9 +20364,8 @@ diff -NurpP --minimal linux-2.6.18.2/mm/memory.c linux-2.6.18.2-vs2.0.2.2-rc6/mm
new_page = vma->vm_ops->nopage(vma, address & PAGE_MASK, &ret);
/*
* No smp_rmb is needed here as long as there's a full
-diff -NurpP --minimal linux-2.6.18.2/mm/mlock.c linux-2.6.18.2-vs2.0.2.2-rc6/mm/mlock.c
---- linux-2.6.18.2/mm/mlock.c 2006-04-09 13:49:58 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/mm/mlock.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/mm/mlock.c 2006-04-09 13:49:58 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/mm/mlock.c 2006-09-20 17:01:45 +0200
@@ -10,6 +10,7 @@
#include <linux/mm.h>
#include <linux/mempolicy.h>
@@ -21111,9 +20422,8 @@ diff -NurpP --minimal linux-2.6.18.2/mm/mlock.c linux-2.6.18.2-vs2.0.2.2-rc6/mm/
if (!(flags & MCL_CURRENT) || (current->mm->total_vm <= lock_limit) ||
capable(CAP_IPC_LOCK))
ret = do_mlockall(flags);
-diff -NurpP --minimal linux-2.6.18.2/mm/mmap.c linux-2.6.18.2-vs2.0.2.2-rc6/mm/mmap.c
---- linux-2.6.18.2/mm/mmap.c 2006-09-20 16:58:45 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/mm/mmap.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/mm/mmap.c 2006-09-20 16:58:45 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/mm/mmap.c 2006-09-20 17:01:45 +0200
@@ -1137,10 +1137,10 @@ munmap_back:
kmem_cache_free(vm_area_cachep, vma);
}
@@ -21212,9 +20522,8 @@ diff -NurpP --minimal linux-2.6.18.2/mm/mmap.c linux-2.6.18.2-vs2.0.2.2-rc6/mm/m
+ return 0;
return 1;
}
-diff -NurpP --minimal linux-2.6.18.2/mm/mremap.c linux-2.6.18.2-vs2.0.2.2-rc6/mm/mremap.c
---- linux-2.6.18.2/mm/mremap.c 2006-09-20 16:58:45 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/mm/mremap.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/mm/mremap.c 2006-09-20 16:58:45 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/mm/mremap.c 2006-09-20 17:01:45 +0200
@@ -18,6 +18,7 @@
#include <linux/highmem.h>
#include <linux/security.h>
@@ -21264,9 +20573,8 @@ diff -NurpP --minimal linux-2.6.18.2/mm/mremap.c linux-2.6.18.2-vs2.0.2.2-rc6/mm
make_pages_present(addr + old_len,
addr + new_len);
}
-diff -NurpP --minimal linux-2.6.18.2/mm/nommu.c linux-2.6.18.2-vs2.0.2.2-rc6/mm/nommu.c
---- linux-2.6.18.2/mm/nommu.c 2006-09-20 16:58:45 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/mm/nommu.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/mm/nommu.c 2006-09-20 16:58:45 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/mm/nommu.c 2006-09-20 17:01:45 +0200
@@ -820,7 +820,7 @@ unsigned long do_mmap_pgoff(struct file
realalloc += kobjsize(vma);
askedalloc += sizeof(*vma);
@@ -21294,9 +20602,8 @@ diff -NurpP --minimal linux-2.6.18.2/mm/nommu.c linux-2.6.18.2-vs2.0.2.2-rc6/mm/
while ((tmp = mm->context.vmlist)) {
mm->context.vmlist = tmp->next;
-diff -NurpP --minimal linux-2.6.18.2/mm/oom_kill.c linux-2.6.18.2-vs2.0.2.2-rc6/mm/oom_kill.c
---- linux-2.6.18.2/mm/oom_kill.c 2006-09-20 16:58:45 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/mm/oom_kill.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/mm/oom_kill.c 2006-09-20 16:58:45 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/mm/oom_kill.c 2006-09-20 17:01:45 +0200
@@ -67,6 +67,8 @@ unsigned long badness(struct task_struct
*/
task_unlock(p);
@@ -21306,9 +20613,8 @@ diff -NurpP --minimal linux-2.6.18.2/mm/oom_kill.c linux-2.6.18.2-vs2.0.2.2-rc6/
/*
* Processes which fork a lot of child processes are likely
* a good choice. We add half the vmsize of the children if they
-diff -NurpP --minimal linux-2.6.18.2/mm/page_alloc.c linux-2.6.18.2-vs2.0.2.2-rc6/mm/page_alloc.c
---- linux-2.6.18.2/mm/page_alloc.c 2006-11-04 19:43:24 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/mm/page_alloc.c 2006-11-06 04:47:17 +0100
+--- linux-2.6.18.5/mm/page_alloc.c 2006-12-04 06:13:53 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/mm/page_alloc.c 2006-11-06 04:47:17 +0100
@@ -37,6 +37,7 @@
#include <linux/vmalloc.h>
#include <linux/mempolicy.h>
@@ -21335,9 +20641,8 @@ diff -NurpP --minimal linux-2.6.18.2/mm/page_alloc.c linux-2.6.18.2-vs2.0.2.2-rc
}
#endif
-diff -NurpP --minimal linux-2.6.18.2/mm/rmap.c linux-2.6.18.2-vs2.0.2.2-rc6/mm/rmap.c
---- linux-2.6.18.2/mm/rmap.c 2006-09-20 16:58:45 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/mm/rmap.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/mm/rmap.c 2006-09-20 16:58:45 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/mm/rmap.c 2006-09-20 17:01:45 +0200
@@ -53,6 +53,7 @@
#include <linux/rmap.h>
#include <linux/rcupdate.h>
@@ -21346,9 +20651,8 @@ diff -NurpP --minimal linux-2.6.18.2/mm/rmap.c linux-2.6.18.2-vs2.0.2.2-rc6/mm/r
#include <asm/tlbflush.h>
-diff -NurpP --minimal linux-2.6.18.2/mm/shmem.c linux-2.6.18.2-vs2.0.2.2-rc6/mm/shmem.c
---- linux-2.6.18.2/mm/shmem.c 2006-09-20 16:58:45 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/mm/shmem.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/mm/shmem.c 2006-09-20 16:58:45 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/mm/shmem.c 2006-09-20 17:01:45 +0200
@@ -51,7 +51,6 @@
#include <asm/pgtable.h>
@@ -21375,9 +20679,8 @@ diff -NurpP --minimal linux-2.6.18.2/mm/shmem.c linux-2.6.18.2-vs2.0.2.2-rc6/mm/
sb->s_op = &shmem_ops;
sb->s_time_gran = 1;
-diff -NurpP --minimal linux-2.6.18.2/mm/swapfile.c linux-2.6.18.2-vs2.0.2.2-rc6/mm/swapfile.c
---- linux-2.6.18.2/mm/swapfile.c 2006-09-20 16:58:45 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/mm/swapfile.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/mm/swapfile.c 2006-09-20 16:58:45 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/mm/swapfile.c 2006-09-20 17:01:45 +0200
@@ -31,6 +31,7 @@
#include <asm/pgtable.h>
#include <asm/tlbflush.h>
@@ -21395,9 +20698,8 @@ diff -NurpP --minimal linux-2.6.18.2/mm/swapfile.c linux-2.6.18.2-vs2.0.2.2-rc6/
}
/*
-diff -NurpP --minimal linux-2.6.18.2/net/core/dev.c linux-2.6.18.2-vs2.0.2.2-rc6/net/core/dev.c
---- linux-2.6.18.2/net/core/dev.c 2006-11-04 19:43:24 +0100
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/net/core/dev.c 2006-10-16 18:56:11 +0200
+--- linux-2.6.18.5/net/core/dev.c 2006-12-04 06:13:53 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/net/core/dev.c 2006-10-16 18:56:11 +0200
@@ -117,6 +117,7 @@
#include <linux/dmaengine.h>
#include <linux/err.h>
@@ -21427,9 +20729,8 @@ diff -NurpP --minimal linux-2.6.18.2/net/core/dev.c linux-2.6.18.2-vs2.0.2.2-rc6
if (dev->get_stats) {
struct net_device_stats *stats = dev->get_stats(dev);
-diff -NurpP --minimal linux-2.6.18.2/net/core/rtnetlink.c linux-2.6.18.2-vs2.0.2.2-rc6/net/core/rtnetlink.c
---- linux-2.6.18.2/net/core/rtnetlink.c 2006-09-20 16:58:50 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/net/core/rtnetlink.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/net/core/rtnetlink.c 2006-09-20 16:58:50 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/net/core/rtnetlink.c 2006-09-20 17:01:45 +0200
@@ -322,6 +322,9 @@ static int rtnetlink_dump_ifinfo(struct
for (dev=dev_base, idx=0; dev; dev = dev->next, idx++) {
if (idx < s_idx)
@@ -21450,9 +20751,8 @@ diff -NurpP --minimal linux-2.6.18.2/net/core/rtnetlink.c linux-2.6.18.2-vs2.0.2
skb = alloc_skb(size, GFP_KERNEL);
if (!skb)
return;
-diff -NurpP --minimal linux-2.6.18.2/net/core/sock.c linux-2.6.18.2-vs2.0.2.2-rc6/net/core/sock.c
---- linux-2.6.18.2/net/core/sock.c 2006-09-20 16:58:50 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/net/core/sock.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/net/core/sock.c 2006-12-04 06:13:53 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/net/core/sock.c 2006-11-19 17:04:57 +0100
@@ -124,6 +124,9 @@
#include <linux/ipsec.h>
@@ -21518,9 +20818,8 @@ diff -NurpP --minimal linux-2.6.18.2/net/core/sock.c linux-2.6.18.2-vs2.0.2.2-rc
atomic_set(&sk->sk_refcnt, 1);
}
-diff -NurpP --minimal linux-2.6.18.2/net/ipv4/af_inet.c linux-2.6.18.2-vs2.0.2.2-rc6/net/ipv4/af_inet.c
---- linux-2.6.18.2/net/ipv4/af_inet.c 2006-09-20 16:58:50 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/net/ipv4/af_inet.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/net/ipv4/af_inet.c 2006-09-20 16:58:50 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/net/ipv4/af_inet.c 2006-09-20 17:01:45 +0200
@@ -115,6 +115,7 @@
#ifdef CONFIG_IP_MROUTE
#include <linux/mroute.h>
@@ -21614,9 +20913,8 @@ diff -NurpP --minimal linux-2.6.18.2/net/ipv4/af_inet.c linux-2.6.18.2-vs2.0.2.2
if (chk_addr_ret == RTN_MULTICAST || chk_addr_ret == RTN_BROADCAST)
inet->saddr = 0; /* Use device */
-diff -NurpP --minimal linux-2.6.18.2/net/ipv4/devinet.c linux-2.6.18.2-vs2.0.2.2-rc6/net/ipv4/devinet.c
---- linux-2.6.18.2/net/ipv4/devinet.c 2006-09-20 16:58:50 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/net/ipv4/devinet.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/net/ipv4/devinet.c 2006-09-20 16:58:50 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/net/ipv4/devinet.c 2006-09-20 17:01:45 +0200
@@ -606,6 +606,9 @@ int devinet_ioctl(unsigned int cmd, void
*colon = ':';
@@ -21678,9 +20976,8 @@ diff -NurpP --minimal linux-2.6.18.2/net/ipv4/devinet.c linux-2.6.18.2-vs2.0.2.2
if (ip_idx < s_ip_idx)
continue;
if (inet_fill_ifaddr(skb, ifa, NETLINK_CB(cb->skb).pid,
-diff -NurpP --minimal linux-2.6.18.2/net/ipv4/fib_hash.c linux-2.6.18.2-vs2.0.2.2-rc6/net/ipv4/fib_hash.c
---- linux-2.6.18.2/net/ipv4/fib_hash.c 2006-09-20 16:58:50 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/net/ipv4/fib_hash.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/net/ipv4/fib_hash.c 2006-09-20 16:58:50 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/net/ipv4/fib_hash.c 2006-09-20 17:01:45 +0200
@@ -987,6 +987,8 @@ static unsigned fib_flag_trans(int type,
return flags;
}
@@ -21700,9 +20997,8 @@ diff -NurpP --minimal linux-2.6.18.2/net/ipv4/fib_hash.c linux-2.6.18.2-vs2.0.2.
snprintf(bf, sizeof(bf),
"%s\t%08X\t%08X\t%04X\t%d\t%u\t%d\t%08X\t%d\t%u\t%u",
fi->fib_dev ? fi->fib_dev->name : "*", prefix,
-diff -NurpP --minimal linux-2.6.18.2/net/ipv4/inet_connection_sock.c linux-2.6.18.2-vs2.0.2.2-rc6/net/ipv4/inet_connection_sock.c
---- linux-2.6.18.2/net/ipv4/inet_connection_sock.c 2006-09-20 16:58:50 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/net/ipv4/inet_connection_sock.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/net/ipv4/inet_connection_sock.c 2006-09-20 16:58:50 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/net/ipv4/inet_connection_sock.c 2006-09-20 17:01:45 +0200
@@ -39,7 +39,6 @@ int sysctl_local_port_range[2] = { 1024,
int inet_csk_bind_conflict(const struct sock *sk,
const struct inet_bind_bucket *tb)
@@ -21723,9 +21019,8 @@ diff -NurpP --minimal linux-2.6.18.2/net/ipv4/inet_connection_sock.c linux-2.6.1
break;
}
}
-diff -NurpP --minimal linux-2.6.18.2/net/ipv4/inet_diag.c linux-2.6.18.2-vs2.0.2.2-rc6/net/ipv4/inet_diag.c
---- linux-2.6.18.2/net/ipv4/inet_diag.c 2006-09-20 16:58:50 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/net/ipv4/inet_diag.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/net/ipv4/inet_diag.c 2006-09-20 16:58:50 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/net/ipv4/inet_diag.c 2006-09-20 17:01:45 +0200
@@ -693,6 +693,8 @@ static int inet_diag_dump(struct sk_buff
sk_for_each(sk, node, &hashinfo->listening_hash[i]) {
struct inet_sock *inet = inet_sk(sk);
@@ -21753,9 +21048,8 @@ diff -NurpP --minimal linux-2.6.18.2/net/ipv4/inet_diag.c linux-2.6.18.2-vs2.0.2
if (num < s_num)
goto next_dying;
if (r->id.idiag_sport != tw->tw_sport &&
-diff -NurpP --minimal linux-2.6.18.2/net/ipv4/inet_hashtables.c linux-2.6.18.2-vs2.0.2.2-rc6/net/ipv4/inet_hashtables.c
---- linux-2.6.18.2/net/ipv4/inet_hashtables.c 2006-09-20 16:58:50 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/net/ipv4/inet_hashtables.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/net/ipv4/inet_hashtables.c 2006-09-20 16:58:50 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/net/ipv4/inet_hashtables.c 2006-09-20 17:01:45 +0200
@@ -138,11 +138,10 @@ struct sock *__inet_lookup_listener(cons
const __u32 rcv_saddr = inet->rcv_saddr;
int score = sk->sk_family == PF_INET ? 1 : 0;
@@ -21771,9 +21065,8 @@ diff -NurpP --minimal linux-2.6.18.2/net/ipv4/inet_hashtables.c linux-2.6.18.2-v
if (sk->sk_bound_dev_if) {
if (sk->sk_bound_dev_if != dif)
continue;
-diff -NurpP --minimal linux-2.6.18.2/net/ipv4/raw.c linux-2.6.18.2-vs2.0.2.2-rc6/net/ipv4/raw.c
---- linux-2.6.18.2/net/ipv4/raw.c 2006-09-20 16:58:50 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/net/ipv4/raw.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/net/ipv4/raw.c 2006-09-20 16:58:50 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/net/ipv4/raw.c 2006-09-20 17:01:45 +0200
@@ -102,6 +102,27 @@ static void raw_v4_unhash(struct sock *s
write_unlock_bh(&raw_v4_lock);
}
@@ -21865,9 +21158,8 @@ diff -NurpP --minimal linux-2.6.18.2/net/ipv4/raw.c linux-2.6.18.2-vs2.0.2.2-rc6
if (!sk && ++state->bucket < RAWV4_HTABLE_SIZE) {
sk = sk_head(&raw_v4_htable[state->bucket]);
-diff -NurpP --minimal linux-2.6.18.2/net/ipv4/tcp.c linux-2.6.18.2-vs2.0.2.2-rc6/net/ipv4/tcp.c
---- linux-2.6.18.2/net/ipv4/tcp.c 2006-09-20 16:58:50 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/net/ipv4/tcp.c 2006-09-20 17:02:28 +0200
+--- linux-2.6.18.5/net/ipv4/tcp.c 2006-12-04 06:13:53 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/net/ipv4/tcp.c 2006-11-19 17:04:57 +0100
@@ -258,6 +258,7 @@
#include <linux/bootmem.h>
#include <linux/cache.h>
@@ -21876,9 +21168,8 @@ diff -NurpP --minimal linux-2.6.18.2/net/ipv4/tcp.c linux-2.6.18.2-vs2.0.2.2-rc6
#include <net/icmp.h>
#include <net/tcp.h>
-diff -NurpP --minimal linux-2.6.18.2/net/ipv4/tcp_ipv4.c linux-2.6.18.2-vs2.0.2.2-rc6/net/ipv4/tcp_ipv4.c
---- linux-2.6.18.2/net/ipv4/tcp_ipv4.c 2006-09-20 16:58:50 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/net/ipv4/tcp_ipv4.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/net/ipv4/tcp_ipv4.c 2006-09-20 16:58:50 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/net/ipv4/tcp_ipv4.c 2006-09-20 17:01:45 +0200
@@ -77,6 +77,7 @@
#include <linux/stddef.h>
#include <linux/proc_fs.h>
@@ -21964,9 +21255,8 @@ diff -NurpP --minimal linux-2.6.18.2/net/ipv4/tcp_ipv4.c linux-2.6.18.2-vs2.0.2.
if (sk->sk_family == st->family)
goto found;
}
-diff -NurpP --minimal linux-2.6.18.2/net/ipv4/tcp_minisocks.c linux-2.6.18.2-vs2.0.2.2-rc6/net/ipv4/tcp_minisocks.c
---- linux-2.6.18.2/net/ipv4/tcp_minisocks.c 2006-09-20 16:58:51 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/net/ipv4/tcp_minisocks.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/net/ipv4/tcp_minisocks.c 2006-09-20 16:58:51 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/net/ipv4/tcp_minisocks.c 2006-09-20 17:01:45 +0200
@@ -28,6 +28,10 @@
#include <net/inet_common.h>
#include <net/xfrm.h>
@@ -21990,9 +21280,8 @@ diff -NurpP --minimal linux-2.6.18.2/net/ipv4/tcp_minisocks.c linux-2.6.18.2-vs2
#if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE)
if (tw->tw_family == PF_INET6) {
struct ipv6_pinfo *np = inet6_sk(sk);
-diff -NurpP --minimal linux-2.6.18.2/net/ipv4/udp.c linux-2.6.18.2-vs2.0.2.2-rc6/net/ipv4/udp.c
---- linux-2.6.18.2/net/ipv4/udp.c 2006-09-20 16:58:51 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/net/ipv4/udp.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/net/ipv4/udp.c 2006-12-04 06:13:53 +0100
++++ linux-2.6.18.5-vs2.0.2.2-rc9/net/ipv4/udp.c 2006-12-10 19:44:56 +0100
@@ -175,14 +175,12 @@ gotit:
struct inet_sock *inet2 = inet_sk(sk2);
@@ -22053,7 +21342,7 @@ diff -NurpP --minimal linux-2.6.18.2/net/ipv4/udp.c linux-2.6.18.2-vs2.0.2.2-rc6
err = ip_route_output_flow(&rt, &fl, sk, !(msg->msg_flags&MSG_DONTWAIT));
if (err)
goto out;
-@@ -1402,8 +1419,10 @@ static struct sock *udp_get_first(struct
+@@ -1411,8 +1428,10 @@ static struct sock *udp_get_first(struct
for (state->bucket = 0; state->bucket < UDP_HTABLE_SIZE; ++state->bucket) {
struct hlist_node *node;
@@ -22065,7 +21354,7 @@ diff -NurpP --minimal linux-2.6.18.2/net/ipv4/udp.c linux-2.6.18.2-vs2.0.2.2-rc6
goto found;
}
}
-@@ -1420,7 +1439,8 @@ static struct sock *udp_get_next(struct
+@@ -1429,7 +1448,8 @@ static struct sock *udp_get_next(struct
sk = sk_next(sk);
try_again:
;
@@ -22075,9 +21364,8 @@ diff -NurpP --minimal linux-2.6.18.2/net/ipv4/udp.c linux-2.6.18.2-vs2.0.2.2-rc6
if (!sk && ++state->bucket < UDP_HTABLE_SIZE) {
sk = sk_head(&udp_hash[state->bucket]);
-diff -NurpP --minimal linux-2.6.18.2/net/ipv6/addrconf.c linux-2.6.18.2-vs2.0.2.2-rc6/net/ipv6/addrconf.c
---- linux-2.6.18.2/net/ipv6/addrconf.c 2006-09-20 16:58:51 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/net/ipv6/addrconf.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/net/ipv6/addrconf.c 2006-09-20 16:58:51 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/net/ipv6/addrconf.c 2006-09-20 17:01:45 +0200
@@ -2698,7 +2698,10 @@ static void if6_seq_stop(struct seq_file
static int if6_seq_show(struct seq_file *seq, void *v)
{
@@ -22112,9 +21400,8 @@ diff -NurpP --minimal linux-2.6.18.2/net/ipv6/addrconf.c linux-2.6.18.2-vs2.0.2.
read_lock(&dev_base_lock);
for (dev=dev_base, idx=0; dev; dev = dev->next, idx++) {
if (idx < s_idx)
-diff -NurpP --minimal linux-2.6.18.2/net/netlink/af_netlink.c linux-2.6.18.2-vs2.0.2.2-rc6/net/netlink/af_netlink.c
---- linux-2.6.18.2/net/netlink/af_netlink.c 2006-09-20 16:58:51 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/net/netlink/af_netlink.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/net/netlink/af_netlink.c 2006-09-20 16:58:51 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/net/netlink/af_netlink.c 2006-09-20 17:01:45 +0200
@@ -56,6 +56,9 @@
#include <linux/types.h>
#include <linux/audit.h>
@@ -22125,9 +21412,8 @@ diff -NurpP --minimal linux-2.6.18.2/net/netlink/af_netlink.c linux-2.6.18.2-vs2
#include <net/sock.h>
#include <net/scm.h>
-diff -NurpP --minimal linux-2.6.18.2/net/socket.c linux-2.6.18.2-vs2.0.2.2-rc6/net/socket.c
---- linux-2.6.18.2/net/socket.c 2006-09-20 16:58:54 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/net/socket.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/net/socket.c 2006-09-20 16:58:54 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/net/socket.c 2006-11-21 04:55:15 +0100
@@ -93,6 +93,7 @@
#include <net/sock.h>
@@ -22228,9 +21514,8 @@ diff -NurpP --minimal linux-2.6.18.2/net/socket.c linux-2.6.18.2-vs2.0.2.2-rc6/n
err = sock1->ops->socketpair(sock1, sock2);
if (err < 0)
-diff -NurpP --minimal linux-2.6.18.2/net/sunrpc/auth.c linux-2.6.18.2-vs2.0.2.2-rc6/net/sunrpc/auth.c
---- linux-2.6.18.2/net/sunrpc/auth.c 2006-06-18 04:55:52 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/net/sunrpc/auth.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/net/sunrpc/auth.c 2006-06-18 04:55:52 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/net/sunrpc/auth.c 2006-09-20 17:01:45 +0200
@@ -13,6 +13,7 @@
#include <linux/errno.h>
#include <linux/sunrpc/clnt.h>
@@ -22255,9 +21540,8 @@ diff -NurpP --minimal linux-2.6.18.2/net/sunrpc/auth.c linux-2.6.18.2-vs2.0.2.2-
.group_info = current->group_info,
};
struct rpc_cred *ret;
-diff -NurpP --minimal linux-2.6.18.2/net/sunrpc/auth_unix.c linux-2.6.18.2-vs2.0.2.2-rc6/net/sunrpc/auth_unix.c
---- linux-2.6.18.2/net/sunrpc/auth_unix.c 2006-09-20 16:58:54 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/net/sunrpc/auth_unix.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/net/sunrpc/auth_unix.c 2006-09-20 16:58:54 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/net/sunrpc/auth_unix.c 2006-09-20 17:01:45 +0200
@@ -11,12 +11,14 @@
#include <linux/module.h>
#include <linux/sunrpc/clnt.h>
@@ -22323,9 +21607,8 @@ diff -NurpP --minimal linux-2.6.18.2/net/sunrpc/auth_unix.c linux-2.6.18.2-vs2.0
hold = p++;
for (i = 0; i < 16 && cred->uc_gids[i] != (gid_t) NOGROUP; i++)
*p++ = htonl((u32) cred->uc_gids[i]);
-diff -NurpP --minimal linux-2.6.18.2/net/unix/af_unix.c linux-2.6.18.2-vs2.0.2.2-rc6/net/unix/af_unix.c
---- linux-2.6.18.2/net/unix/af_unix.c 2006-09-20 16:58:54 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/net/unix/af_unix.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/net/unix/af_unix.c 2006-09-20 16:58:54 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/net/unix/af_unix.c 2006-09-20 17:01:45 +0200
@@ -116,6 +116,9 @@
#include <linux/mount.h>
#include <net/checksum.h>
@@ -22354,9 +21637,8 @@ diff -NurpP --minimal linux-2.6.18.2/net/unix/af_unix.c linux-2.6.18.2-vs2.0.2.2
if (err)
goto out_mknod_dput;
mutex_unlock(&nd.dentry->d_inode->i_mutex);
-diff -NurpP --minimal linux-2.6.18.2/net/x25/af_x25.c linux-2.6.18.2-vs2.0.2.2-rc6/net/x25/af_x25.c
---- linux-2.6.18.2/net/x25/af_x25.c 2006-09-20 16:58:54 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/net/x25/af_x25.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/net/x25/af_x25.c 2006-09-20 16:58:54 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/net/x25/af_x25.c 2006-09-20 17:01:45 +0200
@@ -501,7 +501,10 @@ static int x25_create(struct socket *soc
x25 = x25_sk(sk);
@@ -22369,9 +21651,8 @@ diff -NurpP --minimal linux-2.6.18.2/net/x25/af_x25.c linux-2.6.18.2-vs2.0.2.2-r
x25_init_timers(sk);
-diff -NurpP --minimal linux-2.6.18.2/security/commoncap.c linux-2.6.18.2-vs2.0.2.2-rc6/security/commoncap.c
---- linux-2.6.18.2/security/commoncap.c 2006-09-20 16:58:54 +0200
-+++ linux-2.6.18.2-vs2.0.2.2-rc6/security/commoncap.c 2006-09-20 17:01:45 +0200
+--- linux-2.6.18.5/security/commoncap.c 2006-09-20 16:58:54 +0200
++++ linux-2.6.18.5-vs2.0.2.2-rc9/security/commoncap.c 2006-09-20 17:01:45 +0200
@@ -142,7 +142,7 @@ void cap_bprm_apply_creds (struct linux_
/* Derived from fs/exec.c:compute_creds. */
kernel_cap_t new_permitted, working;
diff --git a/debian/patches/features/all/xen/README b/debian/patches/features/all/xen/README
new file mode 100644
index 000000000000..de2b7e88fa8e
--- /dev/null
+++ b/debian/patches/features/all/xen/README
@@ -0,0 +1 @@
+This patch is from http://hg.et.redhat.com/kernel/linux-2.6.18-xen.
diff --git a/debian/patches/features/all/xen/fedora-36252.patch b/debian/patches/features/all/xen/fedora-2.6.18-36186.patch
index bc168f50eefd..bb54a6934342 100644
--- a/debian/patches/features/all/xen/fedora-36252.patch
+++ b/debian/patches/features/all/xen/fedora-2.6.18-36186.patch
@@ -1,6 +1,6 @@
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/boot-xen/Makefile linux-2.6.18-xen/arch/i386/boot-xen/Makefile
---- linux-2.6.18.1/arch/i386/boot-xen/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/boot-xen/Makefile 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/boot-xen/Makefile linux-2.6.18-xen/arch/i386/boot-xen/Makefile
+--- linux-2.6.18.3/arch/i386/boot-xen/Makefile 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/boot-xen/Makefile 2006-11-19 14:26:21.000000000 +0100
@@ -0,0 +1,21 @@
+
+OBJCOPYFLAGS := -g --strip-unneeded
@@ -23,9 +23,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/boot-xen/Makefile linux-2.6
+ install -m0664 .config $(INSTALL_ROOT)/boot/config-$(XINSTALL_NAME)$(INSTALL_SUFFIX)
+ install -m0664 System.map $(INSTALL_ROOT)/boot/System.map-$(XINSTALL_NAME)$(INSTALL_SUFFIX)
+ ln -f -s vmlinuz-$(XINSTALL_NAME)$(INSTALL_SUFFIX) $(INSTALL_ROOT)/boot/vmlinuz-$(VERSION).$(PATCHLEVEL)$(XENGUEST)$(INSTALL_SUFFIX)
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/Kconfig linux-2.6.18-xen/arch/i386/Kconfig
---- linux-2.6.18.1/arch/i386/Kconfig 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/i386/Kconfig 2006-09-22 16:38:35.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/Kconfig linux-2.6.18-xen/arch/i386/Kconfig
+--- linux-2.6.18.3/arch/i386/Kconfig 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/i386/Kconfig 2006-12-05 18:42:36.000000000 +0100
@@ -16,6 +16,7 @@
config GENERIC_TIME
@@ -306,10 +306,10 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/Kconfig linux-2.6.18-xen/ar
config KTIME_SCALAR
bool
default y
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/Kconfig.cpu linux-2.6.18-xen/arch/i386/Kconfig.cpu
---- linux-2.6.18.1/arch/i386/Kconfig.cpu 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/i386/Kconfig.cpu 2006-09-04 16:31:00.000000000 +0200
-@@ -251,7 +251,7 @@
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/Kconfig.cpu linux-2.6.18-xen/arch/i386/Kconfig.cpu
+--- linux-2.6.18.3/arch/i386/Kconfig.cpu 2006-12-06 09:06:08.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/Kconfig.cpu 2006-12-05 18:42:36.000000000 +0100
+@@ -252,7 +252,7 @@
config X86_F00F_BUG
bool
@@ -318,16 +318,16 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/Kconfig.cpu linux-2.6.18-xe
default y
config X86_WP_WORKS_OK
-@@ -311,5 +311,5 @@
+@@ -312,5 +312,5 @@
config X86_TSC
bool
- depends on (MWINCHIP3D || MWINCHIP2 || MCRUSOE || MEFFICEON || MCYRIXIII || MK7 || MK6 || MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || M586TSC || MK8 || MVIAC3_2 || MGEODEGX1 || MGEODE_LX) && !X86_NUMAQ
+ depends on (MWINCHIP3D || MWINCHIP2 || MCRUSOE || MEFFICEON || MCYRIXIII || MK7 || MK6 || MPENTIUM4 || MPENTIUMM || MPENTIUMIII || MPENTIUMII || M686 || M586MMX || M586TSC || MK8 || MVIAC3_2 || MGEODEGX1 || MGEODE_LX) && !X86_NUMAQ && !X86_XEN
default y
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/Kconfig.debug linux-2.6.18-xen/arch/i386/Kconfig.debug
---- linux-2.6.18.1/arch/i386/Kconfig.debug 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/i386/Kconfig.debug 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/Kconfig.debug linux-2.6.18-xen/arch/i386/Kconfig.debug
+--- linux-2.6.18.3/arch/i386/Kconfig.debug 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/i386/Kconfig.debug 2006-12-05 18:42:36.000000000 +0100
@@ -79,6 +79,7 @@
config DOUBLEFAULT
default y
@@ -336,9 +336,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/Kconfig.debug linux-2.6.18-
help
This option allows trapping of rare doublefault exceptions that
would otherwise cause a system to silently reboot. Disabling this
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/acpi/boot-xen.c linux-2.6.18-xen/arch/i386/kernel/acpi/boot-xen.c
---- linux-2.6.18.1/arch/i386/kernel/acpi/boot-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/kernel/acpi/boot-xen.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/acpi/boot-xen.c linux-2.6.18-xen/arch/i386/kernel/acpi/boot-xen.c
+--- linux-2.6.18.3/arch/i386/kernel/acpi/boot-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/kernel/acpi/boot-xen.c 2006-12-05 18:42:36.000000000 +0100
@@ -0,0 +1,1168 @@
+/*
+ * boot.c - Architecture-Specific Low-Level ACPI Boot Support
@@ -1508,9 +1508,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/acpi/boot-xen.c linu
+
+ return 0;
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/acpi/Makefile linux-2.6.18-xen/arch/i386/kernel/acpi/Makefile
---- linux-2.6.18.1/arch/i386/kernel/acpi/Makefile 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/i386/kernel/acpi/Makefile 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/acpi/Makefile linux-2.6.18-xen/arch/i386/kernel/acpi/Makefile
+--- linux-2.6.18.3/arch/i386/kernel/acpi/Makefile 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/i386/kernel/acpi/Makefile 2006-11-19 14:26:21.000000000 +0100
@@ -6,3 +6,7 @@
obj-y += cstate.o processor.o
endif
@@ -1519,9 +1519,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/acpi/Makefile linux-
+include $(srctree)/scripts/Makefile.xen
+obj-y := $(call cherrypickxen, $(obj-y), $(src))
+endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/alternative.c linux-2.6.18-xen/arch/i386/kernel/alternative.c
---- linux-2.6.18.1/arch/i386/kernel/alternative.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/i386/kernel/alternative.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/alternative.c linux-2.6.18-xen/arch/i386/kernel/alternative.c
+--- linux-2.6.18.3/arch/i386/kernel/alternative.c 2006-12-06 09:06:08.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/kernel/alternative.c 2006-12-05 18:42:36.000000000 +0100
@@ -4,7 +4,11 @@
#include <asm/alternative.h>
#include <asm/sections.h>
@@ -1546,9 +1546,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/alternative.c linux-
DPRINTK("%s: vsyscall fixup: %p => %p\n",
__FUNCTION__, a->instr, instr);
}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/apic-xen.c linux-2.6.18-xen/arch/i386/kernel/apic-xen.c
---- linux-2.6.18.1/arch/i386/kernel/apic-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/kernel/apic-xen.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/apic-xen.c linux-2.6.18-xen/arch/i386/kernel/apic-xen.c
+--- linux-2.6.18.3/arch/i386/kernel/apic-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/kernel/apic-xen.c 2006-11-19 14:26:21.000000000 +0100
@@ -0,0 +1,160 @@
+/*
+ * Local APIC handling, local APIC timers
@@ -1710,9 +1710,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/apic-xen.c linux-2.6
+
+ return 0;
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/asm-offsets.c linux-2.6.18-xen/arch/i386/kernel/asm-offsets.c
---- linux-2.6.18.1/arch/i386/kernel/asm-offsets.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/i386/kernel/asm-offsets.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/asm-offsets.c linux-2.6.18-xen/arch/i386/kernel/asm-offsets.c
+--- linux-2.6.18.3/arch/i386/kernel/asm-offsets.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/i386/kernel/asm-offsets.c 2006-11-19 14:26:21.000000000 +0100
@@ -66,9 +66,14 @@
OFFSET(pbe_orig_address, pbe, orig_address);
OFFSET(pbe_next, pbe, next);
@@ -1729,9 +1729,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/asm-offsets.c linux-
DEFINE(PAGE_SIZE_asm, PAGE_SIZE);
DEFINE(VDSO_PRELINK, VDSO_PRELINK);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/cpu/common-xen.c linux-2.6.18-xen/arch/i386/kernel/cpu/common-xen.c
---- linux-2.6.18.1/arch/i386/kernel/cpu/common-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/kernel/cpu/common-xen.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/cpu/common-xen.c linux-2.6.18-xen/arch/i386/kernel/cpu/common-xen.c
+--- linux-2.6.18.3/arch/i386/kernel/cpu/common-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/kernel/cpu/common-xen.c 2006-12-05 18:42:36.000000000 +0100
@@ -0,0 +1,739 @@
+#include <linux/init.h>
+#include <linux/string.h>
@@ -2472,9 +2472,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/cpu/common-xen.c lin
+ per_cpu(cpu_tlbstate, cpu).active_mm = &init_mm;
+}
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/cpu/Makefile linux-2.6.18-xen/arch/i386/kernel/cpu/Makefile
---- linux-2.6.18.1/arch/i386/kernel/cpu/Makefile 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/i386/kernel/cpu/Makefile 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/cpu/Makefile linux-2.6.18-xen/arch/i386/kernel/cpu/Makefile
+--- linux-2.6.18.3/arch/i386/kernel/cpu/Makefile 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/i386/kernel/cpu/Makefile 2006-11-19 14:26:21.000000000 +0100
@@ -17,3 +17,8 @@
obj-$(CONFIG_MTRR) += mtrr/
@@ -2484,9 +2484,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/cpu/Makefile linux-2
+include $(srctree)/scripts/Makefile.xen
+obj-y := $(call cherrypickxen, $(obj-y), $(src))
+endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/cpu/mtrr/main-xen.c linux-2.6.18-xen/arch/i386/kernel/cpu/mtrr/main-xen.c
---- linux-2.6.18.1/arch/i386/kernel/cpu/mtrr/main-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/kernel/cpu/mtrr/main-xen.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/cpu/mtrr/main-xen.c linux-2.6.18-xen/arch/i386/kernel/cpu/mtrr/main-xen.c
+--- linux-2.6.18.3/arch/i386/kernel/cpu/mtrr/main-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/kernel/cpu/mtrr/main-xen.c 2006-11-19 14:26:22.000000000 +0100
@@ -0,0 +1,197 @@
+#include <linux/init.h>
+#include <linux/proc_fs.h>
@@ -2685,9 +2685,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/cpu/mtrr/main-xen.c
+}
+
+subsys_initcall(mtrr_init);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/cpu/mtrr/Makefile linux-2.6.18-xen/arch/i386/kernel/cpu/mtrr/Makefile
---- linux-2.6.18.1/arch/i386/kernel/cpu/mtrr/Makefile 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/i386/kernel/cpu/mtrr/Makefile 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/cpu/mtrr/Makefile linux-2.6.18-xen/arch/i386/kernel/cpu/mtrr/Makefile
+--- linux-2.6.18.3/arch/i386/kernel/cpu/mtrr/Makefile 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/i386/kernel/cpu/mtrr/Makefile 2006-11-19 14:26:22.000000000 +0100
@@ -3,3 +3,10 @@
obj-y += cyrix.o
obj-y += centaur.o
@@ -2699,15 +2699,15 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/cpu/mtrr/Makefile li
+obj-y := $(call filterxen, $(obj-y), $(n-obj-xen))
+obj-y := $(call cherrypickxen, $(obj-y))
+endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/early_printk-xen.c linux-2.6.18-xen/arch/i386/kernel/early_printk-xen.c
---- linux-2.6.18.1/arch/i386/kernel/early_printk-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/kernel/early_printk-xen.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/early_printk-xen.c linux-2.6.18-xen/arch/i386/kernel/early_printk-xen.c
+--- linux-2.6.18.3/arch/i386/kernel/early_printk-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/kernel/early_printk-xen.c 2006-11-19 14:26:22.000000000 +0100
@@ -0,0 +1,2 @@
+
+#include "../../x86_64/kernel/early_printk-xen.c"
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/entry.S linux-2.6.18-xen/arch/i386/kernel/entry.S
---- linux-2.6.18.1/arch/i386/kernel/entry.S 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/i386/kernel/entry.S 2006-09-21 01:33:31.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/entry.S linux-2.6.18-xen/arch/i386/kernel/entry.S
+--- linux-2.6.18.3/arch/i386/kernel/entry.S 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/i386/kernel/entry.S 2006-11-19 14:26:22.000000000 +0100
@@ -269,7 +269,7 @@
CFI_STARTPROC simple
CFI_DEF_CFA esp, 0
@@ -2735,9 +2735,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/entry.S linux-2.6.18
pushfl; \
pushl $__KERNEL_CS; \
pushl $sysenter_past_esp
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/entry-xen.S linux-2.6.18-xen/arch/i386/kernel/entry-xen.S
---- linux-2.6.18.1/arch/i386/kernel/entry-xen.S 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/kernel/entry-xen.S 2006-09-21 01:33:31.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/entry-xen.S linux-2.6.18-xen/arch/i386/kernel/entry-xen.S
+--- linux-2.6.18.3/arch/i386/kernel/entry-xen.S 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/kernel/entry-xen.S 2006-11-19 14:26:22.000000000 +0100
@@ -0,0 +1,1213 @@
+/*
+ * linux/arch/i386/entry.S
@@ -3952,9 +3952,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/entry-xen.S linux-2.
+#include "syscall_table.S"
+
+syscall_table_size=(.-sys_call_table)
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/fixup.c linux-2.6.18-xen/arch/i386/kernel/fixup.c
---- linux-2.6.18.1/arch/i386/kernel/fixup.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/kernel/fixup.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/fixup.c linux-2.6.18-xen/arch/i386/kernel/fixup.c
+--- linux-2.6.18.3/arch/i386/kernel/fixup.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/kernel/fixup.c 2006-11-19 14:26:22.000000000 +0100
@@ -0,0 +1,92 @@
+/******************************************************************************
+ * fixup.c
@@ -4048,9 +4048,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/fixup.c linux-2.6.18
+ return 0;
+}
+__initcall(fixup_init);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/head-xen.S linux-2.6.18-xen/arch/i386/kernel/head-xen.S
---- linux-2.6.18.1/arch/i386/kernel/head-xen.S 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/kernel/head-xen.S 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/head-xen.S linux-2.6.18-xen/arch/i386/kernel/head-xen.S
+--- linux-2.6.18.3/arch/i386/kernel/head-xen.S 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/kernel/head-xen.S 2006-11-19 14:26:22.000000000 +0100
@@ -0,0 +1,200 @@
+
+
@@ -4252,9 +4252,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/head-xen.S linux-2.6
+ ELFNOTE(Xen, XEN_ELFNOTE_PAE_MODE, .asciz, "no")
+#endif
+ ELFNOTE(Xen, XEN_ELFNOTE_LOADER, .asciz, "generic")
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/init_task-xen.c linux-2.6.18-xen/arch/i386/kernel/init_task-xen.c
---- linux-2.6.18.1/arch/i386/kernel/init_task-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/kernel/init_task-xen.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/init_task-xen.c linux-2.6.18-xen/arch/i386/kernel/init_task-xen.c
+--- linux-2.6.18.3/arch/i386/kernel/init_task-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/kernel/init_task-xen.c 2006-11-19 14:26:22.000000000 +0100
@@ -0,0 +1,51 @@
+#include <linux/mm.h>
+#include <linux/module.h>
@@ -4307,9 +4307,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/init_task-xen.c linu
+DEFINE_PER_CPU(struct tss_struct, init_tss) ____cacheline_internodealigned_in_smp = INIT_TSS;
+#endif
+
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/io_apic-xen.c linux-2.6.18-xen/arch/i386/kernel/io_apic-xen.c
---- linux-2.6.18.1/arch/i386/kernel/io_apic-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/kernel/io_apic-xen.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/io_apic-xen.c linux-2.6.18-xen/arch/i386/kernel/io_apic-xen.c
+--- linux-2.6.18.3/arch/i386/kernel/io_apic-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/kernel/io_apic-xen.c 2006-12-05 18:42:36.000000000 +0100
@@ -0,0 +1,2771 @@
+/*
+ * Intel IO-APIC support for multi-Pentium hosts.
@@ -6514,6 +6514,8 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/io_apic-xen.c linux-
+ }
+}
+
++int timer_uses_ioapic_pin_0;
++
+#ifndef CONFIG_XEN
+static void enable_lapic_irq (unsigned int irq)
+{
@@ -6628,9 +6630,7 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/io_apic-xen.c linux-
+ io_apic_write(apic, 0x10 + 2 * pin, *(((int *)&entry0) + 0));
+ spin_unlock_irqrestore(&ioapic_lock, flags);
+}
-+#endif /* CONFIG_XEN */
-+int timer_uses_ioapic_pin_0;
-+#ifdef CONFI_XEN
++
+/*
+ * This code may look a bit paranoid, but it's supposed to cooperate with
+ * a wide range of boards and BIOS bugs. Fortunately only the timer IRQ
@@ -7082,9 +7082,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/io_apic-xen.c linux-
+}
+
+#endif /* CONFIG_ACPI */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/ioport-xen.c linux-2.6.18-xen/arch/i386/kernel/ioport-xen.c
---- linux-2.6.18.1/arch/i386/kernel/ioport-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/kernel/ioport-xen.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/ioport-xen.c linux-2.6.18-xen/arch/i386/kernel/ioport-xen.c
+--- linux-2.6.18.3/arch/i386/kernel/ioport-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/kernel/ioport-xen.c 2006-11-19 14:26:22.000000000 +0100
@@ -0,0 +1,121 @@
+/*
+ * linux/arch/i386/kernel/ioport.c
@@ -7207,9 +7207,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/ioport-xen.c linux-2
+ set_iopl_mask(t->iopl);
+ return 0;
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/irq-xen.c linux-2.6.18-xen/arch/i386/kernel/irq-xen.c
---- linux-2.6.18.1/arch/i386/kernel/irq-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/kernel/irq-xen.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/irq-xen.c linux-2.6.18-xen/arch/i386/kernel/irq-xen.c
+--- linux-2.6.18.3/arch/i386/kernel/irq-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/kernel/irq-xen.c 2006-11-19 14:26:22.000000000 +0100
@@ -0,0 +1,324 @@
+/*
+ * linux/arch/i386/kernel/irq.c
@@ -7535,9 +7535,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/irq-xen.c linux-2.6.
+}
+#endif
+
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/ldt-xen.c linux-2.6.18-xen/arch/i386/kernel/ldt-xen.c
---- linux-2.6.18.1/arch/i386/kernel/ldt-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/kernel/ldt-xen.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/ldt-xen.c linux-2.6.18-xen/arch/i386/kernel/ldt-xen.c
+--- linux-2.6.18.3/arch/i386/kernel/ldt-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/kernel/ldt-xen.c 2006-11-19 14:26:22.000000000 +0100
@@ -0,0 +1,270 @@
+/*
+ * linux/kernel/ldt.c
@@ -7809,9 +7809,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/ldt-xen.c linux-2.6.
+ }
+ return ret;
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/Makefile linux-2.6.18-xen/arch/i386/kernel/Makefile
---- linux-2.6.18.1/arch/i386/kernel/Makefile 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/i386/kernel/Makefile 2006-09-21 01:33:31.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/Makefile linux-2.6.18-xen/arch/i386/kernel/Makefile
+--- linux-2.6.18.3/arch/i386/kernel/Makefile 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/i386/kernel/Makefile 2006-11-19 14:26:21.000000000 +0100
@@ -44,6 +44,12 @@
obj-$(CONFIG_SCx200) += scx200.o
@@ -7855,9 +7855,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/Makefile linux-2.6.1
+obj-y := $(call cherrypickxen, $(obj-y))
+extra-y := $(call cherrypickxen, $(extra-y))
+endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/microcode-xen.c linux-2.6.18-xen/arch/i386/kernel/microcode-xen.c
---- linux-2.6.18.1/arch/i386/kernel/microcode-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/kernel/microcode-xen.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/microcode-xen.c linux-2.6.18-xen/arch/i386/kernel/microcode-xen.c
+--- linux-2.6.18.3/arch/i386/kernel/microcode-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/kernel/microcode-xen.c 2006-11-19 14:26:22.000000000 +0100
@@ -0,0 +1,147 @@
+/*
+ * Intel CPU Microcode Update Driver for Linux
@@ -8006,9 +8006,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/microcode-xen.c linu
+module_init(microcode_init)
+module_exit(microcode_exit)
+MODULE_ALIAS_MISCDEV(MICROCODE_MINOR);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/mpparse-xen.c linux-2.6.18-xen/arch/i386/kernel/mpparse-xen.c
---- linux-2.6.18.1/arch/i386/kernel/mpparse-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/kernel/mpparse-xen.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/mpparse-xen.c linux-2.6.18-xen/arch/i386/kernel/mpparse-xen.c
+--- linux-2.6.18.3/arch/i386/kernel/mpparse-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/kernel/mpparse-xen.c 2006-11-19 14:26:22.000000000 +0100
@@ -0,0 +1,1185 @@
+/*
+ * Intel Multiprocessor Specification 1.1 and 1.4
@@ -9195,9 +9195,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/mpparse-xen.c linux-
+
+#endif /* CONFIG_X86_IO_APIC */
+#endif /* CONFIG_ACPI */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/pci-dma-xen.c linux-2.6.18-xen/arch/i386/kernel/pci-dma-xen.c
---- linux-2.6.18.1/arch/i386/kernel/pci-dma-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/kernel/pci-dma-xen.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/pci-dma-xen.c linux-2.6.18-xen/arch/i386/kernel/pci-dma-xen.c
+--- linux-2.6.18.3/arch/i386/kernel/pci-dma-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/kernel/pci-dma-xen.c 2006-11-19 14:26:22.000000000 +0100
@@ -0,0 +1,379 @@
+/*
+ * Dynamic DMA mapping support.
@@ -9578,9 +9578,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/pci-dma-xen.c linux-
+ swiotlb_sync_single_for_device(dev, dma_handle, size, direction);
+}
+EXPORT_SYMBOL(dma_sync_single_for_device);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/process-xen.c linux-2.6.18-xen/arch/i386/kernel/process-xen.c
---- linux-2.6.18.1/arch/i386/kernel/process-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/kernel/process-xen.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/process-xen.c linux-2.6.18-xen/arch/i386/kernel/process-xen.c
+--- linux-2.6.18.3/arch/i386/kernel/process-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/kernel/process-xen.c 2006-12-05 18:42:36.000000000 +0100
@@ -0,0 +1,812 @@
+/*
+ * linux/arch/i386/kernel/process.c
@@ -10394,9 +10394,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/process-xen.c linux-
+ sp -= get_random_int() % 8192;
+ return sp & ~0xf;
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/quirks-xen.c linux-2.6.18-xen/arch/i386/kernel/quirks-xen.c
---- linux-2.6.18.1/arch/i386/kernel/quirks-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/kernel/quirks-xen.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/quirks-xen.c linux-2.6.18-xen/arch/i386/kernel/quirks-xen.c
+--- linux-2.6.18.3/arch/i386/kernel/quirks-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/kernel/quirks-xen.c 2006-11-19 14:26:22.000000000 +0100
@@ -0,0 +1,47 @@
+/*
+ * This file contains work-arounds for x86 and x86_64 platform bugs.
@@ -10445,10 +10445,10 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/quirks-xen.c linux-2
+DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_E7525_MCH, quirk_intel_irqbalance);
+DECLARE_PCI_FIXUP_FINAL(PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_E7520_MCH, quirk_intel_irqbalance);
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/setup-xen.c linux-2.6.18-xen/arch/i386/kernel/setup-xen.c
---- linux-2.6.18.1/arch/i386/kernel/setup-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/kernel/setup-xen.c 2006-10-17 15:01:58.000000000 +0200
-@@ -0,0 +1,1832 @@
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/setup-xen.c linux-2.6.18-xen/arch/i386/kernel/setup-xen.c
+--- linux-2.6.18.3/arch/i386/kernel/setup-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/kernel/setup-xen.c 2006-12-05 18:42:36.000000000 +0100
+@@ -0,0 +1,1835 @@
+/*
+ * linux/arch/i386/kernel/setup.c
+ *
@@ -10494,6 +10494,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/setup-xen.c linux-2.
+#include <linux/init.h>
+#include <linux/edd.h>
+#include <linux/nodemask.h>
++#include <linux/kernel.h>
++#include <linux/percpu.h>
++#include <linux/notifier.h>
+#include <linux/kexec.h>
+#include <linux/crash_dump.h>
+#include <linux/dmi.h>
@@ -12281,9 +12284,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/setup-xen.c linux-2.
+ * c-basic-offset:8
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/smp-xen.c linux-2.6.18-xen/arch/i386/kernel/smp-xen.c
---- linux-2.6.18.1/arch/i386/kernel/smp-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/kernel/smp-xen.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/smp-xen.c linux-2.6.18-xen/arch/i386/kernel/smp-xen.c
+--- linux-2.6.18.3/arch/i386/kernel/smp-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/kernel/smp-xen.c 2006-11-19 14:26:22.000000000 +0100
@@ -0,0 +1,624 @@
+/*
+ * Intel SMP support routines.
@@ -12909,9 +12912,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/smp-xen.c linux-2.6.
+ return IRQ_HANDLED;
+}
+
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/swiotlb.c linux-2.6.18-xen/arch/i386/kernel/swiotlb.c
---- linux-2.6.18.1/arch/i386/kernel/swiotlb.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/kernel/swiotlb.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/swiotlb.c linux-2.6.18-xen/arch/i386/kernel/swiotlb.c
+--- linux-2.6.18.3/arch/i386/kernel/swiotlb.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/kernel/swiotlb.c 2006-11-19 14:26:22.000000000 +0100
@@ -0,0 +1,672 @@
+/*
+ * Dynamic DMA mapping support.
@@ -13585,9 +13588,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/swiotlb.c linux-2.6.
+EXPORT_SYMBOL(swiotlb_unmap_page);
+EXPORT_SYMBOL(swiotlb_dma_mapping_error);
+EXPORT_SYMBOL(swiotlb_dma_supported);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/sysenter.c linux-2.6.18-xen/arch/i386/kernel/sysenter.c
---- linux-2.6.18.1/arch/i386/kernel/sysenter.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/i386/kernel/sysenter.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/sysenter.c linux-2.6.18-xen/arch/i386/kernel/sysenter.c
+--- linux-2.6.18.3/arch/i386/kernel/sysenter.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/i386/kernel/sysenter.c 2006-11-19 14:26:22.000000000 +0100
@@ -23,6 +23,10 @@
#include <asm/pgtable.h>
#include <asm/unistd.h>
@@ -13647,9 +13650,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/sysenter.c linux-2.6
if (!boot_cpu_has(X86_FEATURE_SEP)) {
memcpy(syscall_page,
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/time-xen.c linux-2.6.18-xen/arch/i386/kernel/time-xen.c
---- linux-2.6.18.1/arch/i386/kernel/time-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/kernel/time-xen.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/time-xen.c linux-2.6.18-xen/arch/i386/kernel/time-xen.c
+--- linux-2.6.18.3/arch/i386/kernel/time-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/kernel/time-xen.c 2006-12-05 18:42:36.000000000 +0100
@@ -0,0 +1,1101 @@
+/*
+ * linux/arch/i386/kernel/time.c
@@ -14752,9 +14755,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/time-xen.c linux-2.6
+ return 0;
+}
+__initcall(xen_sysctl_init);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/traps.c linux-2.6.18-xen/arch/i386/kernel/traps.c
---- linux-2.6.18.1/arch/i386/kernel/traps.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/i386/kernel/traps.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/traps.c linux-2.6.18-xen/arch/i386/kernel/traps.c
+--- linux-2.6.18.3/arch/i386/kernel/traps.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/i386/kernel/traps.c 2006-11-19 14:26:22.000000000 +0100
@@ -642,18 +642,11 @@
static void io_check_error(unsigned char reason, struct pt_regs * regs)
@@ -14775,10 +14778,10 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/traps.c linux-2.6.18
}
static void unknown_nmi_error(unsigned char reason, struct pt_regs * regs)
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/traps-xen.c linux-2.6.18-xen/arch/i386/kernel/traps-xen.c
---- linux-2.6.18.1/arch/i386/kernel/traps-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/kernel/traps-xen.c 2006-09-04 16:31:00.000000000 +0200
-@@ -0,0 +1,1184 @@
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/traps-xen.c linux-2.6.18-xen/arch/i386/kernel/traps-xen.c
+--- linux-2.6.18.3/arch/i386/kernel/traps-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/kernel/traps-xen.c 2006-12-05 18:42:36.000000000 +0100
+@@ -0,0 +1,1185 @@
+/*
+ * linux/arch/i386/traps.c
+ *
@@ -14989,8 +14992,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/traps-xen.c linux-2.
+ printk("Full inexact backtrace again:\n");
+ } else if (call_trace >= 1)
+ return;
-+ } else
++ else
+ printk("Full inexact backtrace again:\n");
++ } else
+ printk("Inexact backtrace:\n");
+ }
+
@@ -15963,9 +15967,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/traps-xen.c linux-2.
+}
+__setup("call_trace=", call_trace_setup);
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/tsc.c linux-2.6.18-xen/arch/i386/kernel/tsc.c
---- linux-2.6.18.1/arch/i386/kernel/tsc.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/i386/kernel/tsc.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/tsc.c linux-2.6.18-xen/arch/i386/kernel/tsc.c
+--- linux-2.6.18.3/arch/i386/kernel/tsc.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/i386/kernel/tsc.c 2006-11-19 14:26:22.000000000 +0100
@@ -101,6 +101,7 @@
return (cyc * cyc2ns_scale) >> CYC2NS_SCALE_FACTOR;
}
@@ -15982,9 +15986,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/tsc.c linux-2.6.18-x
static unsigned long calculate_cpu_khz(void)
{
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/vm86.c linux-2.6.18-xen/arch/i386/kernel/vm86.c
---- linux-2.6.18.1/arch/i386/kernel/vm86.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/i386/kernel/vm86.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/vm86.c linux-2.6.18-xen/arch/i386/kernel/vm86.c
+--- linux-2.6.18.3/arch/i386/kernel/vm86.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/i386/kernel/vm86.c 2006-11-19 14:26:22.000000000 +0100
@@ -97,7 +97,9 @@
struct pt_regs * FASTCALL(save_v86_state(struct kernel_vm86_regs * regs));
struct pt_regs * fastcall save_v86_state(struct kernel_vm86_regs * regs)
@@ -16039,9 +16043,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/vm86.c linux-2.6.18-
tsk->thread.screen_bitmap = info->screen_bitmap;
if (info->flags & VM86_SCREEN_BITMAP)
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/vmlinux.lds.S linux-2.6.18-xen/arch/i386/kernel/vmlinux.lds.S
---- linux-2.6.18.1/arch/i386/kernel/vmlinux.lds.S 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/i386/kernel/vmlinux.lds.S 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/vmlinux.lds.S linux-2.6.18-xen/arch/i386/kernel/vmlinux.lds.S
+--- linux-2.6.18.3/arch/i386/kernel/vmlinux.lds.S 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/i386/kernel/vmlinux.lds.S 2006-11-19 14:26:22.000000000 +0100
@@ -13,6 +13,12 @@
OUTPUT_ARCH(i386)
ENTRY(phys_startup_32)
@@ -16080,9 +16084,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/vmlinux.lds.S linux-
+
+ NOTES
}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/vsyscall-note-xen.S linux-2.6.18-xen/arch/i386/kernel/vsyscall-note-xen.S
---- linux-2.6.18.1/arch/i386/kernel/vsyscall-note-xen.S 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/kernel/vsyscall-note-xen.S 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/kernel/vsyscall-note-xen.S linux-2.6.18-xen/arch/i386/kernel/vsyscall-note-xen.S
+--- linux-2.6.18.3/arch/i386/kernel/vsyscall-note-xen.S 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/kernel/vsyscall-note-xen.S 2006-11-19 14:26:22.000000000 +0100
@@ -0,0 +1,32 @@
+/*
+ * This supplies .note.* sections to go into the PT_NOTE inside the vDSO text.
@@ -16116,9 +16120,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/kernel/vsyscall-note-xen.S
+NOTE_KERNELCAP_BEGIN(1, 1)
+NOTE_KERNELCAP(1, "nosegneg") /* Change 1 back to 0 when glibc is fixed! */
+NOTE_KERNELCAP_END
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/lib/delay.c linux-2.6.18-xen/arch/i386/lib/delay.c
---- linux-2.6.18.1/arch/i386/lib/delay.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/i386/lib/delay.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/lib/delay.c linux-2.6.18-xen/arch/i386/lib/delay.c
+--- linux-2.6.18.3/arch/i386/lib/delay.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/i386/lib/delay.c 2006-11-19 14:26:22.000000000 +0100
@@ -61,6 +61,7 @@
delay_fn = delay_tsc;
}
@@ -16136,9 +16140,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/lib/delay.c linux-2.6.18-xe
void __delay(unsigned long loops)
{
delay_fn(loops);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/mach-xen/irqflags.c linux-2.6.18-xen/arch/i386/mach-xen/irqflags.c
---- linux-2.6.18.1/arch/i386/mach-xen/irqflags.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/mach-xen/irqflags.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/mach-xen/irqflags.c linux-2.6.18-xen/arch/i386/mach-xen/irqflags.c
+--- linux-2.6.18.3/arch/i386/mach-xen/irqflags.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/mach-xen/irqflags.c 2006-12-05 18:42:36.000000000 +0100
@@ -0,0 +1,99 @@
+#include <linux/module.h>
+#include <linux/smp.h>
@@ -16239,18 +16243,18 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/mach-xen/irqflags.c linux-2
+ return flags;
+}
+EXPORT_SYMBOL(__raw_local_irq_save);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/mach-xen/Makefile linux-2.6.18-xen/arch/i386/mach-xen/Makefile
---- linux-2.6.18.1/arch/i386/mach-xen/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/mach-xen/Makefile 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/mach-xen/Makefile linux-2.6.18-xen/arch/i386/mach-xen/Makefile
+--- linux-2.6.18.3/arch/i386/mach-xen/Makefile 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/mach-xen/Makefile 2006-12-05 18:42:36.000000000 +0100
@@ -0,0 +1,5 @@
+#
+# Makefile for the linux kernel.
+#
+
+obj-y := setup.o irqflags.o
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/mach-xen/setup.c linux-2.6.18-xen/arch/i386/mach-xen/setup.c
---- linux-2.6.18.1/arch/i386/mach-xen/setup.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/mach-xen/setup.c 2006-09-21 01:33:31.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/mach-xen/setup.c linux-2.6.18-xen/arch/i386/mach-xen/setup.c
+--- linux-2.6.18.3/arch/i386/mach-xen/setup.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/mach-xen/setup.c 2006-12-05 18:42:36.000000000 +0100
@@ -0,0 +1,154 @@
+/*
+ * Machine specific setup for generic
@@ -16406,9 +16410,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/mach-xen/setup.c linux-2.6.
+void __init pre_setup_arch_hook(void)
+{
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/Makefile linux-2.6.18-xen/arch/i386/Makefile
---- linux-2.6.18.1/arch/i386/Makefile 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/i386/Makefile 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/Makefile linux-2.6.18-xen/arch/i386/Makefile
+--- linux-2.6.18.3/arch/i386/Makefile 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/i386/Makefile 2006-11-19 14:26:21.000000000 +0100
@@ -48,6 +48,11 @@
CFLAGS += $(cflags-y)
@@ -16465,9 +16469,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/Makefile linux-2.6.18-xen/a
arch/$(ARCH)/boot/image.iso \
arch/$(ARCH)/boot/mtools.conf
+CLEAN_FILES += vmlinuz vmlinux-stripped
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/mm/fault-xen.c linux-2.6.18-xen/arch/i386/mm/fault-xen.c
---- linux-2.6.18.1/arch/i386/mm/fault-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/mm/fault-xen.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/mm/fault-xen.c linux-2.6.18-xen/arch/i386/mm/fault-xen.c
+--- linux-2.6.18.3/arch/i386/mm/fault-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/mm/fault-xen.c 2006-11-19 14:26:22.000000000 +0100
@@ -0,0 +1,770 @@
+/*
+ * linux/arch/i386/mm/fault.c
@@ -17239,9 +17243,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/mm/fault-xen.c linux-2.6.18
+ }
+}
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/mm/highmem-xen.c linux-2.6.18-xen/arch/i386/mm/highmem-xen.c
---- linux-2.6.18.1/arch/i386/mm/highmem-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/mm/highmem-xen.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/mm/highmem-xen.c linux-2.6.18-xen/arch/i386/mm/highmem-xen.c
+--- linux-2.6.18.3/arch/i386/mm/highmem-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/mm/highmem-xen.c 2006-11-19 14:26:22.000000000 +0100
@@ -0,0 +1,133 @@
+#include <linux/highmem.h>
+#include <linux/module.h>
@@ -17376,9 +17380,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/mm/highmem-xen.c linux-2.6.
+EXPORT_SYMBOL(kmap_atomic);
+EXPORT_SYMBOL(kunmap_atomic);
+EXPORT_SYMBOL(kmap_atomic_to_page);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/mm/hypervisor.c linux-2.6.18-xen/arch/i386/mm/hypervisor.c
---- linux-2.6.18.1/arch/i386/mm/hypervisor.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/mm/hypervisor.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/mm/hypervisor.c linux-2.6.18-xen/arch/i386/mm/hypervisor.c
+--- linux-2.6.18.3/arch/i386/mm/hypervisor.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/mm/hypervisor.c 2006-11-19 14:26:22.000000000 +0100
@@ -0,0 +1,457 @@
+/******************************************************************************
+ * mm/hypervisor.c
@@ -17837,9 +17841,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/mm/hypervisor.c linux-2.6.1
+ mach_lp, (u64)entry_a | ((u64)entry_b<<32));
+}
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/mm/init-xen.c linux-2.6.18-xen/arch/i386/mm/init-xen.c
---- linux-2.6.18.1/arch/i386/mm/init-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/mm/init-xen.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/mm/init-xen.c linux-2.6.18-xen/arch/i386/mm/init-xen.c
+--- linux-2.6.18.3/arch/i386/mm/init-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/mm/init-xen.c 2006-11-19 14:26:22.000000000 +0100
@@ -0,0 +1,851 @@
+/*
+ * linux/arch/i386/mm/init.c
@@ -18692,9 +18696,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/mm/init-xen.c linux-2.6.18-
+}
+#endif
+
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/mm/ioremap-xen.c linux-2.6.18-xen/arch/i386/mm/ioremap-xen.c
---- linux-2.6.18.1/arch/i386/mm/ioremap-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/mm/ioremap-xen.c 2006-10-17 15:01:58.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/mm/ioremap-xen.c linux-2.6.18-xen/arch/i386/mm/ioremap-xen.c
+--- linux-2.6.18.3/arch/i386/mm/ioremap-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/mm/ioremap-xen.c 2006-11-19 14:26:22.000000000 +0100
@@ -0,0 +1,443 @@
+/*
+ * arch/i386/mm/ioremap.c
@@ -19139,9 +19143,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/mm/ioremap-xen.c linux-2.6.
+ --nrpages;
+ }
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/mm/Makefile linux-2.6.18-xen/arch/i386/mm/Makefile
---- linux-2.6.18.1/arch/i386/mm/Makefile 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/i386/mm/Makefile 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/mm/Makefile linux-2.6.18-xen/arch/i386/mm/Makefile
+--- linux-2.6.18.3/arch/i386/mm/Makefile 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/i386/mm/Makefile 2006-11-19 14:26:22.000000000 +0100
@@ -8,3 +8,11 @@
obj-$(CONFIG_HUGETLB_PAGE) += hugetlbpage.o
obj-$(CONFIG_HIGHMEM) += highmem.o
@@ -19154,9 +19158,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/mm/Makefile linux-2.6.18-xe
+
+obj-y := $(call cherrypickxen, $(obj-y))
+endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/mm/pageattr.c linux-2.6.18-xen/arch/i386/mm/pageattr.c
---- linux-2.6.18.1/arch/i386/mm/pageattr.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/i386/mm/pageattr.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/mm/pageattr.c linux-2.6.18-xen/arch/i386/mm/pageattr.c
+--- linux-2.6.18.3/arch/i386/mm/pageattr.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/i386/mm/pageattr.c 2006-11-19 14:26:22.000000000 +0100
@@ -84,7 +84,7 @@
unsigned long flags;
@@ -19166,9 +19170,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/mm/pageattr.c linux-2.6.18-
return;
spin_lock_irqsave(&pgd_lock, flags);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/mm/pgtable-xen.c linux-2.6.18-xen/arch/i386/mm/pgtable-xen.c
---- linux-2.6.18.1/arch/i386/mm/pgtable-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/mm/pgtable-xen.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/mm/pgtable-xen.c linux-2.6.18-xen/arch/i386/mm/pgtable-xen.c
+--- linux-2.6.18.3/arch/i386/mm/pgtable-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/mm/pgtable-xen.c 2006-11-19 14:26:22.000000000 +0100
@@ -0,0 +1,699 @@
+/*
+ * linux/arch/i386/mm/pgtable.c
@@ -19869,9 +19873,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/mm/pgtable-xen.c linux-2.6.
+ !mm->context.has_foreign_mappings)
+ mm_unpin(mm);
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/oprofile/Makefile linux-2.6.18-xen/arch/i386/oprofile/Makefile
---- linux-2.6.18.1/arch/i386/oprofile/Makefile 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/i386/oprofile/Makefile 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/oprofile/Makefile linux-2.6.18-xen/arch/i386/oprofile/Makefile
+--- linux-2.6.18.3/arch/i386/oprofile/Makefile 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/i386/oprofile/Makefile 2006-11-19 14:26:22.000000000 +0100
@@ -6,7 +6,11 @@
oprofilefs.o oprofile_stats.o \
timer_int.o )
@@ -19884,9 +19888,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/oprofile/Makefile linux-2.6
op_model_ppro.o op_model_p4.o
oprofile-$(CONFIG_X86_IO_APIC) += nmi_timer_int.o
+endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/oprofile/xenoprof.c linux-2.6.18-xen/arch/i386/oprofile/xenoprof.c
---- linux-2.6.18.1/arch/i386/oprofile/xenoprof.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/oprofile/xenoprof.c 2006-09-21 01:33:31.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/oprofile/xenoprof.c linux-2.6.18-xen/arch/i386/oprofile/xenoprof.c
+--- linux-2.6.18.3/arch/i386/oprofile/xenoprof.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/oprofile/xenoprof.c 2006-11-19 14:26:22.000000000 +0100
@@ -0,0 +1,584 @@
+/**
+ * @file xenoprof.c
@@ -20472,9 +20476,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/oprofile/xenoprof.c linux-2
+ }
+
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/pci/irq-xen.c linux-2.6.18-xen/arch/i386/pci/irq-xen.c
---- linux-2.6.18.1/arch/i386/pci/irq-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/pci/irq-xen.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/pci/irq-xen.c linux-2.6.18-xen/arch/i386/pci/irq-xen.c
+--- linux-2.6.18.3/arch/i386/pci/irq-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/pci/irq-xen.c 2006-12-05 18:42:36.000000000 +0100
@@ -0,0 +1,1206 @@
+/*
+ * Low-Level PCI Support for PC -- Routing of Interrupts
@@ -20738,13 +20742,13 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/pci/irq-xen.c linux-2.6.18-
+ */
+static int pirq_via586_get(struct pci_dev *router, struct pci_dev *dev, int pirq)
+{
-+ static const unsigned int pirqmap[4] = { 3, 2, 5, 1 };
++ static const unsigned int pirqmap[5] = { 3, 2, 5, 1, 1 };
+ return read_config_nybble(router, 0x55, pirqmap[pirq-1]);
+}
+
+static int pirq_via586_set(struct pci_dev *router, struct pci_dev *dev, int pirq, int irq)
+{
-+ static const unsigned int pirqmap[4] = { 3, 2, 5, 1 };
++ static const unsigned int pirqmap[5] = { 3, 2, 5, 1, 1 };
+ write_config_nybble(router, 0x55, pirqmap[pirq-1], irq);
+ return 1;
+}
@@ -21682,9 +21686,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/pci/irq-xen.c linux-2.6.18-
+
+ return count;
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/pci/Makefile linux-2.6.18-xen/arch/i386/pci/Makefile
---- linux-2.6.18.1/arch/i386/pci/Makefile 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/i386/pci/Makefile 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/pci/Makefile linux-2.6.18-xen/arch/i386/pci/Makefile
+--- linux-2.6.18.3/arch/i386/pci/Makefile 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/i386/pci/Makefile 2006-11-19 14:26:22.000000000 +0100
@@ -4,6 +4,10 @@
obj-$(CONFIG_PCI_MMCONFIG) += mmconfig.o direct.o
obj-$(CONFIG_PCI_DIRECT) += direct.o
@@ -21705,9 +21709,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/pci/Makefile linux-2.6.18-x
+include $(srctree)/scripts/Makefile.xen
+obj-y := $(call cherrypickxen, $(obj-y))
+endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/pci/pcifront.c linux-2.6.18-xen/arch/i386/pci/pcifront.c
---- linux-2.6.18.1/arch/i386/pci/pcifront.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/i386/pci/pcifront.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/pci/pcifront.c linux-2.6.18-xen/arch/i386/pci/pcifront.c
+--- linux-2.6.18.3/arch/i386/pci/pcifront.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/i386/pci/pcifront.c 2006-11-19 14:26:22.000000000 +0100
@@ -0,0 +1,55 @@
+/*
+ * PCI Frontend Stub - puts some "dummy" functions in to the Linux x86 PCI core
@@ -21764,18 +21768,18 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/pci/pcifront.c linux-2.6.18
+}
+
+arch_initcall(pcifront_x86_stub_init);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/i386/power/Makefile linux-2.6.18-xen/arch/i386/power/Makefile
---- linux-2.6.18.1/arch/i386/power/Makefile 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/i386/power/Makefile 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/i386/power/Makefile linux-2.6.18-xen/arch/i386/power/Makefile
+--- linux-2.6.18.3/arch/i386/power/Makefile 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/i386/power/Makefile 2006-11-19 14:26:22.000000000 +0100
@@ -1,2 +1,4 @@
-obj-$(CONFIG_PM) += cpu.o
+obj-$(CONFIG_PM_LEGACY) += cpu.o
+obj-$(CONFIG_SOFTWARE_SUSPEND) += cpu.o
+obj-$(CONFIG_ACPI_SLEEP) += cpu.o
obj-$(CONFIG_SOFTWARE_SUSPEND) += swsusp.o
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/dig/setup.c linux-2.6.18-xen/arch/ia64/dig/setup.c
---- linux-2.6.18.1/arch/ia64/dig/setup.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/ia64/dig/setup.c 2006-09-21 01:33:31.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/ia64/dig/setup.c linux-2.6.18-xen/arch/ia64/dig/setup.c
+--- linux-2.6.18.3/arch/ia64/dig/setup.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/ia64/dig/setup.c 2006-11-19 14:26:22.000000000 +0100
@@ -24,6 +24,8 @@
#include <asm/machvec.h>
#include <asm/system.h>
@@ -21805,19 +21809,19 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/dig/setup.c linux-2.6.18-xe
+ xen_start_info->console.domU.evtchn = 0;
+#endif
}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/hp/sim/Makefile linux-2.6.18-xen/arch/ia64/hp/sim/Makefile
---- linux-2.6.18.1/arch/ia64/hp/sim/Makefile 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/ia64/hp/sim/Makefile 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/ia64/hp/sim/Makefile linux-2.6.18-xen/arch/ia64/hp/sim/Makefile
+--- linux-2.6.18.3/arch/ia64/hp/sim/Makefile 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/ia64/hp/sim/Makefile 2006-11-19 14:26:22.000000000 +0100
@@ -14,3 +14,5 @@
obj-$(CONFIG_HP_SIMSERIAL) += simserial.o
obj-$(CONFIG_HP_SIMSERIAL_CONSOLE) += hpsim_console.o
obj-$(CONFIG_HP_SIMSCSI) += simscsi.o
+obj-$(CONFIG_XEN) += simserial.o
+obj-$(CONFIG_XEN) += hpsim_console.o
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/Kconfig linux-2.6.18-xen/arch/ia64/Kconfig
---- linux-2.6.18.1/arch/ia64/Kconfig 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/ia64/Kconfig 2006-10-17 15:01:58.000000000 +0200
-@@ -58,6 +58,34 @@
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/ia64/Kconfig linux-2.6.18-xen/arch/ia64/Kconfig
+--- linux-2.6.18.3/arch/ia64/Kconfig 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/ia64/Kconfig 2006-11-19 14:26:22.000000000 +0100
+@@ -58,6 +58,20 @@
bool
default y
@@ -21835,24 +21839,10 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/Kconfig linux-2.6.18-xen/ar
+ help
+ vDSO paravirtualization
+
-+config XEN_IA64_EXPOSE_P2M
-+ bool "Xen/IA64 exposure p2m table"
-+ depends on XEN
-+ default y
-+ help
-+ expose p2m from xen
-+
-+config XEN_IA64_EXPOSE_P2M_USE_DTR
-+ bool "Xen/IA64 map p2m table with dtr"
-+ depends on XEN_IA64_EXPOSE_P2M
-+ default y
-+ help
-+ use dtr to map the exposed p2m table
-+
config SCHED_NO_NO_OMIT_FRAME_POINTER
bool
default y
-@@ -465,6 +493,21 @@
+@@ -465,6 +479,21 @@
bool
default PCI
@@ -21874,7 +21864,7 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/Kconfig linux-2.6.18-xen/ar
source "drivers/pci/pcie/Kconfig"
source "drivers/pci/Kconfig"
-@@ -528,3 +571,34 @@
+@@ -528,3 +557,34 @@
source "security/Kconfig"
source "crypto/Kconfig"
@@ -21909,9 +21899,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/Kconfig linux-2.6.18-xen/ar
+endif
+
+source "drivers/xen/Kconfig"
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/asm-offsets.c linux-2.6.18-xen/arch/ia64/kernel/asm-offsets.c
---- linux-2.6.18.1/arch/ia64/kernel/asm-offsets.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/ia64/kernel/asm-offsets.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/ia64/kernel/asm-offsets.c linux-2.6.18-xen/arch/ia64/kernel/asm-offsets.c
+--- linux-2.6.18.3/arch/ia64/kernel/asm-offsets.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/ia64/kernel/asm-offsets.c 2006-11-19 14:26:22.000000000 +0100
@@ -268,4 +268,29 @@
DEFINE(IA64_TIME_SOURCE_MMIO64, TIME_SOURCE_MMIO64);
DEFINE(IA64_TIME_SOURCE_MMIO32, TIME_SOURCE_MMIO32);
@@ -21942,9 +21932,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/asm-offsets.c linux-
+ DEFINE_MAPPED_REG_OFS(XSI_BANK1_R16_OFS, bank1_regs[0]);
+#endif /* CONFIG_XEN */
}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/entry.S linux-2.6.18-xen/arch/ia64/kernel/entry.S
---- linux-2.6.18.1/arch/ia64/kernel/entry.S 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/ia64/kernel/entry.S 2006-09-21 01:33:31.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/ia64/kernel/entry.S linux-2.6.18-xen/arch/ia64/kernel/entry.S
+--- linux-2.6.18.3/arch/ia64/kernel/entry.S 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/ia64/kernel/entry.S 2006-11-19 14:26:22.000000000 +0100
@@ -180,7 +180,7 @@
* called. The code starting at .map relies on this. The rest of the code
* doesn't care about the interrupt masking status.
@@ -22064,9 +22054,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/entry.S linux-2.6.18
;;
mov ar.unat=r9
br.many b7
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/gate.lds.S linux-2.6.18-xen/arch/ia64/kernel/gate.lds.S
---- linux-2.6.18.1/arch/ia64/kernel/gate.lds.S 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/ia64/kernel/gate.lds.S 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/ia64/kernel/gate.lds.S linux-2.6.18-xen/arch/ia64/kernel/gate.lds.S
+--- linux-2.6.18.3/arch/ia64/kernel/gate.lds.S 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/ia64/kernel/gate.lds.S 2006-11-19 14:26:22.000000000 +0100
@@ -43,6 +43,28 @@
__start_gate_brl_fsys_bubble_down_patchlist = .;
*(.data.patch.brl_fsys_bubble_down)
@@ -22096,9 +22086,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/gate.lds.S linux-2.6
} :readable
.IA_64.unwind_info : { *(.IA_64.unwind_info*) }
.IA_64.unwind : { *(.IA_64.unwind*) } :readable :unwind
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/gate.S linux-2.6.18-xen/arch/ia64/kernel/gate.S
---- linux-2.6.18.1/arch/ia64/kernel/gate.S 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/ia64/kernel/gate.S 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/ia64/kernel/gate.S linux-2.6.18-xen/arch/ia64/kernel/gate.S
+--- linux-2.6.18.3/arch/ia64/kernel/gate.S 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/ia64/kernel/gate.S 2006-11-19 14:26:22.000000000 +0100
@@ -6,13 +6,15 @@
* David Mosberger-Tang <davidm@hpl.hp.com>
*/
@@ -22268,9 +22258,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/gate.S linux-2.6.18-
(p9) mov r8=ENOSYS
FSYS_RETURN
END(__kernel_syscall_via_epc)
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/head.S linux-2.6.18-xen/arch/ia64/kernel/head.S
---- linux-2.6.18.1/arch/ia64/kernel/head.S 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/ia64/kernel/head.S 2006-09-21 01:33:31.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/ia64/kernel/head.S linux-2.6.18-xen/arch/ia64/kernel/head.S
+--- linux-2.6.18.3/arch/ia64/kernel/head.S 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/ia64/kernel/head.S 2006-11-19 14:26:22.000000000 +0100
@@ -367,6 +367,12 @@
;;
(isBP) st8 [r2]=r28 // save the address of the boot param area passed by the bootloader
@@ -22284,9 +22274,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/head.S linux-2.6.18-
#ifdef CONFIG_SMP
(isAP) br.call.sptk.many rp=start_secondary
.ret0:
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/iosapic.c linux-2.6.18-xen/arch/ia64/kernel/iosapic.c
---- linux-2.6.18.1/arch/ia64/kernel/iosapic.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/ia64/kernel/iosapic.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/ia64/kernel/iosapic.c linux-2.6.18-xen/arch/ia64/kernel/iosapic.c
+--- linux-2.6.18.3/arch/ia64/kernel/iosapic.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/ia64/kernel/iosapic.c 2006-11-19 14:26:22.000000000 +0100
@@ -159,6 +159,65 @@
static int iosapic_kmalloc_ok;
static LIST_HEAD(free_rte_list);
@@ -22373,9 +22363,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/iosapic.c linux-2.6.
if (pcat_compat) {
/*
* Disable the compatibility mode interrupts (8259 style),
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/irq_ia64.c linux-2.6.18-xen/arch/ia64/kernel/irq_ia64.c
---- linux-2.6.18.1/arch/ia64/kernel/irq_ia64.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/ia64/kernel/irq_ia64.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/ia64/kernel/irq_ia64.c linux-2.6.18-xen/arch/ia64/kernel/irq_ia64.c
+--- linux-2.6.18.3/arch/ia64/kernel/irq_ia64.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/ia64/kernel/irq_ia64.c 2006-11-19 14:26:22.000000000 +0100
@@ -30,6 +30,9 @@
#include <linux/smp_lock.h>
#include <linux/threads.h>
@@ -22678,9 +22668,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/irq_ia64.c linux-2.6
#ifdef CONFIG_SMP
phys_cpu_id = cpu_physical_id(cpu);
#else
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/pal.S linux-2.6.18-xen/arch/ia64/kernel/pal.S
---- linux-2.6.18.1/arch/ia64/kernel/pal.S 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/ia64/kernel/pal.S 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/ia64/kernel/pal.S linux-2.6.18-xen/arch/ia64/kernel/pal.S
+--- linux-2.6.18.3/arch/ia64/kernel/pal.S 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/ia64/kernel/pal.S 2006-11-19 14:26:23.000000000 +0100
@@ -16,6 +16,7 @@
#include <asm/processor.h>
@@ -22707,9 +22697,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/pal.S linux-2.6.18-x
/*
* Make a PAL call using the stacked registers calling convention.
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/patch.c linux-2.6.18-xen/arch/ia64/kernel/patch.c
---- linux-2.6.18.1/arch/ia64/kernel/patch.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/ia64/kernel/patch.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/ia64/kernel/patch.c linux-2.6.18-xen/arch/ia64/kernel/patch.c
+--- linux-2.6.18.3/arch/ia64/kernel/patch.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/ia64/kernel/patch.c 2006-11-19 14:26:23.000000000 +0100
@@ -184,6 +184,73 @@
ia64_srlz_i();
}
@@ -22795,9 +22785,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/patch.c linux-2.6.18
ia64_patch_vtop(START(vtop), END(vtop));
ia64_patch_mckinley_e9(START(mckinley_e9), END(mckinley_e9));
}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/setup.c linux-2.6.18-xen/arch/ia64/kernel/setup.c
---- linux-2.6.18.1/arch/ia64/kernel/setup.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/ia64/kernel/setup.c 2006-10-17 15:01:58.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/ia64/kernel/setup.c linux-2.6.18-xen/arch/ia64/kernel/setup.c
+--- linux-2.6.18.3/arch/ia64/kernel/setup.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/ia64/kernel/setup.c 2006-11-19 14:26:23.000000000 +0100
@@ -60,6 +60,10 @@
#include <asm/system.h>
#include <asm/unistd.h>
@@ -22809,13 +22799,11 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/setup.c linux-2.6.18
#if defined(CONFIG_SMP) && (IA64_CPU_SIZE > PAGE_SIZE)
# error "struct cpuinfo_ia64 too big!"
-@@ -70,6 +74,24 @@
+@@ -70,6 +74,22 @@
EXPORT_SYMBOL(__per_cpu_offset);
#endif
+#ifdef CONFIG_XEN
-+unsigned long kernel_start_pa;
-+
+static int
+xen_panic_event(struct notifier_block *this, unsigned long event, void *ptr)
+{
@@ -22834,7 +22822,7 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/setup.c linux-2.6.18
extern void ia64_setup_printk_clock(void);
DEFINE_PER_CPU(struct cpuinfo_ia64, cpu_info);
-@@ -176,15 +198,33 @@
+@@ -176,15 +196,33 @@
return 0;
}
@@ -22869,7 +22857,7 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/setup.c linux-2.6.18
struct rsvd_region tmp;
tmp = rsvd_region[j];
rsvd_region[j] = rsvd_region[j + 1];
-@@ -192,6 +232,36 @@
+@@ -192,6 +230,36 @@
}
}
}
@@ -22906,7 +22894,7 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/setup.c linux-2.6.18
}
/*
-@@ -242,6 +312,14 @@
+@@ -242,6 +310,14 @@
rsvd_region[n].end = (unsigned long) ia64_imva(_end);
n++;
@@ -22921,7 +22909,7 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/setup.c linux-2.6.18
#ifdef CONFIG_BLK_DEV_INITRD
if (ia64_boot_param->initrd_start) {
rsvd_region[n].start = (unsigned long)__va(ia64_boot_param->initrd_start);
-@@ -333,6 +411,16 @@
+@@ -333,6 +409,16 @@
{
int earlycons = 0;
@@ -22938,13 +22926,12 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/setup.c linux-2.6.18
#ifdef CONFIG_SERIAL_SGI_L1_CONSOLE
{
extern int sn_serial_console_early_setup(void);
-@@ -402,6 +490,15 @@
+@@ -402,6 +488,14 @@
{
unw_init();
+#ifdef CONFIG_XEN
+ if (is_running_on_xen()) {
-+ kernel_start_pa = KERNEL_START - ia64_tpa(KERNEL_START);
+ setup_xen_features();
+ /* Register a call for panic conditions. */
+ atomic_notifier_chain_register(&panic_notifier_list, &xen_panic_block);
@@ -22954,7 +22941,7 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/setup.c linux-2.6.18
ia64_patch_vtop((u64) __start___vtop_patchlist, (u64) __end___vtop_patchlist);
*cmdline_p = __va(ia64_boot_param->command_line);
-@@ -478,6 +575,23 @@
+@@ -478,6 +572,23 @@
conswitchp = &vga_con;
# endif
}
@@ -22978,7 +22965,7 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/setup.c linux-2.6.18
#endif
/* enable IA-64 Machine Check Abort Handling unless disabled */
-@@ -486,6 +600,9 @@
+@@ -486,6 +597,9 @@
platform_setup(cmdline_p);
paging_init();
@@ -22988,7 +22975,7 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/setup.c linux-2.6.18
}
/*
-@@ -870,6 +987,15 @@
+@@ -870,6 +984,15 @@
/* size of physical stacked register partition plus 8 bytes: */
__get_cpu_var(ia64_phys_stacked_size_p8) = num_phys_stacked*8 + 8;
platform_cpu_init();
@@ -23004,9 +22991,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/kernel/setup.c linux-2.6.18
pm_idle = default_idle;
}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/Makefile linux-2.6.18-xen/arch/ia64/Makefile
---- linux-2.6.18.1/arch/ia64/Makefile 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/ia64/Makefile 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/ia64/Makefile linux-2.6.18-xen/arch/ia64/Makefile
+--- linux-2.6.18.3/arch/ia64/Makefile 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/ia64/Makefile 2006-11-19 14:26:22.000000000 +0100
@@ -45,6 +45,12 @@
endif
@@ -23047,9 +23034,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/Makefile linux-2.6.18-xen/a
define archhelp
echo '* compressed - Build compressed kernel image'
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/mm/ioremap.c linux-2.6.18-xen/arch/ia64/mm/ioremap.c
---- linux-2.6.18.1/arch/ia64/mm/ioremap.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/ia64/mm/ioremap.c 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/ia64/mm/ioremap.c linux-2.6.18-xen/arch/ia64/mm/ioremap.c
+--- linux-2.6.18.3/arch/ia64/mm/ioremap.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/ia64/mm/ioremap.c 2006-11-19 14:26:23.000000000 +0100
@@ -16,6 +16,9 @@
static inline void __iomem *
__ioremap (unsigned long offset, unsigned long size)
@@ -23060,15 +23047,15 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/mm/ioremap.c linux-2.6.18-x
return (void __iomem *) (__IA64_UNCACHED_OFFSET | offset);
}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/drivers/README linux-2.6.18-xen/arch/ia64/xen/drivers/README
---- linux-2.6.18.1/arch/ia64/xen/drivers/README 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/ia64/xen/drivers/README 2006-09-04 16:31:00.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/ia64/xen/drivers/README linux-2.6.18-xen/arch/ia64/xen/drivers/README
+--- linux-2.6.18.3/arch/ia64/xen/drivers/README 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/ia64/xen/drivers/README 2006-11-19 14:26:23.000000000 +0100
@@ -0,0 +1,2 @@
+This is a temporary location for source/Makefiles that need to be
+patched/reworked in drivers/xen to work with xenlinux/ia64.
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/hypercall.S linux-2.6.18-xen/arch/ia64/xen/hypercall.S
---- linux-2.6.18.1/arch/ia64/xen/hypercall.S 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/ia64/xen/hypercall.S 2006-09-04 16:31:01.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/ia64/xen/hypercall.S linux-2.6.18-xen/arch/ia64/xen/hypercall.S
+--- linux-2.6.18.3/arch/ia64/xen/hypercall.S 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/ia64/xen/hypercall.S 2006-11-19 14:26:23.000000000 +0100
@@ -0,0 +1,413 @@
+/*
+ * Support routines for Xen hypercalls
@@ -23483,10 +23470,10 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/hypercall.S linux-2.6.1
+ ;;
+END(xen_ssm_i_1)
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/hypervisor.c linux-2.6.18-xen/arch/ia64/xen/hypervisor.c
---- linux-2.6.18.1/arch/ia64/xen/hypervisor.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/ia64/xen/hypervisor.c 2006-10-17 15:01:58.000000000 +0200
-@@ -0,0 +1,1052 @@
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/ia64/xen/hypervisor.c linux-2.6.18-xen/arch/ia64/xen/hypervisor.c
+--- linux-2.6.18.3/arch/ia64/xen/hypervisor.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/ia64/xen/hypervisor.c 2006-12-05 18:42:36.000000000 +0100
+@@ -0,0 +1,847 @@
+/******************************************************************************
+ * include/asm-ia64/shadow.h
+ *
@@ -23529,11 +23516,59 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/hypervisor.c linux-2.6.
+int running_on_xen;
+EXPORT_SYMBOL(running_on_xen);
+
-+#ifdef CONFIG_XEN_IA64_EXPOSE_P2M
-+static int p2m_expose_init(void);
-+#else
-+#define p2m_expose_init() (-ENOSYS)
-+#endif
++//XXX xen/ia64 copy_from_guest() is broken.
++// This is a temporal work around until it is fixed.
++// used by balloon.c netfront.c
++
++// get_xen_guest_handle is defined only when __XEN_TOOLS__ is defined
++// if the definition in arch-ia64.h is changed, this must be updated.
++#define get_xen_guest_handle(val, hnd) do { val = (hnd).p; } while (0)
++
++int
++ia64_xenmem_reservation_op(unsigned long op,
++ struct xen_memory_reservation* reservation__)
++{
++ struct xen_memory_reservation reservation = *reservation__;
++ unsigned long* frame_list;
++ unsigned long nr_extents = reservation__->nr_extents;
++ int ret = 0;
++ get_xen_guest_handle(frame_list, reservation__->extent_start);
++
++ BUG_ON(op != XENMEM_increase_reservation &&
++ op != XENMEM_decrease_reservation &&
++ op != XENMEM_populate_physmap);
++
++ while (nr_extents > 0) {
++ int tmp_ret;
++ volatile unsigned long dummy;
++
++ set_xen_guest_handle(reservation.extent_start, frame_list);
++ reservation.nr_extents = nr_extents;
++
++ dummy = frame_list[0];// re-install tlb entry before hypercall
++ tmp_ret = ____HYPERVISOR_memory_op(op, &reservation);
++ if (tmp_ret < 0) {
++ if (ret == 0) {
++ ret = tmp_ret;
++ }
++ break;
++ }
++ if (tmp_ret == 0) {
++ //XXX dirty work around for skbuff_ctor()
++ // of a non-privileged domain,
++ if ((op == XENMEM_increase_reservation ||
++ op == XENMEM_populate_physmap) &&
++ !is_initial_xendomain() &&
++ reservation.extent_order > 0)
++ return ret;
++ }
++ frame_list += tmp_ret;
++ nr_extents -= tmp_ret;
++ ret += tmp_ret;
++ }
++ return ret;
++}
++EXPORT_SYMBOL(ia64_xenmem_reservation_op);
+
+//XXX same as i386, x86_64 contiguous_bitmap_set(), contiguous_bitmap_clear()
+// move those to lib/contiguous_bitmap?
@@ -23812,6 +23847,8 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/hypervisor.c linux-2.6.
+int
+HYPERVISOR_grant_table_op(unsigned int cmd, void *uop, unsigned int count)
+{
++ __u64 va1, va2, pa1, pa2;
++
+ if (cmd == GNTTABOP_map_grant_ref) {
+ unsigned int i;
+ for (i = 0; i < count; i++) {
@@ -23819,7 +23856,29 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/hypervisor.c linux-2.6.
+ (struct gnttab_map_grant_ref*)uop + i);
+ }
+ }
-+ return xencomm_mini_hypercall_grant_table_op(cmd, uop, count);
++ va1 = (__u64)uop & PAGE_MASK;
++ pa1 = pa2 = 0;
++ if ((REGION_NUMBER(va1) == 5) &&
++ ((va1 - KERNEL_START) >= KERNEL_TR_PAGE_SIZE)) {
++ pa1 = ia64_tpa(va1);
++ if (cmd <= GNTTABOP_transfer) {
++ static uint32_t uop_size[GNTTABOP_transfer + 1] = {
++ sizeof(struct gnttab_map_grant_ref),
++ sizeof(struct gnttab_unmap_grant_ref),
++ sizeof(struct gnttab_setup_table),
++ sizeof(struct gnttab_dump_table),
++ sizeof(struct gnttab_transfer),
++ };
++ va2 = (__u64)uop + (uop_size[cmd] * count) - 1;
++ va2 &= PAGE_MASK;
++ if (va1 != va2) {
++ /* maximum size of uop is 2pages */
++ BUG_ON(va2 > va1 + PAGE_SIZE);
++ pa2 = ia64_tpa(va2);
++ }
++ }
++ }
++ return ____HYPERVISOR_grant_table_op(cmd, uop, count, pa1, pa2);
+}
+EXPORT_SYMBOL(HYPERVISOR_grant_table_op);
+
@@ -23943,10 +24002,6 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/hypervisor.c linux-2.6.
+ privcmd_resource_min, privcmd_resource_max,
+ (privcmd_resource_max - privcmd_resource_min) >> 20);
+ BUG_ON(privcmd_resource_min >= privcmd_resource_max);
-+
-+ // XXX this should be somewhere appropriate
-+ (void)p2m_expose_init();
-+
+ return 0;
+}
+late_initcall(xen_ia64_privcmd_init);
@@ -24266,296 +24321,22 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/hypervisor.c linux-2.6.
+ /* Just trigger a tick. */
+ ia64_cpu_local_tick();
+}
-+
-+///////////////////////////////////////////////////////////////////////////
-+// expose p2m table
-+#ifdef CONFIG_XEN_IA64_EXPOSE_P2M
-+#include <linux/cpu.h>
-+#include <asm/uaccess.h>
-+
-+int p2m_initialized __read_mostly = 0;
-+
-+unsigned long p2m_min_low_pfn __read_mostly;
-+unsigned long p2m_max_low_pfn __read_mostly;
-+unsigned long p2m_convert_min_pfn __read_mostly;
-+unsigned long p2m_convert_max_pfn __read_mostly;
-+
-+static struct resource p2m_resource = {
-+ .name = "Xen p2m table",
-+ .flags = IORESOURCE_MEM,
-+};
-+static unsigned long p2m_assign_start_pfn __read_mostly;
-+static unsigned long p2m_assign_end_pfn __read_mostly;
-+volatile const pte_t* p2m_pte __read_mostly;
-+
-+#define GRNULE_PFN PTRS_PER_PTE
-+static unsigned long p2m_granule_pfn __read_mostly = GRNULE_PFN;
-+
-+#define ROUNDDOWN(x, y) ((x) & ~((y) - 1))
-+#define ROUNDUP(x, y) (((x) + (y) - 1) & ~((y) - 1))
-+
-+#define P2M_PREFIX "Xen p2m: "
-+
-+static int xen_ia64_p2m_expose __read_mostly = 1;
-+module_param(xen_ia64_p2m_expose, int, 0);
-+MODULE_PARM_DESC(xen_ia64_p2m_expose,
-+ "enable/disable xen/ia64 p2m exposure optimization\n");
-+
-+#ifdef CONFIG_XEN_IA64_EXPOSE_P2M_USE_DTR
-+static int xen_ia64_p2m_expose_use_dtr __read_mostly = 1;
-+module_param(xen_ia64_p2m_expose_use_dtr, int, 0);
-+MODULE_PARM_DESC(xen_ia64_p2m_expose_use_dtr,
-+ "use/unuse dtr to map exposed p2m table\n");
-+
-+static const int p2m_page_shifts[] = {
-+ _PAGE_SIZE_4K,
-+ _PAGE_SIZE_8K,
-+ _PAGE_SIZE_16K,
-+ _PAGE_SIZE_64K,
-+ _PAGE_SIZE_256K,
-+ _PAGE_SIZE_1M,
-+ _PAGE_SIZE_4M,
-+ _PAGE_SIZE_16M,
-+ _PAGE_SIZE_64M,
-+ _PAGE_SIZE_256M,
-+};
-+
-+struct p2m_itr_arg {
-+ unsigned long vaddr;
-+ unsigned long pteval;
-+ unsigned long log_page_size;
-+};
-+static struct p2m_itr_arg p2m_itr_arg __read_mostly;
-+
-+// This should be in asm-ia64/kregs.h
-+#define IA64_TR_P2M_TABLE 3
-+
-+static void
-+p2m_itr(void* info)
-+{
-+ struct p2m_itr_arg* arg = (struct p2m_itr_arg*)info;
-+ ia64_itr(0x2, IA64_TR_P2M_TABLE,
-+ arg->vaddr, arg->pteval, arg->log_page_size);
-+ ia64_srlz_d();
-+}
-+
-+static int
-+p2m_expose_dtr_call(struct notifier_block *self,
-+ unsigned long event, void* ptr)
-+{
-+ unsigned int cpu = (unsigned int)(long)ptr;
-+ if (event != CPU_ONLINE)
-+ return 0;
-+ if (!(p2m_initialized && xen_ia64_p2m_expose_use_dtr))
-+ smp_call_function_single(cpu, &p2m_itr, &p2m_itr_arg, 1, 1);
-+ return 0;
-+}
-+
-+static struct notifier_block p2m_expose_dtr_hotplug_notifier = {
-+ .notifier_call = p2m_expose_dtr_call,
-+ .next = NULL,
-+ .priority = 0
-+};
-+#endif
-+
-+static int
-+p2m_expose_init(void)
-+{
-+ unsigned long num_pfn;
-+ unsigned long size = 0;
-+ unsigned long p2m_size = 0;
-+ unsigned long align = ~0UL;
-+ int error = 0;
-+#ifdef CONFIG_XEN_IA64_EXPOSE_P2M_USE_DTR
-+ int i;
-+ unsigned long page_size;
-+ unsigned long log_page_size = 0;
-+#endif
-+
-+ if (!xen_ia64_p2m_expose)
-+ return -ENOSYS;
-+ if (p2m_initialized)
-+ return 0;
-+
-+#ifdef CONFIG_XEN_IA64_EXPOSE_P2M_USE_DTR
-+ error = register_cpu_notifier(&p2m_expose_dtr_hotplug_notifier);
-+ if (error < 0)
-+ return error;
-+#endif
-+
-+ lock_cpu_hotplug();
-+ if (p2m_initialized)
-+ goto out;
-+
-+#ifdef CONFIG_DISCONTIGMEM
-+ p2m_min_low_pfn = min_low_pfn;
-+ p2m_max_low_pfn = max_low_pfn;
-+#else
-+ p2m_min_low_pfn = 0;
-+ p2m_max_low_pfn = max_pfn;
-+#endif
-+
-+#ifdef CONFIG_XEN_IA64_EXPOSE_P2M_USE_DTR
-+ if (xen_ia64_p2m_expose_use_dtr) {
-+ unsigned long granule_pfn = 0;
-+ p2m_size = p2m_max_low_pfn - p2m_min_low_pfn;
-+ for (i = 0;
-+ i < sizeof(p2m_page_shifts)/sizeof(p2m_page_shifts[0]);
-+ i++) {
-+ log_page_size = p2m_page_shifts[i];
-+ page_size = 1UL << log_page_size;
-+ if (page_size < p2m_size)
-+ continue;
-+
-+ granule_pfn = max(page_size >> PAGE_SHIFT,
-+ p2m_granule_pfn);
-+ p2m_convert_min_pfn = ROUNDDOWN(p2m_min_low_pfn,
-+ granule_pfn);
-+ p2m_convert_max_pfn = ROUNDUP(p2m_max_low_pfn,
-+ granule_pfn);
-+ num_pfn = p2m_convert_max_pfn - p2m_convert_min_pfn;
-+ size = num_pfn << PAGE_SHIFT;
-+ p2m_size = num_pfn / PTRS_PER_PTE;
-+ p2m_size = ROUNDUP(p2m_size, granule_pfn << PAGE_SHIFT);
-+ if (p2m_size == page_size)
-+ break;
-+ }
-+ if (p2m_size != page_size) {
-+ printk(KERN_ERR "p2m_size != page_size\n");
-+ error = -EINVAL;
-+ goto out;
-+ }
-+ align = max(privcmd_resource_align, granule_pfn << PAGE_SHIFT);
-+ } else
-+#endif
-+ {
-+ BUG_ON(p2m_granule_pfn & (p2m_granule_pfn - 1));
-+ p2m_convert_min_pfn = ROUNDDOWN(p2m_min_low_pfn,
-+ p2m_granule_pfn);
-+ p2m_convert_max_pfn = ROUNDUP(p2m_max_low_pfn, p2m_granule_pfn);
-+ num_pfn = p2m_convert_max_pfn - p2m_convert_min_pfn;
-+ size = num_pfn << PAGE_SHIFT;
-+ p2m_size = num_pfn / PTRS_PER_PTE;
-+ p2m_size = ROUNDUP(p2m_size, p2m_granule_pfn << PAGE_SHIFT);
-+ align = max(privcmd_resource_align,
-+ p2m_granule_pfn << PAGE_SHIFT);
-+ }
-+
-+ // use privcmd region
-+ error = allocate_resource(&iomem_resource, &p2m_resource, p2m_size,
-+ privcmd_resource_min, privcmd_resource_max,
-+ align, NULL, NULL);
-+ if (error) {
-+ printk(KERN_ERR P2M_PREFIX
-+ "can't allocate region for p2m exposure "
-+ "[0x%016lx, 0x%016lx) 0x%016lx\n",
-+ p2m_convert_min_pfn, p2m_convert_max_pfn, p2m_size);
-+ goto out;
-+ }
-+
-+ p2m_assign_start_pfn = p2m_resource.start >> PAGE_SHIFT;
-+ p2m_assign_end_pfn = p2m_resource.end >> PAGE_SHIFT;
-+
-+ error = HYPERVISOR_expose_p2m(p2m_convert_min_pfn,
-+ p2m_assign_start_pfn,
-+ size, p2m_granule_pfn);
-+ if (error) {
-+ printk(KERN_ERR P2M_PREFIX "failed expose p2m hypercall %d\n",
-+ error);
-+ printk(KERN_ERR P2M_PREFIX "conv 0x%016lx assign 0x%016lx "
-+ "size 0x%016lx granule 0x%016lx\n",
-+ p2m_convert_min_pfn, p2m_assign_start_pfn,
-+ size, p2m_granule_pfn);;
-+ release_resource(&p2m_resource);
-+ goto out;
-+ }
-+ p2m_pte = (volatile const pte_t*)pfn_to_kaddr(p2m_assign_start_pfn);
-+#ifdef CONFIG_XEN_IA64_EXPOSE_P2M_USE_DTR
-+ if (xen_ia64_p2m_expose_use_dtr) {
-+ p2m_itr_arg.vaddr = (unsigned long)__va(p2m_assign_start_pfn
-+ << PAGE_SHIFT);
-+ p2m_itr_arg.pteval = pte_val(pfn_pte(p2m_assign_start_pfn,
-+ PAGE_KERNEL));
-+ p2m_itr_arg.log_page_size = log_page_size;
-+ smp_mb();
-+ smp_call_function(&p2m_itr, &p2m_itr_arg, 1, 1);
-+ p2m_itr(&p2m_itr_arg);
-+ }
-+#endif
-+ smp_mb();
-+ p2m_initialized = 1;
-+ printk(P2M_PREFIX "assign p2m table of [0x%016lx, 0x%016lx)\n",
-+ p2m_convert_min_pfn << PAGE_SHIFT,
-+ p2m_convert_max_pfn << PAGE_SHIFT);
-+ printk(P2M_PREFIX "to [0x%016lx, 0x%016lx) (%ld KBytes)\n",
-+ p2m_assign_start_pfn << PAGE_SHIFT,
-+ p2m_assign_end_pfn << PAGE_SHIFT,
-+ p2m_size / 1024);
-+out:
-+ unlock_cpu_hotplug();
-+ return error;
-+}
-+
-+#ifdef notyet
-+void
-+p2m_expose_cleanup(void)
-+{
-+ BUG_ON(!p2m_initialized);
-+#ifdef CONFIG_XEN_IA64_EXPOSE_P2M_USE_DTR
-+ unregister_cpu_notifier(&p2m_expose_dtr_hotplug_notifier);
-+#endif
-+ release_resource(&p2m_resource);
-+}
-+#endif
-+
-+//XXX inlinize?
-+unsigned long
-+p2m_phystomach(unsigned long gpfn)
-+{
-+ volatile const pte_t* pte;
-+ unsigned long mfn;
-+ unsigned long pteval;
-+
-+ if (!p2m_initialized ||
-+ gpfn < p2m_min_low_pfn || gpfn > p2m_max_low_pfn
-+ /* || !pfn_valid(gpfn) */)
-+ return INVALID_MFN;
-+ pte = p2m_pte + (gpfn - p2m_convert_min_pfn);
-+
-+ mfn = INVALID_MFN;
-+ if (likely(__get_user(pteval, (unsigned long __user *)pte) == 0 &&
-+ pte_present(__pte(pteval)) &&
-+ pte_pfn(__pte(pteval)) != (INVALID_MFN >> PAGE_SHIFT)))
-+ mfn = (pteval & _PFN_MASK) >> PAGE_SHIFT;
-+
-+ return mfn;
-+}
-+
-+EXPORT_SYMBOL_GPL(p2m_initialized);
-+EXPORT_SYMBOL_GPL(p2m_min_low_pfn);
-+EXPORT_SYMBOL_GPL(p2m_max_low_pfn);
-+EXPORT_SYMBOL_GPL(p2m_convert_min_pfn);
-+EXPORT_SYMBOL_GPL(p2m_convert_max_pfn);
-+EXPORT_SYMBOL_GPL(p2m_pte);
-+EXPORT_SYMBOL_GPL(p2m_phystomach);
-+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/Makefile linux-2.6.18-xen/arch/ia64/xen/Makefile
---- linux-2.6.18.1/arch/ia64/xen/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/ia64/xen/Makefile 2006-10-17 15:01:58.000000000 +0200
-@@ -0,0 +1,9 @@
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/ia64/xen/Makefile linux-2.6.18-xen/arch/ia64/xen/Makefile
+--- linux-2.6.18.3/arch/ia64/xen/Makefile 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/ia64/xen/Makefile 2006-11-19 14:26:23.000000000 +0100
+@@ -0,0 +1,8 @@
+#
+# Makefile for Xen components
+#
+
+obj-y := hypercall.o xenivt.o xenentry.o xensetup.o xenpal.o xenhpski.o \
-+ hypervisor.o pci-dma-xen.o util.o xencomm.o xcom_hcall.o \
-+ xcom_privcmd.o
++ hypervisor.o pci-dma-xen.o util.o
+
+pci-dma-xen-y := ../../i386/kernel/pci-dma-xen.o
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/util.c linux-2.6.18-xen/arch/ia64/xen/util.c
---- linux-2.6.18.1/arch/ia64/xen/util.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/ia64/xen/util.c 2006-10-17 15:01:58.000000000 +0200
-@@ -0,0 +1,117 @@
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/ia64/xen/util.c linux-2.6.18-xen/arch/ia64/xen/util.c
+--- linux-2.6.18.3/arch/ia64/xen/util.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/ia64/xen/util.c 2006-11-19 14:26:23.000000000 +0100
+@@ -0,0 +1,115 @@
+/******************************************************************************
+ * arch/ia64/xen/util.c
+ * This file is the ia64 counterpart of drivers/xen/util.c
@@ -24585,8 +24366,6 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/util.c linux-2.6.18-xen
+#include <linux/vmalloc.h>
+#include <asm/uaccess.h>
+#include <xen/driver_util.h>
-+#include <xen/interface/memory.h>
-+#include <asm/hypercall.h>
+
+struct vm_struct *alloc_vm_area(unsigned long size)
+{
@@ -24673,1334 +24452,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/util.c linux-2.6.18-xen
+ * tab-width: 8
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/xcom_hcall.c linux-2.6.18-xen/arch/ia64/xen/xcom_hcall.c
---- linux-2.6.18.1/arch/ia64/xen/xcom_hcall.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/ia64/xen/xcom_hcall.c 2006-10-17 15:01:58.000000000 +0200
-@@ -0,0 +1,469 @@
-+/*
-+ * 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.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-+ *
-+ * Tristan Gingold <tristan.gingold@bull.net>
-+ */
-+#include <linux/types.h>
-+#include <linux/errno.h>
-+#include <linux/kernel.h>
-+#include <linux/gfp.h>
-+#include <linux/module.h>
-+#include <xen/interface/xen.h>
-+#include <xen/interface/dom0_ops.h>
-+#include <xen/interface/memory.h>
-+#include <xen/interface/xencomm.h>
-+#include <xen/interface/version.h>
-+#include <xen/interface/sched.h>
-+#include <xen/interface/event_channel.h>
-+#include <xen/interface/physdev.h>
-+#include <xen/interface/grant_table.h>
-+#include <xen/interface/callback.h>
-+#include <xen/interface/acm_ops.h>
-+#include <xen/interface/hvm/params.h>
-+#include <xen/public/privcmd.h>
-+#include <asm/hypercall.h>
-+#include <asm/page.h>
-+#include <asm/uaccess.h>
-+#include <asm/xen/xencomm.h>
-+
-+/* Xencomm notes:
-+ * This file defines hypercalls to be used by xencomm. The hypercalls simply
-+ * create inlines descriptors for pointers and then call the raw arch hypercall
-+ * xencomm_arch_hypercall_XXX
-+ *
-+ * If the arch wants to directly use these hypercalls, simply define macros
-+ * in asm/hypercall.h, eg:
-+ * #define HYPERVISOR_sched_op xencomm_hypercall_sched_op
-+ *
-+ * The arch may also define HYPERVISOR_xxx as a function and do more operations
-+ * before/after doing the hypercall.
-+ *
-+ * Note: because only inline descriptors are created these functions must only
-+ * be called with in kernel memory parameters.
-+ */
-+
-+int
-+xencomm_hypercall_console_io(int cmd, int count, char *str)
-+{
-+ return xencomm_arch_hypercall_console_io
-+ (cmd, count, xencomm_create_inline(str));
-+}
-+
-+int
-+xencomm_hypercall_event_channel_op(int cmd, void *op)
-+{
-+ return xencomm_arch_hypercall_event_channel_op
-+ (cmd, xencomm_create_inline(op));
-+}
-+
-+int
-+xencomm_hypercall_xen_version(int cmd, void *arg)
-+{
-+ switch (cmd) {
-+ case XENVER_version:
-+ case XENVER_extraversion:
-+ case XENVER_compile_info:
-+ case XENVER_capabilities:
-+ case XENVER_changeset:
-+ case XENVER_platform_parameters:
-+ case XENVER_pagesize:
-+ case XENVER_get_features:
-+ break;
-+ default:
-+ printk("%s: unknown version cmd %d\n", __func__, cmd);
-+ return -ENOSYS;
-+ }
-+
-+ return xencomm_arch_hypercall_xen_version
-+ (cmd, xencomm_create_inline(arg));
-+}
-+
-+int
-+xencomm_hypercall_physdev_op(int cmd, void *op)
-+{
-+ return xencomm_arch_hypercall_physdev_op
-+ (cmd, xencomm_create_inline(op));
-+}
-+
-+static void *
-+xencommize_grant_table_op(unsigned int cmd, void *op, unsigned int count)
-+{
-+ switch (cmd) {
-+ case GNTTABOP_map_grant_ref:
-+ case GNTTABOP_unmap_grant_ref:
-+ break;
-+ case GNTTABOP_setup_table:
-+ {
-+ struct gnttab_setup_table *setup = op;
-+ struct xencomm_handle *frame_list;
-+
-+ frame_list = xencomm_create_inline
-+ (xen_guest_handle(setup->frame_list));
-+
-+ set_xen_guest_handle(setup->frame_list, (void *)frame_list);
-+ break;
-+ }
-+ case GNTTABOP_dump_table:
-+ case GNTTABOP_transfer:
-+ case GNTTABOP_copy:
-+ break;
-+ default:
-+ printk("%s: unknown grant table op %d\n", __func__, cmd);
-+ BUG();
-+ }
-+
-+ return xencomm_create_inline(op);
-+}
-+
-+int
-+xencomm_hypercall_grant_table_op(unsigned int cmd, void *op, unsigned int count)
-+{
-+ void *desc = xencommize_grant_table_op (cmd, op, count);
-+
-+ return xencomm_arch_hypercall_grant_table_op(cmd, desc, count);
-+}
-+
-+int
-+xencomm_hypercall_sched_op(int cmd, void *arg)
-+{
-+ switch (cmd) {
-+ case SCHEDOP_yield:
-+ case SCHEDOP_block:
-+ case SCHEDOP_shutdown:
-+ case SCHEDOP_poll:
-+ case SCHEDOP_remote_shutdown:
-+ break;
-+ default:
-+ printk("%s: unknown sched op %d\n", __func__, cmd);
-+ return -ENOSYS;
-+ }
-+
-+ return xencomm_arch_hypercall_sched_op(cmd, xencomm_create_inline(arg));
-+}
-+
-+int
-+xencomm_hypercall_multicall(void *call_list, int nr_calls)
-+{
-+ int i;
-+ multicall_entry_t *mce;
-+
-+ for (i = 0; i < nr_calls; i++) {
-+ mce = (multicall_entry_t *)call_list + i;
-+
-+ switch (mce->op) {
-+ case __HYPERVISOR_update_va_mapping:
-+ case __HYPERVISOR_mmu_update:
-+ /* No-op on ia64. */
-+ break;
-+ case __HYPERVISOR_grant_table_op:
-+ mce->args[1] = (unsigned long)xencommize_grant_table_op
-+ (mce->args[0], (void *)mce->args[1],
-+ mce->args[2]);
-+ break;
-+ case __HYPERVISOR_memory_op:
-+ default:
-+ printk("%s: unhandled multicall op entry op %lu\n",
-+ __func__, mce->op);
-+ return -ENOSYS;
-+ }
-+ }
-+
-+ return xencomm_arch_hypercall_multicall
-+ (xencomm_create_inline(call_list), nr_calls);
-+}
-+
-+int
-+xencomm_hypercall_callback_op(int cmd, void *arg)
-+{
-+ switch (cmd)
-+ {
-+ case CALLBACKOP_register:
-+ case CALLBACKOP_unregister:
-+ break;
-+ default:
-+ printk("%s: unknown callback op %d\n", __func__, cmd);
-+ return -ENOSYS;
-+ }
-+
-+ return xencomm_arch_hypercall_callback_op
-+ (cmd, xencomm_create_inline(arg));
-+}
-+
-+static void
-+xencommize_memory_reservation (xen_memory_reservation_t *mop)
-+{
-+ struct xencomm_handle *desc;
-+
-+ desc = xencomm_create_inline(xen_guest_handle(mop->extent_start));
-+ set_xen_guest_handle(mop->extent_start, (void *)desc);
-+}
-+
-+int
-+xencomm_hypercall_memory_op(unsigned int cmd, void *arg)
-+{
-+ switch (cmd) {
-+ case XENMEM_increase_reservation:
-+ case XENMEM_decrease_reservation:
-+ case XENMEM_populate_physmap:
-+ xencommize_memory_reservation((xen_memory_reservation_t *)arg);
-+ break;
-+
-+ case XENMEM_maximum_ram_page:
-+ break;
-+
-+ case XENMEM_exchange:
-+ xencommize_memory_reservation
-+ (&((xen_memory_exchange_t *)arg)->in);
-+ xencommize_memory_reservation
-+ (&((xen_memory_exchange_t *)arg)->out);
-+ break;
-+
-+ default:
-+ printk("%s: unknown memory op %d\n", __func__, cmd);
-+ return -ENOSYS;
-+ }
-+
-+ return xencomm_arch_hypercall_memory_op
-+ (cmd, xencomm_create_inline(arg));
-+}
-+
-+unsigned long
-+xencomm_hypercall_hvm_op(int cmd, void *arg)
-+{
-+ switch (cmd) {
-+ case HVMOP_set_param:
-+ case HVMOP_get_param:
-+ break;
-+ default:
-+ printk("%s: unknown hvm op %d\n", __func__, cmd);
-+ return -ENOSYS;
-+ }
-+
-+ return xencomm_arch_hypercall_hvm_op(cmd, xencomm_create_inline(arg));
-+}
-+
-+int
-+xencomm_hypercall_suspend(unsigned long srec)
-+{
-+ struct sched_shutdown arg;
-+
-+ arg.reason = SHUTDOWN_suspend;
-+
-+ return xencomm_arch_hypercall_suspend(xencomm_create_inline(&arg));
-+}
-+
-+int
-+xencomm_mini_hypercall_event_channel_op(int cmd, void *op)
-+{
-+ struct xencomm_mini xc_area[2];
-+ int nbr_area = 2;
-+ struct xencomm_handle *desc;
-+ int rc;
-+
-+ rc = xencomm_create_mini(xc_area, &nbr_area,
-+ op, sizeof(evtchn_op_t), &desc);
-+ if (rc)
-+ return rc;
-+
-+ return xencomm_arch_hypercall_event_channel_op(cmd, desc);
-+}
-+EXPORT_SYMBOL(xencomm_mini_hypercall_event_channel_op);
-+
-+static int
-+xencommize_mini_grant_table_op(struct xencomm_mini *xc_area, int *nbr_area,
-+ unsigned int cmd, void *op, unsigned int count,
-+ struct xencomm_handle **desc)
-+{
-+ struct xencomm_handle *desc1;
-+ unsigned int argsize;
-+ int rc;
-+
-+ switch (cmd) {
-+ case GNTTABOP_map_grant_ref:
-+ argsize = sizeof(struct gnttab_map_grant_ref);
-+ break;
-+ case GNTTABOP_unmap_grant_ref:
-+ argsize = sizeof(struct gnttab_unmap_grant_ref);
-+ break;
-+ case GNTTABOP_setup_table:
-+ {
-+ struct gnttab_setup_table *setup = op;
-+
-+ argsize = sizeof(*setup);
-+
-+ if (count != 1)
-+ return -EINVAL;
-+ rc = xencomm_create_mini
-+ (xc_area, nbr_area,
-+ xen_guest_handle(setup->frame_list),
-+ setup->nr_frames
-+ * sizeof(*xen_guest_handle(setup->frame_list)),
-+ &desc1);
-+ if (rc)
-+ return rc;
-+ set_xen_guest_handle(setup->frame_list, (void *)desc1);
-+ break;
-+ }
-+ case GNTTABOP_dump_table:
-+ argsize = sizeof(struct gnttab_dump_table);
-+ break;
-+ case GNTTABOP_transfer:
-+ argsize = sizeof(struct gnttab_transfer);
-+ break;
-+ default:
-+ printk("%s: unknown mini grant table op %d\n", __func__, cmd);
-+ BUG();
-+ }
-+
-+ rc = xencomm_create_mini(xc_area, nbr_area, op, count * argsize, desc);
-+ if (rc)
-+ return rc;
-+
-+ return 0;
-+}
-+
-+int
-+xencomm_mini_hypercall_grant_table_op(unsigned int cmd, void *op,
-+ unsigned int count)
-+{
-+ int rc;
-+ struct xencomm_handle *desc;
-+ int nbr_area = 2;
-+ struct xencomm_mini xc_area[2];
-+
-+ rc = xencommize_mini_grant_table_op(xc_area, &nbr_area,
-+ cmd, op, count, &desc);
-+ if (rc)
-+ return rc;
-+
-+ return xencomm_arch_hypercall_grant_table_op(cmd, desc, count);
-+}
-+EXPORT_SYMBOL(xencomm_mini_hypercall_grant_table_op);
-+
-+int
-+xencomm_mini_hypercall_multicall(void *call_list, int nr_calls)
-+{
-+ int i;
-+ multicall_entry_t *mce;
-+ int nbr_area = 2 + nr_calls * 3;
-+ struct xencomm_mini xc_area[nbr_area];
-+ struct xencomm_handle *desc;
-+ int rc;
-+
-+ for (i = 0; i < nr_calls; i++) {
-+ mce = (multicall_entry_t *)call_list + i;
-+
-+ switch (mce->op) {
-+ case __HYPERVISOR_update_va_mapping:
-+ case __HYPERVISOR_mmu_update:
-+ /* No-op on ia64. */
-+ break;
-+ case __HYPERVISOR_grant_table_op:
-+ rc = xencommize_mini_grant_table_op
-+ (xc_area, &nbr_area,
-+ mce->args[0], (void *)mce->args[1],
-+ mce->args[2], &desc);
-+ if (rc)
-+ return rc;
-+ mce->args[1] = (unsigned long)desc;
-+ break;
-+ case __HYPERVISOR_memory_op:
-+ default:
-+ printk("%s: unhandled multicall op entry op %lu\n",
-+ __func__, mce->op);
-+ return -ENOSYS;
-+ }
-+ }
-+
-+ rc = xencomm_create_mini(xc_area, &nbr_area, call_list,
-+ nr_calls * sizeof(multicall_entry_t), &desc);
-+ if (rc)
-+ return rc;
-+
-+ return xencomm_arch_hypercall_multicall(desc, nr_calls);
-+}
-+EXPORT_SYMBOL(xencomm_mini_hypercall_multicall);
-+
-+static int
-+xencommize_mini_memory_reservation(struct xencomm_mini *area, int *nbr_area,
-+ xen_memory_reservation_t *mop)
-+{
-+ struct xencomm_handle *desc;
-+ int rc;
-+
-+ rc = xencomm_create_mini
-+ (area, nbr_area,
-+ xen_guest_handle(mop->extent_start),
-+ mop->nr_extents
-+ * sizeof(*xen_guest_handle(mop->extent_start)),
-+ &desc);
-+ if (rc)
-+ return rc;
-+
-+ set_xen_guest_handle(mop->extent_start, (void *)desc);
-+
-+ return 0;
-+}
-+
-+int
-+xencomm_mini_hypercall_memory_op(unsigned int cmd, void *arg)
-+{
-+ int nbr_area = 4;
-+ struct xencomm_mini xc_area[4];
-+ struct xencomm_handle *desc;
-+ int rc;
-+ unsigned int argsize;
-+
-+ switch (cmd) {
-+ case XENMEM_increase_reservation:
-+ case XENMEM_decrease_reservation:
-+ case XENMEM_populate_physmap:
-+ argsize = sizeof(xen_memory_reservation_t);
-+ rc = xencommize_mini_memory_reservation
-+ (xc_area, &nbr_area, (xen_memory_reservation_t *)arg);
-+ if (rc)
-+ return rc;
-+ break;
-+
-+ case XENMEM_maximum_ram_page:
-+ argsize = 0;
-+ break;
-+
-+ case XENMEM_exchange:
-+ argsize = sizeof(xen_memory_exchange_t);
-+ rc = xencommize_mini_memory_reservation
-+ (xc_area, &nbr_area,
-+ &((xen_memory_exchange_t *)arg)->in);
-+ if (rc)
-+ return rc;
-+ rc = xencommize_mini_memory_reservation
-+ (xc_area, &nbr_area,
-+ &((xen_memory_exchange_t *)arg)->out);
-+ if (rc)
-+ return rc;
-+ break;
-+
-+ default:
-+ printk("%s: unknown mini memory op %d\n", __func__, cmd);
-+ return -ENOSYS;
-+ }
-+
-+ rc = xencomm_create_mini(xc_area, &nbr_area, arg, argsize, &desc);
-+ if (rc)
-+ return rc;
-+
-+ return xencomm_arch_hypercall_memory_op(cmd, desc);
-+}
-+EXPORT_SYMBOL(xencomm_mini_hypercall_memory_op);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/xcom_privcmd.c linux-2.6.18-xen/arch/ia64/xen/xcom_privcmd.c
---- linux-2.6.18.1/arch/ia64/xen/xcom_privcmd.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/ia64/xen/xcom_privcmd.c 2006-10-17 15:01:58.000000000 +0200
-@@ -0,0 +1,600 @@
-+/*
-+ * 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.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
-+ *
-+ * Authors: Hollis Blanchard <hollisb@us.ibm.com>
-+ * Tristan Gingold <tristan.gingold@bull.net>
-+ */
-+#include <linux/types.h>
-+#include <linux/errno.h>
-+#include <linux/kernel.h>
-+#include <linux/gfp.h>
-+#include <linux/module.h>
-+#include <xen/interface/xen.h>
-+#include <xen/interface/dom0_ops.h>
-+#define __XEN__
-+#include <xen/interface/domctl.h>
-+#include <xen/interface/sysctl.h>
-+#include <xen/interface/memory.h>
-+#include <xen/interface/version.h>
-+#include <xen/interface/event_channel.h>
-+#include <xen/interface/acm_ops.h>
-+#include <xen/interface/hvm/params.h>
-+#include <xen/public/privcmd.h>
-+#include <asm/hypercall.h>
-+#include <asm/page.h>
-+#include <asm/uaccess.h>
-+#include <asm/xen/xencomm.h>
-+
-+#define ROUND_DIV(v,s) (((v) + (s) - 1) / (s))
-+
-+static int
-+xencomm_privcmd_dom0_op(privcmd_hypercall_t *hypercall)
-+{
-+ dom0_op_t kern_op;
-+ dom0_op_t __user *user_op = (dom0_op_t __user *)hypercall->arg[0];
-+ struct xencomm_handle *op_desc;
-+ struct xencomm_handle *desc = NULL;
-+ int ret = 0;
-+
-+ if (copy_from_user(&kern_op, user_op, sizeof(dom0_op_t)))
-+ return -EFAULT;
-+
-+ if (kern_op.interface_version != DOM0_INTERFACE_VERSION)
-+ return -EACCES;
-+
-+ op_desc = xencomm_create_inline(&kern_op);
-+
-+ switch (kern_op.cmd) {
-+ default:
-+ printk("%s: unknown dom0 cmd %d\n", __func__, kern_op.cmd);
-+ return -ENOSYS;
-+ }
-+
-+ if (ret) {
-+ /* error mapping the nested pointer */
-+ return ret;
-+ }
-+
-+ ret = xencomm_arch_hypercall_dom0_op(op_desc);
-+
-+ /* FIXME: should we restore the handle? */
-+ if (copy_to_user(user_op, &kern_op, sizeof(dom0_op_t)))
-+ ret = -EFAULT;
-+
-+ if (desc)
-+ xencomm_free(desc);
-+ return ret;
-+}
-+
-+static int
-+xencomm_privcmd_sysctl(privcmd_hypercall_t *hypercall)
-+{
-+ xen_sysctl_t kern_op;
-+ xen_sysctl_t __user *user_op;
-+ struct xencomm_handle *op_desc;
-+ struct xencomm_handle *desc = NULL;
-+ struct xencomm_handle *desc1 = NULL;
-+ int ret = 0;
-+
-+ user_op = (xen_sysctl_t __user *)hypercall->arg[0];
-+
-+ if (copy_from_user(&kern_op, user_op, sizeof(xen_sysctl_t)))
-+ return -EFAULT;
-+
-+ if (kern_op.interface_version != XEN_SYSCTL_INTERFACE_VERSION)
-+ return -EACCES;
-+
-+ op_desc = xencomm_create_inline(&kern_op);
-+
-+ switch (kern_op.cmd) {
-+ case XEN_SYSCTL_readconsole:
-+ ret = xencomm_create(
-+ xen_guest_handle(kern_op.u.readconsole.buffer),
-+ kern_op.u.readconsole.count,
-+ &desc, GFP_KERNEL);
-+ set_xen_guest_handle(kern_op.u.readconsole.buffer,
-+ (void *)desc);
-+ break;
-+ case XEN_SYSCTL_tbuf_op:
-+ case XEN_SYSCTL_physinfo:
-+ case XEN_SYSCTL_sched_id:
-+ break;
-+ case XEN_SYSCTL_perfc_op:
-+ ret = xencomm_create(
-+ xen_guest_handle(kern_op.u.perfc_op.desc),
-+ kern_op.u.perfc_op.nr_counters *
-+ sizeof(xen_sysctl_perfc_desc_t),
-+ &desc, GFP_KERNEL);
-+ if (ret)
-+ return ret;
-+ set_xen_guest_handle(kern_op.u.perfc_op.val,
-+ (void *)desc);
-+ ret = xencomm_create(
-+ xen_guest_handle(kern_op.u.perfc_op.val),
-+ kern_op.u.perfc_op.nr_vals *
-+ sizeof(xen_sysctl_perfc_desc_t),
-+ &desc1, GFP_KERNEL);
-+ if (ret)
-+ xencomm_free(desc);
-+ set_xen_guest_handle(kern_op.u.perfc_op.val,
-+ (void *)desc1);
-+ break;
-+ case XEN_SYSCTL_getdomaininfolist:
-+ ret = xencomm_create(
-+ xen_guest_handle(kern_op.u.getdomaininfolist.buffer),
-+ kern_op.u.getdomaininfolist.max_domains *
-+ sizeof(xen_domctl_getdomaininfo_t),
-+ &desc, GFP_KERNEL);
-+ set_xen_guest_handle(kern_op.u.getdomaininfolist.buffer,
-+ (void *)desc);
-+ break;
-+ default:
-+ printk("%s: unknown sysctl cmd %d\n", __func__, kern_op.cmd);
-+ return -ENOSYS;
-+ }
-+
-+ if (ret) {
-+ /* error mapping the nested pointer */
-+ return ret;
-+ }
-+
-+ ret = xencomm_arch_hypercall_sysctl(op_desc);
-+
-+ /* FIXME: should we restore the handle? */
-+ if (copy_to_user(user_op, &kern_op, sizeof(xen_sysctl_t)))
-+ ret = -EFAULT;
-+
-+ if (desc)
-+ xencomm_free(desc);
-+ if (desc1)
-+ xencomm_free(desc1);
-+ return ret;
-+}
-+
-+static int
-+xencomm_privcmd_domctl(privcmd_hypercall_t *hypercall)
-+{
-+ xen_domctl_t kern_op;
-+ xen_domctl_t __user *user_op;
-+ struct xencomm_handle *op_desc;
-+ struct xencomm_handle *desc = NULL;
-+ int ret = 0;
-+
-+ user_op = (xen_domctl_t __user *)hypercall->arg[0];
-+
-+ if (copy_from_user(&kern_op, user_op, sizeof(xen_domctl_t)))
-+ return -EFAULT;
-+
-+ if (kern_op.interface_version != XEN_DOMCTL_INTERFACE_VERSION)
-+ return -EACCES;
-+
-+ op_desc = xencomm_create_inline(&kern_op);
-+
-+ switch (kern_op.cmd) {
-+ case XEN_DOMCTL_createdomain:
-+ case XEN_DOMCTL_destroydomain:
-+ case XEN_DOMCTL_pausedomain:
-+ case XEN_DOMCTL_unpausedomain:
-+ case XEN_DOMCTL_getdomaininfo:
-+ break;
-+ case XEN_DOMCTL_getmemlist:
-+ {
-+ unsigned long nr_pages = kern_op.u.getmemlist.max_pfns;
-+
-+ ret = xencomm_create(
-+ xen_guest_handle(kern_op.u.getmemlist.buffer),
-+ nr_pages * sizeof(unsigned long),
-+ &desc, GFP_KERNEL);
-+ set_xen_guest_handle(kern_op.u.getmemlist.buffer,
-+ (void *)desc);
-+ break;
-+ }
-+ case XEN_DOMCTL_getpageframeinfo:
-+ break;
-+ case XEN_DOMCTL_getpageframeinfo2:
-+ ret = xencomm_create(
-+ xen_guest_handle(kern_op.u.getpageframeinfo2.array),
-+ kern_op.u.getpageframeinfo2.num,
-+ &desc, GFP_KERNEL);
-+ set_xen_guest_handle(kern_op.u.getpageframeinfo2.array,
-+ (void *)desc);
-+ break;
-+ case XEN_DOMCTL_shadow_op:
-+ ret = xencomm_create(
-+ xen_guest_handle(kern_op.u.shadow_op.dirty_bitmap),
-+ ROUND_DIV(kern_op.u.shadow_op.pages, 8),
-+ &desc, GFP_KERNEL);
-+ set_xen_guest_handle(kern_op.u.shadow_op.dirty_bitmap,
-+ (void *)desc);
-+ break;
-+ case XEN_DOMCTL_max_mem:
-+ break;
-+ case XEN_DOMCTL_setvcpucontext:
-+ case XEN_DOMCTL_getvcpucontext:
-+ ret = xencomm_create(
-+ xen_guest_handle(kern_op.u.vcpucontext.ctxt),
-+ sizeof(vcpu_guest_context_t),
-+ &desc, GFP_KERNEL);
-+ set_xen_guest_handle(kern_op.u.vcpucontext.ctxt, (void *)desc);
-+ break;
-+ case XEN_DOMCTL_getvcpuinfo:
-+ break;
-+ case XEN_DOMCTL_setvcpuaffinity:
-+ case XEN_DOMCTL_getvcpuaffinity:
-+ ret = xencomm_create(
-+ xen_guest_handle(kern_op.u.vcpuaffinity.cpumap.bitmap),
-+ ROUND_DIV(kern_op.u.vcpuaffinity.cpumap.nr_cpus, 8),
-+ &desc, GFP_KERNEL);
-+ set_xen_guest_handle(kern_op.u.vcpuaffinity.cpumap.bitmap,
-+ (void *)desc);
-+ break;
-+ case XEN_DOMCTL_max_vcpus:
-+ case XEN_DOMCTL_scheduler_op:
-+ case XEN_DOMCTL_setdomainhandle:
-+ case XEN_DOMCTL_setdebugging:
-+ case XEN_DOMCTL_irq_permission:
-+ case XEN_DOMCTL_iomem_permission:
-+ case XEN_DOMCTL_ioport_permission:
-+ case XEN_DOMCTL_hypercall_init:
-+ case XEN_DOMCTL_arch_setup:
-+ case XEN_DOMCTL_settimeoffset:
-+ break;
-+ default:
-+ printk("%s: unknown domctl cmd %d\n", __func__, kern_op.cmd);
-+ return -ENOSYS;
-+ }
-+
-+ if (ret) {
-+ /* error mapping the nested pointer */
-+ return ret;
-+ }
-+
-+ ret = xencomm_arch_hypercall_domctl (op_desc);
-+
-+ /* FIXME: should we restore the handle? */
-+ if (copy_to_user(user_op, &kern_op, sizeof(xen_domctl_t)))
-+ ret = -EFAULT;
-+
-+ if (desc)
-+ xencomm_free(desc);
-+ return ret;
-+}
-+
-+static int
-+xencomm_privcmd_acm_op(privcmd_hypercall_t *hypercall)
-+{
-+ int cmd = hypercall->arg[0];
-+ void __user *arg = (void __user *)hypercall->arg[1];
-+ struct xencomm_handle *op_desc;
-+ struct xencomm_handle *desc = NULL;
-+ int ret;
-+
-+ switch (cmd) {
-+ case ACMOP_getssid:
-+ {
-+ struct acm_getssid kern_arg;
-+
-+ if (copy_from_user(&kern_arg, arg, sizeof (kern_arg)))
-+ return -EFAULT;
-+
-+ op_desc = xencomm_create_inline(&kern_arg);
-+
-+ ret = xencomm_create(xen_guest_handle(kern_arg.ssidbuf),
-+ kern_arg.ssidbuf_size, &desc, GFP_KERNEL);
-+ if (ret)
-+ return ret;
-+
-+ set_xen_guest_handle(kern_arg.ssidbuf, (void *)desc);
-+
-+ ret = xencomm_arch_hypercall_acm_op(cmd, op_desc);
-+
-+ xencomm_free(desc);
-+
-+ if (copy_to_user(arg, &kern_arg, sizeof (kern_arg)))
-+ return -EFAULT;
-+
-+ return ret;
-+ }
-+ default:
-+ printk("%s: unknown acm_op cmd %d\n", __func__, cmd);
-+ return -ENOSYS;
-+ }
-+
-+ return ret;
-+}
-+
-+static int
-+xencomm_privcmd_memory_op(privcmd_hypercall_t *hypercall)
-+{
-+ const unsigned long cmd = hypercall->arg[0];
-+ int ret = 0;
-+
-+ switch (cmd) {
-+ case XENMEM_increase_reservation:
-+ case XENMEM_decrease_reservation:
-+ case XENMEM_populate_physmap:
-+ {
-+ xen_memory_reservation_t kern_op;
-+ xen_memory_reservation_t __user *user_op;
-+ struct xencomm_handle *desc = NULL;
-+ struct xencomm_handle *desc_op;
-+
-+ user_op = (xen_memory_reservation_t __user *)hypercall->arg[1];
-+ if (copy_from_user(&kern_op, user_op,
-+ sizeof(xen_memory_reservation_t)))
-+ return -EFAULT;
-+ desc_op = xencomm_create_inline(&kern_op);
-+
-+ if (xen_guest_handle(kern_op.extent_start)) {
-+ void * addr;
-+
-+ addr = xen_guest_handle(kern_op.extent_start);
-+ ret = xencomm_create
-+ (addr,
-+ kern_op.nr_extents *
-+ sizeof(*xen_guest_handle
-+ (kern_op.extent_start)),
-+ &desc, GFP_KERNEL);
-+ if (ret)
-+ return ret;
-+ set_xen_guest_handle(kern_op.extent_start,
-+ (void *)desc);
-+ }
-+
-+ ret = xencomm_arch_hypercall_memory_op(cmd, desc_op);
-+
-+ if (desc)
-+ xencomm_free(desc);
-+
-+ if (ret != 0)
-+ return ret;
-+
-+ if (copy_to_user(user_op, &kern_op,
-+ sizeof(xen_memory_reservation_t)))
-+ return -EFAULT;
-+
-+ return ret;
-+ }
-+ case XENMEM_translate_gpfn_list:
-+ {
-+ xen_translate_gpfn_list_t kern_op;
-+ xen_translate_gpfn_list_t __user *user_op;
-+ struct xencomm_handle *desc_gpfn = NULL;
-+ struct xencomm_handle *desc_mfn = NULL;
-+ struct xencomm_handle *desc_op;
-+ void *addr;
-+
-+ user_op = (xen_translate_gpfn_list_t __user *)
-+ hypercall->arg[1];
-+ if (copy_from_user(&kern_op, user_op,
-+ sizeof(xen_translate_gpfn_list_t)))
-+ return -EFAULT;
-+ desc_op = xencomm_create_inline(&kern_op);
-+
-+ if (kern_op.nr_gpfns) {
-+ /* gpfn_list. */
-+ addr = xen_guest_handle(kern_op.gpfn_list);
-+
-+ ret = xencomm_create(addr, kern_op.nr_gpfns *
-+ sizeof(*xen_guest_handle
-+ (kern_op.gpfn_list)),
-+ &desc_gpfn, GFP_KERNEL);
-+ if (ret)
-+ return ret;
-+ set_xen_guest_handle(kern_op.gpfn_list,
-+ (void *)desc_gpfn);
-+
-+ /* mfn_list. */
-+ addr = xen_guest_handle(kern_op.mfn_list);
-+
-+ ret = xencomm_create(addr, kern_op.nr_gpfns *
-+ sizeof(*xen_guest_handle
-+ (kern_op.mfn_list)),
-+ &desc_mfn, GFP_KERNEL);
-+ if (ret)
-+ return ret;
-+ set_xen_guest_handle(kern_op.mfn_list,
-+ (void *)desc_mfn);
-+ }
-+
-+ ret = xencomm_arch_hypercall_memory_op(cmd, desc_op);
-+
-+ if (desc_gpfn)
-+ xencomm_free(desc_gpfn);
-+
-+ if (desc_mfn)
-+ xencomm_free(desc_mfn);
-+
-+ if (ret != 0)
-+ return ret;
-+
-+ return ret;
-+ }
-+ default:
-+ printk("%s: unknown memory op %lu\n", __func__, cmd);
-+ ret = -ENOSYS;
-+ }
-+ return ret;
-+}
-+
-+static int
-+xencomm_privcmd_xen_version(privcmd_hypercall_t *hypercall)
-+{
-+ int cmd = hypercall->arg[0];
-+ void __user *arg = (void __user *)hypercall->arg[1];
-+ struct xencomm_handle *desc;
-+ size_t argsize;
-+ int rc;
-+
-+ switch (cmd) {
-+ case XENVER_version:
-+ /* do not actually pass an argument */
-+ return xencomm_arch_hypercall_xen_version(cmd, 0);
-+ case XENVER_extraversion:
-+ argsize = sizeof(xen_extraversion_t);
-+ break;
-+ case XENVER_compile_info:
-+ argsize = sizeof(xen_compile_info_t);
-+ break;
-+ case XENVER_capabilities:
-+ argsize = sizeof(xen_capabilities_info_t);
-+ break;
-+ case XENVER_changeset:
-+ argsize = sizeof(xen_changeset_info_t);
-+ break;
-+ case XENVER_platform_parameters:
-+ argsize = sizeof(xen_platform_parameters_t);
-+ break;
-+ case XENVER_pagesize:
-+ argsize = (arg == NULL) ? 0 : sizeof(void *);
-+ break;
-+ case XENVER_get_features:
-+ argsize = (arg == NULL) ? 0 : sizeof(xen_feature_info_t);
-+ break;
-+
-+ default:
-+ printk("%s: unknown version op %d\n", __func__, cmd);
-+ return -ENOSYS;
-+ }
-+
-+ rc = xencomm_create(arg, argsize, &desc, GFP_KERNEL);
-+ if (rc)
-+ return rc;
-+
-+ rc = xencomm_arch_hypercall_xen_version(cmd, desc);
-+
-+ xencomm_free(desc);
-+
-+ return rc;
-+}
-+
-+static int
-+xencomm_privcmd_event_channel_op(privcmd_hypercall_t *hypercall)
-+{
-+ int cmd = hypercall->arg[0];
-+ struct xencomm_handle *desc;
-+ unsigned int argsize;
-+ int ret;
-+
-+ switch (cmd) {
-+ case EVTCHNOP_alloc_unbound:
-+ argsize = sizeof(evtchn_alloc_unbound_t);
-+ break;
-+
-+ case EVTCHNOP_status:
-+ argsize = sizeof(evtchn_status_t);
-+ break;
-+
-+ default:
-+ printk("%s: unknown EVTCHNOP %d\n", __func__, cmd);
-+ return -EINVAL;
-+ }
-+
-+ ret = xencomm_create((void *)hypercall->arg[1], argsize,
-+ &desc, GFP_KERNEL);
-+ if (ret)
-+ return ret;
-+
-+ ret = xencomm_arch_hypercall_event_channel_op(cmd, desc);
-+
-+ xencomm_free(desc);
-+ return ret;
-+}
-+
-+static int
-+xencomm_privcmd_hvm_op(privcmd_hypercall_t *hypercall)
-+{
-+ int cmd = hypercall->arg[0];
-+ struct xencomm_handle *desc;
-+ unsigned int argsize;
-+ int ret;
-+
-+ switch (cmd) {
-+ case HVMOP_get_param:
-+ case HVMOP_set_param:
-+ argsize = sizeof(xen_hvm_param_t);
-+ break;
-+ default:
-+ printk("%s: unknown HVMOP %d\n", __func__, cmd);
-+ return -EINVAL;
-+ }
-+
-+ ret = xencomm_create((void *)hypercall->arg[1], argsize,
-+ &desc, GFP_KERNEL);
-+ if (ret)
-+ return ret;
-+
-+ ret = xencomm_arch_hypercall_hvm_op(cmd, desc);
-+
-+ xencomm_free(desc);
-+ return ret;
-+}
-+
-+static int
-+xencomm_privcmd_sched_op(privcmd_hypercall_t *hypercall)
-+{
-+ int cmd = hypercall->arg[0];
-+ struct xencomm_handle *desc;
-+ unsigned int argsize;
-+ int ret;
-+
-+ switch (cmd) {
-+ case SCHEDOP_remote_shutdown:
-+ argsize = sizeof(sched_remote_shutdown_t);
-+ break;
-+ default:
-+ printk("%s: unknown SCHEDOP %d\n", __func__, cmd);
-+ return -EINVAL;
-+ }
-+
-+ ret = xencomm_create((void *)hypercall->arg[1], argsize,
-+ &desc, GFP_KERNEL);
-+ if (ret)
-+ return ret;
-+
-+ ret = xencomm_arch_hypercall_sched_op(cmd, desc);
-+
-+ xencomm_free(desc);
-+ return ret;
-+}
-+
-+int
-+privcmd_hypercall(privcmd_hypercall_t *hypercall)
-+{
-+ switch (hypercall->op) {
-+ case __HYPERVISOR_dom0_op:
-+ return xencomm_privcmd_dom0_op(hypercall);
-+ case __HYPERVISOR_domctl:
-+ return xencomm_privcmd_domctl(hypercall);
-+ case __HYPERVISOR_sysctl:
-+ return xencomm_privcmd_sysctl(hypercall);
-+ case __HYPERVISOR_acm_op:
-+ return xencomm_privcmd_acm_op(hypercall);
-+ case __HYPERVISOR_xen_version:
-+ return xencomm_privcmd_xen_version(hypercall);
-+ case __HYPERVISOR_memory_op:
-+ return xencomm_privcmd_memory_op(hypercall);
-+ case __HYPERVISOR_event_channel_op:
-+ return xencomm_privcmd_event_channel_op(hypercall);
-+ case __HYPERVISOR_hvm_op:
-+ return xencomm_privcmd_hvm_op(hypercall);
-+ case __HYPERVISOR_sched_op:
-+ return xencomm_privcmd_sched_op(hypercall);
-+ default:
-+ printk("%s: unknown hcall (%ld)\n", __func__, hypercall->op);
-+ return -ENOSYS;
-+ }
-+}
-+
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/xencomm.c linux-2.6.18-xen/arch/ia64/xen/xencomm.c
---- linux-2.6.18.1/arch/ia64/xen/xencomm.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/ia64/xen/xencomm.c 2006-10-17 15:01:58.000000000 +0200
-@@ -0,0 +1,244 @@
-+/*
-+ * Copyright (C) 2006 Hollis Blanchard <hollisb@us.ibm.com>, IBM Corporation
-+ *
-+ * 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.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-+ */
-+
-+#include <linux/gfp.h>
-+#include <linux/mm.h>
-+#include <asm/page.h>
-+#include <asm/xen/xencomm.h>
-+#include <xen/interface/xen.h>
-+
-+static int xencomm_debug = 0;
-+
-+/* Translate virtual address to physical address. */
-+unsigned long
-+xencomm_vaddr_to_paddr(unsigned long vaddr)
-+{
-+ struct page *page;
-+ struct vm_area_struct *vma;
-+
-+ if (vaddr == 0)
-+ return 0;
-+
-+#ifdef __ia64__
-+ if (REGION_NUMBER(vaddr) == 5) {
-+ pgd_t *pgd;
-+ pud_t *pud;
-+ pmd_t *pmd;
-+ pte_t *ptep;
-+
-+ /* On ia64, TASK_SIZE refers to current. It is not initialized
-+ during boot.
-+ Furthermore the kernel is relocatable and __pa() doesn't
-+ work on addresses. */
-+ if (vaddr >= KERNEL_START
-+ && vaddr < (KERNEL_START + KERNEL_TR_PAGE_SIZE)) {
-+ extern unsigned long kernel_start_pa;
-+
-+ return vaddr - kernel_start_pa;
-+ }
-+
-+ /* In kernel area -- virtually mapped. */
-+ pgd = pgd_offset_k(vaddr);
-+ if (pgd_none(*pgd) || pgd_bad(*pgd))
-+ return ~0UL;
-+
-+ pud = pud_offset(pgd, vaddr);
-+ if (pud_none(*pud) || pud_bad(*pud))
-+ return ~0UL;
-+
-+ pmd = pmd_offset(pud, vaddr);
-+ if (pmd_none(*pmd) || pmd_bad(*pmd))
-+ return ~0UL;
-+
-+ ptep = pte_offset_kernel(pmd, vaddr);
-+ if (!ptep)
-+ return ~0UL;
-+
-+ return (pte_val(*ptep) & _PFN_MASK) | (vaddr & ~PAGE_MASK);
-+ }
-+#endif
-+
-+ if (vaddr > TASK_SIZE) {
-+ /* kernel address */
-+ return __pa(vaddr);
-+ }
-+
-+ /* XXX double-check (lack of) locking */
-+ vma = find_extend_vma(current->mm, vaddr);
-+ if (!vma)
-+ return ~0UL;
-+
-+ /* We assume the page is modified. */
-+ page = follow_page(vma, vaddr, FOLL_WRITE | FOLL_TOUCH);
-+ if (!page)
-+ return ~0UL;
-+
-+ return (page_to_pfn(page) << PAGE_SHIFT) | (vaddr & ~PAGE_MASK);
-+}
-+
-+static int
-+xencomm_init(struct xencomm_desc *desc, void *buffer, unsigned long bytes)
-+{
-+ unsigned long recorded = 0;
-+ int i = 0;
-+
-+ BUG_ON((buffer == NULL) && (bytes > 0));
-+
-+ /* record the physical pages used */
-+ if (buffer == NULL)
-+ desc->nr_addrs = 0;
-+
-+ while ((recorded < bytes) && (i < desc->nr_addrs)) {
-+ unsigned long vaddr = (unsigned long)buffer + recorded;
-+ unsigned long paddr;
-+ int offset;
-+ int chunksz;
-+
-+ offset = vaddr % PAGE_SIZE; /* handle partial pages */
-+ chunksz = min(PAGE_SIZE - offset, bytes - recorded);
-+
-+ paddr = xencomm_vaddr_to_paddr(vaddr);
-+ if (paddr == ~0UL) {
-+ printk("%s: couldn't translate vaddr %lx\n",
-+ __func__, vaddr);
-+ return -EINVAL;
-+ }
-+
-+ desc->address[i++] = paddr;
-+ recorded += chunksz;
-+ }
-+
-+ if (recorded < bytes) {
-+ printk("%s: could only translate %ld of %ld bytes\n",
-+ __func__, recorded, bytes);
-+ return -ENOSPC;
-+ }
-+
-+ /* mark remaining addresses invalid (just for safety) */
-+ while (i < desc->nr_addrs)
-+ desc->address[i++] = XENCOMM_INVALID;
-+
-+ desc->magic = XENCOMM_MAGIC;
-+
-+ return 0;
-+}
-+
-+static struct xencomm_desc *
-+xencomm_alloc(gfp_t gfp_mask)
-+{
-+ struct xencomm_desc *desc;
-+
-+ desc = (struct xencomm_desc *)__get_free_page(gfp_mask);
-+ if (desc == NULL)
-+ panic("%s: page allocation failed\n", __func__);
-+
-+ desc->nr_addrs = (PAGE_SIZE - sizeof(struct xencomm_desc)) /
-+ sizeof(*desc->address);
-+
-+ return desc;
-+}
-+
-+void
-+xencomm_free(struct xencomm_handle *desc)
-+{
-+ if (desc)
-+ free_page((unsigned long)__va(desc));
-+}
-+
-+int
-+xencomm_create(void *buffer, unsigned long bytes,
-+ struct xencomm_handle **ret, gfp_t gfp_mask)
-+{
-+ struct xencomm_desc *desc;
-+ struct xencomm_handle *handle;
-+ int rc;
-+
-+ if (xencomm_debug)
-+ printk("%s: %p[%ld]\n", __func__, buffer, bytes);
-+
-+ if (buffer == NULL || bytes == 0) {
-+ *ret = (struct xencomm_handle *)NULL;
-+ return 0;
-+ }
-+
-+ desc = xencomm_alloc(gfp_mask);
-+ if (!desc) {
-+ printk("%s failure\n", "xencomm_alloc");
-+ return -ENOMEM;
-+ }
-+ handle = (struct xencomm_handle *)__pa(desc);
-+
-+ rc = xencomm_init(desc, buffer, bytes);
-+ if (rc) {
-+ printk("%s failure: %d\n", "xencomm_init", rc);
-+ xencomm_free(handle);
-+ return rc;
-+ }
-+
-+ *ret = handle;
-+ return 0;
-+}
-+
-+/* "mini" routines, for stack-based communications: */
-+
-+static void *
-+xencomm_alloc_mini(struct xencomm_mini *area, int *nbr_area)
-+{
-+ unsigned long base;
-+ unsigned int pageoffset;
-+
-+ while (*nbr_area >= 0) {
-+ /* Allocate an area. */
-+ (*nbr_area)--;
-+
-+ base = (unsigned long)(area + *nbr_area);
-+ pageoffset = base % PAGE_SIZE;
-+
-+ /* If the area does not cross a page, use it. */
-+ if ((PAGE_SIZE - pageoffset) >= sizeof(struct xencomm_mini))
-+ return &area[*nbr_area];
-+ }
-+ /* No more area. */
-+ return NULL;
-+}
-+
-+int
-+xencomm_create_mini(struct xencomm_mini *area, int *nbr_area,
-+ void *buffer, unsigned long bytes,
-+ struct xencomm_handle **ret)
-+{
-+ struct xencomm_desc *desc;
-+ int rc;
-+ unsigned long res;
-+
-+ desc = xencomm_alloc_mini(area, nbr_area);
-+ if (!desc)
-+ return -ENOMEM;
-+ desc->nr_addrs = XENCOMM_MINI_ADDRS;
-+
-+ rc = xencomm_init(desc, buffer, bytes);
-+ if (rc)
-+ return rc;
-+
-+ res = xencomm_vaddr_to_paddr((unsigned long)desc);
-+ if (res == ~0UL)
-+ return -EINVAL;
-+
-+ *ret = (struct xencomm_handle*)res;
-+ return 0;
-+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/xenentry.S linux-2.6.18-xen/arch/ia64/xen/xenentry.S
---- linux-2.6.18.1/arch/ia64/xen/xenentry.S 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/ia64/xen/xenentry.S 2006-09-04 16:31:01.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/ia64/xen/xenentry.S linux-2.6.18-xen/arch/ia64/xen/xenentry.S
+--- linux-2.6.18.3/arch/ia64/xen/xenentry.S 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/ia64/xen/xenentry.S 2006-11-19 14:26:23.000000000 +0100
@@ -0,0 +1,867 @@
+/*
+ * ia64/xen/entry.S
@@ -26869,9 +25323,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/xenentry.S linux-2.6.18
+#else
+END(ia64_leave_kernel)
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/xenhpski.c linux-2.6.18-xen/arch/ia64/xen/xenhpski.c
---- linux-2.6.18.1/arch/ia64/xen/xenhpski.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/ia64/xen/xenhpski.c 2006-09-04 16:31:01.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/ia64/xen/xenhpski.c linux-2.6.18-xen/arch/ia64/xen/xenhpski.c
+--- linux-2.6.18.3/arch/ia64/xen/xenhpski.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/ia64/xen/xenhpski.c 2006-11-19 14:26:23.000000000 +0100
@@ -0,0 +1,19 @@
+
+extern unsigned long xen_get_cpuid(int);
@@ -26892,9 +25346,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/xenhpski.c linux-2.6.18
+ return 1;
+}
+
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/xenivt.S linux-2.6.18-xen/arch/ia64/xen/xenivt.S
---- linux-2.6.18.1/arch/ia64/xen/xenivt.S 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/ia64/xen/xenivt.S 2006-09-04 16:31:01.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/ia64/xen/xenivt.S linux-2.6.18-xen/arch/ia64/xen/xenivt.S
+--- linux-2.6.18.3/arch/ia64/xen/xenivt.S 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/ia64/xen/xenivt.S 2006-11-19 14:26:23.000000000 +0100
@@ -0,0 +1,2169 @@
+/*
+ * arch/ia64/xen/ivt.S
@@ -29065,9 +27519,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/xenivt.S linux-2.6.18-x
+ br.call.sptk.many b6=evtchn_do_upcall
+END(xen_event_callback)
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/xenminstate.h linux-2.6.18-xen/arch/ia64/xen/xenminstate.h
---- linux-2.6.18.1/arch/ia64/xen/xenminstate.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/ia64/xen/xenminstate.h 2006-09-04 16:31:01.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/ia64/xen/xenminstate.h linux-2.6.18-xen/arch/ia64/xen/xenminstate.h
+--- linux-2.6.18.3/arch/ia64/xen/xenminstate.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/ia64/xen/xenminstate.h 2006-11-19 14:26:23.000000000 +0100
@@ -0,0 +1,368 @@
+
+#include <asm/cache.h>
@@ -29437,9 +27891,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/xenminstate.h linux-2.6
+#else
+#define SAVE_MIN DO_SAVE_MIN( , mov r30=r0, )
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/xenpal.S linux-2.6.18-xen/arch/ia64/xen/xenpal.S
---- linux-2.6.18.1/arch/ia64/xen/xenpal.S 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/ia64/xen/xenpal.S 2006-09-04 16:31:01.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/ia64/xen/xenpal.S linux-2.6.18-xen/arch/ia64/xen/xenpal.S
+--- linux-2.6.18.3/arch/ia64/xen/xenpal.S 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/ia64/xen/xenpal.S 2006-11-19 14:26:23.000000000 +0100
@@ -0,0 +1,76 @@
+/*
+ * ia64/xen/xenpal.S
@@ -29517,10 +27971,10 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/xenpal.S linux-2.6.18-x
+ srlz.d // seralize restoration of psr.l
+ br.ret.sptk.many b0
+END(xen_pal_call_static)
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/xensetup.S linux-2.6.18-xen/arch/ia64/xen/xensetup.S
---- linux-2.6.18.1/arch/ia64/xen/xensetup.S 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/ia64/xen/xensetup.S 2006-10-17 15:01:58.000000000 +0200
-@@ -0,0 +1,53 @@
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/ia64/xen/xensetup.S linux-2.6.18-xen/arch/ia64/xen/xensetup.S
+--- linux-2.6.18.3/arch/ia64/xen/xensetup.S 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/ia64/xen/xensetup.S 2006-11-19 14:26:23.000000000 +0100
+@@ -0,0 +1,54 @@
+/*
+ * Support routines for Xen
+ *
@@ -29545,11 +27999,12 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/xensetup.S linux-2.6.18
+
+ mov cr.iva=r10
+
-+ /* Set xsi base. */
-+#define FW_HYPERCALL_SET_SHARED_INFO_VA 0x600
-+(isBP) mov r2=FW_HYPERCALL_SET_SHARED_INFO_VA
++#if XSI_BASE != 0xf100000000000000UL
++ /* Backward compatibility. */
++(isBP) mov r2=0x600
+(isBP) movl r28=XSI_BASE;;
+(isBP) break 0x1000;;
++#endif
+
+ br.ret.sptk.many rp
+ ;;
@@ -29559,24 +28014,24 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/ia64/xen/xensetup.S linux-2.6.18
+
+/* Stub for suspend.
+ Just force the stacked registers to be written in memory. */
-+GLOBAL_ENTRY(xencomm_arch_hypercall_suspend)
-+ mov r15=r32
-+ ;;
++GLOBAL_ENTRY(HYPERVISOR_suspend)
+ alloc r20=ar.pfs,0,0,0,0
-+ mov r2=__HYPERVISOR_sched_op
-+ ;;
++ mov r14=2
++ mov r15=r12
++ ;;
+ /* We don't want to deal with RSE. */
+ flushrs
-+ mov r14=2 // SCHEDOP_shutdown
++ mov r2=__HYPERVISOR_sched_op
++ st4 [r12]=r14
+ ;;
+ break 0x1000
+ ;;
+ mov ar.pfs=r20
+ br.ret.sptk.many b0
-+END(xencomm_arch_hypercall_suspend)
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/um/kernel/physmem.c linux-2.6.18-xen/arch/um/kernel/physmem.c
---- linux-2.6.18.1/arch/um/kernel/physmem.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/um/kernel/physmem.c 2006-09-04 16:31:02.000000000 +0200
++END(HYPERVISOR_suspend)
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/um/kernel/physmem.c linux-2.6.18-xen/arch/um/kernel/physmem.c
+--- linux-2.6.18.3/arch/um/kernel/physmem.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/um/kernel/physmem.c 2006-11-19 14:26:32.000000000 +0100
@@ -226,7 +226,7 @@
EXPORT_SYMBOL(physmem_remove_mapping);
EXPORT_SYMBOL(physmem_subst_mapping);
@@ -29595,9 +28050,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/um/kernel/physmem.c linux-2.6.18
}
int is_remapped(void *virt)
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/ia32/ia32entry-xen.S linux-2.6.18-xen/arch/x86_64/ia32/ia32entry-xen.S
---- linux-2.6.18.1/arch/x86_64/ia32/ia32entry-xen.S 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/ia32/ia32entry-xen.S 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/ia32/ia32entry-xen.S linux-2.6.18-xen/arch/x86_64/ia32/ia32entry-xen.S
+--- linux-2.6.18.3/arch/x86_64/ia32/ia32entry-xen.S 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/ia32/ia32entry-xen.S 2006-11-19 14:26:33.000000000 +0100
@@ -0,0 +1,743 @@
+/*
+ * Compatibility mode system call entry point for x86-64.
@@ -30342,9 +28797,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/ia32/ia32entry-xen.S linu
+ .quad compat_sys_vmsplice
+ .quad compat_sys_move_pages
+ia32_syscall_end:
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/ia32/Makefile linux-2.6.18-xen/arch/x86_64/ia32/Makefile
---- linux-2.6.18.1/arch/x86_64/ia32/Makefile 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/x86_64/ia32/Makefile 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/ia32/Makefile linux-2.6.18-xen/arch/x86_64/ia32/Makefile
+--- linux-2.6.18.3/arch/x86_64/ia32/Makefile 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/x86_64/ia32/Makefile 2006-11-19 14:26:33.000000000 +0100
@@ -27,9 +27,25 @@
-Wl,-soname=linux-gate.so.1 -o $@ \
-Wl,-T,$(filter-out FORCE,$^)
@@ -30373,9 +28828,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/ia32/Makefile linux-2.6.1
+
+obj-y := $(call cherrypickxen, $(obj-y))
+endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/ia32/syscall32_syscall-xen.S linux-2.6.18-xen/arch/x86_64/ia32/syscall32_syscall-xen.S
---- linux-2.6.18.1/arch/x86_64/ia32/syscall32_syscall-xen.S 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/ia32/syscall32_syscall-xen.S 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/ia32/syscall32_syscall-xen.S linux-2.6.18-xen/arch/x86_64/ia32/syscall32_syscall-xen.S
+--- linux-2.6.18.3/arch/x86_64/ia32/syscall32_syscall-xen.S 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/ia32/syscall32_syscall-xen.S 2006-11-19 14:26:33.000000000 +0100
@@ -0,0 +1,28 @@
+/* 32bit VDSOs mapped into user space. */
+
@@ -30405,9 +28860,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/ia32/syscall32_syscall-xe
+syscall32_sysenter:
+ .incbin "arch/x86_64/ia32/vsyscall-sysenter.so"
+syscall32_sysenter_end:
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/ia32/syscall32-xen.c linux-2.6.18-xen/arch/x86_64/ia32/syscall32-xen.c
---- linux-2.6.18.1/arch/x86_64/ia32/syscall32-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/ia32/syscall32-xen.c 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/ia32/syscall32-xen.c linux-2.6.18-xen/arch/x86_64/ia32/syscall32-xen.c
+--- linux-2.6.18.3/arch/x86_64/ia32/syscall32-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/ia32/syscall32-xen.c 2006-11-19 14:26:33.000000000 +0100
@@ -0,0 +1,128 @@
+/* Copyright 2002,2003 Andi Kleen, SuSE Labs */
+
@@ -30537,9 +28992,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/ia32/syscall32-xen.c linu
+ wrmsrl(MSR_CSTAR, ia32_cstar_target);
+#endif
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/ia32/vsyscall-int80.S linux-2.6.18-xen/arch/x86_64/ia32/vsyscall-int80.S
---- linux-2.6.18.1/arch/x86_64/ia32/vsyscall-int80.S 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/ia32/vsyscall-int80.S 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/ia32/vsyscall-int80.S linux-2.6.18-xen/arch/x86_64/ia32/vsyscall-int80.S
+--- linux-2.6.18.3/arch/x86_64/ia32/vsyscall-int80.S 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/ia32/vsyscall-int80.S 2006-11-19 14:26:33.000000000 +0100
@@ -0,0 +1,58 @@
+/*
+ * Code for the vsyscall page. This version uses the old int $0x80 method.
@@ -30599,9 +29054,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/ia32/vsyscall-int80.S lin
+ */
+#define SYSCALL_ENTER_KERNEL int $0x80
+#include "vsyscall-sigreturn.S"
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/ia32/vsyscall-sigreturn.S linux-2.6.18-xen/arch/x86_64/ia32/vsyscall-sigreturn.S
---- linux-2.6.18.1/arch/x86_64/ia32/vsyscall-sigreturn.S 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/x86_64/ia32/vsyscall-sigreturn.S 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/ia32/vsyscall-sigreturn.S linux-2.6.18-xen/arch/x86_64/ia32/vsyscall-sigreturn.S
+--- linux-2.6.18.3/arch/x86_64/ia32/vsyscall-sigreturn.S 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/x86_64/ia32/vsyscall-sigreturn.S 2006-11-19 14:26:33.000000000 +0100
@@ -139,5 +139,5 @@
.align 4
.LENDFDE3:
@@ -30609,9 +29064,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/ia32/vsyscall-sigreturn.S
-#include "../../i386/kernel/vsyscall-note.S"
+#include <vsyscall-note.S>
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/Kconfig linux-2.6.18-xen/arch/x86_64/Kconfig
---- linux-2.6.18.1/arch/x86_64/Kconfig 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/x86_64/Kconfig 2006-09-22 16:38:35.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/Kconfig linux-2.6.18-xen/arch/x86_64/Kconfig
+--- linux-2.6.18.3/arch/x86_64/Kconfig 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/x86_64/Kconfig 2006-12-05 18:42:36.000000000 +0100
@@ -30,6 +30,7 @@
config STACKTRACE_SUPPORT
@@ -30802,17 +29257,17 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/Kconfig linux-2.6.18-xen/
+source "drivers/xen/Kconfig"
+
source "lib/Kconfig"
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/acpi/Makefile linux-2.6.18-xen/arch/x86_64/kernel/acpi/Makefile
---- linux-2.6.18.1/arch/x86_64/kernel/acpi/Makefile 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/x86_64/kernel/acpi/Makefile 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/kernel/acpi/Makefile linux-2.6.18-xen/arch/x86_64/kernel/acpi/Makefile
+--- linux-2.6.18.3/arch/x86_64/kernel/acpi/Makefile 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/x86_64/kernel/acpi/Makefile 2006-11-19 14:26:33.000000000 +0100
@@ -7,3 +7,4 @@
processor-y := ../../../i386/kernel/acpi/processor.o ../../../i386/kernel/acpi/cstate.o
endif
+boot-$(CONFIG_XEN) := ../../../i386/kernel/acpi/boot-xen.o
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/apic-xen.c linux-2.6.18-xen/arch/x86_64/kernel/apic-xen.c
---- linux-2.6.18.1/arch/x86_64/kernel/apic-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/kernel/apic-xen.c 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/kernel/apic-xen.c linux-2.6.18-xen/arch/x86_64/kernel/apic-xen.c
+--- linux-2.6.18.3/arch/x86_64/kernel/apic-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/kernel/apic-xen.c 2006-11-19 14:26:33.000000000 +0100
@@ -0,0 +1,197 @@
+/*
+ * Local APIC handling, local APIC timers
@@ -31011,9 +29466,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/apic-xen.c linux-2
+
+ return 1;
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/asm-offsets.c linux-2.6.18-xen/arch/x86_64/kernel/asm-offsets.c
---- linux-2.6.18.1/arch/x86_64/kernel/asm-offsets.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/x86_64/kernel/asm-offsets.c 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/kernel/asm-offsets.c linux-2.6.18-xen/arch/x86_64/kernel/asm-offsets.c
+--- linux-2.6.18.3/arch/x86_64/kernel/asm-offsets.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/x86_64/kernel/asm-offsets.c 2006-11-19 14:26:33.000000000 +0100
@@ -67,8 +67,10 @@
DEFINE(pbe_address, offsetof(struct pbe, address));
DEFINE(pbe_orig_address, offsetof(struct pbe, orig_address));
@@ -31025,9 +29480,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/asm-offsets.c linu
BLANK();
DEFINE(crypto_tfm_ctx_offset, offsetof(struct crypto_tfm, __crt_ctx));
return 0;
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/e820-xen.c linux-2.6.18-xen/arch/x86_64/kernel/e820-xen.c
---- linux-2.6.18.1/arch/x86_64/kernel/e820-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/kernel/e820-xen.c 2006-09-21 01:33:31.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/kernel/e820-xen.c linux-2.6.18-xen/arch/x86_64/kernel/e820-xen.c
+--- linux-2.6.18.3/arch/x86_64/kernel/e820-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/kernel/e820-xen.c 2006-12-05 18:42:36.000000000 +0100
@@ -0,0 +1,757 @@
+/*
+ * Handle the memory map.
@@ -31786,9 +30241,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/e820-xen.c linux-2
+ printk(KERN_INFO "Allocating PCI resources starting at %lx (gap: %lx:%lx)\n",
+ pci_mem_start, gapstart, gapsize);
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/early_printk-xen.c linux-2.6.18-xen/arch/x86_64/kernel/early_printk-xen.c
---- linux-2.6.18.1/arch/x86_64/kernel/early_printk-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/kernel/early_printk-xen.c 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/kernel/early_printk-xen.c linux-2.6.18-xen/arch/x86_64/kernel/early_printk-xen.c
+--- linux-2.6.18.3/arch/x86_64/kernel/early_printk-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/kernel/early_printk-xen.c 2006-11-19 14:26:33.000000000 +0100
@@ -0,0 +1,304 @@
+
+#include <linux/console.h>
@@ -32094,9 +30549,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/early_printk-xen.c
+}
+
+__setup("earlyprintk=", setup_early_printk);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/entry-xen.S linux-2.6.18-xen/arch/x86_64/kernel/entry-xen.S
---- linux-2.6.18.1/arch/x86_64/kernel/entry-xen.S 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/kernel/entry-xen.S 2006-09-22 16:38:35.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/kernel/entry-xen.S linux-2.6.18-xen/arch/x86_64/kernel/entry-xen.S
+--- linux-2.6.18.3/arch/x86_64/kernel/entry-xen.S 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/kernel/entry-xen.S 2006-12-05 18:42:36.000000000 +0100
@@ -0,0 +1,1213 @@
+/*
+ * linux/arch/x86_64/entry.S
@@ -33311,9 +31766,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/entry-xen.S linux-
+ CFI_ENDPROC
+ENDPROC(arch_unwind_init_running)
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/genapic_xen.c linux-2.6.18-xen/arch/x86_64/kernel/genapic_xen.c
---- linux-2.6.18.1/arch/x86_64/kernel/genapic_xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/kernel/genapic_xen.c 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/kernel/genapic_xen.c linux-2.6.18-xen/arch/x86_64/kernel/genapic_xen.c
+--- linux-2.6.18.3/arch/x86_64/kernel/genapic_xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/kernel/genapic_xen.c 2006-12-05 18:42:36.000000000 +0100
@@ -0,0 +1,176 @@
+/*
+ * Copyright 2004 James Cleverdon, IBM.
@@ -33491,9 +31946,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/genapic_xen.c linu
+ .cpu_mask_to_apicid = xen_cpu_mask_to_apicid,
+ .phys_pkg_id = phys_pkg_id,
+};
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/genapic-xen.c linux-2.6.18-xen/arch/x86_64/kernel/genapic-xen.c
---- linux-2.6.18.1/arch/x86_64/kernel/genapic-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/kernel/genapic-xen.c 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/kernel/genapic-xen.c linux-2.6.18-xen/arch/x86_64/kernel/genapic-xen.c
+--- linux-2.6.18.3/arch/x86_64/kernel/genapic-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/kernel/genapic-xen.c 2006-11-19 14:26:33.000000000 +0100
@@ -0,0 +1,143 @@
+/*
+ * Copyright 2004 James Cleverdon, IBM.
@@ -33638,9 +32093,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/genapic-xen.c linu
+ xen_send_IPI_shortcut(APIC_DEST_SELF, vector, APIC_DEST_PHYSICAL);
+#endif
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/head64-xen.c linux-2.6.18-xen/arch/x86_64/kernel/head64-xen.c
---- linux-2.6.18.1/arch/x86_64/kernel/head64-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/kernel/head64-xen.c 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/kernel/head64-xen.c linux-2.6.18-xen/arch/x86_64/kernel/head64-xen.c
+--- linux-2.6.18.3/arch/x86_64/kernel/head64-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/kernel/head64-xen.c 2006-11-19 14:26:33.000000000 +0100
@@ -0,0 +1,161 @@
+/*
+ * linux/arch/x86_64/kernel/head64.c -- prepare to run common code
@@ -33803,9 +32258,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/head64-xen.c linux
+ setup_boot_cpu_data();
+ start_kernel();
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/head-xen.S linux-2.6.18-xen/arch/x86_64/kernel/head-xen.S
---- linux-2.6.18.1/arch/x86_64/kernel/head-xen.S 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/kernel/head-xen.S 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/kernel/head-xen.S linux-2.6.18-xen/arch/x86_64/kernel/head-xen.S
+--- linux-2.6.18.3/arch/x86_64/kernel/head-xen.S 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/kernel/head-xen.S 2006-11-19 14:26:33.000000000 +0100
@@ -0,0 +1,191 @@
+/*
+ * linux/arch/x86_64/kernel/head.S -- start in 32bit and switch to 64bit
@@ -33998,9 +32453,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/head-xen.S linux-2
+ ELFNOTE(Xen, XEN_ELFNOTE_HYPERCALL_PAGE, .quad, hypercall_page)
+ ELFNOTE(Xen, XEN_ELFNOTE_FEATURES, .asciz, "writable_page_tables|writable_descriptor_tables|auto_translated_physmap|pae_pgdir_above_4gb|supervisor_mode_kernel")
+ ELFNOTE(Xen, XEN_ELFNOTE_LOADER, .asciz, "generic")
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/init_task.c linux-2.6.18-xen/arch/x86_64/kernel/init_task.c
---- linux-2.6.18.1/arch/x86_64/kernel/init_task.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/x86_64/kernel/init_task.c 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/kernel/init_task.c linux-2.6.18-xen/arch/x86_64/kernel/init_task.c
+--- linux-2.6.18.3/arch/x86_64/kernel/init_task.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/x86_64/kernel/init_task.c 2006-11-19 14:26:33.000000000 +0100
@@ -37,6 +37,8 @@
struct task_struct init_task = INIT_TASK(init_task);
@@ -34018,9 +32473,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/init_task.c linux-
/* Copies of the original ist values from the tss are only accessed during
* debugging, no special alignment required.
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/io_apic-xen.c linux-2.6.18-xen/arch/x86_64/kernel/io_apic-xen.c
---- linux-2.6.18.1/arch/x86_64/kernel/io_apic-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/kernel/io_apic-xen.c 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/kernel/io_apic-xen.c linux-2.6.18-xen/arch/x86_64/kernel/io_apic-xen.c
+--- linux-2.6.18.3/arch/x86_64/kernel/io_apic-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/kernel/io_apic-xen.c 2006-11-19 14:26:33.000000000 +0100
@@ -0,0 +1,2263 @@
+/*
+ * Intel IO-APIC support for multi-Pentium hosts.
@@ -36285,9 +34740,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/io_apic-xen.c linu
+}
+#endif
+#endif /* !CONFIG_XEN */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/ioport-xen.c linux-2.6.18-xen/arch/x86_64/kernel/ioport-xen.c
---- linux-2.6.18.1/arch/x86_64/kernel/ioport-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/kernel/ioport-xen.c 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/kernel/ioport-xen.c linux-2.6.18-xen/arch/x86_64/kernel/ioport-xen.c
+--- linux-2.6.18.3/arch/x86_64/kernel/ioport-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/kernel/ioport-xen.c 2006-11-19 14:26:33.000000000 +0100
@@ -0,0 +1,99 @@
+/*
+ * linux/arch/x86_64/kernel/ioport.c
@@ -36388,9 +34843,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/ioport-xen.c linux
+
+ return 0;
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/irqflags-xen.c linux-2.6.18-xen/arch/x86_64/kernel/irqflags-xen.c
---- linux-2.6.18.1/arch/x86_64/kernel/irqflags-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/kernel/irqflags-xen.c 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/kernel/irqflags-xen.c linux-2.6.18-xen/arch/x86_64/kernel/irqflags-xen.c
+--- linux-2.6.18.3/arch/x86_64/kernel/irqflags-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/kernel/irqflags-xen.c 2006-12-05 18:42:36.000000000 +0100
@@ -0,0 +1,100 @@
+#include <linux/module.h>
+#include <linux/smp.h>
@@ -36492,9 +34947,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/irqflags-xen.c lin
+ return disabled;
+}
+EXPORT_SYMBOL(raw_irqs_disabled);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/irq-xen.c linux-2.6.18-xen/arch/x86_64/kernel/irq-xen.c
---- linux-2.6.18.1/arch/x86_64/kernel/irq-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/kernel/irq-xen.c 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/kernel/irq-xen.c linux-2.6.18-xen/arch/x86_64/kernel/irq-xen.c
+--- linux-2.6.18.3/arch/x86_64/kernel/irq-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/kernel/irq-xen.c 2006-11-19 14:26:33.000000000 +0100
@@ -0,0 +1,198 @@
+/*
+ * linux/arch/x86_64/kernel/irq.c
@@ -36694,9 +35149,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/irq-xen.c linux-2.
+ printk("unexpected IRQ trap at vector %02x\n", irq);
+}
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/ldt-xen.c linux-2.6.18-xen/arch/x86_64/kernel/ldt-xen.c
---- linux-2.6.18.1/arch/x86_64/kernel/ldt-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/kernel/ldt-xen.c 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/kernel/ldt-xen.c linux-2.6.18-xen/arch/x86_64/kernel/ldt-xen.c
+--- linux-2.6.18.3/arch/x86_64/kernel/ldt-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/kernel/ldt-xen.c 2006-11-19 14:26:33.000000000 +0100
@@ -0,0 +1,282 @@
+/*
+ * linux/arch/x86_64/kernel/ldt.c
@@ -36980,9 +35435,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/ldt-xen.c linux-2.
+ }
+ return ret;
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/Makefile linux-2.6.18-xen/arch/x86_64/kernel/Makefile
---- linux-2.6.18.1/arch/x86_64/kernel/Makefile 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/x86_64/kernel/Makefile 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/kernel/Makefile linux-2.6.18-xen/arch/x86_64/kernel/Makefile
+--- linux-2.6.18.3/arch/x86_64/kernel/Makefile 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/x86_64/kernel/Makefile 2006-12-05 18:42:36.000000000 +0100
@@ -21,11 +21,13 @@
obj-$(CONFIG_X86_CPUID) += cpuid.o
obj-$(CONFIG_SMP) += smp.o smpboot.o trampoline.o
@@ -37017,9 +35472,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/Makefile linux-2.6
+obj-y := $(call cherrypickxen, $(obj-y))
+extra-y := $(call cherrypickxen, $(extra-y))
+endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/mpparse-xen.c linux-2.6.18-xen/arch/x86_64/kernel/mpparse-xen.c
---- linux-2.6.18.1/arch/x86_64/kernel/mpparse-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/kernel/mpparse-xen.c 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/kernel/mpparse-xen.c linux-2.6.18-xen/arch/x86_64/kernel/mpparse-xen.c
+--- linux-2.6.18.3/arch/x86_64/kernel/mpparse-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/kernel/mpparse-xen.c 2006-11-19 14:26:33.000000000 +0100
@@ -0,0 +1,1011 @@
+/*
+ * Intel Multiprocessor Specification 1.1 and 1.4
@@ -38032,9 +36487,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/mpparse-xen.c linu
+
+#endif /*CONFIG_X86_IO_APIC*/
+#endif /*CONFIG_ACPI*/
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/pci-swiotlb-xen.c linux-2.6.18-xen/arch/x86_64/kernel/pci-swiotlb-xen.c
---- linux-2.6.18.1/arch/x86_64/kernel/pci-swiotlb-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/kernel/pci-swiotlb-xen.c 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/kernel/pci-swiotlb-xen.c linux-2.6.18-xen/arch/x86_64/kernel/pci-swiotlb-xen.c
+--- linux-2.6.18.3/arch/x86_64/kernel/pci-swiotlb-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/kernel/pci-swiotlb-xen.c 2006-11-19 14:26:33.000000000 +0100
@@ -0,0 +1,54 @@
+/* Glue code to lib/swiotlb.c */
+
@@ -38090,10 +36545,10 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/pci-swiotlb-xen.c
+ }
+#endif
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/process-xen.c linux-2.6.18-xen/arch/x86_64/kernel/process-xen.c
---- linux-2.6.18.1/arch/x86_64/kernel/process-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/kernel/process-xen.c 2006-10-17 15:01:58.000000000 +0200
-@@ -0,0 +1,793 @@
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/kernel/process-xen.c linux-2.6.18-xen/arch/x86_64/kernel/process-xen.c
+--- linux-2.6.18.3/arch/x86_64/kernel/process-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/kernel/process-xen.c 2006-12-05 18:42:36.000000000 +0100
+@@ -0,0 +1,787 @@
+/*
+ * linux/arch/x86-64/kernel/process.c
+ *
@@ -38623,25 +37078,19 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/process-xen.c linu
+ if (next->gs)
+ HYPERVISOR_set_segment_base(SEGBASE_GS_USER, next->gs);
+
++ /* Must be after DS reload */
++ if (prev_p->thread_info->status & TS_USEDFPU) {
++ __save_init_fpu(prev_p); /* _not_ save_init_fpu() */
++ HYPERVISOR_fpu_taskswitch(1);
++ }
++
+ /*
-+ * Switch the PDA and FPU context.
++ * Switch the PDA and FPU contexts.
+ */
+ prev->userrsp = read_pda(oldrsp);
+ write_pda(oldrsp, next->userrsp);
+ write_pda(pcurrent, next_p);
+
-+ /* This must be here to ensure both math_state_restore() and
-+ kernel_fpu_begin() work consistently.
-+ And the AMD workaround requires it to be after DS reload. */
-+ /*
-+ * This is basically '__unlazy_fpu', except that we queue a
-+ * multicall to indicate FPU task switch, rather than
-+ * synchronously trapping to Xen.
-+ */
-+ if (prev_p->thread_info->status & TS_USEDFPU) {
-+ __save_init_fpu(prev_p); /* _not_ save_init_fpu() */
-+ HYPERVISOR_fpu_taskswitch(1);
-+ }
+ write_pda(kernelstack,
+ task_stack_page(next_p) + THREAD_SIZE - PDA_STACKOFFSET);
+
@@ -38887,9 +37336,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/process-xen.c linu
+{
+}
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/setup64-xen.c linux-2.6.18-xen/arch/x86_64/kernel/setup64-xen.c
---- linux-2.6.18.1/arch/x86_64/kernel/setup64-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/kernel/setup64-xen.c 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/kernel/setup64-xen.c linux-2.6.18-xen/arch/x86_64/kernel/setup64-xen.c
+--- linux-2.6.18.3/arch/x86_64/kernel/setup64-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/kernel/setup64-xen.c 2006-11-19 14:26:34.000000000 +0100
@@ -0,0 +1,361 @@
+/*
+ * X86-64 specific CPU setup.
@@ -39252,9 +37701,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/setup64-xen.c linu
+
+ fpu_init();
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/setup-xen.c linux-2.6.18-xen/arch/x86_64/kernel/setup-xen.c
---- linux-2.6.18.1/arch/x86_64/kernel/setup-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/kernel/setup-xen.c 2006-10-17 15:01:58.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/kernel/setup-xen.c linux-2.6.18-xen/arch/x86_64/kernel/setup-xen.c
+--- linux-2.6.18.3/arch/x86_64/kernel/setup-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/kernel/setup-xen.c 2006-12-05 18:42:36.000000000 +0100
@@ -0,0 +1,1637 @@
+/*
+ * linux/arch/x86-64/kernel/setup.c
@@ -40893,9 +39342,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/setup-xen.c linux-
+}
+device_initcall(add_pcspkr);
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/smp-xen.c linux-2.6.18-xen/arch/x86_64/kernel/smp-xen.c
---- linux-2.6.18.1/arch/x86_64/kernel/smp-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/kernel/smp-xen.c 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/kernel/smp-xen.c linux-2.6.18-xen/arch/x86_64/kernel/smp-xen.c
+--- linux-2.6.18.3/arch/x86_64/kernel/smp-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/kernel/smp-xen.c 2006-11-19 14:26:34.000000000 +0100
@@ -0,0 +1,600 @@
+/*
+ * Intel SMP support routines.
@@ -41497,10 +39946,10 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/smp-xen.c linux-2.
+ return 0; /* Should not happen */
+#endif
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/traps-xen.c linux-2.6.18-xen/arch/x86_64/kernel/traps-xen.c
---- linux-2.6.18.1/arch/x86_64/kernel/traps-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/kernel/traps-xen.c 2006-09-22 16:38:35.000000000 +0200
-@@ -0,0 +1,1173 @@
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/kernel/traps-xen.c linux-2.6.18-xen/arch/x86_64/kernel/traps-xen.c
+--- linux-2.6.18.3/arch/x86_64/kernel/traps-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/kernel/traps-xen.c 2006-11-19 14:26:34.000000000 +0100
+@@ -0,0 +1,1172 @@
+/*
+ * linux/arch/x86-64/traps.c
+ *
@@ -41615,7 +40064,6 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/traps-xen.c linux-
+#define call_trace (-1)
+#endif
+
-+
+#ifdef CONFIG_KALLSYMS
+# include <linux/kallsyms.h>
+void printk_address(unsigned long address)
@@ -41682,7 +40130,7 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/traps-xen.c linux-
+ break;
+#endif
+ default:
-+ end = per_cpu(orig_tss, cpu).ist[k];
++ end = per_cpu(orig_ist, cpu).ist[k];
+ break;
+ }
+ /*
@@ -42674,9 +41122,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/traps-xen.c linux-
+}
+__setup("call_trace=", call_trace_setup);
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/vmlinux.lds.S linux-2.6.18-xen/arch/x86_64/kernel/vmlinux.lds.S
---- linux-2.6.18.1/arch/x86_64/kernel/vmlinux.lds.S 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/x86_64/kernel/vmlinux.lds.S 2006-09-21 01:33:31.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/kernel/vmlinux.lds.S linux-2.6.18-xen/arch/x86_64/kernel/vmlinux.lds.S
+--- linux-2.6.18.3/arch/x86_64/kernel/vmlinux.lds.S 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/x86_64/kernel/vmlinux.lds.S 2006-11-19 14:26:34.000000000 +0100
@@ -13,6 +13,12 @@
OUTPUT_ARCH(i386:x86-64)
ENTRY(phys_startup_64)
@@ -42758,9 +41206,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/vmlinux.lds.S linu
+
+ NOTES
}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/vsyscall-xen.c linux-2.6.18-xen/arch/x86_64/kernel/vsyscall-xen.c
---- linux-2.6.18.1/arch/x86_64/kernel/vsyscall-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/kernel/vsyscall-xen.c 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/kernel/vsyscall-xen.c linux-2.6.18-xen/arch/x86_64/kernel/vsyscall-xen.c
+--- linux-2.6.18.3/arch/x86_64/kernel/vsyscall-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/kernel/vsyscall-xen.c 2006-11-19 14:26:34.000000000 +0100
@@ -0,0 +1,239 @@
+/*
+ * linux/arch/x86_64/kernel/vsyscall.c
@@ -43001,9 +41449,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/vsyscall-xen.c lin
+}
+
+__initcall(vsyscall_init);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/xen_entry.S linux-2.6.18-xen/arch/x86_64/kernel/xen_entry.S
---- linux-2.6.18.1/arch/x86_64/kernel/xen_entry.S 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/kernel/xen_entry.S 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/kernel/xen_entry.S linux-2.6.18-xen/arch/x86_64/kernel/xen_entry.S
+--- linux-2.6.18.3/arch/x86_64/kernel/xen_entry.S 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/kernel/xen_entry.S 2006-11-19 14:26:34.000000000 +0100
@@ -0,0 +1,40 @@
+/*
+ * Copied from arch/xen/i386/kernel/entry.S
@@ -43045,9 +41493,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/kernel/xen_entry.S linux-
+VGCF_IN_SYSCALL = (1<<8)
+
+
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/Makefile linux-2.6.18-xen/arch/x86_64/Makefile
---- linux-2.6.18.1/arch/x86_64/Makefile 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/x86_64/Makefile 2006-09-04 16:31:02.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/Makefile linux-2.6.18-xen/arch/x86_64/Makefile
+--- linux-2.6.18.3/arch/x86_64/Makefile 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/x86_64/Makefile 2006-11-19 14:26:33.000000000 +0100
@@ -32,6 +32,10 @@
cflags-$(CONFIG_MPSC) += $(call cc-option,-march=nocona)
cflags-$(CONFIG_GENERIC_CPU) += $(call cc-option,-mtune=generic)
@@ -43089,9 +41537,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/Makefile linux-2.6.18-xen
archclean:
$(Q)$(MAKE) $(clean)=$(boot)
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/mm/fault-xen.c linux-2.6.18-xen/arch/x86_64/mm/fault-xen.c
---- linux-2.6.18.1/arch/x86_64/mm/fault-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/mm/fault-xen.c 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/mm/fault-xen.c linux-2.6.18-xen/arch/x86_64/mm/fault-xen.c
+--- linux-2.6.18.3/arch/x86_64/mm/fault-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/mm/fault-xen.c 2006-11-19 14:26:34.000000000 +0100
@@ -0,0 +1,723 @@
+/*
+ * linux/arch/x86-64/mm/fault.c
@@ -43816,9 +42264,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/mm/fault-xen.c linux-2.6.
+ return 1;
+}
+__setup("pagefaulttrace", enable_pagefaulttrace);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/mm/init-xen.c linux-2.6.18-xen/arch/x86_64/mm/init-xen.c
---- linux-2.6.18.1/arch/x86_64/mm/init-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/mm/init-xen.c 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/mm/init-xen.c linux-2.6.18-xen/arch/x86_64/mm/init-xen.c
+--- linux-2.6.18.3/arch/x86_64/mm/init-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/mm/init-xen.c 2006-11-19 14:26:34.000000000 +0100
@@ -0,0 +1,1200 @@
+/*
+ * linux/arch/x86_64/mm/init.c
@@ -45020,9 +43468,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/mm/init-xen.c linux-2.6.1
+{
+ return (addr >= VSYSCALL_START) && (addr < VSYSCALL_END);
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/mm/Makefile linux-2.6.18-xen/arch/x86_64/mm/Makefile
---- linux-2.6.18.1/arch/x86_64/mm/Makefile 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/x86_64/mm/Makefile 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/mm/Makefile linux-2.6.18-xen/arch/x86_64/mm/Makefile
+--- linux-2.6.18.3/arch/x86_64/mm/Makefile 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/x86_64/mm/Makefile 2006-11-19 14:26:34.000000000 +0100
@@ -9,3 +9,13 @@
obj-$(CONFIG_ACPI_NUMA) += srat.o
@@ -45037,9 +43485,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/mm/Makefile linux-2.6.18-
+
+obj-y := $(call cherrypickxen, $(obj-y))
+endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/mm/pageattr-xen.c linux-2.6.18-xen/arch/x86_64/mm/pageattr-xen.c
---- linux-2.6.18.1/arch/x86_64/mm/pageattr-xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/arch/x86_64/mm/pageattr-xen.c 2006-10-17 15:01:58.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/mm/pageattr-xen.c linux-2.6.18-xen/arch/x86_64/mm/pageattr-xen.c
+--- linux-2.6.18.3/arch/x86_64/mm/pageattr-xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/arch/x86_64/mm/pageattr-xen.c 2006-12-05 18:42:36.000000000 +0100
@@ -0,0 +1,398 @@
+/*
+ * Copyright 2002 Andi Kleen, SuSE Labs.
@@ -45439,9 +43887,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/mm/pageattr-xen.c linux-2
+
+EXPORT_SYMBOL(change_page_attr);
+EXPORT_SYMBOL(global_flush_tlb);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/oprofile/Makefile linux-2.6.18-xen/arch/x86_64/oprofile/Makefile
---- linux-2.6.18.1/arch/x86_64/oprofile/Makefile 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/x86_64/oprofile/Makefile 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/oprofile/Makefile linux-2.6.18-xen/arch/x86_64/oprofile/Makefile
+--- linux-2.6.18.3/arch/x86_64/oprofile/Makefile 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/x86_64/oprofile/Makefile 2006-11-19 14:26:34.000000000 +0100
@@ -11,9 +11,12 @@
oprofilefs.o oprofile_stats.o \
timer_int.o )
@@ -45456,9 +43904,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/oprofile/Makefile linux-2
-
+endif
oprofile-y = $(DRIVER_OBJS) $(addprefix ../../i386/oprofile/, $(OPROFILE-y))
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/pci/Makefile linux-2.6.18-xen/arch/x86_64/pci/Makefile
---- linux-2.6.18.1/arch/x86_64/pci/Makefile 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/arch/x86_64/pci/Makefile 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/arch/x86_64/pci/Makefile linux-2.6.18-xen/arch/x86_64/pci/Makefile
+--- linux-2.6.18.3/arch/x86_64/pci/Makefile 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/arch/x86_64/pci/Makefile 2006-11-19 14:26:34.000000000 +0100
@@ -15,11 +15,23 @@
obj-$(CONFIG_NUMA) += k8-bus.o
@@ -45483,9 +43931,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/arch/x86_64/pci/Makefile linux-2.6.18
+
+obj-y := $(call cherrypickxen, $(obj-y))
+endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/acpi/Kconfig linux-2.6.18-xen/drivers/acpi/Kconfig
---- linux-2.6.18.1/drivers/acpi/Kconfig 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/drivers/acpi/Kconfig 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/acpi/Kconfig linux-2.6.18-xen/drivers/acpi/Kconfig
+--- linux-2.6.18.3/drivers/acpi/Kconfig 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/drivers/acpi/Kconfig 2006-11-19 14:26:34.000000000 +0100
@@ -45,7 +45,7 @@
config ACPI_SLEEP
@@ -45503,9 +43951,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/acpi/Kconfig linux-2.6.18-xen
default y
help
The Power Management Timer is available on all ACPI-capable,
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/char/hangcheck-timer.c linux-2.6.18-xen/drivers/char/hangcheck-timer.c
---- linux-2.6.18.1/drivers/char/hangcheck-timer.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/drivers/char/hangcheck-timer.c 2006-09-04 16:31:04.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/char/hangcheck-timer.c linux-2.6.18-xen/drivers/char/hangcheck-timer.c
+--- linux-2.6.18.3/drivers/char/hangcheck-timer.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/drivers/char/hangcheck-timer.c 2006-11-19 14:26:36.000000000 +0100
@@ -117,7 +117,7 @@
__setup("hcheck_dump_tasks", hangcheck_parse_dump_tasks);
#endif /* not MODULE */
@@ -45515,9 +43963,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/char/hangcheck-timer.c linux-
# define HAVE_MONOTONIC
# define TIMER_FREQ 1000000000ULL
#elif defined(CONFIG_IA64)
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/char/mem.c linux-2.6.18-xen/drivers/char/mem.c
---- linux-2.6.18.1/drivers/char/mem.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/drivers/char/mem.c 2006-09-04 16:31:04.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/char/mem.c linux-2.6.18-xen/drivers/char/mem.c
+--- linux-2.6.18.3/drivers/char/mem.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/drivers/char/mem.c 2006-11-19 14:26:36.000000000 +0100
@@ -101,6 +101,7 @@
}
#endif
@@ -45552,9 +44000,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/char/mem.c linux-2.6.18-xen/d
static const struct file_operations kmem_fops = {
.llseek = memory_lseek,
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/char/tpm/Kconfig linux-2.6.18-xen/drivers/char/tpm/Kconfig
---- linux-2.6.18.1/drivers/char/tpm/Kconfig 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/drivers/char/tpm/Kconfig 2006-09-04 16:31:04.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/char/tpm/Kconfig linux-2.6.18-xen/drivers/char/tpm/Kconfig
+--- linux-2.6.18.3/drivers/char/tpm/Kconfig 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/drivers/char/tpm/Kconfig 2006-11-19 14:26:36.000000000 +0100
@@ -31,7 +31,7 @@
config TCG_NSC
@@ -45579,18 +44027,18 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/char/tpm/Kconfig linux-2.6.18
+ will be called tpm_xenu.
+endmenu
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/char/tpm/Makefile linux-2.6.18-xen/drivers/char/tpm/Makefile
---- linux-2.6.18.1/drivers/char/tpm/Makefile 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/drivers/char/tpm/Makefile 2006-09-04 16:31:04.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/char/tpm/Makefile linux-2.6.18-xen/drivers/char/tpm/Makefile
+--- linux-2.6.18.3/drivers/char/tpm/Makefile 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/drivers/char/tpm/Makefile 2006-11-19 14:26:36.000000000 +0100
@@ -9,3 +9,5 @@
obj-$(CONFIG_TCG_NSC) += tpm_nsc.o
obj-$(CONFIG_TCG_ATMEL) += tpm_atmel.o
obj-$(CONFIG_TCG_INFINEON) += tpm_infineon.o
+obj-$(CONFIG_TCG_XEN) += tpm_xenu.o
+tpm_xenu-y = tpm_xen.o tpm_vtpm.o
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/char/tpm/tpm.c linux-2.6.18-xen/drivers/char/tpm/tpm.c
---- linux-2.6.18.1/drivers/char/tpm/tpm.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/drivers/char/tpm/tpm.c 2006-09-04 16:31:04.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/char/tpm/tpm.c linux-2.6.18-xen/drivers/char/tpm/tpm.c
+--- linux-2.6.18.3/drivers/char/tpm/tpm.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/drivers/char/tpm/tpm.c 2006-11-19 14:26:36.000000000 +0100
@@ -30,7 +30,9 @@
enum tpm_const {
@@ -45711,9 +44159,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/char/tpm/tpm.c linux-2.6.18-x
return ret_size;
}
EXPORT_SYMBOL_GPL(tpm_read);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/char/tpm/tpm.h linux-2.6.18-xen/drivers/char/tpm/tpm.h
---- linux-2.6.18.1/drivers/char/tpm/tpm.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/drivers/char/tpm/tpm.h 2006-09-21 01:33:31.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/char/tpm/tpm.h linux-2.6.18-xen/drivers/char/tpm/tpm.h
+--- linux-2.6.18.3/drivers/char/tpm/tpm.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/drivers/char/tpm/tpm.h 2006-12-05 18:42:36.000000000 +0100
@@ -61,6 +61,7 @@
const u8 req_complete_mask;
const u8 req_complete_val;
@@ -45742,9 +44190,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/char/tpm/tpm.h linux-2.6.18-x
extern void tpm_get_timeouts(struct tpm_chip *);
extern void tpm_gen_interrupt(struct tpm_chip *);
extern void tpm_continue_selftest(struct tpm_chip *);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/char/tpm/tpm_vtpm.c linux-2.6.18-xen/drivers/char/tpm/tpm_vtpm.c
---- linux-2.6.18.1/drivers/char/tpm/tpm_vtpm.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/char/tpm/tpm_vtpm.c 2006-09-04 16:31:04.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/char/tpm/tpm_vtpm.c linux-2.6.18-xen/drivers/char/tpm/tpm_vtpm.c
+--- linux-2.6.18.3/drivers/char/tpm/tpm_vtpm.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/char/tpm/tpm_vtpm.c 2006-11-19 14:26:36.000000000 +0100
@@ -0,0 +1,547 @@
+/*
+ * Copyright (C) 2006 IBM Corporation
@@ -46293,9 +44741,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/char/tpm/tpm_vtpm.c linux-2.6
+ tpm_remove_hardware(dev);
+ kfree(vtpms);
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/char/tpm/tpm_vtpm.h linux-2.6.18-xen/drivers/char/tpm/tpm_vtpm.h
---- linux-2.6.18.1/drivers/char/tpm/tpm_vtpm.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/char/tpm/tpm_vtpm.h 2006-09-04 16:31:04.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/char/tpm/tpm_vtpm.h linux-2.6.18-xen/drivers/char/tpm/tpm_vtpm.h
+--- linux-2.6.18.3/drivers/char/tpm/tpm_vtpm.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/char/tpm/tpm_vtpm.h 2006-11-19 14:26:36.000000000 +0100
@@ -0,0 +1,68 @@
+#ifndef TPM_VTPM_H
+#define TPM_VTPM_H
@@ -46365,9 +44813,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/char/tpm/tpm_vtpm.h linux-2.6
+}
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/char/tpm/tpm_xen.c linux-2.6.18-xen/drivers/char/tpm/tpm_xen.c
---- linux-2.6.18.1/drivers/char/tpm/tpm_xen.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/char/tpm/tpm_xen.c 2006-09-04 16:31:04.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/char/tpm/tpm_xen.c linux-2.6.18-xen/drivers/char/tpm/tpm_xen.c
+--- linux-2.6.18.3/drivers/char/tpm/tpm_xen.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/char/tpm/tpm_xen.c 2006-11-19 14:26:36.000000000 +0100
@@ -0,0 +1,756 @@
+/*
+ * Copyright (c) 2005, IBM Corporation
@@ -47125,9 +45573,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/char/tpm/tpm_xen.c linux-2.6.
+module_init(tpmif_init);
+
+MODULE_LICENSE("Dual BSD/GPL");
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/char/tty_io.c linux-2.6.18-xen/drivers/char/tty_io.c
---- linux-2.6.18.1/drivers/char/tty_io.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/drivers/char/tty_io.c 2006-09-22 16:38:35.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/char/tty_io.c linux-2.6.18-xen/drivers/char/tty_io.c
+--- linux-2.6.18.3/drivers/char/tty_io.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/drivers/char/tty_io.c 2006-11-19 14:26:36.000000000 +0100
@@ -130,6 +130,8 @@
vt.c for deeply disgusting hack reasons */
DEFINE_MUTEX(tty_mutex);
@@ -47163,9 +45611,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/char/tty_io.c linux-2.6.18-xe
#endif
return 0;
}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/firmware/Kconfig linux-2.6.18-xen/drivers/firmware/Kconfig
---- linux-2.6.18.1/drivers/firmware/Kconfig 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/drivers/firmware/Kconfig 2006-09-04 16:31:04.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/firmware/Kconfig linux-2.6.18-xen/drivers/firmware/Kconfig
+--- linux-2.6.18.3/drivers/firmware/Kconfig 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/drivers/firmware/Kconfig 2006-11-19 14:26:37.000000000 +0100
@@ -7,7 +7,7 @@
config EDD
@@ -47175,9 +45623,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/firmware/Kconfig linux-2.6.18
help
Say Y or M here if you want to enable BIOS Enhanced Disk Drive
Services real mode BIOS calls to determine which disk
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/ide/ide-lib.c linux-2.6.18-xen/drivers/ide/ide-lib.c
---- linux-2.6.18.1/drivers/ide/ide-lib.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/drivers/ide/ide-lib.c 2006-09-04 16:31:04.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/ide/ide-lib.c linux-2.6.18-xen/drivers/ide/ide-lib.c
+--- linux-2.6.18.3/drivers/ide/ide-lib.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/drivers/ide/ide-lib.c 2006-11-19 14:26:39.000000000 +0100
@@ -408,10 +408,10 @@
{
u64 addr = BLK_BOUNCE_HIGH; /* dma64_addr_t */
@@ -47193,9 +45641,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/ide/ide-lib.c linux-2.6.18-xe
addr = HWIF(drive)->pci_dev->dma_mask;
}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/Makefile linux-2.6.18-xen/drivers/Makefile
---- linux-2.6.18.1/drivers/Makefile 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/drivers/Makefile 2006-09-04 16:31:03.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/Makefile linux-2.6.18-xen/drivers/Makefile
+--- linux-2.6.18.3/drivers/Makefile 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/drivers/Makefile 2006-11-19 14:26:34.000000000 +0100
@@ -31,6 +31,7 @@
obj-$(CONFIG_NUBUS) += nubus/
obj-$(CONFIG_ATM) += atm/
@@ -47204,9 +45652,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/Makefile linux-2.6.18-xen/dri
obj-$(CONFIG_IDE) += ide/
obj-$(CONFIG_FC4) += fc4/
obj-$(CONFIG_SCSI) += scsi/
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/oprofile/buffer_sync.c linux-2.6.18-xen/drivers/oprofile/buffer_sync.c
---- linux-2.6.18.1/drivers/oprofile/buffer_sync.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/drivers/oprofile/buffer_sync.c 2006-09-04 16:31:08.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/oprofile/buffer_sync.c linux-2.6.18-xen/drivers/oprofile/buffer_sync.c
+--- linux-2.6.18.3/drivers/oprofile/buffer_sync.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/drivers/oprofile/buffer_sync.c 2006-11-19 14:26:47.000000000 +0100
@@ -6,6 +6,10 @@
*
* @author John Levon <levon@movementarian.org>
@@ -47327,9 +45775,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/oprofile/buffer_sync.c linux-
}
}
}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/oprofile/cpu_buffer.c linux-2.6.18-xen/drivers/oprofile/cpu_buffer.c
---- linux-2.6.18.1/drivers/oprofile/cpu_buffer.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/drivers/oprofile/cpu_buffer.c 2006-09-04 16:31:08.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/oprofile/cpu_buffer.c linux-2.6.18-xen/drivers/oprofile/cpu_buffer.c
+--- linux-2.6.18.3/drivers/oprofile/cpu_buffer.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/drivers/oprofile/cpu_buffer.c 2006-11-19 14:26:47.000000000 +0100
@@ -6,6 +6,10 @@
*
* @author John Levon <levon@movementarian.org>
@@ -47439,9 +45887,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/oprofile/cpu_buffer.c linux-2
/*
* This serves to avoid cpu buffer overflow, and makes sure
* the task mortuary progresses
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/oprofile/cpu_buffer.h linux-2.6.18-xen/drivers/oprofile/cpu_buffer.h
---- linux-2.6.18.1/drivers/oprofile/cpu_buffer.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/drivers/oprofile/cpu_buffer.h 2006-09-04 16:31:08.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/oprofile/cpu_buffer.h linux-2.6.18-xen/drivers/oprofile/cpu_buffer.h
+--- linux-2.6.18.3/drivers/oprofile/cpu_buffer.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/drivers/oprofile/cpu_buffer.h 2006-11-19 14:26:47.000000000 +0100
@@ -36,7 +36,7 @@
volatile unsigned long tail_pos;
unsigned long buffer_size;
@@ -47464,9 +45912,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/oprofile/cpu_buffer.h linux-2
+#define CPU_DOMAIN_SWITCH 4
#endif /* OPROFILE_CPU_BUFFER_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/oprofile/event_buffer.h linux-2.6.18-xen/drivers/oprofile/event_buffer.h
---- linux-2.6.18.1/drivers/oprofile/event_buffer.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/drivers/oprofile/event_buffer.h 2006-09-04 16:31:08.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/oprofile/event_buffer.h linux-2.6.18-xen/drivers/oprofile/event_buffer.h
+--- linux-2.6.18.3/drivers/oprofile/event_buffer.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/drivers/oprofile/event_buffer.h 2006-11-19 14:26:47.000000000 +0100
@@ -29,15 +29,20 @@
#define CPU_SWITCH_CODE 2
#define COOKIE_SWITCH_CODE 3
@@ -47489,9 +45937,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/oprofile/event_buffer.h linux
/* add data to the event buffer */
void add_event_entry(unsigned long data);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/oprofile/oprof.c linux-2.6.18-xen/drivers/oprofile/oprof.c
---- linux-2.6.18.1/drivers/oprofile/oprof.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/drivers/oprofile/oprof.c 2006-09-04 16:31:08.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/oprofile/oprof.c linux-2.6.18-xen/drivers/oprofile/oprof.c
+--- linux-2.6.18.3/drivers/oprofile/oprof.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/drivers/oprofile/oprof.c 2006-11-19 14:26:47.000000000 +0100
@@ -5,6 +5,10 @@
* @remark Read the file COPYING
*
@@ -47545,9 +45993,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/oprofile/oprof.c linux-2.6.18
int oprofile_setup(void)
{
int err;
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/oprofile/oprof.h linux-2.6.18-xen/drivers/oprofile/oprof.h
---- linux-2.6.18.1/drivers/oprofile/oprof.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/drivers/oprofile/oprof.h 2006-09-04 16:31:08.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/oprofile/oprof.h linux-2.6.18-xen/drivers/oprofile/oprof.h
+--- linux-2.6.18.3/drivers/oprofile/oprof.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/drivers/oprofile/oprof.h 2006-11-19 14:26:47.000000000 +0100
@@ -35,5 +35,8 @@
void oprofile_timer_init(struct oprofile_operations * ops);
@@ -47557,9 +46005,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/oprofile/oprof.h linux-2.6.18
+int oprofile_set_passive(int passive_domains[], unsigned int pdomains);
#endif /* OPROF_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/oprofile/oprofile_files.c linux-2.6.18-xen/drivers/oprofile/oprofile_files.c
---- linux-2.6.18.1/drivers/oprofile/oprofile_files.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/drivers/oprofile/oprofile_files.c 2006-09-04 16:31:08.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/oprofile/oprofile_files.c linux-2.6.18-xen/drivers/oprofile/oprofile_files.c
+--- linux-2.6.18.3/drivers/oprofile/oprofile_files.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/drivers/oprofile/oprofile_files.c 2006-11-19 14:26:47.000000000 +0100
@@ -5,15 +5,21 @@
* @remark Read the file COPYING
*
@@ -47793,9 +46241,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/oprofile/oprofile_files.c lin
oprofilefs_create_file(sb, root, "buffer", &event_buffer_fops);
oprofilefs_create_ulong(sb, root, "buffer_size", &fs_buffer_size);
oprofilefs_create_ulong(sb, root, "buffer_watershed", &fs_buffer_watershed);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/pci/Kconfig linux-2.6.18-xen/drivers/pci/Kconfig
---- linux-2.6.18.1/drivers/pci/Kconfig 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/drivers/pci/Kconfig 2006-09-04 16:31:08.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/pci/Kconfig linux-2.6.18-xen/drivers/pci/Kconfig
+--- linux-2.6.18.3/drivers/pci/Kconfig 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/drivers/pci/Kconfig 2006-11-19 14:26:47.000000000 +0100
@@ -5,6 +5,7 @@
bool "Message Signaled Interrupts (MSI and MSI-X)"
depends on PCI
@@ -47804,9 +46252,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/pci/Kconfig linux-2.6.18-xen/
help
This allows device drivers to enable MSI (Message Signaled
Interrupts). Message Signaled Interrupts enable a device to
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/serial/Kconfig linux-2.6.18-xen/drivers/serial/Kconfig
---- linux-2.6.18.1/drivers/serial/Kconfig 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/drivers/serial/Kconfig 2006-09-22 16:38:35.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/serial/Kconfig linux-2.6.18-xen/drivers/serial/Kconfig
+--- linux-2.6.18.3/drivers/serial/Kconfig 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/drivers/serial/Kconfig 2006-11-19 14:26:51.000000000 +0100
@@ -11,6 +11,7 @@
config SERIAL_8250
tristate "8250/16550 and compatible serial support"
@@ -47815,9 +46263,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/serial/Kconfig linux-2.6.18-x
select SERIAL_CORE
---help---
This selects whether you want to include the driver for the standard
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/balloon/balloon.c linux-2.6.18-xen/drivers/xen/balloon/balloon.c
---- linux-2.6.18.1/drivers/xen/balloon/balloon.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/balloon/balloon.c 2006-10-17 15:01:58.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/balloon/balloon.c linux-2.6.18-xen/drivers/xen/balloon/balloon.c
+--- linux-2.6.18.3/drivers/xen/balloon/balloon.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/balloon/balloon.c 2006-11-19 14:26:55.000000000 +0100
@@ -0,0 +1,637 @@
+/******************************************************************************
+ * balloon.c
@@ -48456,15 +46904,15 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/balloon/balloon.c linux-2
+EXPORT_SYMBOL_GPL(balloon_release_driver_page);
+
+MODULE_LICENSE("Dual BSD/GPL");
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/balloon/Makefile linux-2.6.18-xen/drivers/xen/balloon/Makefile
---- linux-2.6.18.1/drivers/xen/balloon/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/balloon/Makefile 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/balloon/Makefile linux-2.6.18-xen/drivers/xen/balloon/Makefile
+--- linux-2.6.18.3/drivers/xen/balloon/Makefile 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/balloon/Makefile 2006-11-19 14:26:55.000000000 +0100
@@ -0,0 +1,2 @@
+
+obj-y += balloon.o
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blkback/blkback.c linux-2.6.18-xen/drivers/xen/blkback/blkback.c
---- linux-2.6.18.1/drivers/xen/blkback/blkback.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/blkback/blkback.c 2006-10-17 15:01:58.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/blkback/blkback.c linux-2.6.18-xen/drivers/xen/blkback/blkback.c
+--- linux-2.6.18.3/drivers/xen/blkback/blkback.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/blkback/blkback.c 2006-11-19 14:26:55.000000000 +0100
@@ -0,0 +1,549 @@
+/******************************************************************************
+ * arch/xen/drivers/blkif/backend/main.c
@@ -48978,7 +47426,7 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blkback/blkback.c linux-2
+ if (!is_running_on_xen())
+ return -ENODEV;
+
-+ mmap_pages = blkif_reqs * BLKIF_MAX_SEGMENTS_PER_REQUEST;
++ mmap_pages = blkif_reqs * BLKIF_MAX_SEGMENTS_PER_REQUEST;
+
+ pending_reqs = kmalloc(sizeof(pending_reqs[0]) *
+ blkif_reqs, GFP_KERNEL);
@@ -49015,9 +47463,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blkback/blkback.c linux-2
+module_init(blkif_init);
+
+MODULE_LICENSE("Dual BSD/GPL");
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blkback/common.h linux-2.6.18-xen/drivers/xen/blkback/common.h
---- linux-2.6.18.1/drivers/xen/blkback/common.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/blkback/common.h 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/blkback/common.h linux-2.6.18-xen/drivers/xen/blkback/common.h
+--- linux-2.6.18.3/drivers/xen/blkback/common.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/blkback/common.h 2006-11-19 14:26:55.000000000 +0100
@@ -0,0 +1,133 @@
+/*
+ * This program is free software; you can redistribute it and/or
@@ -49152,9 +47600,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blkback/common.h linux-2.
+int blkif_schedule(void *arg);
+
+#endif /* __BLKIF__BACKEND__COMMON_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blkback/interface.c linux-2.6.18-xen/drivers/xen/blkback/interface.c
---- linux-2.6.18.1/drivers/xen/blkback/interface.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/blkback/interface.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/blkback/interface.c linux-2.6.18-xen/drivers/xen/blkback/interface.c
+--- linux-2.6.18.3/drivers/xen/blkback/interface.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/blkback/interface.c 2006-11-19 14:26:55.000000000 +0100
@@ -0,0 +1,171 @@
+/******************************************************************************
+ * arch/xen/drivers/blkif/backend/interface.c
@@ -49327,16 +47775,16 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blkback/interface.c linux
+ blkif_cachep = kmem_cache_create("blkif_cache", sizeof(blkif_t),
+ 0, 0, NULL, NULL);
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blkback/Makefile linux-2.6.18-xen/drivers/xen/blkback/Makefile
---- linux-2.6.18.1/drivers/xen/blkback/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/blkback/Makefile 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/blkback/Makefile linux-2.6.18-xen/drivers/xen/blkback/Makefile
+--- linux-2.6.18.3/drivers/xen/blkback/Makefile 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/blkback/Makefile 2006-11-19 14:26:55.000000000 +0100
@@ -0,0 +1,3 @@
+obj-$(CONFIG_XEN_BLKDEV_BACKEND) := blkbk.o
+
+blkbk-y := blkback.o xenbus.o interface.o vbd.o
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blkback/vbd.c linux-2.6.18-xen/drivers/xen/blkback/vbd.c
---- linux-2.6.18.1/drivers/xen/blkback/vbd.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/blkback/vbd.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/blkback/vbd.c linux-2.6.18-xen/drivers/xen/blkback/vbd.c
+--- linux-2.6.18.3/drivers/xen/blkback/vbd.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/blkback/vbd.c 2006-11-19 14:26:55.000000000 +0100
@@ -0,0 +1,119 @@
+/******************************************************************************
+ * blkback/vbd.c
@@ -49457,9 +47905,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blkback/vbd.c linux-2.6.1
+ out:
+ return rc;
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blkback/xenbus.c linux-2.6.18-xen/drivers/xen/blkback/xenbus.c
---- linux-2.6.18.1/drivers/xen/blkback/xenbus.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/blkback/xenbus.c 2006-09-21 01:33:31.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/blkback/xenbus.c linux-2.6.18-xen/drivers/xen/blkback/xenbus.c
+--- linux-2.6.18.3/drivers/xen/blkback/xenbus.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/blkback/xenbus.c 2006-11-19 14:26:55.000000000 +0100
@@ -0,0 +1,468 @@
+/* Xenbus code for blkif backend
+ Copyright (C) 2005 Rusty Russell <rusty@rustcorp.com.au>
@@ -49929,9 +48377,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blkback/xenbus.c linux-2.
+{
+ xenbus_register_backend(&blkback);
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blkfront/blkfront.c linux-2.6.18-xen/drivers/xen/blkfront/blkfront.c
---- linux-2.6.18.1/drivers/xen/blkfront/blkfront.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/blkfront/blkfront.c 2006-10-17 15:01:58.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/blkfront/blkfront.c linux-2.6.18-xen/drivers/xen/blkfront/blkfront.c
+--- linux-2.6.18.3/drivers/xen/blkfront/blkfront.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/blkfront/blkfront.c 2006-12-05 18:42:37.000000000 +0100
@@ -0,0 +1,846 @@
+/******************************************************************************
+ * blkfront.c
@@ -50779,9 +49227,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blkfront/blkfront.c linux
+module_exit(xlblk_exit);
+
+MODULE_LICENSE("Dual BSD/GPL");
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blkfront/block.h linux-2.6.18-xen/drivers/xen/blkfront/block.h
---- linux-2.6.18.1/drivers/xen/blkfront/block.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/blkfront/block.h 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/blkfront/block.h linux-2.6.18-xen/drivers/xen/blkfront/block.h
+--- linux-2.6.18.3/drivers/xen/blkfront/block.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/blkfront/block.h 2006-11-19 14:26:55.000000000 +0100
@@ -0,0 +1,154 @@
+/******************************************************************************
+ * block.h
@@ -50937,9 +49385,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blkfront/block.h linux-2.
+void xlvbd_del(struct blkfront_info *info);
+
+#endif /* __XEN_DRIVERS_BLOCK_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blkfront/Kconfig linux-2.6.18-xen/drivers/xen/blkfront/Kconfig
---- linux-2.6.18.1/drivers/xen/blkfront/Kconfig 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/blkfront/Kconfig 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/blkfront/Kconfig linux-2.6.18-xen/drivers/xen/blkfront/Kconfig
+--- linux-2.6.18.3/drivers/xen/blkfront/Kconfig 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/blkfront/Kconfig 2006-11-19 14:26:55.000000000 +0100
@@ -0,0 +1,6 @@
+
+config XENBLOCK
@@ -50947,18 +49395,18 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blkfront/Kconfig linux-2.
+ depends on ARCH_XEN
+ help
+ Block device driver for Xen
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blkfront/Makefile linux-2.6.18-xen/drivers/xen/blkfront/Makefile
---- linux-2.6.18.1/drivers/xen/blkfront/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/blkfront/Makefile 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/blkfront/Makefile linux-2.6.18-xen/drivers/xen/blkfront/Makefile
+--- linux-2.6.18.3/drivers/xen/blkfront/Makefile 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/blkfront/Makefile 2006-11-19 14:26:55.000000000 +0100
@@ -0,0 +1,5 @@
+
+obj-$(CONFIG_XEN_BLKDEV_FRONTEND) := xenblk.o
+
+xenblk-objs := blkfront.o vbd.o
+
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blkfront/vbd.c linux-2.6.18-xen/drivers/xen/blkfront/vbd.c
---- linux-2.6.18.1/drivers/xen/blkfront/vbd.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/blkfront/vbd.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/blkfront/vbd.c linux-2.6.18-xen/drivers/xen/blkfront/vbd.c
+--- linux-2.6.18.3/drivers/xen/blkfront/vbd.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/blkfront/vbd.c 2006-11-19 14:26:55.000000000 +0100
@@ -0,0 +1,318 @@
+/******************************************************************************
+ * vbd.c
@@ -51278,9 +49726,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blkfront/vbd.c linux-2.6.
+ blk_cleanup_queue(info->rq);
+ info->rq = NULL;
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blktap/blktapmain.c linux-2.6.18-xen/drivers/xen/blktap/blktapmain.c
---- linux-2.6.18.1/drivers/xen/blktap/blktapmain.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/blktap/blktapmain.c 2006-10-17 15:01:58.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/blktap/blktapmain.c linux-2.6.18-xen/drivers/xen/blktap/blktapmain.c
+--- linux-2.6.18.3/drivers/xen/blktap/blktapmain.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/blktap/blktapmain.c 2006-12-05 18:42:37.000000000 +0100
@@ -0,0 +1,1393 @@
+/******************************************************************************
+ * drivers/xen/blktap/blktap.c
@@ -52675,9 +51123,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blktap/blktapmain.c linux
+module_init(blkif_init);
+
+MODULE_LICENSE("Dual BSD/GPL");
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blktap/common.h linux-2.6.18-xen/drivers/xen/blktap/common.h
---- linux-2.6.18.1/drivers/xen/blktap/common.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/blktap/common.h 2006-09-21 01:33:31.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/blktap/common.h linux-2.6.18-xen/drivers/xen/blktap/common.h
+--- linux-2.6.18.3/drivers/xen/blktap/common.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/blktap/common.h 2006-11-19 14:26:55.000000000 +0100
@@ -0,0 +1,120 @@
+/*
+ * This program is free software; you can redistribute it and/or
@@ -52799,9 +51247,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blktap/common.h linux-2.6
+void signal_tapdisk(int idx);
+
+#endif /* __BLKIF__BACKEND__COMMON_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blktap/interface.c linux-2.6.18-xen/drivers/xen/blktap/interface.c
---- linux-2.6.18.1/drivers/xen/blktap/interface.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/blktap/interface.c 2006-09-21 01:33:31.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/blktap/interface.c linux-2.6.18-xen/drivers/xen/blktap/interface.c
+--- linux-2.6.18.3/drivers/xen/blktap/interface.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/blktap/interface.c 2006-11-19 14:26:55.000000000 +0100
@@ -0,0 +1,164 @@
+/******************************************************************************
+ * drivers/xen/blktap/interface.c
@@ -52967,9 +51415,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blktap/interface.c linux-
+ blkif_cachep = kmem_cache_create("blktapif_cache", sizeof(blkif_t),
+ 0, 0, NULL, NULL);
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blktap/Makefile linux-2.6.18-xen/drivers/xen/blktap/Makefile
---- linux-2.6.18.1/drivers/xen/blktap/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/blktap/Makefile 2006-10-17 15:01:58.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/blktap/Makefile linux-2.6.18-xen/drivers/xen/blktap/Makefile
+--- linux-2.6.18.3/drivers/xen/blktap/Makefile 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/blktap/Makefile 2006-12-05 18:42:37.000000000 +0100
@@ -0,0 +1,6 @@
+LINUXINCLUDE += -I../xen/include/public/io
+
@@ -52977,9 +51425,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blktap/Makefile linux-2.6
+
+blktap-y := xenbus.o interface.o blktapmain.o
+
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blktap/xenbus.c linux-2.6.18-xen/drivers/xen/blktap/xenbus.c
---- linux-2.6.18.1/drivers/xen/blktap/xenbus.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/blktap/xenbus.c 2006-10-17 15:01:58.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/blktap/xenbus.c linux-2.6.18-xen/drivers/xen/blktap/xenbus.c
+--- linux-2.6.18.3/drivers/xen/blktap/xenbus.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/blktap/xenbus.c 2006-11-19 14:26:55.000000000 +0100
@@ -0,0 +1,366 @@
+/* drivers/xen/blktap/xenbus.c
+ *
@@ -53347,15 +51795,15 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/blktap/xenbus.c linux-2.6
+{
+ xenbus_register_backend(&blktap);
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/char/Makefile linux-2.6.18-xen/drivers/xen/char/Makefile
---- linux-2.6.18.1/drivers/xen/char/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/char/Makefile 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/char/Makefile linux-2.6.18-xen/drivers/xen/char/Makefile
+--- linux-2.6.18.3/drivers/xen/char/Makefile 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/char/Makefile 2006-11-19 14:26:55.000000000 +0100
@@ -0,0 +1,2 @@
+
+obj-y := mem.o
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/char/mem.c linux-2.6.18-xen/drivers/xen/char/mem.c
---- linux-2.6.18.1/drivers/xen/char/mem.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/char/mem.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/char/mem.c linux-2.6.18-xen/drivers/xen/char/mem.c
+--- linux-2.6.18.3/drivers/xen/char/mem.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/char/mem.c 2006-11-19 14:26:55.000000000 +0100
@@ -0,0 +1,180 @@
+/*
+ * Originally from linux/drivers/char/mem.c
@@ -53537,9 +51985,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/char/mem.c linux-2.6.18-x
+ .mmap = mmap_mem,
+ .open = open_mem,
+};
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/console/console.c linux-2.6.18-xen/drivers/xen/console/console.c
---- linux-2.6.18.1/drivers/xen/console/console.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/console/console.c 2006-09-21 01:33:31.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/console/console.c linux-2.6.18-xen/drivers/xen/console/console.c
+--- linux-2.6.18.3/drivers/xen/console/console.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/console/console.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,688 @@
+/******************************************************************************
+ * console.c
@@ -54229,15 +52677,15 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/console/console.c linux-2
+module_init(xencons_init);
+
+MODULE_LICENSE("Dual BSD/GPL");
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/console/Makefile linux-2.6.18-xen/drivers/xen/console/Makefile
---- linux-2.6.18.1/drivers/xen/console/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/console/Makefile 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/console/Makefile linux-2.6.18-xen/drivers/xen/console/Makefile
+--- linux-2.6.18.3/drivers/xen/console/Makefile 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/console/Makefile 2006-11-19 14:26:55.000000000 +0100
@@ -0,0 +1,2 @@
+
+obj-y := console.o xencons_ring.o
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/console/xencons_ring.c linux-2.6.18-xen/drivers/xen/console/xencons_ring.c
---- linux-2.6.18.1/drivers/xen/console/xencons_ring.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/console/xencons_ring.c 2006-09-21 01:33:31.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/console/xencons_ring.c linux-2.6.18-xen/drivers/xen/console/xencons_ring.c
+--- linux-2.6.18.3/drivers/xen/console/xencons_ring.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/console/xencons_ring.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,143 @@
+/*
+ * This program is free software; you can redistribute it and/or
@@ -54382,9 +52830,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/console/xencons_ring.c li
+{
+ (void)xencons_ring_init();
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/core/cpu_hotplug.c linux-2.6.18-xen/drivers/xen/core/cpu_hotplug.c
---- linux-2.6.18.1/drivers/xen/core/cpu_hotplug.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/core/cpu_hotplug.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/core/cpu_hotplug.c linux-2.6.18-xen/drivers/xen/core/cpu_hotplug.c
+--- linux-2.6.18.3/drivers/xen/core/cpu_hotplug.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/core/cpu_hotplug.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,188 @@
+
+#include <linux/init.h>
@@ -54574,9 +53022,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/core/cpu_hotplug.c linux-
+{
+ xenbus_allowed_cpumask = cpu_present_map;
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/core/evtchn.c linux-2.6.18-xen/drivers/xen/core/evtchn.c
---- linux-2.6.18.1/drivers/xen/core/evtchn.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/core/evtchn.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/core/evtchn.c linux-2.6.18-xen/drivers/xen/core/evtchn.c
+--- linux-2.6.18.3/drivers/xen/core/evtchn.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/core/evtchn.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,868 @@
+/******************************************************************************
+ * evtchn.c
@@ -55446,9 +53894,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/core/evtchn.c linux-2.6.1
+ irq_desc[pirq_to_irq(i)].chip = &pirq_type;
+ }
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/core/features.c linux-2.6.18-xen/drivers/xen/core/features.c
---- linux-2.6.18.1/drivers/xen/core/features.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/core/features.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/core/features.c linux-2.6.18-xen/drivers/xen/core/features.c
+--- linux-2.6.18.3/drivers/xen/core/features.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/core/features.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,30 @@
+/******************************************************************************
+ * features.c
@@ -55480,9 +53928,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/core/features.c linux-2.6
+ xen_features[i*32+j] = !!(fi.submap & 1<<j);
+ }
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/core/gnttab.c linux-2.6.18-xen/drivers/xen/core/gnttab.c
---- linux-2.6.18.1/drivers/xen/core/gnttab.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/core/gnttab.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/core/gnttab.c linux-2.6.18-xen/drivers/xen/core/gnttab.c
+--- linux-2.6.18.3/drivers/xen/core/gnttab.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/core/gnttab.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,483 @@
+/******************************************************************************
+ * gnttab.c
@@ -55967,9 +54415,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/core/gnttab.c linux-2.6.1
+#ifdef CONFIG_XEN
+core_initcall(gnttab_init);
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/core/hypervisor_sysfs.c linux-2.6.18-xen/drivers/xen/core/hypervisor_sysfs.c
---- linux-2.6.18.1/drivers/xen/core/hypervisor_sysfs.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/core/hypervisor_sysfs.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/core/hypervisor_sysfs.c linux-2.6.18-xen/drivers/xen/core/hypervisor_sysfs.c
+--- linux-2.6.18.3/drivers/xen/core/hypervisor_sysfs.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/core/hypervisor_sysfs.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,59 @@
+/*
+ * copyright (c) 2006 IBM Corporation
@@ -56030,9 +54478,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/core/hypervisor_sysfs.c l
+
+device_initcall(hypervisor_subsys_init);
+EXPORT_SYMBOL_GPL(hypervisor_subsys);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/core/Makefile linux-2.6.18-xen/drivers/xen/core/Makefile
---- linux-2.6.18.1/drivers/xen/core/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/core/Makefile 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/core/Makefile linux-2.6.18-xen/drivers/xen/core/Makefile
+--- linux-2.6.18.3/drivers/xen/core/Makefile 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/core/Makefile 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,13 @@
+#
+# Makefile for the linux kernel.
@@ -56047,9 +54495,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/core/Makefile linux-2.6.1
+obj-$(CONFIG_XEN_SKBUFF) += skbuff.o
+obj-$(CONFIG_XEN_REBOOT) += reboot.o
+obj-$(CONFIG_XEN_SMPBOOT) += smpboot.o
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/core/reboot.c linux-2.6.18-xen/drivers/xen/core/reboot.c
---- linux-2.6.18.1/drivers/xen/core/reboot.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/core/reboot.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/core/reboot.c linux-2.6.18-xen/drivers/xen/core/reboot.c
+--- linux-2.6.18.3/drivers/xen/core/reboot.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/core/reboot.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,384 @@
+#define __KERNEL_SYSCALLS__
+#include <linux/version.h>
@@ -56435,9 +54883,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/core/reboot.c linux-2.6.1
+}
+
+subsys_initcall(setup_shutdown_event);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/core/skbuff.c linux-2.6.18-xen/drivers/xen/core/skbuff.c
---- linux-2.6.18.1/drivers/xen/core/skbuff.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/core/skbuff.c 2006-10-17 15:01:58.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/core/skbuff.c linux-2.6.18-xen/drivers/xen/core/skbuff.c
+--- linux-2.6.18.3/drivers/xen/core/skbuff.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/core/skbuff.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,144 @@
+
+#include <linux/module.h>
@@ -56583,9 +55031,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/core/skbuff.c linux-2.6.1
+core_initcall(skbuff_init);
+
+EXPORT_SYMBOL(__dev_alloc_skb);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/core/smpboot.c linux-2.6.18-xen/drivers/xen/core/smpboot.c
---- linux-2.6.18.1/drivers/xen/core/smpboot.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/core/smpboot.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/core/smpboot.c linux-2.6.18-xen/drivers/xen/core/smpboot.c
+--- linux-2.6.18.3/drivers/xen/core/smpboot.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/core/smpboot.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,429 @@
+/*
+ * Xen SMP booting functions
@@ -57016,9 +55464,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/core/smpboot.c linux-2.6.
+ return -EINVAL;
+}
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/core/xen_proc.c linux-2.6.18-xen/drivers/xen/core/xen_proc.c
---- linux-2.6.18.1/drivers/xen/core/xen_proc.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/core/xen_proc.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/core/xen_proc.c linux-2.6.18-xen/drivers/xen/core/xen_proc.c
+--- linux-2.6.18.3/drivers/xen/core/xen_proc.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/core/xen_proc.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,18 @@
+
+#include <linux/proc_fs.h>
@@ -57038,9 +55486,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/core/xen_proc.c linux-2.6
+{
+ remove_proc_entry(name, xen_base);
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/core/xen_sysfs.c linux-2.6.18-xen/drivers/xen/core/xen_sysfs.c
---- linux-2.6.18.1/drivers/xen/core/xen_sysfs.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/core/xen_sysfs.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/core/xen_sysfs.c linux-2.6.18-xen/drivers/xen/core/xen_sysfs.c
+--- linux-2.6.18.3/drivers/xen/core/xen_sysfs.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/core/xen_sysfs.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,378 @@
+/*
+ * copyright (c) 2006 IBM Corporation
@@ -57420,9 +55868,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/core/xen_sysfs.c linux-2.
+
+module_init(hyper_sysfs_init);
+module_exit(hyper_sysfs_exit);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/evtchn/evtchn.c linux-2.6.18-xen/drivers/xen/evtchn/evtchn.c
---- linux-2.6.18.1/drivers/xen/evtchn/evtchn.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/evtchn/evtchn.c 2006-10-17 15:01:58.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/evtchn/evtchn.c linux-2.6.18-xen/drivers/xen/evtchn/evtchn.c
+--- linux-2.6.18.3/drivers/xen/evtchn/evtchn.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/evtchn/evtchn.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,456 @@
+/******************************************************************************
+ * evtchn.c
@@ -57880,15 +56328,15 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/evtchn/evtchn.c linux-2.6
+module_exit(evtchn_cleanup);
+
+MODULE_LICENSE("Dual BSD/GPL");
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/evtchn/Makefile linux-2.6.18-xen/drivers/xen/evtchn/Makefile
---- linux-2.6.18.1/drivers/xen/evtchn/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/evtchn/Makefile 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/evtchn/Makefile linux-2.6.18-xen/drivers/xen/evtchn/Makefile
+--- linux-2.6.18.3/drivers/xen/evtchn/Makefile 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/evtchn/Makefile 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,2 @@
+
+obj-y := evtchn.o
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/Kconfig linux-2.6.18-xen/drivers/xen/Kconfig
---- linux-2.6.18.1/drivers/xen/Kconfig 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/Kconfig 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/Kconfig linux-2.6.18-xen/drivers/xen/Kconfig
+--- linux-2.6.18.3/drivers/xen/Kconfig 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/Kconfig 2006-11-19 14:26:55.000000000 +0100
@@ -0,0 +1,260 @@
+#
+# This Kconfig describe xen options
@@ -58150,9 +56598,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/Kconfig linux-2.6.18-xen/
+ depends on SMP
+
+endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/Makefile linux-2.6.18-xen/drivers/xen/Makefile
---- linux-2.6.18.1/drivers/xen/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/Makefile 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/Makefile linux-2.6.18-xen/drivers/xen/Makefile
+--- linux-2.6.18.3/drivers/xen/Makefile 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/Makefile 2006-11-19 14:26:55.000000000 +0100
@@ -0,0 +1,17 @@
+obj-y += core/
+obj-y += console/
@@ -58171,9 +56619,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/Makefile linux-2.6.18-xen
+obj-$(CONFIG_XEN_NETDEV_FRONTEND) += netfront/
+obj-$(CONFIG_XEN_PCIDEV_BACKEND) += pciback/
+obj-$(CONFIG_XEN_PCIDEV_FRONTEND) += pcifront/
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/netback/common.h linux-2.6.18-xen/drivers/xen/netback/common.h
---- linux-2.6.18.1/drivers/xen/netback/common.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/netback/common.h 2006-10-19 11:01:25.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/netback/common.h linux-2.6.18-xen/drivers/xen/netback/common.h
+--- linux-2.6.18.3/drivers/xen/netback/common.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/netback/common.h 2006-12-05 18:42:37.000000000 +0100
@@ -0,0 +1,141 @@
+/******************************************************************************
+ * arch/xen/drivers/netif/backend/common.h
@@ -58316,9 +56764,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/netback/common.h linux-2.
+}
+
+#endif /* __NETIF__BACKEND__COMMON_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/netback/interface.c linux-2.6.18-xen/drivers/xen/netback/interface.c
---- linux-2.6.18.1/drivers/xen/netback/interface.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/netback/interface.c 2006-10-19 11:01:25.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/netback/interface.c linux-2.6.18-xen/drivers/xen/netback/interface.c
+--- linux-2.6.18.3/drivers/xen/netback/interface.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/netback/interface.c 2006-12-05 18:42:37.000000000 +0100
@@ -0,0 +1,352 @@
+/******************************************************************************
+ * arch/xen/drivers/netif/backend/interface.c
@@ -58672,9 +57120,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/netback/interface.c linux
+ }
+ netif_free(netif);
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/netback/loopback.c linux-2.6.18-xen/drivers/xen/netback/loopback.c
---- linux-2.6.18.1/drivers/xen/netback/loopback.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/netback/loopback.c 2006-10-17 15:01:58.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/netback/loopback.c linux-2.6.18-xen/drivers/xen/netback/loopback.c
+--- linux-2.6.18.3/drivers/xen/netback/loopback.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/netback/loopback.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,320 @@
+/******************************************************************************
+ * netback/loopback.c
@@ -58996,19 +57444,19 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/netback/loopback.c linux-
+module_exit(loopback_exit);
+
+MODULE_LICENSE("Dual BSD/GPL");
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/netback/Makefile linux-2.6.18-xen/drivers/xen/netback/Makefile
---- linux-2.6.18.1/drivers/xen/netback/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/netback/Makefile 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/netback/Makefile linux-2.6.18-xen/drivers/xen/netback/Makefile
+--- linux-2.6.18.3/drivers/xen/netback/Makefile 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/netback/Makefile 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,5 @@
+obj-$(CONFIG_XEN_NETDEV_BACKEND) := netbk.o
+obj-$(CONFIG_XEN_NETDEV_LOOPBACK) += netloop.o
+
+netbk-y := netback.o xenbus.o interface.o
+netloop-y := loopback.o
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/netback/netback.c linux-2.6.18-xen/drivers/xen/netback/netback.c
---- linux-2.6.18.1/drivers/xen/netback/netback.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/netback/netback.c 2006-10-17 15:01:58.000000000 +0200
-@@ -0,0 +1,1509 @@
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/netback/netback.c linux-2.6.18-xen/drivers/xen/netback/netback.c
+--- linux-2.6.18.3/drivers/xen/netback/netback.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/netback/netback.c 2006-12-05 18:42:37.000000000 +0100
+@@ -0,0 +1,1510 @@
+/******************************************************************************
+ * drivers/xen/netback/netback.c
+ *
@@ -60359,6 +58807,7 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/netback/netback.c linux-2
+{
+ /* Ready for next use. */
+ init_page_count(page);
++
+ netif_idx_release(page->index);
+}
+
@@ -60518,9 +58967,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/netback/netback.c linux-2
+module_init(netback_init);
+
+MODULE_LICENSE("Dual BSD/GPL");
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/netback/xenbus.c linux-2.6.18-xen/drivers/xen/netback/xenbus.c
---- linux-2.6.18.1/drivers/xen/netback/xenbus.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/netback/xenbus.c 2006-10-19 11:01:25.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/netback/xenbus.c linux-2.6.18-xen/drivers/xen/netback/xenbus.c
+--- linux-2.6.18.3/drivers/xen/netback/xenbus.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/netback/xenbus.c 2006-12-05 18:42:37.000000000 +0100
@@ -0,0 +1,438 @@
+/* Xenbus code for netif backend
+ Copyright (C) 2005 Rusty Russell <rusty@rustcorp.com.au>
@@ -60960,9 +59409,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/netback/xenbus.c linux-2.
+{
+ xenbus_register_backend(&netback);
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/netfront/Kconfig linux-2.6.18-xen/drivers/xen/netfront/Kconfig
---- linux-2.6.18.1/drivers/xen/netfront/Kconfig 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/netfront/Kconfig 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/netfront/Kconfig linux-2.6.18-xen/drivers/xen/netfront/Kconfig
+--- linux-2.6.18.3/drivers/xen/netfront/Kconfig 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/netfront/Kconfig 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,6 @@
+
+config XENNET
@@ -60970,17 +59419,17 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/netfront/Kconfig linux-2.
+ depends on NETDEVICES && ARCH_XEN
+ help
+ Network driver for Xen
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/netfront/Makefile linux-2.6.18-xen/drivers/xen/netfront/Makefile
---- linux-2.6.18.1/drivers/xen/netfront/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/netfront/Makefile 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/netfront/Makefile linux-2.6.18-xen/drivers/xen/netfront/Makefile
+--- linux-2.6.18.3/drivers/xen/netfront/Makefile 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/netfront/Makefile 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,4 @@
+
+obj-$(CONFIG_XEN_NETDEV_FRONTEND) := xennet.o
+
+xennet-objs := netfront.o
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/netfront/netfront.c linux-2.6.18-xen/drivers/xen/netfront/netfront.c
---- linux-2.6.18.1/drivers/xen/netfront/netfront.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/netfront/netfront.c 2006-10-19 11:01:25.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/netfront/netfront.c linux-2.6.18-xen/drivers/xen/netfront/netfront.c
+--- linux-2.6.18.3/drivers/xen/netfront/netfront.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/netfront/netfront.c 2006-12-05 18:42:37.000000000 +0100
@@ -0,0 +1,2138 @@
+/******************************************************************************
+ * Virtual network driver for conversing with remote driver backends.
@@ -63120,9 +61569,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/netfront/netfront.c linux
+module_exit(netif_exit);
+
+MODULE_LICENSE("Dual BSD/GPL");
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/conf_space.c linux-2.6.18-xen/drivers/xen/pciback/conf_space.c
---- linux-2.6.18.1/drivers/xen/pciback/conf_space.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/pciback/conf_space.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/pciback/conf_space.c linux-2.6.18-xen/drivers/xen/pciback/conf_space.c
+--- linux-2.6.18.3/drivers/xen/pciback/conf_space.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/pciback/conf_space.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,425 @@
+/*
+ * PCI Backend - Functions for creating a virtual configuration space for
@@ -63549,9 +61998,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/conf_space.c linu
+{
+ return pciback_config_capability_init();
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/conf_space_capability.c linux-2.6.18-xen/drivers/xen/pciback/conf_space_capability.c
---- linux-2.6.18.1/drivers/xen/pciback/conf_space_capability.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/pciback/conf_space_capability.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/pciback/conf_space_capability.c linux-2.6.18-xen/drivers/xen/pciback/conf_space_capability.c
+--- linux-2.6.18.3/drivers/xen/pciback/conf_space_capability.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/pciback/conf_space_capability.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,71 @@
+/*
+ * PCI Backend - Handles the virtual fields found on the capability lists
@@ -63624,9 +62073,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/conf_space_capabi
+
+ return 0;
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/conf_space_capability.h linux-2.6.18-xen/drivers/xen/pciback/conf_space_capability.h
---- linux-2.6.18.1/drivers/xen/pciback/conf_space_capability.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/pciback/conf_space_capability.h 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/pciback/conf_space_capability.h linux-2.6.18-xen/drivers/xen/pciback/conf_space_capability.h
+--- linux-2.6.18.3/drivers/xen/pciback/conf_space_capability.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/pciback/conf_space_capability.h 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,23 @@
+/*
+ * PCI Backend - Data structures for special overlays for structures on
@@ -63651,9 +62100,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/conf_space_capabi
+};
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/conf_space_capability_pm.c linux-2.6.18-xen/drivers/xen/pciback/conf_space_capability_pm.c
---- linux-2.6.18.1/drivers/xen/pciback/conf_space_capability_pm.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/pciback/conf_space_capability_pm.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/pciback/conf_space_capability_pm.c linux-2.6.18-xen/drivers/xen/pciback/conf_space_capability_pm.c
+--- linux-2.6.18.3/drivers/xen/pciback/conf_space_capability_pm.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/pciback/conf_space_capability_pm.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,113 @@
+/*
+ * PCI Backend - Configuration space overlay for power management
@@ -63768,9 +62217,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/conf_space_capabi
+ .capability = PCI_CAP_ID_PM,
+ .fields = caplist_pm,
+};
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/conf_space_capability_vpd.c linux-2.6.18-xen/drivers/xen/pciback/conf_space_capability_vpd.c
---- linux-2.6.18.1/drivers/xen/pciback/conf_space_capability_vpd.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/pciback/conf_space_capability_vpd.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/pciback/conf_space_capability_vpd.c linux-2.6.18-xen/drivers/xen/pciback/conf_space_capability_vpd.c
+--- linux-2.6.18.3/drivers/xen/pciback/conf_space_capability_vpd.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/pciback/conf_space_capability_vpd.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,42 @@
+/*
+ * PCI Backend - Configuration space overlay for Vital Product Data
@@ -63814,9 +62263,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/conf_space_capabi
+ .capability = PCI_CAP_ID_VPD,
+ .fields = caplist_vpd,
+};
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/conf_space.h linux-2.6.18-xen/drivers/xen/pciback/conf_space.h
---- linux-2.6.18.1/drivers/xen/pciback/conf_space.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/pciback/conf_space.h 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/pciback/conf_space.h linux-2.6.18-xen/drivers/xen/pciback/conf_space.h
+--- linux-2.6.18.3/drivers/xen/pciback/conf_space.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/pciback/conf_space.h 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,126 @@
+/*
+ * PCI Backend - Common data structures for overriding the configuration space
@@ -63944,9 +62393,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/conf_space.h linu
+int pciback_config_capability_add_fields(struct pci_dev *dev);
+
+#endif /* __XEN_PCIBACK_CONF_SPACE_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/conf_space_header.c linux-2.6.18-xen/drivers/xen/pciback/conf_space_header.c
---- linux-2.6.18.1/drivers/xen/pciback/conf_space_header.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/pciback/conf_space_header.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/pciback/conf_space_header.c linux-2.6.18-xen/drivers/xen/pciback/conf_space_header.c
+--- linux-2.6.18.3/drivers/xen/pciback/conf_space_header.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/pciback/conf_space_header.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,299 @@
+/*
+ * PCI Backend - Handles the virtual fields in the configuration space headers.
@@ -64247,9 +62696,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/conf_space_header
+ out:
+ return err;
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/conf_space_quirks.c linux-2.6.18-xen/drivers/xen/pciback/conf_space_quirks.c
---- linux-2.6.18.1/drivers/xen/pciback/conf_space_quirks.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/pciback/conf_space_quirks.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/pciback/conf_space_quirks.c linux-2.6.18-xen/drivers/xen/pciback/conf_space_quirks.c
+--- linux-2.6.18.3/drivers/xen/pciback/conf_space_quirks.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/pciback/conf_space_quirks.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,128 @@
+/*
+ * PCI Backend - Handle special overlays for broken devices.
@@ -64379,9 +62828,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/conf_space_quirks
+ out:
+ return ret;
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/conf_space_quirks.h linux-2.6.18-xen/drivers/xen/pciback/conf_space_quirks.h
---- linux-2.6.18.1/drivers/xen/pciback/conf_space_quirks.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/pciback/conf_space_quirks.h 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/pciback/conf_space_quirks.h linux-2.6.18-xen/drivers/xen/pciback/conf_space_quirks.h
+--- linux-2.6.18.3/drivers/xen/pciback/conf_space_quirks.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/pciback/conf_space_quirks.h 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,35 @@
+/*
+ * PCI Backend - Data structures for special overlays for broken devices.
@@ -64418,9 +62867,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/conf_space_quirks
+int pciback_field_is_dup(struct pci_dev *dev, int reg);
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/Makefile linux-2.6.18-xen/drivers/xen/pciback/Makefile
---- linux-2.6.18.1/drivers/xen/pciback/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/pciback/Makefile 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/pciback/Makefile linux-2.6.18-xen/drivers/xen/pciback/Makefile
+--- linux-2.6.18.3/drivers/xen/pciback/Makefile 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/pciback/Makefile 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,15 @@
+obj-$(CONFIG_XEN_PCIDEV_BACKEND) += pciback.o
+
@@ -64437,9 +62886,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/Makefile linux-2.
+ifeq ($(CONFIG_XEN_PCIDEV_BE_DEBUG),y)
+EXTRA_CFLAGS += -DDEBUG
+endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/passthrough.c linux-2.6.18-xen/drivers/xen/pciback/passthrough.c
---- linux-2.6.18.1/drivers/xen/pciback/passthrough.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/pciback/passthrough.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/pciback/passthrough.c linux-2.6.18-xen/drivers/xen/pciback/passthrough.c
+--- linux-2.6.18.3/drivers/xen/pciback/passthrough.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/pciback/passthrough.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,157 @@
+/*
+ * PCI Backend - Provides restricted access to the real PCI bus topology
@@ -64598,9 +63047,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/passthrough.c lin
+ kfree(dev_data);
+ pdev->pci_dev_data = NULL;
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/pciback.h linux-2.6.18-xen/drivers/xen/pciback/pciback.h
---- linux-2.6.18.1/drivers/xen/pciback/pciback.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/pciback/pciback.h 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/pciback/pciback.h linux-2.6.18-xen/drivers/xen/pciback/pciback.h
+--- linux-2.6.18.3/drivers/xen/pciback/pciback.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/pciback/pciback.h 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,93 @@
+/*
+ * PCI Backend Common Data Structures & Function Declarations
@@ -64695,9 +63144,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/pciback.h linux-2
+
+extern int verbose_request;
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/pciback_ops.c linux-2.6.18-xen/drivers/xen/pciback/pciback_ops.c
---- linux-2.6.18.1/drivers/xen/pciback/pciback_ops.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/pciback/pciback_ops.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/pciback/pciback_ops.c linux-2.6.18-xen/drivers/xen/pciback/pciback_ops.c
+--- linux-2.6.18.3/drivers/xen/pciback/pciback_ops.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/pciback/pciback_ops.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,95 @@
+/*
+ * PCI Backend Operations - respond to PCI requests from Frontend
@@ -64794,9 +63243,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/pciback_ops.c lin
+
+ return IRQ_HANDLED;
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/pci_stub.c linux-2.6.18-xen/drivers/xen/pciback/pci_stub.c
---- linux-2.6.18.1/drivers/xen/pciback/pci_stub.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/pciback/pci_stub.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/pciback/pci_stub.c linux-2.6.18-xen/drivers/xen/pciback/pci_stub.c
+--- linux-2.6.18.3/drivers/xen/pciback/pci_stub.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/pciback/pci_stub.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,916 @@
+/*
+ * PCI Stub Driver - Grabs devices in backend to be exported later
@@ -65714,9 +64163,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/pci_stub.c linux-
+module_exit(pciback_cleanup);
+
+MODULE_LICENSE("Dual BSD/GPL");
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/slot.c linux-2.6.18-xen/drivers/xen/pciback/slot.c
---- linux-2.6.18.1/drivers/xen/pciback/slot.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/pciback/slot.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/pciback/slot.c linux-2.6.18-xen/drivers/xen/pciback/slot.c
+--- linux-2.6.18.3/drivers/xen/pciback/slot.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/pciback/slot.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,151 @@
+/*
+ * PCI Backend - Provides a Virtual PCI bus (with real devices)
@@ -65869,9 +64318,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/slot.c linux-2.6.
+ kfree(slot_dev);
+ pdev->pci_dev_data = NULL;
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/vpci.c linux-2.6.18-xen/drivers/xen/pciback/vpci.c
---- linux-2.6.18.1/drivers/xen/pciback/vpci.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/pciback/vpci.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/pciback/vpci.c linux-2.6.18-xen/drivers/xen/pciback/vpci.c
+--- linux-2.6.18.3/drivers/xen/pciback/vpci.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/pciback/vpci.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,204 @@
+/*
+ * PCI Backend - Provides a Virtual PCI bus (with real devices)
@@ -66077,9 +64526,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/vpci.c linux-2.6.
+ kfree(vpci_dev);
+ pdev->pci_dev_data = NULL;
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/xenbus.c linux-2.6.18-xen/drivers/xen/pciback/xenbus.c
---- linux-2.6.18.1/drivers/xen/pciback/xenbus.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/pciback/xenbus.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/pciback/xenbus.c linux-2.6.18-xen/drivers/xen/pciback/xenbus.c
+--- linux-2.6.18.3/drivers/xen/pciback/xenbus.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/pciback/xenbus.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,458 @@
+/*
+ * PCI Backend Xenbus Setup - handles setup with frontend and xend
@@ -66539,9 +64988,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pciback/xenbus.c linux-2.
+{
+ xenbus_unregister_driver(&xenbus_pciback_driver);
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pcifront/Makefile linux-2.6.18-xen/drivers/xen/pcifront/Makefile
---- linux-2.6.18.1/drivers/xen/pcifront/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/pcifront/Makefile 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/pcifront/Makefile linux-2.6.18-xen/drivers/xen/pcifront/Makefile
+--- linux-2.6.18.3/drivers/xen/pcifront/Makefile 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/pcifront/Makefile 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,7 @@
+obj-y += pcifront.o
+
@@ -66550,9 +64999,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pcifront/Makefile linux-2
+ifeq ($(CONFIG_XEN_PCIDEV_FE_DEBUG),y)
+EXTRA_CFLAGS += -DDEBUG
+endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pcifront/pci.c linux-2.6.18-xen/drivers/xen/pcifront/pci.c
---- linux-2.6.18.1/drivers/xen/pcifront/pci.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/pcifront/pci.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/pcifront/pci.c linux-2.6.18-xen/drivers/xen/pcifront/pci.c
+--- linux-2.6.18.3/drivers/xen/pcifront/pci.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/pcifront/pci.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,46 @@
+/*
+ * PCI Frontend Operations - ensure only one PCI frontend runs at a time
@@ -66600,9 +65049,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pcifront/pci.c linux-2.6.
+
+ spin_unlock(&pcifront_dev_lock);
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pcifront/pcifront.h linux-2.6.18-xen/drivers/xen/pcifront/pcifront.h
---- linux-2.6.18.1/drivers/xen/pcifront/pcifront.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/pcifront/pcifront.h 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/pcifront/pcifront.h linux-2.6.18-xen/drivers/xen/pcifront/pcifront.h
+--- linux-2.6.18.3/drivers/xen/pcifront/pcifront.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/pcifront/pcifront.h 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,40 @@
+/*
+ * PCI Frontend - Common data structures & function declarations
@@ -66644,9 +65093,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pcifront/pcifront.h linux
+void pcifront_free_roots(struct pcifront_device *pdev);
+
+#endif /* __XEN_PCIFRONT_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pcifront/pci_op.c linux-2.6.18-xen/drivers/xen/pcifront/pci_op.c
---- linux-2.6.18.1/drivers/xen/pcifront/pci_op.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/pcifront/pci_op.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/pcifront/pci_op.c linux-2.6.18-xen/drivers/xen/pcifront/pci_op.c
+--- linux-2.6.18.3/drivers/xen/pcifront/pci_op.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/pcifront/pci_op.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,273 @@
+/*
+ * PCI Frontend Operations - Communicates with frontend
@@ -66921,9 +65370,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pcifront/pci_op.c linux-2
+ kfree(bus_entry);
+ }
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pcifront/xenbus.c linux-2.6.18-xen/drivers/xen/pcifront/xenbus.c
---- linux-2.6.18.1/drivers/xen/pcifront/xenbus.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/pcifront/xenbus.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/pcifront/xenbus.c linux-2.6.18-xen/drivers/xen/pcifront/xenbus.c
+--- linux-2.6.18.3/drivers/xen/pcifront/xenbus.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/pcifront/xenbus.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,295 @@
+/*
+ * PCI Frontend Xenbus Setup - handles setup with backend (imports page/evtchn)
@@ -67220,16 +65669,16 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/pcifront/xenbus.c linux-2
+
+/* Initialize after the Xen PCI Frontend Stub is initialized */
+subsys_initcall(pcifront_init);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/privcmd/Makefile linux-2.6.18-xen/drivers/xen/privcmd/Makefile
---- linux-2.6.18.1/drivers/xen/privcmd/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/privcmd/Makefile 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/privcmd/Makefile linux-2.6.18-xen/drivers/xen/privcmd/Makefile
+--- linux-2.6.18.3/drivers/xen/privcmd/Makefile 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/privcmd/Makefile 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,2 @@
+
+obj-$(CONFIG_XEN_PRIVCMD) := privcmd.o
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/privcmd/privcmd.c linux-2.6.18-xen/drivers/xen/privcmd/privcmd.c
---- linux-2.6.18.1/drivers/xen/privcmd/privcmd.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/privcmd/privcmd.c 2006-10-17 15:01:58.000000000 +0200
-@@ -0,0 +1,283 @@
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/privcmd/privcmd.c linux-2.6.18-xen/drivers/xen/privcmd/privcmd.c
+--- linux-2.6.18.3/drivers/xen/privcmd/privcmd.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/privcmd/privcmd.c 2006-12-05 18:42:37.000000000 +0100
+@@ -0,0 +1,294 @@
+/******************************************************************************
+ * privcmd.c
+ *
@@ -67318,7 +65767,18 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/privcmd/privcmd.c linux-2
+ : "r8", "r10", "memory" );
+ }
+#elif defined (__ia64__)
-+ ret = privcmd_hypercall(&hypercall);
++ __asm__ __volatile__ (
++ ";; mov r14=%2; mov r15=%3; "
++ "mov r16=%4; mov r17=%5; mov r18=%6;"
++ "mov r2=%1; break 0x1000;; mov %0=r8 ;;"
++ : "=r" (ret)
++ : "r" (hypercall.op),
++ "r" (hypercall.arg[0]),
++ "r" (hypercall.arg[1]),
++ "r" (hypercall.arg[2]),
++ "r" (hypercall.arg[3]),
++ "r" (hypercall.arg[4])
++ : "r14","r15","r16","r17","r18","r2","r8","memory");
+#endif
+ }
+ break;
@@ -67513,9 +65973,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/privcmd/privcmd.c linux-2
+}
+
+__initcall(privcmd_init);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/tpmback/common.h linux-2.6.18-xen/drivers/xen/tpmback/common.h
---- linux-2.6.18.1/drivers/xen/tpmback/common.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/tpmback/common.h 2006-10-17 15:01:58.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/tpmback/common.h linux-2.6.18-xen/drivers/xen/tpmback/common.h
+--- linux-2.6.18.3/drivers/xen/tpmback/common.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/tpmback/common.h 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,86 @@
+/******************************************************************************
+ * drivers/xen/tpmback/common.h
@@ -67603,9 +66063,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/tpmback/common.h linux-2.
+}
+
+#endif /* __TPMIF__BACKEND__COMMON_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/tpmback/interface.c linux-2.6.18-xen/drivers/xen/tpmback/interface.c
---- linux-2.6.18.1/drivers/xen/tpmback/interface.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/tpmback/interface.c 2006-10-17 15:01:58.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/tpmback/interface.c linux-2.6.18-xen/drivers/xen/tpmback/interface.c
+--- linux-2.6.18.3/drivers/xen/tpmback/interface.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/tpmback/interface.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,182 @@
+ /*****************************************************************************
+ * drivers/xen/tpmback/interface.c
@@ -67789,17 +66249,17 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/tpmback/interface.c linux
+{
+ kmem_cache_destroy(tpmif_cachep);
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/tpmback/Makefile linux-2.6.18-xen/drivers/xen/tpmback/Makefile
---- linux-2.6.18.1/drivers/xen/tpmback/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/tpmback/Makefile 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/tpmback/Makefile linux-2.6.18-xen/drivers/xen/tpmback/Makefile
+--- linux-2.6.18.3/drivers/xen/tpmback/Makefile 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/tpmback/Makefile 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,4 @@
+
+obj-$(CONFIG_XEN_TPMDEV_BACKEND) += tpmbk.o
+
+tpmbk-y += tpmback.o interface.o xenbus.o
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/tpmback/tpmback.c linux-2.6.18-xen/drivers/xen/tpmback/tpmback.c
---- linux-2.6.18.1/drivers/xen/tpmback/tpmback.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/tpmback/tpmback.c 2006-10-17 15:01:58.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/tpmback/tpmback.c linux-2.6.18-xen/drivers/xen/tpmback/tpmback.c
+--- linux-2.6.18.3/drivers/xen/tpmback/tpmback.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/tpmback/tpmback.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,944 @@
+/******************************************************************************
+ * drivers/xen/tpmback/tpmback.c
@@ -68745,9 +67205,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/tpmback/tpmback.c linux-2
+}
+
+MODULE_LICENSE("Dual BSD/GPL");
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/tpmback/xenbus.c linux-2.6.18-xen/drivers/xen/tpmback/xenbus.c
---- linux-2.6.18.1/drivers/xen/tpmback/xenbus.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/tpmback/xenbus.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/tpmback/xenbus.c linux-2.6.18-xen/drivers/xen/tpmback/xenbus.c
+--- linux-2.6.18.3/drivers/xen/tpmback/xenbus.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/tpmback/xenbus.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,287 @@
+/* Xenbus code for tpmif backend
+ Copyright (C) 2005 IBM Corporation
@@ -69036,9 +67496,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/tpmback/xenbus.c linux-2.
+{
+ xenbus_unregister_driver(&tpmback);
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/util.c linux-2.6.18-xen/drivers/xen/util.c
---- linux-2.6.18.1/drivers/xen/util.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/util.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/util.c linux-2.6.18-xen/drivers/xen/util.c
+--- linux-2.6.18.3/drivers/xen/util.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/util.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,70 @@
+
+#include <linux/mm.h>
@@ -69110,9 +67570,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/util.c linux-2.6.18-xen/d
+ preempt_enable();
+}
+EXPORT_SYMBOL_GPL(unlock_vm_area);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/xenbus/Makefile linux-2.6.18-xen/drivers/xen/xenbus/Makefile
---- linux-2.6.18.1/drivers/xen/xenbus/Makefile 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/xenbus/Makefile 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/xenbus/Makefile linux-2.6.18-xen/drivers/xen/xenbus/Makefile
+--- linux-2.6.18.3/drivers/xen/xenbus/Makefile 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/xenbus/Makefile 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,12 @@
+obj-y += xenbus.o
+obj-$(CONFIG_XEN_BACKEND) += xenbus_be.o
@@ -69126,9 +67586,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/xenbus/Makefile linux-2.6
+xenbus-objs += xenbus_xs.o
+xenbus-objs += xenbus_probe.o
+obj-$(CONFIG_XEN_XENBUS_DEV) += xenbus_dev.o
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/xenbus/xenbus_backend_client.c linux-2.6.18-xen/drivers/xen/xenbus/xenbus_backend_client.c
---- linux-2.6.18.1/drivers/xen/xenbus/xenbus_backend_client.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/xenbus/xenbus_backend_client.c 2006-09-21 01:33:31.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/xenbus/xenbus_backend_client.c linux-2.6.18-xen/drivers/xen/xenbus/xenbus_backend_client.c
+--- linux-2.6.18.3/drivers/xen/xenbus/xenbus_backend_client.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/xenbus/xenbus_backend_client.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,147 @@
+/******************************************************************************
+ * Backend-client-facing interface for the Xenbus driver. In other words, the
@@ -69277,9 +67737,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/xenbus/xenbus_backend_cli
+EXPORT_SYMBOL_GPL(xenbus_dev_is_online);
+
+MODULE_LICENSE("Dual BSD/GPL");
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/xenbus/xenbus_client.c linux-2.6.18-xen/drivers/xen/xenbus/xenbus_client.c
---- linux-2.6.18.1/drivers/xen/xenbus/xenbus_client.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/xenbus/xenbus_client.c 2006-09-21 01:33:31.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/xenbus/xenbus_client.c linux-2.6.18-xen/drivers/xen/xenbus/xenbus_client.c
+--- linux-2.6.18.3/drivers/xen/xenbus/xenbus_client.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/xenbus/xenbus_client.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,299 @@
+/******************************************************************************
+ * Client-facing interface for the Xenbus driver. In other words, the
@@ -69580,9 +68040,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/xenbus/xenbus_client.c li
+ return result;
+}
+EXPORT_SYMBOL_GPL(xenbus_read_driver_state);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/xenbus/xenbus_comms.c linux-2.6.18-xen/drivers/xen/xenbus/xenbus_comms.c
---- linux-2.6.18.1/drivers/xen/xenbus/xenbus_comms.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/xenbus/xenbus_comms.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/xenbus/xenbus_comms.c linux-2.6.18-xen/drivers/xen/xenbus/xenbus_comms.c
+--- linux-2.6.18.3/drivers/xen/xenbus/xenbus_comms.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/xenbus/xenbus_comms.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,203 @@
+/******************************************************************************
+ * xenbus_comms.c
@@ -69787,9 +68247,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/xenbus/xenbus_comms.c lin
+
+ return 0;
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/xenbus/xenbus_comms.h linux-2.6.18-xen/drivers/xen/xenbus/xenbus_comms.h
---- linux-2.6.18.1/drivers/xen/xenbus/xenbus_comms.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/xenbus/xenbus_comms.h 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/xenbus/xenbus_comms.h linux-2.6.18-xen/drivers/xen/xenbus/xenbus_comms.h
+--- linux-2.6.18.3/drivers/xen/xenbus/xenbus_comms.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/xenbus/xenbus_comms.h 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,45 @@
+/*
+ * Private include for xenbus communications.
@@ -69836,9 +68296,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/xenbus/xenbus_comms.h lin
+extern int xen_store_evtchn;
+
+#endif /* _XENBUS_COMMS_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/xenbus/xenbus_dev.c linux-2.6.18-xen/drivers/xen/xenbus/xenbus_dev.c
---- linux-2.6.18.1/drivers/xen/xenbus/xenbus_dev.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/xenbus/xenbus_dev.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/xenbus/xenbus_dev.c linux-2.6.18-xen/drivers/xen/xenbus/xenbus_dev.c
+--- linux-2.6.18.3/drivers/xen/xenbus/xenbus_dev.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/xenbus/xenbus_dev.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,356 @@
+/*
+ * xenbus_dev.c
@@ -70196,10 +68656,10 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/xenbus/xenbus_dev.c linux
+
+ return 0;
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/xenbus/xenbus_probe.c linux-2.6.18-xen/drivers/xen/xenbus/xenbus_probe.c
---- linux-2.6.18.1/drivers/xen/xenbus/xenbus_probe.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/xenbus/xenbus_probe.c 2006-10-17 15:01:58.000000000 +0200
-@@ -0,0 +1,1190 @@
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/xenbus/xenbus_probe.c linux-2.6.18-xen/drivers/xen/xenbus/xenbus_probe.c
+--- linux-2.6.18.3/drivers/xen/xenbus/xenbus_probe.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/xenbus/xenbus_probe.c 2006-11-19 14:26:56.000000000 +0100
+@@ -0,0 +1,1189 @@
+/******************************************************************************
+ * Talks to Xen Store to figure out what devices we have.
+ *
@@ -70250,7 +68710,6 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/xenbus/xenbus_probe.c lin
+#include <asm/maddr.h>
+#include <asm/pgtable.h>
+#include <asm/hypervisor.h>
-+#include <asm/hypercall.h>
+#include <xen/xenbus.h>
+#include <xen/xen_proc.h>
+#include <xen/evtchn.h>
@@ -71390,9 +69849,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/xenbus/xenbus_probe.c lin
+
+late_initcall(boot_wait_for_devices);
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/xenbus/xenbus_xs.c linux-2.6.18-xen/drivers/xen/xenbus/xenbus_xs.c
---- linux-2.6.18.1/drivers/xen/xenbus/xenbus_xs.c 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/drivers/xen/xenbus/xenbus_xs.c 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/drivers/xen/xenbus/xenbus_xs.c linux-2.6.18-xen/drivers/xen/xenbus/xenbus_xs.c
+--- linux-2.6.18.3/drivers/xen/xenbus/xenbus_xs.c 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/drivers/xen/xenbus/xenbus_xs.c 2006-11-19 14:26:56.000000000 +0100
@@ -0,0 +1,853 @@
+/******************************************************************************
+ * xenbus_xs.c
@@ -72247,9 +70706,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/drivers/xen/xenbus/xenbus_xs.c linux-
+
+ return 0;
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/fs/Kconfig linux-2.6.18-xen/fs/Kconfig
---- linux-2.6.18.1/fs/Kconfig 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/fs/Kconfig 2006-09-04 16:31:13.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/fs/Kconfig linux-2.6.18-xen/fs/Kconfig
+--- linux-2.6.18.3/fs/Kconfig 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/fs/Kconfig 2006-11-19 14:26:56.000000000 +0100
@@ -865,6 +865,7 @@
config HUGETLBFS
bool "HugeTLB file system support"
@@ -72258,9 +70717,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/fs/Kconfig linux-2.6.18-xen/fs/Kconfi
help
hugetlbfs is a filesystem backing for HugeTLB pages, based on
ramfs. For architectures that support it, say Y here and read
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-generic/vmlinux.lds.h linux-2.6.18-xen/include/asm-generic/vmlinux.lds.h
---- linux-2.6.18.1/include/asm-generic/vmlinux.lds.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/asm-generic/vmlinux.lds.h 2006-09-21 01:33:31.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-generic/vmlinux.lds.h linux-2.6.18-xen/include/asm-generic/vmlinux.lds.h
+--- linux-2.6.18.3/include/asm-generic/vmlinux.lds.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/asm-generic/vmlinux.lds.h 2006-11-19 14:27:04.000000000 +0100
@@ -194,3 +194,6 @@
.stab.index 0 : { *(.stab.index) } \
.stab.indexstr 0 : { *(.stab.indexstr) } \
@@ -72268,9 +70727,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-generic/vmlinux.lds.h lin
+
+#define NOTES \
+ .notes : { *(.note.*) } :note
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/apic.h linux-2.6.18-xen/include/asm-i386/apic.h
---- linux-2.6.18.1/include/asm-i386/apic.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/asm-i386/apic.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/apic.h linux-2.6.18-xen/include/asm-i386/apic.h
+--- linux-2.6.18.3/include/asm-i386/apic.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/asm-i386/apic.h 2006-11-19 14:27:04.000000000 +0100
@@ -119,10 +119,12 @@
extern int disable_timer_pin_1;
@@ -72284,9 +70743,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/apic.h linux-2.6.18-
extern int timer_over_8254;
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/fixmap.h linux-2.6.18-xen/include/asm-i386/fixmap.h
---- linux-2.6.18.1/include/asm-i386/fixmap.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/asm-i386/fixmap.h 2006-09-21 01:33:32.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/fixmap.h linux-2.6.18-xen/include/asm-i386/fixmap.h
+--- linux-2.6.18.3/include/asm-i386/fixmap.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/asm-i386/fixmap.h 2006-12-05 18:42:37.000000000 +0100
@@ -19,6 +19,7 @@
* Leave one empty page between vmalloc'ed areas and
* the start of the fixmap.
@@ -72295,9 +70754,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/fixmap.h linux-2.6.1
#define __FIXADDR_TOP 0xfffff000
#ifndef __ASSEMBLY__
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-default/mach_traps.h linux-2.6.18-xen/include/asm-i386/mach-default/mach_traps.h
---- linux-2.6.18.1/include/asm-i386/mach-default/mach_traps.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/asm-i386/mach-default/mach_traps.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-default/mach_traps.h linux-2.6.18-xen/include/asm-i386/mach-default/mach_traps.h
+--- linux-2.6.18.3/include/asm-i386/mach-default/mach_traps.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/asm-i386/mach-default/mach_traps.h 2006-11-19 14:27:04.000000000 +0100
@@ -15,6 +15,18 @@
outb(reason, 0x61);
}
@@ -72317,9 +70776,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-default/mach_tr
static inline unsigned char get_nmi_reason(void)
{
return inb(0x61);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/agp.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/agp.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/agp.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/agp.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/agp.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/agp.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/agp.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/agp.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,37 @@
+#ifndef AGP_H
+#define AGP_H 1
@@ -72358,9 +70817,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/agp.h l
+ dma_free_coherent(NULL,PAGE_SIZE<<(order),(table),virt_to_bus(table))
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/desc.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/desc.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/desc.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/desc.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/desc.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/desc.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/desc.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/desc.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,164 @@
+#ifndef __ARCH_DESC_H
+#define __ARCH_DESC_H
@@ -72526,9 +70985,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/desc.h
+#endif /* !__ASSEMBLY__ */
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/dma-mapping.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/dma-mapping.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/dma-mapping.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/dma-mapping.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/dma-mapping.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/dma-mapping.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/dma-mapping.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/dma-mapping.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,151 @@
+#ifndef _ASM_I386_DMA_MAPPING_H
+#define _ASM_I386_DMA_MAPPING_H
@@ -72681,9 +71140,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/dma-map
+ dma_addr_t device_addr, size_t size);
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/fixmap.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/fixmap.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/fixmap.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/fixmap.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/fixmap.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/fixmap.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/fixmap.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/fixmap.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,156 @@
+/*
+ * fixmap.h: compile-time virtual memory allocation
@@ -72841,9 +71300,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/fixmap.
+
+#endif /* !__ASSEMBLY__ */
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/floppy.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/floppy.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/floppy.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/floppy.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/floppy.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/floppy.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/floppy.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/floppy.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,147 @@
+/*
+ * Architecture specific parts of the Floppy driver
@@ -72992,9 +71451,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/floppy.
+#define EXTRA_FLOPPY_PARAMS
+
+#endif /* __ASM_XEN_I386_FLOPPY_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/highmem.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/highmem.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/highmem.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/highmem.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/highmem.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/highmem.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/highmem.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/highmem.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,80 @@
+/*
+ * highmem.h: virtual kernel memory mappings for high memory
@@ -73076,9 +71535,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/highmem
+#endif /* __KERNEL__ */
+
+#endif /* _ASM_HIGHMEM_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/hw_irq.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/hw_irq.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/hw_irq.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/hw_irq.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/hw_irq.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/hw_irq.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/hw_irq.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/hw_irq.h 2006-12-05 18:42:37.000000000 +0100
@@ -0,0 +1,72 @@
+#ifndef _ASM_HW_IRQ_H
+#define _ASM_HW_IRQ_H
@@ -73152,9 +71611,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/hw_irq.
+#define IO_APIC_IRQ(x) (((x) >= 16) || ((1<<(x)) & io_apic_irqs))
+
+#endif /* _ASM_HW_IRQ_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/hypercall.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/hypercall.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/hypercall.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/hypercall.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/hypercall.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/hypercall.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/hypercall.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/hypercall.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,389 @@
+/******************************************************************************
+ * hypercall.h
@@ -73545,9 +72004,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/hyperca
+
+
+#endif /* __HYPERCALL_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/hypervisor.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/hypervisor.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/hypervisor.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/hypervisor.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/hypervisor.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/hypervisor.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/hypervisor.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/hypervisor.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,234 @@
+/******************************************************************************
+ * hypervisor.h
@@ -73783,9 +72242,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/hypervi
+}
+
+#endif /* __HYPERVISOR_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/io.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/io.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/io.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/io.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/io.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/io.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/io.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/io.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,389 @@
+#ifndef _ASM_IO_H
+#define _ASM_IO_H
@@ -74176,9 +72635,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/io.h li
+#define ARCH_HAS_DEV_MEM
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/irqflags.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/irqflags.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/irqflags.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/irqflags.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/irqflags.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/irqflags.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/irqflags.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/irqflags.h 2006-12-05 18:42:37.000000000 +0100
@@ -0,0 +1,80 @@
+/*
+ * include/asm-i386/irqflags.h
@@ -74260,9 +72719,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/irqflag
+#endif
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/kmap_types.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/kmap_types.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/kmap_types.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/kmap_types.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/kmap_types.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/kmap_types.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/kmap_types.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/kmap_types.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,31 @@
+#ifndef _ASM_KMAP_TYPES_H
+#define _ASM_KMAP_TYPES_H
@@ -74295,9 +72754,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/kmap_ty
+#undef D
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/maddr.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/maddr.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/maddr.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/maddr.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/maddr.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/maddr.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/maddr.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/maddr.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,160 @@
+#ifndef _I386_MADDR_H
+#define _I386_MADDR_H
@@ -74459,9 +72918,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/maddr.h
+#define __pte_ma(x) ((pte_t) { (x) } )
+
+#endif /* _I386_MADDR_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/mmu_context.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/mmu_context.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/mmu_context.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/mmu_context.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/mmu_context.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/mmu_context.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/mmu_context.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/mmu_context.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,108 @@
+#ifndef __I386_SCHED_H
+#define __I386_SCHED_H
@@ -74571,9 +73030,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/mmu_con
+}
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/mmu.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/mmu.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/mmu.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/mmu.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/mmu.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/mmu.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/mmu.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/mmu.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,29 @@
+#ifndef __i386_MMU_H
+#define __i386_MMU_H
@@ -74604,9 +73063,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/mmu.h l
+#define arch_dup_mmap(mm, oldmm) ((void)(oldmm), _arch_dup_mmap(mm))
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/page.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/page.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/page.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/page.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/page.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/page.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/page.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/page.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,220 @@
+#ifndef _I386_PAGE_H
+#define _I386_PAGE_H
@@ -74828,9 +73287,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/page.h
+#endif /* __KERNEL__ */
+
+#endif /* _I386_PAGE_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/param.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/param.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/param.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/param.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/param.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/param.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/param.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/param.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,23 @@
+#ifndef _ASMi386_PARAM_H
+#define _ASMi386_PARAM_H
@@ -74855,9 +73314,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/param.h
+#define COMMAND_LINE_SIZE 256
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/pci.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pci.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/pci.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pci.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/pci.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pci.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/pci.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pci.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,153 @@
+#ifndef __i386_PCI_H
+#define __i386_PCI_H
@@ -75012,9 +73471,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/pci.h l
+#define pcibios_scan_all_fns(a, b) 1
+
+#endif /* __i386_PCI_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/pgalloc.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pgalloc.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/pgalloc.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pgalloc.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/pgalloc.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pgalloc.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/pgalloc.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pgalloc.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,63 @@
+#ifndef _I386_PGALLOC_H
+#define _I386_PGALLOC_H
@@ -75079,9 +73538,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/pgalloc
+#define check_pgt_cache() do { } while (0)
+
+#endif /* _I386_PGALLOC_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/pgtable-2level-defs.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pgtable-2level-defs.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/pgtable-2level-defs.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pgtable-2level-defs.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/pgtable-2level-defs.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pgtable-2level-defs.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/pgtable-2level-defs.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pgtable-2level-defs.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,21 @@
+#ifndef _I386_PGTABLE_2LEVEL_DEFS_H
+#define _I386_PGTABLE_2LEVEL_DEFS_H
@@ -75104,9 +73563,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/pgtable
+#define PTRS_PER_PTE 1024
+
+#endif /* _I386_PGTABLE_2LEVEL_DEFS_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/pgtable-2level.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pgtable-2level.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/pgtable-2level.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pgtable-2level.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/pgtable-2level.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pgtable-2level.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/pgtable-2level.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pgtable-2level.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,87 @@
+#ifndef _I386_PGTABLE_2LEVEL_H
+#define _I386_PGTABLE_2LEVEL_H
@@ -75195,9 +73654,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/pgtable
+void vmalloc_sync_all(void);
+
+#endif /* _I386_PGTABLE_2LEVEL_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/pgtable-3level-defs.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pgtable-3level-defs.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/pgtable-3level-defs.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pgtable-3level-defs.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/pgtable-3level-defs.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pgtable-3level-defs.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/pgtable-3level-defs.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pgtable-3level-defs.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,25 @@
+#ifndef _I386_PGTABLE_3LEVEL_DEFS_H
+#define _I386_PGTABLE_3LEVEL_DEFS_H
@@ -75224,9 +73683,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/pgtable
+#define PTRS_PER_PTE 512
+
+#endif /* _I386_PGTABLE_3LEVEL_DEFS_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/pgtable-3level.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pgtable-3level.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/pgtable-3level.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pgtable-3level.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/pgtable-3level.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pgtable-3level.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/pgtable-3level.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pgtable-3level.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,185 @@
+#ifndef _I386_PGTABLE_3LEVEL_H
+#define _I386_PGTABLE_3LEVEL_H
@@ -75413,9 +73872,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/pgtable
+#define vmalloc_sync_all() ((void)0)
+
+#endif /* _I386_PGTABLE_3LEVEL_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/pgtable.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pgtable.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/pgtable.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pgtable.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/pgtable.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pgtable.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/pgtable.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/pgtable.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,508 @@
+#ifndef _I386_PGTABLE_H
+#define _I386_PGTABLE_H
@@ -75925,9 +74384,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/pgtable
+#include <asm-generic/pgtable.h>
+
+#endif /* _I386_PGTABLE_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/processor.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/processor.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/processor.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/processor.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/processor.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/processor.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/processor.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/processor.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,741 @@
+/*
+ * include/asm-i386/processor.h
@@ -76670,9 +75129,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/process
+extern int sysenter_setup(void);
+
+#endif /* __ASM_I386_PROCESSOR_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/ptrace.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/ptrace.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/ptrace.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/ptrace.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/ptrace.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/ptrace.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/ptrace.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/ptrace.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,90 @@
+#ifndef _I386_PTRACE_H
+#define _I386_PTRACE_H
@@ -76764,9 +75223,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/ptrace.
+#endif /* __KERNEL__ */
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/scatterlist.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/scatterlist.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/scatterlist.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/scatterlist.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/scatterlist.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/scatterlist.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/scatterlist.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/scatterlist.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,22 @@
+#ifndef _I386_SCATTERLIST_H
+#define _I386_SCATTERLIST_H
@@ -76790,9 +75249,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/scatter
+#define ISA_DMA_THRESHOLD (0x00ffffff)
+
+#endif /* !(_I386_SCATTERLIST_H) */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/segment.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/segment.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/segment.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/segment.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/segment.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/segment.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/segment.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/segment.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,117 @@
+#ifndef _ASM_SEGMENT_H
+#define _ASM_SEGMENT_H
@@ -76911,9 +75370,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/segment
+#define IDT_ENTRIES 256
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/setup.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/setup.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/setup.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/setup.h 2006-09-21 01:33:32.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/setup.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/setup.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/setup.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/setup.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,81 @@
+/*
+ * Just a place holder. We don't want to have to test x86 before
@@ -76996,9 +75455,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/setup.h
+#endif /* __ASSEMBLY__ */
+
+#endif /* _i386_SETUP_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/smp.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/smp.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/smp.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/smp.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/smp.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/smp.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/smp.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/smp.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,103 @@
+#ifndef __ASM_SMP_H
+#define __ASM_SMP_H
@@ -77103,9 +75562,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/smp.h l
+
+#endif
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/spinlock.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/spinlock.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/spinlock.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/spinlock.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/spinlock.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/spinlock.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/spinlock.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/spinlock.h 2006-12-05 18:42:37.000000000 +0100
@@ -0,0 +1,202 @@
+#ifndef __ASM_SPINLOCK_H
+#define __ASM_SPINLOCK_H
@@ -77309,9 +75768,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/spinloc
+}
+
+#endif /* __ASM_SPINLOCK_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/swiotlb.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/swiotlb.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/swiotlb.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/swiotlb.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/swiotlb.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/swiotlb.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/swiotlb.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/swiotlb.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,41 @@
+#ifndef _ASM_SWIOTLB_H
+#define _ASM_SWIOTLB_H 1
@@ -77354,9 +75813,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/swiotlb
+#endif
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/synch_bitops.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/synch_bitops.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/synch_bitops.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/synch_bitops.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/synch_bitops.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/synch_bitops.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/synch_bitops.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/synch_bitops.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,141 @@
+#ifndef __XEN_SYNCH_BITOPS_H__
+#define __XEN_SYNCH_BITOPS_H__
@@ -77499,10 +75958,10 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/synch_b
+#define synch_cmpxchg_subword synch_cmpxchg
+
+#endif /* __XEN_SYNCH_BITOPS_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/system.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/system.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/system.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/system.h 2006-09-21 01:33:32.000000000 +0200
-@@ -0,0 +1,491 @@
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/system.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/system.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/system.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/system.h 2006-12-05 18:42:37.000000000 +0100
+@@ -0,0 +1,495 @@
+#ifndef __ASM_SYSTEM_H
+#define __ASM_SYSTEM_H
+
@@ -77524,6 +75983,10 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/system.
+struct task_struct; /* one of the stranger aspects of C forward declarations.. */
+extern struct task_struct * FASTCALL(__switch_to(struct task_struct *prev, struct task_struct *next));
+
++/*
++ * Saving eflags is important. It switches not only IOPL between tasks,
++ * it also protects other tasks from NT leaking through sysenter etc.
++ */
+#define switch_to(prev,next,last) do { \
+ unsigned long esi,edi; \
+ asm volatile("pushfl\n\t" /* Save flags */ \
@@ -77994,9 +76457,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/system.
+void default_idle(void);
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/timer.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/timer.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/timer.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/timer.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/timer.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/timer.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/timer.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/timer.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,70 @@
+#ifndef _ASMi386_TIMER_H
+#define _ASMi386_TIMER_H
@@ -78068,9 +76531,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/timer.h
+extern struct init_timer_opts timer_pmtmr_init;
+#endif
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/tlbflush.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/tlbflush.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/tlbflush.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/tlbflush.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/tlbflush.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/tlbflush.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/tlbflush.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/tlbflush.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,101 @@
+#ifndef _I386_TLBFLUSH_H
+#define _I386_TLBFLUSH_H
@@ -78173,9 +76636,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/tlbflus
+}
+
+#endif /* _I386_TLBFLUSH_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/vga.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/vga.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/asm/vga.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/vga.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/asm/vga.h linux-2.6.18-xen/include/asm-i386/mach-xen/asm/vga.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/asm/vga.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/asm/vga.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,20 @@
+/*
+ * Access to VGA videoram
@@ -78197,9 +76660,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/asm/vga.h l
+#define vga_writeb(x,y) (*(y) = (x))
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/irq_vectors.h linux-2.6.18-xen/include/asm-i386/mach-xen/irq_vectors.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/irq_vectors.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/irq_vectors.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/irq_vectors.h linux-2.6.18-xen/include/asm-i386/mach-xen/irq_vectors.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/irq_vectors.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/irq_vectors.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,125 @@
+/*
+ * This file should contain #defines for all of the interrupt vector
@@ -78326,9 +76789,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/irq_vectors
+#define irq_to_dynirq(_x) ((_x) - DYNIRQ_BASE)
+
+#endif /* _ASM_IRQ_VECTORS_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/mach_traps.h linux-2.6.18-xen/include/asm-i386/mach-xen/mach_traps.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/mach_traps.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/mach_traps.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/mach_traps.h linux-2.6.18-xen/include/asm-i386/mach-xen/mach_traps.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/mach_traps.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/mach_traps.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,33 @@
+/*
+ * include/asm-xen/asm-i386/mach-xen/mach_traps.h
@@ -78363,18 +76826,18 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/mach_traps.
+static inline void reassert_nmi(void) {}
+
+#endif /* !_MACH_TRAPS_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/mach-xen/setup_arch.h linux-2.6.18-xen/include/asm-i386/mach-xen/setup_arch.h
---- linux-2.6.18.1/include/asm-i386/mach-xen/setup_arch.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-i386/mach-xen/setup_arch.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/mach-xen/setup_arch.h linux-2.6.18-xen/include/asm-i386/mach-xen/setup_arch.h
+--- linux-2.6.18.3/include/asm-i386/mach-xen/setup_arch.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-i386/mach-xen/setup_arch.h 2006-12-05 18:42:37.000000000 +0100
@@ -0,0 +1,5 @@
+/* Hook to call BIOS initialisation function */
+
+#define ARCH_SETUP machine_specific_arch_setup();
+
+void __init machine_specific_arch_setup(void);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/pgtable-2level-defs.h linux-2.6.18-xen/include/asm-i386/pgtable-2level-defs.h
---- linux-2.6.18.1/include/asm-i386/pgtable-2level-defs.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/asm-i386/pgtable-2level-defs.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/pgtable-2level-defs.h linux-2.6.18-xen/include/asm-i386/pgtable-2level-defs.h
+--- linux-2.6.18.3/include/asm-i386/pgtable-2level-defs.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/asm-i386/pgtable-2level-defs.h 2006-11-19 14:27:04.000000000 +0100
@@ -1,6 +1,8 @@
#ifndef _I386_PGTABLE_2LEVEL_DEFS_H
#define _I386_PGTABLE_2LEVEL_DEFS_H
@@ -78384,9 +76847,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/pgtable-2level-defs.
/*
* traditional i386 two-level paging structure:
*/
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/pgtable-3level-defs.h linux-2.6.18-xen/include/asm-i386/pgtable-3level-defs.h
---- linux-2.6.18.1/include/asm-i386/pgtable-3level-defs.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/asm-i386/pgtable-3level-defs.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-i386/pgtable-3level-defs.h linux-2.6.18-xen/include/asm-i386/pgtable-3level-defs.h
+--- linux-2.6.18.3/include/asm-i386/pgtable-3level-defs.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/asm-i386/pgtable-3level-defs.h 2006-11-19 14:27:04.000000000 +0100
@@ -1,6 +1,8 @@
#ifndef _I386_PGTABLE_3LEVEL_DEFS_H
#define _I386_PGTABLE_3LEVEL_DEFS_H
@@ -78396,10 +76859,10 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-i386/pgtable-3level-defs.
/*
* PGDIR_SHIFT determines what a top-level page table entry can map
*/
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/agp.h linux-2.6.18-xen/include/asm-ia64/agp.h
---- linux-2.6.18.1/include/asm-ia64/agp.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/asm-ia64/agp.h 2006-09-04 16:31:16.000000000 +0200
-@@ -19,13 +19,49 @@
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-ia64/agp.h linux-2.6.18-xen/include/asm-ia64/agp.h
+--- linux-2.6.18.3/include/asm-ia64/agp.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/asm-ia64/agp.h 2006-11-19 14:27:04.000000000 +0100
+@@ -19,13 +19,44 @@
#define flush_agp_cache() mb()
/* Convert a physical address to an address suitable for the GART. */
@@ -78412,11 +76875,12 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/agp.h linux-2.6.18-x
+#endif
/* GATT allocation. Returns/accepts GATT kernel virtual address. */
--#define alloc_gatt_pages(order) \
-- ((char *)__get_free_pages(GFP_KERNEL, (order)))
--#define free_gatt_pages(table, order) \
-- free_pages((unsigned long)(table), (order))
-+#ifdef CONFIG_XEN
++#ifndef CONFIG_XEN
+ #define alloc_gatt_pages(order) \
+ ((char *)__get_free_pages(GFP_KERNEL, (order)))
+ #define free_gatt_pages(table, order) \
+ free_pages((unsigned long)(table), (order))
++#else
+#include <asm/hypervisor.h>
+static inline char*
+alloc_gatt_pages(unsigned int order)
@@ -78440,25 +76904,17 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/agp.h linux-2.6.18-x
+ xen_destroy_contiguous_region((unsigned long)table, order);
+ free_pages((unsigned long)table, order);
+}
-+#else /* CONFIG_XEN */
-+/* Convert a physical address to an address suitable for the GART. */
-+#define phys_to_gart(x) (x)
-+#define gart_to_phys(x) (x)
-+
-+/* GATT allocation. Returns/accepts GATT kernel virtual address. */
-+#define alloc_gatt_pages(order) \
-+ ((char *)__get_free_pages(GFP_KERNEL, (order)))
-+#define free_gatt_pages(table, order) \
-+ free_pages((unsigned long)(table), (order))
-+#endif /* CONFIG_XEN */
++#endif /* CONFIG_XEN */
#endif /* _ASM_IA64_AGP_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/dma-mapping.h linux-2.6.18-xen/include/asm-ia64/dma-mapping.h
---- linux-2.6.18.1/include/asm-ia64/dma-mapping.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/asm-ia64/dma-mapping.h 2006-09-21 01:33:32.000000000 +0200
-@@ -7,19 +7,68 @@
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-ia64/dma-mapping.h linux-2.6.18-xen/include/asm-ia64/dma-mapping.h
+--- linux-2.6.18.3/include/asm-ia64/dma-mapping.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/asm-ia64/dma-mapping.h 2006-12-05 18:42:37.000000000 +0100
+@@ -6,20 +6,67 @@
+ * David Mosberger-Tang <davidm@hpl.hp.com>
*/
#include <asm/machvec.h>
++#ifndef CONFIG_XEN
-#define dma_alloc_coherent platform_dma_alloc_coherent
-#define dma_alloc_noncoherent platform_dma_alloc_coherent /* coherent mem. is cheap */
@@ -78470,8 +76926,6 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/dma-mapping.h linux-
-#define dma_unmap_sg platform_dma_unmap_sg
-#define dma_sync_single_for_cpu platform_dma_sync_single_for_cpu
-#define dma_sync_sg_for_cpu platform_dma_sync_sg_for_cpu
-+#ifndef CONFIG_XEN
-+
+#define dma_alloc_coherent platform_dma_alloc_coherent
+#define dma_alloc_noncoherent platform_dma_alloc_coherent /* coherent mem. is cheap */
+#define dma_free_coherent platform_dma_free_coherent
@@ -78488,7 +76942,6 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/dma-mapping.h linux-
+#define dma_sync_sg_for_device platform_dma_sync_sg_for_device
+#define dma_mapping_error platform_dma_mapping_error
+
-+
+#else /* CONFIG_XEN */
+/* Needed for arch/i386/kernel/swiotlb.c and arch/i386/kernel/pci-dma-xen.c */
+#include <asm/hypervisor.h>
@@ -78537,7 +76990,7 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/dma-mapping.h linux-
#define dma_map_page(dev, pg, off, size, dir) \
dma_map_single(dev, page_address(pg) + (off), (size), (dir))
-@@ -36,7 +85,9 @@
+@@ -36,7 +83,9 @@
#define dma_sync_single_range_for_device(dev, dma_handle, offset, size, dir) \
dma_sync_single_for_device(dev, dma_handle, size, dir)
@@ -78547,7 +77000,7 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/dma-mapping.h linux-
static inline int
dma_set_mask (struct device *dev, u64 mask)
-@@ -61,4 +112,29 @@
+@@ -61,4 +110,29 @@
#define dma_is_consistent(dma_handle) (1) /* all we do is coherent memory... */
@@ -78577,15 +77030,15 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/dma-mapping.h linux-
+}
+
#endif /* _ASM_IA64_DMA_MAPPING_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/fixmap.h linux-2.6.18-xen/include/asm-ia64/fixmap.h
---- linux-2.6.18.1/include/asm-ia64/fixmap.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-ia64/fixmap.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-ia64/fixmap.h linux-2.6.18-xen/include/asm-ia64/fixmap.h
+--- linux-2.6.18.3/include/asm-ia64/fixmap.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-ia64/fixmap.h 2006-11-19 14:27:04.000000000 +0100
@@ -0,0 +1,2 @@
+#define clear_fixmap(x) do {} while (0)
+#define set_fixmap(x,y) do {} while (0)
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/gcc_intrin.h linux-2.6.18-xen/include/asm-ia64/gcc_intrin.h
---- linux-2.6.18.1/include/asm-ia64/gcc_intrin.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/asm-ia64/gcc_intrin.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-ia64/gcc_intrin.h linux-2.6.18-xen/include/asm-ia64/gcc_intrin.h
+--- linux-2.6.18.3/include/asm-ia64/gcc_intrin.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/asm-ia64/gcc_intrin.h 2006-11-19 14:27:04.000000000 +0100
@@ -26,7 +26,7 @@
register unsigned long ia64_r13 asm ("r13") __attribute_used__;
@@ -78775,9 +77228,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/gcc_intrin.h linux-2
+#define __ia64_get_psr_i() (__ia64_getreg(_IA64_REG_PSR) & 0x4000UL)
+
#endif /* _ASM_IA64_GCC_INTRIN_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/hw_irq.h linux-2.6.18-xen/include/asm-ia64/hw_irq.h
---- linux-2.6.18.1/include/asm-ia64/hw_irq.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/asm-ia64/hw_irq.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-ia64/hw_irq.h linux-2.6.18-xen/include/asm-ia64/hw_irq.h
+--- linux-2.6.18.3/include/asm-ia64/hw_irq.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/asm-ia64/hw_irq.h 2006-11-19 14:27:05.000000000 +0100
@@ -15,7 +15,11 @@
#include <asm/ptrace.h>
#include <asm/smp.h>
@@ -78803,9 +77256,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/hw_irq.h linux-2.6.1
platform_send_ipi(smp_processor_id(), vector, IA64_IPI_DM_INT, 0);
}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/hypercall.h linux-2.6.18-xen/include/asm-ia64/hypercall.h
---- linux-2.6.18.1/include/asm-ia64/hypercall.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-ia64/hypercall.h 2006-10-17 15:01:58.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-ia64/hypercall.h linux-2.6.18-xen/include/asm-ia64/hypercall.h
+--- linux-2.6.18.3/include/asm-ia64/hypercall.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-ia64/hypercall.h 2006-11-19 14:27:05.000000000 +0100
@@ -0,0 +1,423 @@
+/******************************************************************************
+ * hypercall.h
@@ -78842,13 +77295,12 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/hypercall.h linux-2.
+#ifndef __HYPERCALL_H__
+#define __HYPERCALL_H__
+
++#include <linux/string.h> /* memcpy() */
++
+#ifndef __HYPERVISOR_H__
+# error "please don't include this file directly"
+#endif
+
-+#include <asm/xen/xcom_hcall.h>
-+struct xencomm_handle;
-+
+/*
+ * Assembler stubs for hyper-calls.
+ */
@@ -78967,117 +77419,157 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/hypercall.h linux-2.
+ (type)__res; \
+})
+
-+
+static inline int
-+xencomm_arch_hypercall_sched_op(int cmd, struct xencomm_handle *arg)
++HYPERVISOR_sched_op_compat(
++ int cmd, unsigned long arg)
+{
-+ return _hypercall2(int, sched_op, cmd, arg);
++ return _hypercall2(int, sched_op_compat, cmd, arg);
+}
+
-+static inline long
-+HYPERVISOR_set_timer_op(u64 timeout)
++static inline int
++HYPERVISOR_sched_op(
++ int cmd, void *arg)
+{
-+ unsigned long timeout_hi = (unsigned long)(timeout >> 32);
-+ unsigned long timeout_lo = (unsigned long)timeout;
-+ return _hypercall2(long, set_timer_op, timeout_lo, timeout_hi);
++ return _hypercall2(int, sched_op, cmd, arg);
+}
+
-+static inline int
-+xencomm_arch_hypercall_dom0_op(struct xencomm_handle *op)
++static inline long
++HYPERVISOR_set_timer_op(
++ u64 timeout)
+{
-+ return _hypercall1(int, dom0_op, op);
++ unsigned long timeout_hi = (unsigned long)(timeout>>32);
++ unsigned long timeout_lo = (unsigned long)timeout;
++ return _hypercall2(long, set_timer_op, timeout_lo, timeout_hi);
+}
+
+static inline int
-+xencomm_arch_hypercall_sysctl(struct xencomm_handle *op)
++HYPERVISOR_dom0_op(
++ dom0_op_t *dom0_op)
+{
-+ return _hypercall1(int, sysctl, op);
++ dom0_op->interface_version = DOM0_INTERFACE_VERSION;
++ return _hypercall1(int, dom0_op, dom0_op);
+}
+
+static inline int
-+xencomm_arch_hypercall_domctl(struct xencomm_handle *op)
++HYPERVISOR_multicall(
++ void *call_list, int nr_calls)
+{
-+ return _hypercall1(int, domctl, op);
++ return _hypercall2(int, multicall, call_list, nr_calls);
+}
+
++//XXX xen/ia64 copy_from_guest() is broken.
++// This is a temporal work around until it is fixed.
+static inline int
-+xencomm_arch_hypercall_multicall(struct xencomm_handle *call_list,
-+ int nr_calls)
++____HYPERVISOR_memory_op(
++ unsigned int cmd, void *arg)
+{
-+ return _hypercall2(int, multicall, call_list, nr_calls);
++ return _hypercall2(int, memory_op, cmd, arg);
+}
+
++#include <xen/interface/memory.h>
++#ifdef CONFIG_VMX_GUEST
++# define ia64_xenmem_reservation_op(op, xmr) (0)
++#else
++int ia64_xenmem_reservation_op(unsigned long op,
++ struct xen_memory_reservation* reservation__);
++#endif
+static inline int
-+xencomm_arch_hypercall_memory_op(unsigned int cmd, struct xencomm_handle *arg)
-+{
-+ return _hypercall2(int, memory_op, cmd, arg);
++HYPERVISOR_memory_op(
++ unsigned int cmd, void *arg)
++{
++ switch (cmd) {
++ case XENMEM_increase_reservation:
++ case XENMEM_decrease_reservation:
++ case XENMEM_populate_physmap:
++ return ia64_xenmem_reservation_op(cmd,
++ (struct xen_memory_reservation*)arg);
++ default:
++ return ____HYPERVISOR_memory_op(cmd, arg);
++ }
++ /* NOTREACHED */
+}
+
+static inline int
-+xencomm_arch_hypercall_event_channel_op(int cmd, struct xencomm_handle *arg)
-+{
-+ return _hypercall2(int, event_channel_op, cmd, arg);
++HYPERVISOR_event_channel_op(
++ int cmd, void *arg)
++{
++ int rc = _hypercall2(int, event_channel_op, cmd, arg);
++ if (unlikely(rc == -ENOSYS)) {
++ struct evtchn_op op;
++ op.cmd = cmd;
++ memcpy(&op.u, arg, sizeof(op.u));
++ rc = _hypercall1(int, event_channel_op_compat, &op);
++ }
++ return rc;
+}
+
+static inline int
-+xencomm_arch_hypercall_acm_op(unsigned int cmd, struct xencomm_handle *arg)
++HYPERVISOR_acm_op(
++ unsigned int cmd, void *arg)
+{
-+ return _hypercall2(int, acm_op, cmd, arg);
++ return _hypercall2(int, acm_op, cmd, arg);
+}
+
+static inline int
-+xencomm_arch_hypercall_xen_version(int cmd, struct xencomm_handle *arg)
++HYPERVISOR_xen_version(
++ int cmd, void *arg)
+{
-+ return _hypercall2(int, xen_version, cmd, arg);
++ return _hypercall2(int, xen_version, cmd, arg);
+}
+
+static inline int
-+xencomm_arch_hypercall_console_io(int cmd, int count,
-+ struct xencomm_handle *str)
++HYPERVISOR_console_io(
++ int cmd, int count, char *str)
+{
-+ return _hypercall3(int, console_io, cmd, count, str);
++ return _hypercall3(int, console_io, cmd, count, str);
+}
+
+static inline int
-+xencomm_arch_hypercall_physdev_op(int cmd, struct xencomm_handle *arg)
-+{
-+ return _hypercall2(int, physdev_op, cmd, arg);
++HYPERVISOR_physdev_op(
++ int cmd, void *arg)
++{
++ int rc = _hypercall2(int, physdev_op, cmd, arg);
++ if (unlikely(rc == -ENOSYS)) {
++ struct physdev_op op;
++ op.cmd = cmd;
++ memcpy(&op.u, arg, sizeof(op.u));
++ rc = _hypercall1(int, physdev_op_compat, &op);
++ }
++ return rc;
+}
+
++//XXX __HYPERVISOR_grant_table_op is used for this hypercall constant.
+static inline int
-+xencomm_arch_hypercall_grant_table_op(unsigned int cmd,
-+ struct xencomm_handle *uop,
-+ unsigned int count)
++____HYPERVISOR_grant_table_op(
++ unsigned int cmd, void *uop, unsigned int count,
++ unsigned long pa1, unsigned long pa2)
+{
-+ return _hypercall3(int, grant_table_op, cmd, uop, count);
++ return _hypercall5(int, grant_table_op, cmd, uop, count, pa1, pa2);
+}
+
+int HYPERVISOR_grant_table_op(unsigned int cmd, void *uop, unsigned int count);
+
-+extern int xencomm_arch_hypercall_suspend(struct xencomm_handle *arg);
-+
+static inline int
-+xencomm_arch_hypercall_callback_op(int cmd, struct xencomm_handle *arg)
++HYPERVISOR_vcpu_op(
++ int cmd, int vcpuid, void *extra_args)
+{
-+ return _hypercall2(int, callback_op, cmd, arg);
++ return _hypercall3(int, vcpu_op, cmd, vcpuid, extra_args);
+}
+
++extern int HYPERVISOR_suspend(unsigned long srec);
++
+static inline unsigned long
-+xencomm_arch_hypercall_hvm_op(int cmd, void *arg)
++HYPERVISOR_hvm_op(
++ int cmd, void *arg)
+{
+ return _hypercall2(unsigned long, hvm_op, cmd, arg);
+}
+
+static inline int
-+HYPERVISOR_physdev_op(int cmd, void *arg)
++HYPERVISOR_callback_op(
++ int cmd, void *arg)
+{
-+ switch (cmd) {
-+ case PHYSDEVOP_eoi:
-+ return _hypercall1(int, ia64_fast_eoi,
-+ ((struct physdev_eoi *)arg)->irq);
-+ default:
-+ return xencomm_hypercall_physdev_op(cmd, arg);
-+ }
++ return _hypercall2(int, callback_op, cmd, arg);
+}
+
+extern fastcall unsigned int __do_IRQ(unsigned int irq, struct pt_regs *regs);
@@ -79187,53 +77679,14 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/hypercall.h linux-2.
+ return ret;
+}
+
-+#ifdef CONFIG_XEN_IA64_EXPOSE_P2M
-+static inline unsigned long
-+HYPERVISOR_expose_p2m(unsigned long conv_start_gpfn,
-+ unsigned long assign_start_gpfn,
-+ unsigned long expose_size, unsigned long granule_pfn)
-+{
-+ return _hypercall5(unsigned long, ia64_dom0vp_op,
-+ IA64_DOM0VP_expose_p2m, conv_start_gpfn,
-+ assign_start_gpfn, expose_size, granule_pfn);
-+}
-+#endif
-+
+// for balloon driver
+#define HYPERVISOR_update_va_mapping(va, new_val, flags) (0)
+
-+/* Use xencomm to do hypercalls. */
-+#ifdef MODULE
-+#define HYPERVISOR_sched_op xencomm_mini_hypercall_sched_op
-+#define HYPERVISOR_event_channel_op xencomm_mini_hypercall_event_channel_op
-+#define HYPERVISOR_callback_op xencomm_mini_hypercall_callback_op
-+#define HYPERVISOR_multicall xencomm_mini_hypercall_multicall
-+#define HYPERVISOR_xen_version xencomm_mini_hypercall_xen_version
-+#define HYPERVISOR_console_io xencomm_mini_hypercall_console_io
-+#define HYPERVISOR_hvm_op xencomm_mini_hypercall_hvm_op
-+#ifdef CONFIG_VMX_GUEST
-+#define HYPERVISOR_memory_op 0
-+#else
-+#define HYPERVISOR_memory_op xencomm_mini_hypercall_memory_op
-+#endif
-+#else
-+#define HYPERVISOR_sched_op xencomm_hypercall_sched_op
-+#define HYPERVISOR_event_channel_op xencomm_hypercall_event_channel_op
-+#define HYPERVISOR_callback_op xencomm_hypercall_callback_op
-+#define HYPERVISOR_multicall xencomm_hypercall_multicall
-+#define HYPERVISOR_xen_version xencomm_hypercall_xen_version
-+#define HYPERVISOR_console_io xencomm_hypercall_console_io
-+#define HYPERVISOR_hvm_op xencomm_hypercall_hvm_op
-+#define HYPERVISOR_memory_op xencomm_hypercall_memory_op
-+#endif
-+
-+#define HYPERVISOR_suspend xencomm_hypercall_suspend
-+
+#endif /* __HYPERCALL_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/hypervisor.h linux-2.6.18-xen/include/asm-ia64/hypervisor.h
---- linux-2.6.18.1/include/asm-ia64/hypervisor.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-ia64/hypervisor.h 2006-10-17 15:01:58.000000000 +0200
-@@ -0,0 +1,208 @@
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-ia64/hypervisor.h linux-2.6.18-xen/include/asm-ia64/hypervisor.h
+--- linux-2.6.18.3/include/asm-ia64/hypervisor.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-ia64/hypervisor.h 2006-12-05 18:42:37.000000000 +0100
+@@ -0,0 +1,219 @@
+/******************************************************************************
+ * hypervisor.h
+ *
@@ -79310,6 +77763,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/hypervisor.h linux-2
+{
+ int rc = HYPERVISOR_sched_op(SCHEDOP_yield, NULL);
+
++ if (rc == -ENOSYS)
++ rc = HYPERVISOR_sched_op_compat(SCHEDOP_yield, 0);
++
+ return rc;
+}
+
@@ -79319,6 +77775,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/hypervisor.h linux-2
+{
+ int rc = HYPERVISOR_sched_op(SCHEDOP_block, NULL);
+
++ if (rc == -ENOSYS)
++ rc = HYPERVISOR_sched_op_compat(SCHEDOP_block, 0);
++
+ return rc;
+}
+
@@ -79332,6 +77791,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/hypervisor.h linux-2
+
+ int rc = HYPERVISOR_sched_op(SCHEDOP_shutdown, &sched_shutdown);
+
++ if (rc == -ENOSYS)
++ rc = HYPERVISOR_sched_op_compat(SCHEDOP_shutdown, reason);
++
+ return rc;
+}
+
@@ -79348,6 +77810,8 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/hypervisor.h linux-2
+
+ set_xen_guest_handle(sched_poll.ports, ports);
+ rc = HYPERVISOR_sched_op(SCHEDOP_poll, &sched_poll);
++ if (rc == -ENOSYS)
++ rc = HYPERVISOR_sched_op_compat(SCHEDOP_yield, 0);
+
+ return rc;
+}
@@ -79442,9 +77906,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/hypervisor.h linux-2
+#endif
+
+#endif /* __HYPERVISOR_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/intel_intrin.h linux-2.6.18-xen/include/asm-ia64/intel_intrin.h
---- linux-2.6.18.1/include/asm-ia64/intel_intrin.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/asm-ia64/intel_intrin.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-ia64/intel_intrin.h linux-2.6.18-xen/include/asm-ia64/intel_intrin.h
+--- linux-2.6.18.3/include/asm-ia64/intel_intrin.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/asm-ia64/intel_intrin.h 2006-11-19 14:27:05.000000000 +0100
@@ -16,8 +16,10 @@
* intrinsic
*/
@@ -79568,9 +78032,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/intel_intrin.h linux
#define __builtin_trap() __break(0);
#endif /* _ASM_IA64_INTEL_INTRIN_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/io.h linux-2.6.18-xen/include/asm-ia64/io.h
---- linux-2.6.18.1/include/asm-ia64/io.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/asm-ia64/io.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-ia64/io.h linux-2.6.18-xen/include/asm-ia64/io.h
+--- linux-2.6.18.3/include/asm-ia64/io.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/asm-ia64/io.h 2006-11-19 14:27:05.000000000 +0100
@@ -66,9 +66,11 @@
#define PIO_RESERVED __IA64_UNCACHED_OFFSET
#define HAVE_ARCH_PIO_SIZE
@@ -79625,9 +78089,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/io.h linux-2.6.18-xe
# endif /* KERNEL */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/iosapic.h linux-2.6.18-xen/include/asm-ia64/iosapic.h
---- linux-2.6.18.1/include/asm-ia64/iosapic.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/asm-ia64/iosapic.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-ia64/iosapic.h linux-2.6.18-xen/include/asm-ia64/iosapic.h
+--- linux-2.6.18.3/include/asm-ia64/iosapic.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/asm-ia64/iosapic.h 2006-11-19 14:27:05.000000000 +0100
@@ -53,6 +53,7 @@
#define NR_IOSAPICS 256
@@ -79644,9 +78108,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/iosapic.h linux-2.6.
static inline void iosapic_eoi(char __iomem *iosapic, u32 vector)
{
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/irq.h linux-2.6.18-xen/include/asm-ia64/irq.h
---- linux-2.6.18.1/include/asm-ia64/irq.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/asm-ia64/irq.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-ia64/irq.h linux-2.6.18-xen/include/asm-ia64/irq.h
+--- linux-2.6.18.3/include/asm-ia64/irq.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/asm-ia64/irq.h 2006-11-19 14:27:05.000000000 +0100
@@ -11,8 +11,39 @@
* 02/29/00 D.Mosberger moved most things into hw_irq.h
*/
@@ -79687,9 +78151,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/irq.h linux-2.6.18-x
static __inline__ int
irq_canonicalize (int irq)
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/machvec_dig.h linux-2.6.18-xen/include/asm-ia64/machvec_dig.h
---- linux-2.6.18.1/include/asm-ia64/machvec_dig.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/asm-ia64/machvec_dig.h 2006-09-21 01:33:32.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-ia64/machvec_dig.h linux-2.6.18-xen/include/asm-ia64/machvec_dig.h
+--- linux-2.6.18.3/include/asm-ia64/machvec_dig.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/asm-ia64/machvec_dig.h 2006-11-19 14:27:05.000000000 +0100
@@ -13,4 +13,19 @@
#define platform_name "dig"
#define platform_setup dig_setup
@@ -79710,10 +78174,10 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/machvec_dig.h linux-
+#endif
+
#endif /* _ASM_IA64_MACHVEC_DIG_h */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/maddr.h linux-2.6.18-xen/include/asm-ia64/maddr.h
---- linux-2.6.18.1/include/asm-ia64/maddr.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-ia64/maddr.h 2006-10-17 15:01:58.000000000 +0200
-@@ -0,0 +1,107 @@
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-ia64/maddr.h linux-2.6.18-xen/include/asm-ia64/maddr.h
+--- linux-2.6.18.3/include/asm-ia64/maddr.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-ia64/maddr.h 2006-11-19 14:27:05.000000000 +0100
+@@ -0,0 +1,92 @@
+#ifndef _ASM_IA64_MADDR_H
+#define _ASM_IA64_MADDR_H
+
@@ -79726,26 +78190,11 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/maddr.h linux-2.6.18
+
+#define INVALID_P2M_ENTRY (~0UL)
+
-+#ifdef CONFIG_XEN_IA64_EXPOSE_P2M
-+extern int p2m_initialized;
-+extern unsigned long p2m_min_low_pfn;
-+extern unsigned long p2m_max_low_pfn;
-+extern unsigned long p2m_convert_min_pfn;
-+extern unsigned long p2m_convert_max_pfn;
-+extern volatile const pte_t* p2m_pte;
-+unsigned long p2m_phystomach(unsigned long gpfn);
-+#else
-+#define p2m_initialized (0)
-+#define p2m_phystomach(gpfn) INVALID_MFN
-+#endif
-+
+/* XXX xen page size != page size */
+static inline unsigned long
+pfn_to_mfn_for_dma(unsigned long pfn)
+{
+ unsigned long mfn;
-+ if (p2m_initialized)
-+ return p2m_phystomach(pfn);
+ mfn = HYPERVISOR_phystomach(pfn);
+ BUG_ON(mfn == 0); // XXX
+ BUG_ON(mfn == INVALID_P2M_ENTRY); // XXX
@@ -79821,9 +78270,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/maddr.h linux-2.6.18
+typedef unsigned long maddr_t; // to compile netback, netfront
+
+#endif /* _ASM_IA64_MADDR_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/meminit.h linux-2.6.18-xen/include/asm-ia64/meminit.h
---- linux-2.6.18.1/include/asm-ia64/meminit.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/asm-ia64/meminit.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-ia64/meminit.h linux-2.6.18-xen/include/asm-ia64/meminit.h
+--- linux-2.6.18.3/include/asm-ia64/meminit.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/asm-ia64/meminit.h 2006-11-19 14:27:05.000000000 +0100
@@ -16,10 +16,15 @@
* - command line string
* - kernel code & data
@@ -79840,9 +78289,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/meminit.h linux-2.6.
struct rsvd_region {
unsigned long start; /* virtual address of beginning of element */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/page.h linux-2.6.18-xen/include/asm-ia64/page.h
---- linux-2.6.18.1/include/asm-ia64/page.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/asm-ia64/page.h 2006-09-21 01:33:32.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-ia64/page.h linux-2.6.18-xen/include/asm-ia64/page.h
+--- linux-2.6.18.3/include/asm-ia64/page.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/asm-ia64/page.h 2006-11-19 14:27:05.000000000 +0100
@@ -126,7 +126,9 @@
# define pfn_valid(pfn) (((pfn) >= min_low_pfn) && ((pfn) < max_low_pfn) && ia64_pfn_valid(pfn))
#endif
@@ -79857,6 +78306,7 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/page.h linux-2.6.18-
(((current->personality & READ_IMPLIES_EXEC) != 0) \
? VM_EXEC : 0))
+-# endif /* __KERNEL__ */
+#ifndef __ASSEMBLY__
+#ifdef CONFIG_XEN
+
@@ -79905,11 +78355,11 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/page.h linux-2.6.18-
+
+#endif /* CONFIG_XEN */
+#endif /* __ASSEMBLY__ */
- # endif /* __KERNEL__ */
++#endif /* __KERNEL__ */
#endif /* _ASM_IA64_PAGE_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/pal.h linux-2.6.18-xen/include/asm-ia64/pal.h
---- linux-2.6.18.1/include/asm-ia64/pal.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/asm-ia64/pal.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-ia64/pal.h linux-2.6.18-xen/include/asm-ia64/pal.h
+--- linux-2.6.18.3/include/asm-ia64/pal.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/asm-ia64/pal.h 2006-11-19 14:27:05.000000000 +0100
@@ -82,6 +82,7 @@
#ifndef __ASSEMBLY__
@@ -79918,9 +78368,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/pal.h linux-2.6.18-x
#include <asm/fpu.h>
/*
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/pgalloc.h linux-2.6.18-xen/include/asm-ia64/pgalloc.h
---- linux-2.6.18.1/include/asm-ia64/pgalloc.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/asm-ia64/pgalloc.h 2006-09-04 16:31:16.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-ia64/pgalloc.h linux-2.6.18-xen/include/asm-ia64/pgalloc.h
+--- linux-2.6.18.3/include/asm-ia64/pgalloc.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/asm-ia64/pgalloc.h 2006-11-19 14:27:05.000000000 +0100
@@ -125,7 +125,11 @@
static inline void
pmd_populate(struct mm_struct *mm, pmd_t * pmd_entry, struct page *pte)
@@ -79933,9 +78383,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/pgalloc.h linux-2.6.
}
static inline void
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/privop.h linux-2.6.18-xen/include/asm-ia64/privop.h
---- linux-2.6.18.1/include/asm-ia64/privop.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-ia64/privop.h 2006-09-04 16:31:17.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-ia64/privop.h linux-2.6.18-xen/include/asm-ia64/privop.h
+--- linux-2.6.18.3/include/asm-ia64/privop.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-ia64/privop.h 2006-11-19 14:27:05.000000000 +0100
@@ -0,0 +1,59 @@
+#ifndef _ASM_IA64_PRIVOP_H
+#define _ASM_IA64_PRIVOP_H
@@ -79996,9 +78446,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/privop.h linux-2.6.1
+#endif /* !__ASSEMBLY */
+
+#endif /* _ASM_IA64_PRIVOP_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/processor.h linux-2.6.18-xen/include/asm-ia64/processor.h
---- linux-2.6.18.1/include/asm-ia64/processor.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/asm-ia64/processor.h 2006-09-04 16:31:17.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-ia64/processor.h linux-2.6.18-xen/include/asm-ia64/processor.h
+--- linux-2.6.18.3/include/asm-ia64/processor.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/asm-ia64/processor.h 2006-11-19 14:27:05.000000000 +0100
@@ -18,6 +18,7 @@
#include <asm/kregs.h>
#include <asm/ptrace.h>
@@ -80007,9 +78457,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/processor.h linux-2.
#define IA64_NUM_DBG_REGS 8
/*
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/synch_bitops.h linux-2.6.18-xen/include/asm-ia64/synch_bitops.h
---- linux-2.6.18.1/include/asm-ia64/synch_bitops.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-ia64/synch_bitops.h 2006-09-04 16:31:17.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-ia64/synch_bitops.h linux-2.6.18-xen/include/asm-ia64/synch_bitops.h
+--- linux-2.6.18.3/include/asm-ia64/synch_bitops.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-ia64/synch_bitops.h 2006-11-19 14:27:05.000000000 +0100
@@ -0,0 +1,61 @@
+#ifndef __XEN_SYNCH_BITOPS_H__
+#define __XEN_SYNCH_BITOPS_H__
@@ -80072,9 +78522,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/synch_bitops.h linux
+#define synch_cmpxchg_subword synch_cmpxchg
+
+#endif /* __XEN_SYNCH_BITOPS_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/system.h linux-2.6.18-xen/include/asm-ia64/system.h
---- linux-2.6.18.1/include/asm-ia64/system.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/asm-ia64/system.h 2006-09-04 16:31:17.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-ia64/system.h linux-2.6.18-xen/include/asm-ia64/system.h
+--- linux-2.6.18.3/include/asm-ia64/system.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/asm-ia64/system.h 2006-11-19 14:27:05.000000000 +0100
@@ -123,7 +123,7 @@
#define __local_irq_save(x) \
do { \
@@ -80093,10 +78543,10 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/system.h linux-2.6.1
#define irqs_disabled() \
({ \
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/xen/privop.h linux-2.6.18-xen/include/asm-ia64/xen/privop.h
---- linux-2.6.18.1/include/asm-ia64/xen/privop.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-ia64/xen/privop.h 2006-10-17 15:01:58.000000000 +0200
-@@ -0,0 +1,301 @@
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-ia64/xen/privop.h linux-2.6.18-xen/include/asm-ia64/xen/privop.h
+--- linux-2.6.18.3/include/asm-ia64/xen/privop.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-ia64/xen/privop.h 2006-11-19 14:27:05.000000000 +0100
+@@ -0,0 +1,304 @@
+#ifndef _ASM_IA64_XEN_PRIVOP_H
+#define _ASM_IA64_XEN_PRIVOP_H
+
@@ -80113,9 +78563,12 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/xen/privop.h linux-2
+
+#define IA64_PARAVIRTUALIZED
+
++#if 0
++#undef XSI_BASE
+/* At 1 MB, before per-cpu space but still addressable using addl instead
+ of movl. */
+#define XSI_BASE 0xfffffffffff00000
++#endif
+
+/* Address of mapped regs. */
+#define XMAPPEDREGS_BASE (XSI_BASE + XSI_SIZE)
@@ -80398,148 +78851,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/xen/privop.h linux-2
+#define ia64_pal_call_static xen_pal_call_static
+
+#endif /* _ASM_IA64_XEN_PRIVOP_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/xen/xcom_hcall.h linux-2.6.18-xen/include/asm-ia64/xen/xcom_hcall.h
---- linux-2.6.18.1/include/asm-ia64/xen/xcom_hcall.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-ia64/xen/xcom_hcall.h 2006-10-17 15:01:58.000000000 +0200
-@@ -0,0 +1,74 @@
-+/*
-+ * Copyright (C) 2006 Tristan Gingold <tristan.gingold@bull.net>, Bull SAS
-+ *
-+ * 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.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-+ */
-+
-+#ifndef _LINUX_XENCOMM_HCALL_H_
-+#define _LINUX_XENCOMM_HCALL_H_
-+
-+/* These function creates inline descriptor for the parameters and
-+ calls the corresponding xencomm_arch_hypercall_X.
-+ Architectures should defines HYPERVISOR_xxx as xencomm_hypercall_xxx unless
-+ they want to use their own wrapper. */
-+extern int xencomm_hypercall_console_io(int cmd, int count, char *str);
-+
-+extern int xencomm_hypercall_event_channel_op(int cmd, void *op);
-+
-+extern int xencomm_hypercall_xen_version(int cmd, void *arg);
-+
-+extern int xencomm_hypercall_physdev_op(int cmd, void *op);
-+
-+extern int xencomm_hypercall_grant_table_op(unsigned int cmd, void *op,
-+ unsigned int count);
-+
-+extern int xencomm_hypercall_sched_op(int cmd, void *arg);
-+
-+extern int xencomm_hypercall_multicall(void *call_list, int nr_calls);
-+
-+extern int xencomm_hypercall_callback_op(int cmd, void *arg);
-+
-+extern int xencomm_hypercall_memory_op(unsigned int cmd, void *arg);
-+
-+extern unsigned long xencomm_hypercall_hvm_op(int cmd, void *arg);
-+
-+extern int xencomm_hypercall_suspend(unsigned long srec);
-+
-+/* Using mini xencomm. */
-+extern int xencomm_mini_hypercall_console_io(int cmd, int count, char *str);
-+
-+extern int xencomm_mini_hypercall_event_channel_op(int cmd, void *op);
-+
-+extern int xencomm_mini_hypercall_xen_version(int cmd, void *arg);
-+
-+extern int xencomm_mini_hypercall_physdev_op(int cmd, void *op);
-+
-+extern int xencomm_mini_hypercall_grant_table_op(unsigned int cmd, void *op,
-+ unsigned int count);
-+
-+extern int xencomm_mini_hypercall_sched_op(int cmd, void *arg);
-+
-+extern int xencomm_mini_hypercall_multicall(void *call_list, int nr_calls);
-+
-+extern int xencomm_mini_hypercall_callback_op(int cmd, void *arg);
-+
-+extern int xencomm_mini_hypercall_memory_op(unsigned int cmd, void *arg);
-+
-+/* For privcmd. Locally declare argument type to avoid include storm.
-+ Type coherency will be checked within privcmd.c */
-+struct privcmd_hypercall;
-+extern int privcmd_hypercall(struct privcmd_hypercall *hypercall);
-+
-+#endif /* _LINUX_XENCOMM_HCALL_H_ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-ia64/xen/xencomm.h linux-2.6.18-xen/include/asm-ia64/xen/xencomm.h
---- linux-2.6.18.1/include/asm-ia64/xen/xencomm.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-ia64/xen/xencomm.h 2006-10-17 15:01:58.000000000 +0200
-@@ -0,0 +1,57 @@
-+/*
-+ * Copyright (C) 2006 Hollis Blanchard <hollisb@us.ibm.com>, IBM Corporation
-+ *
-+ * 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.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-+ */
-+
-+#ifndef _LINUX_XENCOMM_H_
-+#define _LINUX_XENCOMM_H_
-+
-+#include <xen/interface/xencomm.h>
-+
-+#define XENCOMM_MINI_ADDRS 3
-+struct xencomm_mini {
-+ struct xencomm_desc _desc;
-+ uint64_t address[XENCOMM_MINI_ADDRS];
-+};
-+
-+/* To avoid additionnal virt to phys conversion, an opaque structure is
-+ presented. */
-+struct xencomm_handle;
-+
-+extern int xencomm_create(void *buffer, unsigned long bytes,
-+ struct xencomm_handle **desc, gfp_t type);
-+extern void xencomm_free(struct xencomm_handle *desc);
-+
-+extern int xencomm_create_mini(struct xencomm_mini *area, int *nbr_area,
-+ void *buffer, unsigned long bytes,
-+ struct xencomm_handle **ret);
-+
-+/* Translate virtual address to physical address. */
-+extern unsigned long xencomm_vaddr_to_paddr(unsigned long vaddr);
-+
-+/* Inline version. To be used only on linear space (kernel space). */
-+static inline struct xencomm_handle *
-+xencomm_create_inline(void *buffer)
-+{
-+ unsigned long paddr;
-+
-+ paddr = xencomm_vaddr_to_paddr((unsigned long)buffer);
-+ return (struct xencomm_handle *)(paddr | XENCOMM_INLINE_FLAG);
-+}
-+
-+#define xen_guest_handle(hnd) ((hnd).p)
-+
-+#endif /* _LINUX_XENCOMM_H_ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-um/page.h linux-2.6.18-xen/include/asm-um/page.h
---- linux-2.6.18.1/include/asm-um/page.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/asm-um/page.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-um/page.h linux-2.6.18-xen/include/asm-um/page.h
+--- linux-2.6.18.3/include/asm-um/page.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/asm-um/page.h 2006-11-19 14:27:09.000000000 +0100
@@ -114,7 +114,7 @@
extern struct page *arch_validate(struct page *page, gfp_t mask, int order);
#define HAVE_ARCH_VALIDATE
@@ -80549,9 +78863,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-um/page.h linux-2.6.18-xe
#define HAVE_ARCH_FREE_PAGE
#include <asm-generic/memory_model.h>
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/apic.h linux-2.6.18-xen/include/asm-x86_64/apic.h
---- linux-2.6.18.1/include/asm-x86_64/apic.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/asm-x86_64/apic.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/apic.h linux-2.6.18-xen/include/asm-x86_64/apic.h
+--- linux-2.6.18.3/include/asm-x86_64/apic.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/asm-x86_64/apic.h 2006-11-19 14:27:10.000000000 +0100
@@ -98,11 +98,13 @@
extern int disable_timer_pin_1;
@@ -80566,9 +78880,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/apic.h linux-2.6.1
#endif /* CONFIG_X86_LOCAL_APIC */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/ipi.h linux-2.6.18-xen/include/asm-x86_64/ipi.h
---- linux-2.6.18.1/include/asm-x86_64/ipi.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/asm-x86_64/ipi.h 2006-09-21 01:33:32.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/ipi.h linux-2.6.18-xen/include/asm-x86_64/ipi.h
+--- linux-2.6.18.3/include/asm-x86_64/ipi.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/asm-x86_64/ipi.h 2006-12-05 18:42:37.000000000 +0100
@@ -49,6 +49,7 @@
return SET_APIC_DEST_FIELD(mask);
}
@@ -80584,9 +78898,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/ipi.h linux-2.6.18
+#endif /* CONFIG_XEN_UNPRIVILEGED_GUEST */
#endif /* __ASM_IPI_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/arch_hooks.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/arch_hooks.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/arch_hooks.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/arch_hooks.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/arch_hooks.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/arch_hooks.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/arch_hooks.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/arch_hooks.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,27 @@
+#ifndef _ASM_ARCH_HOOKS_H
+#define _ASM_ARCH_HOOKS_H
@@ -80615,9 +78929,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/arch_
+extern void mca_nmi_hook(void);
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/bootsetup.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/bootsetup.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/bootsetup.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/bootsetup.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/bootsetup.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/bootsetup.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/bootsetup.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/bootsetup.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,42 @@
+
+#ifndef _X86_64_BOOTSETUP_H
@@ -80661,9 +78975,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/boots
+#define RAMDISK_LOAD_FLAG 0x4000
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/desc.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/desc.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/desc.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/desc.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/desc.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/desc.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/desc.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/desc.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,263 @@
+/* Written 2000 by Andi Kleen */
+#ifndef __ARCH_DESC_H
@@ -80928,10 +79242,10 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/desc.
+#endif /* !__ASSEMBLY__ */
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/dma-mapping.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/dma-mapping.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/dma-mapping.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/dma-mapping.h 2006-09-04 16:31:18.000000000 +0200
-@@ -0,0 +1,208 @@
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/dma-mapping.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/dma-mapping.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/dma-mapping.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/dma-mapping.h 2006-12-05 18:42:37.000000000 +0100
+@@ -0,0 +1,207 @@
+#ifndef _X8664_DMA_MAPPING_H
+#define _X8664_DMA_MAPPING_H 1
+
@@ -81134,15 +79448,14 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/dma-m
+
+extern struct device fallback_dev;
+#endif
-+
+extern int panic_on_overflow;
+
+#endif /* _X8664_DMA_MAPPING_H */
+
+#include <asm-i386/mach-xen/asm/dma-mapping.h>
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/dmi.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/dmi.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/dmi.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/dmi.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/dmi.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/dmi.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/dmi.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/dmi.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,29 @@
+#ifndef _ASM_DMI_H
+#define _ASM_DMI_H 1
@@ -81173,9 +79486,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/dmi.h
+#define dmi_iounmap bt_iounmap
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/e820.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/e820.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/e820.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/e820.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/e820.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/e820.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/e820.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/e820.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,64 @@
+/*
+ * structures and definitions for the int 15, ax=e820 memory map
@@ -81241,9 +79554,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/e820.
+#endif/*!__ASSEMBLY__*/
+
+#endif/*__E820_HEADER*/
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/fixmap.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/fixmap.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/fixmap.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/fixmap.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/fixmap.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/fixmap.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/fixmap.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/fixmap.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,113 @@
+/*
+ * fixmap.h: compile-time virtual memory allocation
@@ -81358,9 +79671,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/fixma
+}
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/floppy.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/floppy.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/floppy.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/floppy.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/floppy.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/floppy.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/floppy.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/floppy.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,206 @@
+/*
+ * Architecture specific parts of the Floppy driver
@@ -81568,9 +79881,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/flopp
+#define EXTRA_FLOPPY_PARAMS
+
+#endif /* __ASM_XEN_X86_64_FLOPPY_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/hw_irq.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/hw_irq.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/hw_irq.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/hw_irq.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/hw_irq.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/hw_irq.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/hw_irq.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/hw_irq.h 2006-12-05 18:42:37.000000000 +0100
@@ -0,0 +1,136 @@
+#ifndef _ASM_HW_IRQ_H
+#define _ASM_HW_IRQ_H
@@ -81708,9 +80021,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/hw_ir
+#endif
+
+#endif /* _ASM_HW_IRQ_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/hypercall.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/hypercall.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/hypercall.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/hypercall.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/hypercall.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/hypercall.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/hypercall.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/hypercall.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,389 @@
+/******************************************************************************
+ * hypercall.h
@@ -82101,15 +80414,15 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/hyper
+}
+
+#endif /* __HYPERCALL_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/hypervisor.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/hypervisor.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/hypervisor.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/hypervisor.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/hypervisor.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/hypervisor.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/hypervisor.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/hypervisor.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,2 @@
+
+#include <asm-i386/mach-xen/asm/hypervisor.h>
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/io.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/io.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/io.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/io.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/io.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/io.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/io.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/io.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,327 @@
+#ifndef _ASM_IO_H
+#define _ASM_IO_H
@@ -82438,9 +80751,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/io.h
+#define ARCH_HAS_DEV_MEM
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/irqflags.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/irqflags.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/irqflags.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/irqflags.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/irqflags.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/irqflags.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/irqflags.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/irqflags.h 2006-12-05 18:42:37.000000000 +0100
@@ -0,0 +1,65 @@
+/*
+ * include/asm-x86_64/irqflags.h
@@ -82507,9 +80820,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/irqfl
+#endif
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/irq.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/irq.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/irq.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/irq.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/irq.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/irq.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/irq.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/irq.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,38 @@
+#ifndef _ASM_IRQ_H
+#define _ASM_IRQ_H
@@ -82549,9 +80862,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/irq.h
+#define __ARCH_HAS_DO_SOFTIRQ 1
+
+#endif /* _ASM_IRQ_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/maddr.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/maddr.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/maddr.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/maddr.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/maddr.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/maddr.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/maddr.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/maddr.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,139 @@
+#ifndef _X86_64_MADDR_H
+#define _X86_64_MADDR_H
@@ -82692,9 +81005,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/maddr
+
+#endif /* _X86_64_MADDR_H */
+
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/mmu_context.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/mmu_context.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/mmu_context.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/mmu_context.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/mmu_context.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/mmu_context.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/mmu_context.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/mmu_context.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,135 @@
+#ifndef __X86_64_MMU_CONTEXT_H
+#define __X86_64_MMU_CONTEXT_H
@@ -82831,9 +81144,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/mmu_c
+}
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/mmu.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/mmu.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/mmu.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/mmu.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/mmu.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/mmu.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/mmu.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/mmu.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,38 @@
+#ifndef __x86_64_MMU_H
+#define __x86_64_MMU_H
@@ -82873,9 +81186,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/mmu.h
+#endif
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/msr.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/msr.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/msr.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/msr.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/msr.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/msr.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/msr.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/msr.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,399 @@
+#ifndef X86_64_MSR_H
+#define X86_64_MSR_H 1
@@ -83276,9 +81589,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/msr.h
+#define MSR_P4_U2L_ESCR1 0x3b1
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/nmi.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/nmi.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/nmi.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/nmi.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/nmi.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/nmi.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/nmi.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/nmi.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,93 @@
+/*
+ * linux/include/asm-i386/nmi.h
@@ -83373,9 +81686,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/nmi.h
+#define NMI_INVALID 3
+
+#endif /* ASM_NMI_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/page.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/page.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/page.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/page.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/page.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/page.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/page.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/page.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,208 @@
+#ifndef _X86_64_PAGE_H
+#define _X86_64_PAGE_H
@@ -83585,9 +81898,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/page.
+#endif /* __KERNEL__ */
+
+#endif /* _X86_64_PAGE_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/param.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/param.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/param.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/param.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/param.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/param.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/param.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/param.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,22 @@
+#ifndef _ASMx86_64_PARAM_H
+#define _ASMx86_64_PARAM_H
@@ -83611,9 +81924,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/param
+#define MAXHOSTNAMELEN 64 /* max length of hostname */
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/pci.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/pci.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/pci.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/pci.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/pci.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/pci.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/pci.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/pci.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,173 @@
+#ifndef __x8664_PCI_H
+#define __x8664_PCI_H
@@ -83788,9 +82101,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/pci.h
+#define pcibios_scan_all_fns(a, b) 1
+
+#endif /* __x8664_PCI_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/pgalloc.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/pgalloc.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/pgalloc.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/pgalloc.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/pgalloc.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/pgalloc.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/pgalloc.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/pgalloc.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,226 @@
+#ifndef _X86_64_PGALLOC_H
+#define _X86_64_PGALLOC_H
@@ -84018,9 +82331,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/pgall
+#define __pud_free_tlb(tlb,x) pud_free((x))
+
+#endif /* _X86_64_PGALLOC_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/pgtable.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/pgtable.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/pgtable.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/pgtable.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/pgtable.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/pgtable.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/pgtable.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/pgtable.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,558 @@
+#ifndef _X86_64_PGTABLE_H
+#define _X86_64_PGTABLE_H
@@ -84580,10 +82893,10 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/pgtab
+#include <asm-generic/pgtable.h>
+
+#endif /* _X86_64_PGTABLE_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/processor.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/processor.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/processor.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/processor.h 2006-09-04 16:31:18.000000000 +0200
-@@ -0,0 +1,504 @@
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/processor.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/processor.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/processor.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/processor.h 2006-12-05 18:42:37.000000000 +0100
+@@ -0,0 +1,503 @@
+/*
+ * include/asm-x86_64/processor.h
+ *
@@ -84828,11 +83141,10 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/proce
+} __attribute__((packed)) ____cacheline_aligned;
+
+DECLARE_PER_CPU(struct tss_struct,init_tss);
++/* Save the original ist values for checking stack pointers during debugging */
+#endif
+
-+
+extern struct cpuinfo_x86 boot_cpu_data;
-+/* Save the original ist values for checking stack pointers during debugging */
+struct orig_ist {
+ unsigned long ist[7];
+};
@@ -85088,9 +83400,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/proce
+#define HAVE_ARCH_PICK_MMAP_LAYOUT 1
+
+#endif /* __ASM_X86_64_PROCESSOR_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/ptrace.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/ptrace.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/ptrace.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/ptrace.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/ptrace.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/ptrace.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/ptrace.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/ptrace.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,125 @@
+#ifndef _X86_64_PTRACE_H
+#define _X86_64_PTRACE_H
@@ -85217,9 +83529,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/ptrac
+#endif
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/smp.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/smp.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/smp.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/smp.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/smp.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/smp.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/smp.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/smp.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,150 @@
+#ifndef __ASM_SMP_H
+#define __ASM_SMP_H
@@ -85371,15 +83683,15 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/smp.h
+
+#endif
+
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/synch_bitops.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/synch_bitops.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/synch_bitops.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/synch_bitops.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/synch_bitops.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/synch_bitops.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/synch_bitops.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/synch_bitops.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,2 @@
+
+#include <asm-i386/mach-xen/asm/synch_bitops.h>
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/system.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/system.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/system.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/system.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/system.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/system.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/system.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/system.h 2006-12-05 18:42:37.000000000 +0100
@@ -0,0 +1,264 @@
+#ifndef __ASM_SYSTEM_H
+#define __ASM_SYSTEM_H
@@ -85645,9 +83957,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/syste
+extern void free_init_pages(char *what, unsigned long begin, unsigned long end);
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/timer.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/timer.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/timer.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/timer.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/timer.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/timer.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/timer.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/timer.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,67 @@
+#ifndef _ASMi386_TIMER_H
+#define _ASMi386_TIMER_H
@@ -85716,9 +84028,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/timer
+extern struct init_timer_opts timer_pmtmr_init;
+#endif
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/tlbflush.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/tlbflush.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/tlbflush.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/tlbflush.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/tlbflush.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/tlbflush.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/tlbflush.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/tlbflush.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,103 @@
+#ifndef _X8664_TLBFLUSH_H
+#define _X8664_TLBFLUSH_H
@@ -85823,9 +84135,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/tlbfl
+}
+
+#endif /* _X8664_TLBFLUSH_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/vga.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/vga.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/vga.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/vga.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/vga.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/vga.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/vga.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/vga.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,20 @@
+/*
+ * Access to VGA videoram
@@ -85847,9 +84159,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/vga.h
+#define vga_writeb(x,y) (*(y) = (x))
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/xor.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/xor.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/xor.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/xor.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/xor.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/xor.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/asm/xor.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/asm/xor.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,328 @@
+/*
+ * x86-64 changes / gcc fixes from Andi Kleen.
@@ -86179,9 +84491,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/asm/xor.h
+ We may also be able to load into the L1 only depending on how the cpu
+ deals with a load to a line that is being prefetched. */
+#define XOR_SELECT_TEMPLATE(FASTEST) (&xor_block_sse)
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/irq_vectors.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/irq_vectors.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/irq_vectors.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/irq_vectors.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/irq_vectors.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/irq_vectors.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/irq_vectors.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/irq_vectors.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,123 @@
+/*
+ * This file should contain #defines for all of the interrupt vector
@@ -86306,9 +84618,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/irq_vecto
+#define irq_to_dynirq(_x) ((_x) - DYNIRQ_BASE)
+
+#endif /* _ASM_IRQ_VECTORS_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/mach_time.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/mach_time.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/mach_time.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/mach_time.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/mach_time.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/mach_time.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/mach_time.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/mach_time.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,111 @@
+/*
+ * include/asm-i386/mach-default/mach_time.h
@@ -86421,9 +84733,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/mach_time
+}
+
+#endif /* !_MACH_TIME_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/mach_timer.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/mach_timer.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/mach_timer.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/mach_timer.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/mach_timer.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/mach_timer.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/mach_timer.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/mach_timer.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,48 @@
+/*
+ * include/asm-i386/mach-default/mach_timer.h
@@ -86473,9 +84785,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/mach_time
+}
+
+#endif /* !_MACH_TIMER_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/setup_arch_post.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/setup_arch_post.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/setup_arch_post.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/setup_arch_post.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/setup_arch_post.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/setup_arch_post.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/setup_arch_post.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/setup_arch_post.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,58 @@
+/**
+ * machine_specific_* - Hooks for machine specific setup.
@@ -86535,18 +84847,18 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/setup_arc
+ }
+#endif
+}
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/asm-x86_64/mach-xen/setup_arch_pre.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/setup_arch_pre.h
---- linux-2.6.18.1/include/asm-x86_64/mach-xen/setup_arch_pre.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/setup_arch_pre.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/asm-x86_64/mach-xen/setup_arch_pre.h linux-2.6.18-xen/include/asm-x86_64/mach-xen/setup_arch_pre.h
+--- linux-2.6.18.3/include/asm-x86_64/mach-xen/setup_arch_pre.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/asm-x86_64/mach-xen/setup_arch_pre.h 2006-11-19 14:27:11.000000000 +0100
@@ -0,0 +1,5 @@
+/* Hook to call BIOS initialisation function */
+
+#define ARCH_SETUP machine_specific_arch_setup();
+
+static void __init machine_specific_arch_setup(void);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/linux/elfnote.h linux-2.6.18-xen/include/linux/elfnote.h
---- linux-2.6.18.1/include/linux/elfnote.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/linux/elfnote.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/linux/elfnote.h linux-2.6.18-xen/include/linux/elfnote.h
+--- linux-2.6.18.3/include/linux/elfnote.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/linux/elfnote.h 2006-11-19 14:27:14.000000000 +0100
@@ -0,0 +1,90 @@
+#ifndef _LINUX_ELFNOTE_H
+#define _LINUX_ELFNOTE_H
@@ -86638,9 +84950,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/linux/elfnote.h linux-2.6.18-
+#endif /* __ASSEMBLER__ */
+
+#endif /* _LINUX_ELFNOTE_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/linux/gfp.h linux-2.6.18-xen/include/linux/gfp.h
---- linux-2.6.18.1/include/linux/gfp.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/linux/gfp.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/linux/gfp.h linux-2.6.18-xen/include/linux/gfp.h
+--- linux-2.6.18.3/include/linux/gfp.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/linux/gfp.h 2006-11-19 14:27:14.000000000 +0100
@@ -99,7 +99,11 @@
*/
@@ -86654,9 +84966,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/linux/gfp.h linux-2.6.18-xen/
#endif
extern struct page *
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/linux/highmem.h linux-2.6.18-xen/include/linux/highmem.h
---- linux-2.6.18.1/include/linux/highmem.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/linux/highmem.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/linux/highmem.h linux-2.6.18-xen/include/linux/highmem.h
+--- linux-2.6.18.3/include/linux/highmem.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/linux/highmem.h 2006-11-19 14:27:14.000000000 +0100
@@ -24,10 +24,16 @@
/* declarations for linux/mm/highmem.c */
@@ -86674,9 +84986,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/linux/highmem.h linux-2.6.18-
static inline void *kmap(struct page *page)
{
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/linux/interrupt.h linux-2.6.18-xen/include/linux/interrupt.h
---- linux-2.6.18.1/include/linux/interrupt.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/linux/interrupt.h 2006-09-04 16:31:18.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/linux/interrupt.h linux-2.6.18-xen/include/linux/interrupt.h
+--- linux-2.6.18.3/include/linux/interrupt.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/linux/interrupt.h 2006-11-19 14:27:14.000000000 +0100
@@ -166,6 +166,12 @@
#endif /* CONFIG_GENERIC_HARDIRQS */
@@ -86690,9 +85002,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/linux/interrupt.h linux-2.6.1
#ifndef __ARCH_SET_SOFTIRQ_PENDING
#define set_softirq_pending(x) (local_softirq_pending() = (x))
#define or_softirq_pending(x) (local_softirq_pending() |= (x))
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/linux/mm.h linux-2.6.18-xen/include/linux/mm.h
---- linux-2.6.18.1/include/linux/mm.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/linux/mm.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/linux/mm.h linux-2.6.18-xen/include/linux/mm.h
+--- linux-2.6.18.3/include/linux/mm.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/linux/mm.h 2006-11-19 14:27:14.000000000 +0100
@@ -164,6 +164,9 @@
#define VM_NONLINEAR 0x00800000 /* Is non-linear (remap_file_pages) */
#define VM_MAPPED_COPY 0x01000000 /* T if mapped copy of data (nommu mmap) */
@@ -86717,9 +85029,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/linux/mm.h linux-2.6.18-xen/i
#ifdef CONFIG_PROC_FS
void vm_stat_account(struct mm_struct *, unsigned long, struct file *, long);
#else
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/linux/oprofile.h linux-2.6.18-xen/include/linux/oprofile.h
---- linux-2.6.18.1/include/linux/oprofile.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/linux/oprofile.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/linux/oprofile.h linux-2.6.18-xen/include/linux/oprofile.h
+--- linux-2.6.18.3/include/linux/oprofile.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/linux/oprofile.h 2006-11-19 14:27:14.000000000 +0100
@@ -16,6 +16,10 @@
#include <linux/types.h>
#include <linux/spinlock.h>
@@ -86752,9 +85064,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/linux/oprofile.h linux-2.6.18
/**
* Create a file of the given name as a child of the given root, with
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/linux/pfn.h linux-2.6.18-xen/include/linux/pfn.h
---- linux-2.6.18.1/include/linux/pfn.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/linux/pfn.h 2006-10-17 15:01:58.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/linux/pfn.h linux-2.6.18-xen/include/linux/pfn.h
+--- linux-2.6.18.3/include/linux/pfn.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/linux/pfn.h 2006-12-05 18:42:37.000000000 +0100
@@ -4,6 +4,10 @@
#define PFN_ALIGN(x) (((unsigned long)(x) + (PAGE_SIZE - 1)) & PAGE_MASK)
#define PFN_UP(x) (((x) + PAGE_SIZE-1) >> PAGE_SHIFT)
@@ -86766,9 +85078,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/linux/pfn.h linux-2.6.18-xen/
+#endif
#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/linux/skbuff.h linux-2.6.18-xen/include/linux/skbuff.h
---- linux-2.6.18.1/include/linux/skbuff.h 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/include/linux/skbuff.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/linux/skbuff.h linux-2.6.18-xen/include/linux/skbuff.h
+--- linux-2.6.18.3/include/linux/skbuff.h 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/include/linux/skbuff.h 2006-11-19 14:27:15.000000000 +0100
@@ -203,6 +203,8 @@
* @local_df: allow local fragmentation
* @cloned: Head may be cloned (check refcnt to be sure)
@@ -86820,9 +85132,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/linux/skbuff.h linux-2.6.18-x
/**
* dev_alloc_skb - allocate an skbuff for receiving
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/balloon.h linux-2.6.18-xen/include/xen/balloon.h
---- linux-2.6.18.1/include/xen/balloon.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/balloon.h 2006-10-17 15:01:58.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/balloon.h linux-2.6.18-xen/include/xen/balloon.h
+--- linux-2.6.18.3/include/xen/balloon.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/balloon.h 2006-11-19 14:27:15.000000000 +0100
@@ -0,0 +1,57 @@
+/******************************************************************************
+ * balloon.h
@@ -86881,9 +85193,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/balloon.h linux-2.6.18-xe
+#define balloon_unlock(__flags) spin_unlock_irqrestore(&balloon_lock, __flags)
+
+#endif /* __ASM_BALLOON_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/cpu_hotplug.h linux-2.6.18-xen/include/xen/cpu_hotplug.h
---- linux-2.6.18.1/include/xen/cpu_hotplug.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/cpu_hotplug.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/cpu_hotplug.h linux-2.6.18-xen/include/xen/cpu_hotplug.h
+--- linux-2.6.18.3/include/xen/cpu_hotplug.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/cpu_hotplug.h 2006-11-19 14:27:15.000000000 +0100
@@ -0,0 +1,43 @@
+#ifndef __XEN_CPU_HOTPLUG_H__
+#define __XEN_CPU_HOTPLUG_H__
@@ -86928,9 +85240,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/cpu_hotplug.h linux-2.6.1
+#endif /* !defined(CONFIG_HOTPLUG_CPU) */
+
+#endif /* __XEN_CPU_HOTPLUG_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/driver_util.h linux-2.6.18-xen/include/xen/driver_util.h
---- linux-2.6.18.1/include/xen/driver_util.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/driver_util.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/driver_util.h linux-2.6.18-xen/include/xen/driver_util.h
+--- linux-2.6.18.3/include/xen/driver_util.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/driver_util.h 2006-11-19 14:27:15.000000000 +0100
@@ -0,0 +1,15 @@
+
+#ifndef __ASM_XEN_DRIVER_UTIL_H__
@@ -86947,9 +85259,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/driver_util.h linux-2.6.1
+extern void unlock_vm_area(struct vm_struct *area);
+
+#endif /* __ASM_XEN_DRIVER_UTIL_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/evtchn.h linux-2.6.18-xen/include/xen/evtchn.h
---- linux-2.6.18.1/include/xen/evtchn.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/evtchn.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/evtchn.h linux-2.6.18-xen/include/xen/evtchn.h
+--- linux-2.6.18.3/include/xen/evtchn.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/evtchn.h 2006-11-19 14:27:15.000000000 +0100
@@ -0,0 +1,113 @@
+/******************************************************************************
+ * evtchn.h
@@ -87064,9 +85376,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/evtchn.h linux-2.6.18-xen
+extern void notify_remote_via_irq(int irq);
+
+#endif /* __ASM_EVTCHN_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/features.h linux-2.6.18-xen/include/xen/features.h
---- linux-2.6.18.1/include/xen/features.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/features.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/features.h linux-2.6.18-xen/include/xen/features.h
+--- linux-2.6.18.3/include/xen/features.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/features.h 2006-11-19 14:27:15.000000000 +0100
@@ -0,0 +1,20 @@
+/******************************************************************************
+ * features.h
@@ -87088,9 +85400,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/features.h linux-2.6.18-x
+#define xen_feature(flag) (xen_features[flag])
+
+#endif /* __ASM_XEN_FEATURES_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/foreign_page.h linux-2.6.18-xen/include/xen/foreign_page.h
---- linux-2.6.18.1/include/xen/foreign_page.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/foreign_page.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/foreign_page.h linux-2.6.18-xen/include/xen/foreign_page.h
+--- linux-2.6.18.3/include/xen/foreign_page.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/foreign_page.h 2006-11-19 14:27:15.000000000 +0100
@@ -0,0 +1,30 @@
+/******************************************************************************
+ * foreign_page.h
@@ -87122,9 +85434,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/foreign_page.h linux-2.6.
+ ( (void (*) (struct page *)) (page)->mapping )
+
+#endif /* __ASM_XEN_FOREIGN_PAGE_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/gnttab.h linux-2.6.18-xen/include/xen/gnttab.h
---- linux-2.6.18.1/include/xen/gnttab.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/gnttab.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/gnttab.h linux-2.6.18-xen/include/xen/gnttab.h
+--- linux-2.6.18.3/include/xen/gnttab.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/gnttab.h 2006-11-19 14:27:15.000000000 +0100
@@ -0,0 +1,150 @@
+/******************************************************************************
+ * gnttab.h
@@ -87276,9 +85588,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/gnttab.h linux-2.6.18-xen
+}
+
+#endif /* __ASM_GNTTAB_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/hvm.h linux-2.6.18-xen/include/xen/hvm.h
---- linux-2.6.18.1/include/xen/hvm.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/hvm.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/hvm.h linux-2.6.18-xen/include/xen/hvm.h
+--- linux-2.6.18.3/include/xen/hvm.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/hvm.h 2006-11-19 14:27:15.000000000 +0100
@@ -0,0 +1,24 @@
+/* Simple wrappers around HVM functions */
+#ifndef XEN_HVM_H__
@@ -87304,9 +85616,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/hvm.h linux-2.6.18-xen/in
+}
+
+#endif /* XEN_HVM_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/hypervisor_sysfs.h linux-2.6.18-xen/include/xen/hypervisor_sysfs.h
---- linux-2.6.18.1/include/xen/hypervisor_sysfs.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/hypervisor_sysfs.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/hypervisor_sysfs.h linux-2.6.18-xen/include/xen/hypervisor_sysfs.h
+--- linux-2.6.18.3/include/xen/hypervisor_sysfs.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/hypervisor_sysfs.h 2006-11-19 14:27:15.000000000 +0100
@@ -0,0 +1,32 @@
+/*
+ * copyright (c) 2006 IBM Corporation
@@ -87340,9 +85652,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/hypervisor_sysfs.h linux-
+};
+
+#endif /* _HYP_SYSFS_H_ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/acm.h linux-2.6.18-xen/include/xen/interface/acm.h
---- linux-2.6.18.1/include/xen/interface/acm.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/acm.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/acm.h linux-2.6.18-xen/include/xen/interface/acm.h
+--- linux-2.6.18.3/include/xen/interface/acm.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/acm.h 2006-11-19 14:27:15.000000000 +0100
@@ -0,0 +1,187 @@
+/*
+ * acm.h: Xen access control module interface defintions
@@ -87531,9 +85843,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/acm.h linux-2.6
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/acm_ops.h linux-2.6.18-xen/include/xen/interface/acm_ops.h
---- linux-2.6.18.1/include/xen/interface/acm_ops.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/acm_ops.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/acm_ops.h linux-2.6.18-xen/include/xen/interface/acm_ops.h
+--- linux-2.6.18.3/include/xen/interface/acm_ops.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/acm_ops.h 2006-11-19 14:27:15.000000000 +0100
@@ -0,0 +1,102 @@
+/*
+ * acm_ops.h: Xen access control module hypervisor commands
@@ -87637,10 +85949,10 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/acm_ops.h linux
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/arch-ia64.h linux-2.6.18-xen/include/xen/interface/arch-ia64.h
---- linux-2.6.18.1/include/xen/interface/arch-ia64.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/arch-ia64.h 2006-10-17 15:01:58.000000000 +0200
-@@ -0,0 +1,444 @@
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/arch-ia64.h linux-2.6.18-xen/include/xen/interface/arch-ia64.h
+--- linux-2.6.18.3/include/xen/interface/arch-ia64.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/arch-ia64.h 2006-11-19 14:27:15.000000000 +0100
+@@ -0,0 +1,448 @@
+/******************************************************************************
+ * arch-ia64/hypervisor-if.h
+ *
@@ -87691,6 +86003,18 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/arch-ia64.h lin
+
+typedef unsigned long xen_ulong_t;
+
++#define GPFN_MEM (0UL << 56) /* Guest pfn is normal mem */
++#define GPFN_FRAME_BUFFER (1UL << 56) /* VGA framebuffer */
++#define GPFN_LOW_MMIO (2UL << 56) /* Low MMIO range */
++#define GPFN_PIB (3UL << 56) /* PIB base */
++#define GPFN_IOSAPIC (4UL << 56) /* IOSAPIC base */
++#define GPFN_LEGACY_IO (5UL << 56) /* Legacy I/O base */
++#define GPFN_GFW (6UL << 56) /* Guest Firmware */
++#define GPFN_HIGH_MMIO (7UL << 56) /* High MMIO range */
++
++#define GPFN_IO_MASK (7UL << 56) /* Guest pfn is I/O type */
++#define GPFN_INV_MASK (31UL << 59) /* Guest pfn is invalid */
++
+#define INVALID_MFN (~0UL)
+
+#define MEM_G (1UL << 30)
@@ -87967,33 +86291,33 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/arch-ia64.h lin
+typedef struct vcpu_guest_context vcpu_guest_context_t;
+DEFINE_XEN_GUEST_HANDLE(vcpu_guest_context_t);
+
-+/* dom0 vp op */
++// dom0 vp op
+#define __HYPERVISOR_ia64_dom0vp_op __HYPERVISOR_arch_0
-+/* Map io space in machine address to dom0 physical address space.
-+ Currently physical assigned address equals to machine address. */
-+#define IA64_DOM0VP_ioremap 0
-+
-+/* Convert a pseudo physical page frame number to the corresponding
-+ machine page frame number. If no page is assigned, INVALID_MFN or
-+ GPFN_INV_MASK is returned depending on domain's non-vti/vti mode. */
-+#define IA64_DOM0VP_phystomach 1
-+
-+/* Convert a machine page frame number to the corresponding pseudo physical
-+ page frame number of the caller domain. */
-+#define IA64_DOM0VP_machtophys 3
-+
-+/* Reserved for future use. */
-+#define IA64_DOM0VP_iounmap 4
-+
-+/* Unmap and free pages contained in the specified pseudo physical region. */
-+#define IA64_DOM0VP_zap_physmap 5
-+
-+/* Assign machine page frame to dom0's pseudo physical address space. */
-+#define IA64_DOM0VP_add_physmap 6
-+
-+/* expose the p2m table into domain */
-+#define IA64_DOM0VP_expose_p2m 7
-+
++#define IA64_DOM0VP_ioremap 0 // map io space in machine
++ // address to dom0 physical
++ // address space.
++ // currently physical
++ // assignedg address equals to
++ // machine address
++#define IA64_DOM0VP_phystomach 1 // convert a pseudo physical
++ // page frame number
++ // to the corresponding
++ // machine page frame number.
++ // if no page is assigned,
++ // INVALID_MFN or GPFN_INV_MASK
++ // is returned depending on
++ // domain's non-vti/vti mode.
++#define IA64_DOM0VP_machtophys 3 // convert a machine page
++ // frame number
++ // to the corresponding
++ // pseudo physical page frame
++ // number of the caller domain
++#define IA64_DOM0VP_zap_physmap 17 // unmap and free pages
++ // contained in the specified
++ // pseudo physical region
++#define IA64_DOM0VP_add_physmap 18 // assigne machine page frane
++ // to dom0's pseudo physical
++ // address space.
+// flags for page assignement to pseudo physical address space
+#define _ASSIGN_readonly 0
+#define ASSIGN_readonly (1UL << _ASSIGN_readonly)
@@ -88026,12 +86350,15 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/arch-ia64.h lin
+
+#endif /* !__ASSEMBLY__ */
+
++/* Address of shared_info in domain virtual space.
++ This is the default address, for compatibility only. */
++#define XSI_BASE 0xf100000000000000
++
+/* Size of the shared_info area (this is not related to page size). */
+#define XSI_SHIFT 14
+#define XSI_SIZE (1 << XSI_SHIFT)
+/* Log size of mapped_regs area (64 KB - only 4KB is used). */
+#define XMAPPEDREGS_SHIFT 12
-+#define XMAPPEDREGS_SIZE (1 << XMAPPEDREGS_SHIFT)
+/* Offset of XASI (Xen arch shared info) wrt XSI_BASE. */
+#define XMAPPEDREGS_OFS XSI_SIZE
+
@@ -88063,17 +86390,6 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/arch-ia64.h lin
+#define HYPERPRIVOP_GET_PSR 0x19
+#define HYPERPRIVOP_MAX 0x19
+
-+/* Fast and light hypercalls. */
-+#define __HYPERVISOR_ia64_fast_eoi 0x0200
-+
-+/* Xencomm macros. */
-+#define XENCOMM_INLINE_MASK 0xf800000000000000UL
-+#define XENCOMM_INLINE_FLAG 0x8000000000000000UL
-+
-+#define XENCOMM_IS_INLINE(addr) \
-+ (((unsigned long)(addr) & XENCOMM_INLINE_MASK) == XENCOMM_INLINE_FLAG)
-+#define XENCOMM_INLINE_ADDR(addr) \
-+ ((unsigned long)(addr) & ~XENCOMM_INLINE_MASK)
+#endif /* __HYPERVISOR_IF_IA64_H__ */
+
+/*
@@ -88085,9 +86401,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/arch-ia64.h lin
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/arch-powerpc.h linux-2.6.18-xen/include/xen/interface/arch-powerpc.h
---- linux-2.6.18.1/include/xen/interface/arch-powerpc.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/arch-powerpc.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/arch-powerpc.h linux-2.6.18-xen/include/xen/interface/arch-powerpc.h
+--- linux-2.6.18.3/include/xen/interface/arch-powerpc.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/arch-powerpc.h 2006-11-19 14:27:15.000000000 +0100
@@ -0,0 +1,115 @@
+/*
+ * This program is free software; you can redistribute it and/or modify
@@ -88204,9 +86520,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/arch-powerpc.h
+#endif
+
+#endif
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/arch-x86_32.h linux-2.6.18-xen/include/xen/interface/arch-x86_32.h
---- linux-2.6.18.1/include/xen/interface/arch-x86_32.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/arch-x86_32.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/arch-x86_32.h linux-2.6.18-xen/include/xen/interface/arch-x86_32.h
+--- linux-2.6.18.3/include/xen/interface/arch-x86_32.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/arch-x86_32.h 2006-11-19 14:27:15.000000000 +0100
@@ -0,0 +1,255 @@
+/******************************************************************************
+ * arch-x86_32.h
@@ -88463,9 +86779,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/arch-x86_32.h l
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/arch-x86_64.h linux-2.6.18-xen/include/xen/interface/arch-x86_64.h
---- linux-2.6.18.1/include/xen/interface/arch-x86_64.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/arch-x86_64.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/arch-x86_64.h linux-2.6.18-xen/include/xen/interface/arch-x86_64.h
+--- linux-2.6.18.3/include/xen/interface/arch-x86_64.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/arch-x86_64.h 2006-11-19 14:27:15.000000000 +0100
@@ -0,0 +1,322 @@
+/******************************************************************************
+ * arch-x86_64.h
@@ -88789,9 +87105,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/arch-x86_64.h l
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/callback.h linux-2.6.18-xen/include/xen/interface/callback.h
---- linux-2.6.18.1/include/xen/interface/callback.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/callback.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/callback.h linux-2.6.18-xen/include/xen/interface/callback.h
+--- linux-2.6.18.3/include/xen/interface/callback.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/callback.h 2006-11-19 14:27:15.000000000 +0100
@@ -0,0 +1,74 @@
+/******************************************************************************
+ * callback.h
@@ -88867,9 +87183,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/callback.h linu
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/dom0_ops.h linux-2.6.18-xen/include/xen/interface/dom0_ops.h
---- linux-2.6.18.1/include/xen/interface/dom0_ops.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/dom0_ops.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/dom0_ops.h linux-2.6.18-xen/include/xen/interface/dom0_ops.h
+--- linux-2.6.18.3/include/xen/interface/dom0_ops.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/dom0_ops.h 2006-11-19 14:27:15.000000000 +0100
@@ -0,0 +1,102 @@
+/******************************************************************************
+ * dom0_ops.h
@@ -88973,9 +87289,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/dom0_ops.h linu
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/domctl.h linux-2.6.18-xen/include/xen/interface/domctl.h
---- linux-2.6.18.1/include/xen/interface/domctl.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/domctl.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/domctl.h linux-2.6.18-xen/include/xen/interface/domctl.h
+--- linux-2.6.18.3/include/xen/interface/domctl.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/domctl.h 2006-11-19 14:27:15.000000000 +0100
@@ -0,0 +1,392 @@
+/******************************************************************************
+ * domctl.h
@@ -89369,9 +87685,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/domctl.h linux-
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/elfnote.h linux-2.6.18-xen/include/xen/interface/elfnote.h
---- linux-2.6.18.1/include/xen/interface/elfnote.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/elfnote.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/elfnote.h linux-2.6.18-xen/include/xen/interface/elfnote.h
+--- linux-2.6.18.3/include/xen/interface/elfnote.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/elfnote.h 2006-11-19 14:27:15.000000000 +0100
@@ -0,0 +1,133 @@
+/******************************************************************************
+ * elfnote.h
@@ -89506,9 +87822,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/elfnote.h linux
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/event_channel.h linux-2.6.18-xen/include/xen/interface/event_channel.h
---- linux-2.6.18.1/include/xen/interface/event_channel.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/event_channel.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/event_channel.h linux-2.6.18-xen/include/xen/interface/event_channel.h
+--- linux-2.6.18.3/include/xen/interface/event_channel.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/event_channel.h 2006-11-19 14:27:15.000000000 +0100
@@ -0,0 +1,233 @@
+/******************************************************************************
+ * event_channel.h
@@ -89743,9 +88059,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/event_channel.h
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/features.h linux-2.6.18-xen/include/xen/interface/features.h
---- linux-2.6.18.1/include/xen/interface/features.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/features.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/features.h linux-2.6.18-xen/include/xen/interface/features.h
+--- linux-2.6.18.3/include/xen/interface/features.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/features.h 2006-11-19 14:27:15.000000000 +0100
@@ -0,0 +1,53 @@
+/******************************************************************************
+ * features.h
@@ -89800,9 +88116,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/features.h linu
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/grant_table.h linux-2.6.18-xen/include/xen/interface/grant_table.h
---- linux-2.6.18.1/include/xen/interface/grant_table.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/grant_table.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/grant_table.h linux-2.6.18-xen/include/xen/interface/grant_table.h
+--- linux-2.6.18.3/include/xen/interface/grant_table.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/grant_table.h 2006-11-19 14:27:15.000000000 +0100
@@ -0,0 +1,362 @@
+/******************************************************************************
+ * grant_table.h
@@ -90166,9 +88482,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/grant_table.h l
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/hvm/e820.h linux-2.6.18-xen/include/xen/interface/hvm/e820.h
---- linux-2.6.18.1/include/xen/interface/hvm/e820.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/hvm/e820.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/hvm/e820.h linux-2.6.18-xen/include/xen/interface/hvm/e820.h
+--- linux-2.6.18.3/include/xen/interface/hvm/e820.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/hvm/e820.h 2006-11-19 14:27:15.000000000 +0100
@@ -0,0 +1,32 @@
+#ifndef __XEN_PUBLIC_HVM_E820_H__
+#define __XEN_PUBLIC_HVM_E820_H__
@@ -90202,9 +88518,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/hvm/e820.h linu
+#define HVM_BELOW_4G_MMIO_LENGTH ((1ULL << 32) - HVM_BELOW_4G_MMIO_START)
+
+#endif /* __XEN_PUBLIC_HVM_E820_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/hvm/hvm_info_table.h linux-2.6.18-xen/include/xen/interface/hvm/hvm_info_table.h
---- linux-2.6.18.1/include/xen/interface/hvm/hvm_info_table.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/hvm/hvm_info_table.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/hvm/hvm_info_table.h linux-2.6.18-xen/include/xen/interface/hvm/hvm_info_table.h
+--- linux-2.6.18.3/include/xen/interface/hvm/hvm_info_table.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/hvm/hvm_info_table.h 2006-11-19 14:27:15.000000000 +0100
@@ -0,0 +1,22 @@
+/******************************************************************************
+ * hvm/hvm_info_table.h
@@ -90228,9 +88544,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/hvm/hvm_info_ta
+};
+
+#endif /* __XEN_PUBLIC_HVM_HVM_INFO_TABLE_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/hvm/ioreq.h linux-2.6.18-xen/include/xen/interface/hvm/ioreq.h
---- linux-2.6.18.1/include/xen/interface/hvm/ioreq.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/hvm/ioreq.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/hvm/ioreq.h linux-2.6.18-xen/include/xen/interface/hvm/ioreq.h
+--- linux-2.6.18.3/include/xen/interface/hvm/ioreq.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/hvm/ioreq.h 2006-11-19 14:27:15.000000000 +0100
@@ -0,0 +1,99 @@
+/*
+ * ioreq.h: I/O request definitions for device models
@@ -90331,9 +88647,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/hvm/ioreq.h lin
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/hvm/params.h linux-2.6.18-xen/include/xen/interface/hvm/params.h
---- linux-2.6.18.1/include/xen/interface/hvm/params.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/hvm/params.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/hvm/params.h linux-2.6.18-xen/include/xen/interface/hvm/params.h
+--- linux-2.6.18.3/include/xen/interface/hvm/params.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/hvm/params.h 2006-11-19 14:27:15.000000000 +0100
@@ -0,0 +1,24 @@
+#ifndef __XEN_PUBLIC_HVM_PARAMS_H__
+#define __XEN_PUBLIC_HVM_PARAMS_H__
@@ -90359,9 +88675,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/hvm/params.h li
+DEFINE_XEN_GUEST_HANDLE(xen_hvm_param_t);
+
+#endif /* __XEN_PUBLIC_HVM_PARAMS_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/hvm/vmx_assist.h linux-2.6.18-xen/include/xen/interface/hvm/vmx_assist.h
---- linux-2.6.18.1/include/xen/interface/hvm/vmx_assist.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/hvm/vmx_assist.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/hvm/vmx_assist.h linux-2.6.18-xen/include/xen/interface/hvm/vmx_assist.h
+--- linux-2.6.18.3/include/xen/interface/hvm/vmx_assist.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/hvm/vmx_assist.h 2006-11-19 14:27:15.000000000 +0100
@@ -0,0 +1,98 @@
+/*
+ * vmx_assist.h: Context definitions for the VMXASSIST world switch.
@@ -90461,9 +88777,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/hvm/vmx_assist.
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/io/blkif.h linux-2.6.18-xen/include/xen/interface/io/blkif.h
---- linux-2.6.18.1/include/xen/interface/io/blkif.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/io/blkif.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/io/blkif.h linux-2.6.18-xen/include/xen/interface/io/blkif.h
+--- linux-2.6.18.3/include/xen/interface/io/blkif.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/io/blkif.h 2006-11-19 14:27:15.000000000 +0100
@@ -0,0 +1,87 @@
+/******************************************************************************
+ * blkif.h
@@ -90552,9 +88868,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/io/blkif.h linu
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/io/console.h linux-2.6.18-xen/include/xen/interface/io/console.h
---- linux-2.6.18.1/include/xen/interface/io/console.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/io/console.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/io/console.h linux-2.6.18-xen/include/xen/interface/io/console.h
+--- linux-2.6.18.3/include/xen/interface/io/console.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/io/console.h 2006-11-19 14:27:16.000000000 +0100
@@ -0,0 +1,33 @@
+/******************************************************************************
+ * console.h
@@ -90589,9 +88905,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/io/console.h li
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/io/netif.h linux-2.6.18-xen/include/xen/interface/io/netif.h
---- linux-2.6.18.1/include/xen/interface/io/netif.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/io/netif.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/io/netif.h linux-2.6.18-xen/include/xen/interface/io/netif.h
+--- linux-2.6.18.3/include/xen/interface/io/netif.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/io/netif.h 2006-11-19 14:27:16.000000000 +0100
@@ -0,0 +1,166 @@
+/******************************************************************************
+ * netif.h
@@ -90759,9 +89075,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/io/netif.h linu
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/io/pciif.h linux-2.6.18-xen/include/xen/interface/io/pciif.h
---- linux-2.6.18.1/include/xen/interface/io/pciif.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/io/pciif.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/io/pciif.h linux-2.6.18-xen/include/xen/interface/io/pciif.h
+--- linux-2.6.18.3/include/xen/interface/io/pciif.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/io/pciif.h 2006-11-19 14:27:16.000000000 +0100
@@ -0,0 +1,55 @@
+/*
+ * PCI Backend/Frontend Common Data Structures & Macros
@@ -90818,9 +89134,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/io/pciif.h linu
+};
+
+#endif /* __XEN_PCI_COMMON_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/io/ring.h linux-2.6.18-xen/include/xen/interface/io/ring.h
---- linux-2.6.18.1/include/xen/interface/io/ring.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/io/ring.h 2006-10-17 15:01:58.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/io/ring.h linux-2.6.18-xen/include/xen/interface/io/ring.h
+--- linux-2.6.18.3/include/xen/interface/io/ring.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/io/ring.h 2006-11-19 14:27:16.000000000 +0100
@@ -0,0 +1,273 @@
+/******************************************************************************
+ * ring.h
@@ -91095,9 +89411,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/io/ring.h linux
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/io/tpmif.h linux-2.6.18-xen/include/xen/interface/io/tpmif.h
---- linux-2.6.18.1/include/xen/interface/io/tpmif.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/io/tpmif.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/io/tpmif.h linux-2.6.18-xen/include/xen/interface/io/tpmif.h
+--- linux-2.6.18.3/include/xen/interface/io/tpmif.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/io/tpmif.h 2006-11-19 14:27:16.000000000 +0100
@@ -0,0 +1,59 @@
+/******************************************************************************
+ * tpmif.h
@@ -91158,9 +89474,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/io/tpmif.h linu
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/io/xenbus.h linux-2.6.18-xen/include/xen/interface/io/xenbus.h
---- linux-2.6.18.1/include/xen/interface/io/xenbus.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/io/xenbus.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/io/xenbus.h linux-2.6.18-xen/include/xen/interface/io/xenbus.h
+--- linux-2.6.18.3/include/xen/interface/io/xenbus.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/io/xenbus.h 2006-11-19 14:27:16.000000000 +0100
@@ -0,0 +1,45 @@
+/*****************************************************************************
+ * xenbus.h
@@ -91207,9 +89523,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/io/xenbus.h lin
+typedef enum xenbus_state XenbusState;
+
+#endif /* _XEN_PUBLIC_IO_XENBUS_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/io/xs_wire.h linux-2.6.18-xen/include/xen/interface/io/xs_wire.h
---- linux-2.6.18.1/include/xen/interface/io/xs_wire.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/io/xs_wire.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/io/xs_wire.h linux-2.6.18-xen/include/xen/interface/io/xs_wire.h
+--- linux-2.6.18.3/include/xen/interface/io/xs_wire.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/io/xs_wire.h 2006-11-19 14:27:16.000000000 +0100
@@ -0,0 +1,97 @@
+/*
+ * Details of the "wire" protocol between Xen Store Daemon and client
@@ -91308,9 +89624,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/io/xs_wire.h li
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/memory.h linux-2.6.18-xen/include/xen/interface/memory.h
---- linux-2.6.18.1/include/xen/interface/memory.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/memory.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/memory.h linux-2.6.18-xen/include/xen/interface/memory.h
+--- linux-2.6.18.3/include/xen/interface/memory.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/memory.h 2006-11-19 14:27:16.000000000 +0100
@@ -0,0 +1,243 @@
+/******************************************************************************
+ * memory.h
@@ -91555,9 +89871,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/memory.h linux-
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/nmi.h linux-2.6.18-xen/include/xen/interface/nmi.h
---- linux-2.6.18.1/include/xen/interface/nmi.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/nmi.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/nmi.h linux-2.6.18-xen/include/xen/interface/nmi.h
+--- linux-2.6.18.3/include/xen/interface/nmi.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/nmi.h 2006-11-19 14:27:16.000000000 +0100
@@ -0,0 +1,60 @@
+/******************************************************************************
+ * nmi.h
@@ -91619,9 +89935,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/nmi.h linux-2.6
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/physdev.h linux-2.6.18-xen/include/xen/interface/physdev.h
---- linux-2.6.18.1/include/xen/interface/physdev.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/physdev.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/physdev.h linux-2.6.18-xen/include/xen/interface/physdev.h
+--- linux-2.6.18.3/include/xen/interface/physdev.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/physdev.h 2006-11-19 14:27:16.000000000 +0100
@@ -0,0 +1,149 @@
+
+#ifndef __XEN_PUBLIC_PHYSDEV_H__
@@ -91772,9 +90088,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/physdev.h linux
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/platform.h linux-2.6.18-xen/include/xen/interface/platform.h
---- linux-2.6.18.1/include/xen/interface/platform.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/platform.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/platform.h linux-2.6.18-xen/include/xen/interface/platform.h
+--- linux-2.6.18.3/include/xen/interface/platform.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/platform.h 2006-11-19 14:27:16.000000000 +0100
@@ -0,0 +1,125 @@
+/******************************************************************************
+ * platform.h
@@ -91901,9 +90217,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/platform.h linu
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/sched.h linux-2.6.18-xen/include/xen/interface/sched.h
---- linux-2.6.18.1/include/xen/interface/sched.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/sched.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/sched.h linux-2.6.18-xen/include/xen/interface/sched.h
+--- linux-2.6.18.3/include/xen/interface/sched.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/sched.h 2006-11-19 14:27:16.000000000 +0100
@@ -0,0 +1,103 @@
+/******************************************************************************
+ * sched.h
@@ -92008,9 +90324,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/sched.h linux-2
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/sysctl.h linux-2.6.18-xen/include/xen/interface/sysctl.h
---- linux-2.6.18.1/include/xen/interface/sysctl.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/sysctl.h 2006-09-04 16:31:19.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/sysctl.h linux-2.6.18-xen/include/xen/interface/sysctl.h
+--- linux-2.6.18.3/include/xen/interface/sysctl.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/sysctl.h 2006-11-19 14:27:16.000000000 +0100
@@ -0,0 +1,151 @@
+/******************************************************************************
+ * sysctl.h
@@ -92163,9 +90479,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/sysctl.h linux-
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/trace.h linux-2.6.18-xen/include/xen/interface/trace.h
---- linux-2.6.18.1/include/xen/interface/trace.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/trace.h 2006-09-04 16:31:20.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/trace.h linux-2.6.18-xen/include/xen/interface/trace.h
+--- linux-2.6.18.3/include/xen/interface/trace.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/trace.h 2006-11-19 14:27:16.000000000 +0100
@@ -0,0 +1,87 @@
+/******************************************************************************
+ * include/public/trace.h
@@ -92254,9 +90570,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/trace.h linux-2
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/vcpu.h linux-2.6.18-xen/include/xen/interface/vcpu.h
---- linux-2.6.18.1/include/xen/interface/vcpu.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/vcpu.h 2006-09-04 16:31:20.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/vcpu.h linux-2.6.18-xen/include/xen/interface/vcpu.h
+--- linux-2.6.18.3/include/xen/interface/vcpu.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/vcpu.h 2006-11-19 14:27:16.000000000 +0100
@@ -0,0 +1,121 @@
+/******************************************************************************
+ * vcpu.h
@@ -92379,9 +90695,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/vcpu.h linux-2.
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/version.h linux-2.6.18-xen/include/xen/interface/version.h
---- linux-2.6.18.1/include/xen/interface/version.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/version.h 2006-09-04 16:31:20.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/version.h linux-2.6.18-xen/include/xen/interface/version.h
+--- linux-2.6.18.3/include/xen/interface/version.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/version.h 2006-11-19 14:27:16.000000000 +0100
@@ -0,0 +1,73 @@
+/******************************************************************************
+ * version.h
@@ -92456,9 +90772,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/version.h linux
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/xencomm.h linux-2.6.18-xen/include/xen/interface/xencomm.h
---- linux-2.6.18.1/include/xen/interface/xencomm.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/xencomm.h 2006-09-04 16:31:20.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/xencomm.h linux-2.6.18-xen/include/xen/interface/xencomm.h
+--- linux-2.6.18.3/include/xen/interface/xencomm.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/xencomm.h 2006-11-19 14:27:16.000000000 +0100
@@ -0,0 +1,37 @@
+/*
+ * Copyright (C) 2006 Hollis Blanchard <hollisb@us.ibm.com>, IBM Corporation
@@ -92497,9 +90813,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/xencomm.h linux
+};
+
+#endif /* _XEN_XENCOMM_H_ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/xen-compat.h linux-2.6.18-xen/include/xen/interface/xen-compat.h
---- linux-2.6.18.1/include/xen/interface/xen-compat.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/xen-compat.h 2006-09-04 16:31:20.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/xen-compat.h linux-2.6.18-xen/include/xen/interface/xen-compat.h
+--- linux-2.6.18.3/include/xen/interface/xen-compat.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/xen-compat.h 2006-11-19 14:27:16.000000000 +0100
@@ -0,0 +1,26 @@
+/******************************************************************************
+ * xen-compat.h
@@ -92527,9 +90843,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/xen-compat.h li
+#endif
+
+#endif /* __XEN_PUBLIC_XEN_COMPAT_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/xen.h linux-2.6.18-xen/include/xen/interface/xen.h
---- linux-2.6.18.1/include/xen/interface/xen.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/xen.h 2006-09-21 01:33:32.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/xen.h linux-2.6.18-xen/include/xen/interface/xen.h
+--- linux-2.6.18.3/include/xen/interface/xen.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/xen.h 2006-11-19 14:27:16.000000000 +0100
@@ -0,0 +1,581 @@
+/******************************************************************************
+ * xen.h
@@ -93112,9 +91428,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/xen.h linux-2.6
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/xenoprof.h linux-2.6.18-xen/include/xen/interface/xenoprof.h
---- linux-2.6.18.1/include/xen/interface/xenoprof.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/interface/xenoprof.h 2006-09-21 01:33:32.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/interface/xenoprof.h linux-2.6.18-xen/include/xen/interface/xenoprof.h
+--- linux-2.6.18.3/include/xen/interface/xenoprof.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/interface/xenoprof.h 2006-11-19 14:27:16.000000000 +0100
@@ -0,0 +1,110 @@
+/******************************************************************************
+ * xenoprof.h
@@ -93226,9 +91542,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/interface/xenoprof.h linu
+ * indent-tabs-mode: nil
+ * End:
+ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/pcifront.h linux-2.6.18-xen/include/xen/pcifront.h
---- linux-2.6.18.1/include/xen/pcifront.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/pcifront.h 2006-09-04 16:31:20.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/pcifront.h linux-2.6.18-xen/include/xen/pcifront.h
+--- linux-2.6.18.3/include/xen/pcifront.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/pcifront.h 2006-11-19 14:27:16.000000000 +0100
@@ -0,0 +1,76 @@
+/*
+ * PCI Frontend - arch-dependendent declarations
@@ -93306,9 +91622,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/pcifront.h linux-2.6.18-x
+#endif /* __KERNEL__ */
+
+#endif /* __XEN_ASM_PCIFRONT_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/public/evtchn.h linux-2.6.18-xen/include/xen/public/evtchn.h
---- linux-2.6.18.1/include/xen/public/evtchn.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/public/evtchn.h 2006-10-17 15:01:58.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/public/evtchn.h linux-2.6.18-xen/include/xen/public/evtchn.h
+--- linux-2.6.18.3/include/xen/public/evtchn.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/public/evtchn.h 2006-11-19 14:27:16.000000000 +0100
@@ -0,0 +1,88 @@
+/******************************************************************************
+ * evtchn.h
@@ -93398,9 +91714,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/public/evtchn.h linux-2.6
+ _IOC(_IOC_NONE, 'E', 5, 0)
+
+#endif /* __LINUX_PUBLIC_EVTCHN_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/public/privcmd.h linux-2.6.18-xen/include/xen/public/privcmd.h
---- linux-2.6.18.1/include/xen/public/privcmd.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/public/privcmd.h 2006-09-04 16:31:20.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/public/privcmd.h linux-2.6.18-xen/include/xen/public/privcmd.h
+--- linux-2.6.18.3/include/xen/public/privcmd.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/public/privcmd.h 2006-11-19 14:27:16.000000000 +0100
@@ -0,0 +1,79 @@
+/******************************************************************************
+ * privcmd.h
@@ -93481,9 +91797,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/public/privcmd.h linux-2.
+ _IOC(_IOC_NONE, 'P', 3, sizeof(privcmd_mmapbatch_t))
+
+#endif /* __LINUX_PUBLIC_PRIVCMD_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/xenbus.h linux-2.6.18-xen/include/xen/xenbus.h
---- linux-2.6.18.1/include/xen/xenbus.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/xenbus.h 2006-09-21 01:33:32.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/xenbus.h linux-2.6.18-xen/include/xen/xenbus.h
+--- linux-2.6.18.3/include/xen/xenbus.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/xenbus.h 2006-11-19 14:27:16.000000000 +0100
@@ -0,0 +1,306 @@
+/******************************************************************************
+ * xenbus.h
@@ -93791,9 +92107,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/xenbus.h linux-2.6.18-xen
+int xenbus_frontend_closed(struct xenbus_device *dev);
+
+#endif /* _XEN_XENBUS_H */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/xencons.h linux-2.6.18-xen/include/xen/xencons.h
---- linux-2.6.18.1/include/xen/xencons.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/xencons.h 2006-09-21 01:33:32.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/xencons.h linux-2.6.18-xen/include/xen/xencons.h
+--- linux-2.6.18.3/include/xen/xencons.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/xencons.h 2006-11-19 14:27:16.000000000 +0100
@@ -0,0 +1,17 @@
+#ifndef __ASM_XENCONS_H__
+#define __ASM_XENCONS_H__
@@ -93812,9 +92128,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/xencons.h linux-2.6.18-xe
+int xencons_ring_send(const char *data, unsigned len);
+
+#endif /* __ASM_XENCONS_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/xen_proc.h linux-2.6.18-xen/include/xen/xen_proc.h
---- linux-2.6.18.1/include/xen/xen_proc.h 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/include/xen/xen_proc.h 2006-09-04 16:31:20.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/include/xen/xen_proc.h linux-2.6.18-xen/include/xen/xen_proc.h
+--- linux-2.6.18.3/include/xen/xen_proc.h 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/include/xen/xen_proc.h 2006-11-19 14:27:16.000000000 +0100
@@ -0,0 +1,12 @@
+
+#ifndef __ASM_XEN_PROC_H__
@@ -93828,9 +92144,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/include/xen/xen_proc.h linux-2.6.18-x
+ const char *name);
+
+#endif /* __ASM_XEN_PROC_H__ */
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/kernel/fork.c linux-2.6.18-xen/kernel/fork.c
---- linux-2.6.18.1/kernel/fork.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/kernel/fork.c 2006-09-05 10:45:48.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/kernel/fork.c linux-2.6.18-xen/kernel/fork.c
+--- linux-2.6.18.3/kernel/fork.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/kernel/fork.c 2006-11-19 14:27:16.000000000 +0100
@@ -276,6 +276,9 @@
if (retval)
goto out;
@@ -93841,9 +92157,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/kernel/fork.c linux-2.6.18-xen/kernel
retval = 0;
out:
up_write(&mm->mmap_sem);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/kernel/irq/manage.c linux-2.6.18-xen/kernel/irq/manage.c
---- linux-2.6.18.1/kernel/irq/manage.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/kernel/irq/manage.c 2006-09-04 16:31:20.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/kernel/irq/manage.c linux-2.6.18-xen/kernel/irq/manage.c
+--- linux-2.6.18.3/kernel/irq/manage.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/kernel/irq/manage.c 2006-12-05 18:42:37.000000000 +0100
@@ -350,7 +350,6 @@
struct irqaction **p;
unsigned long flags;
@@ -93852,9 +92168,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/kernel/irq/manage.c linux-2.6.18-xen/
if (irq >= NR_IRQS)
return;
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/kernel/Kconfig.preempt linux-2.6.18-xen/kernel/Kconfig.preempt
---- linux-2.6.18.1/kernel/Kconfig.preempt 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/kernel/Kconfig.preempt 2006-09-04 16:31:20.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/kernel/Kconfig.preempt linux-2.6.18-xen/kernel/Kconfig.preempt
+--- linux-2.6.18.3/kernel/Kconfig.preempt 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/kernel/Kconfig.preempt 2006-11-19 14:27:16.000000000 +0100
@@ -35,6 +35,7 @@
config PREEMPT
@@ -93863,9 +92179,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/kernel/Kconfig.preempt linux-2.6.18-x
help
This option reduces the latency of the kernel by making
all kernel code (that is not executing in a critical section)
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/lib/Kconfig.debug linux-2.6.18-xen/lib/Kconfig.debug
---- linux-2.6.18.1/lib/Kconfig.debug 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/lib/Kconfig.debug 2006-09-04 16:31:20.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/lib/Kconfig.debug linux-2.6.18-xen/lib/Kconfig.debug
+--- linux-2.6.18.3/lib/Kconfig.debug 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/lib/Kconfig.debug 2006-11-19 14:27:16.000000000 +0100
@@ -325,7 +325,7 @@
config UNWIND_INFO
@@ -93875,20 +92191,22 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/lib/Kconfig.debug linux-2.6.18-xen/li
depends on !MODULES || !(MIPS || PPC || SUPERH || V850)
help
If you say Y here the resulting kernel image will be slightly larger
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/lib/Makefile linux-2.6.18-xen/lib/Makefile
---- linux-2.6.18.1/lib/Makefile 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/lib/Makefile 2006-10-17 15:01:59.000000000 +0200
-@@ -52,6 +52,7 @@
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/lib/Makefile linux-2.6.18-xen/lib/Makefile
+--- linux-2.6.18.3/lib/Makefile 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/lib/Makefile 2006-11-19 14:27:16.000000000 +0100
+@@ -52,6 +52,9 @@
obj-$(CONFIG_AUDIT_GENERIC) += audit.o
obj-$(CONFIG_SWIOTLB) += swiotlb.o
++ifneq ($(CONFIG_XEN_IA64_DOM0_NON_VP),y)
+swiotlb-$(CONFIG_XEN) := ../arch/i386/kernel/swiotlb.o
++endif
hostprogs-y := gen_crc32table
clean-files := crc32table.h
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/mm/highmem.c linux-2.6.18-xen/mm/highmem.c
---- linux-2.6.18.1/mm/highmem.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/mm/highmem.c 2006-09-04 16:31:20.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/mm/highmem.c linux-2.6.18-xen/mm/highmem.c
+--- linux-2.6.18.3/mm/highmem.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/mm/highmem.c 2006-11-19 14:27:16.000000000 +0100
@@ -142,6 +142,17 @@
return vaddr;
}
@@ -93907,9 +92225,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/mm/highmem.c linux-2.6.18-xen/mm/high
void fastcall *kmap_high(struct page *page)
{
unsigned long vaddr;
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/mm/Kconfig linux-2.6.18-xen/mm/Kconfig
---- linux-2.6.18.1/mm/Kconfig 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/mm/Kconfig 2006-09-22 16:38:35.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/mm/Kconfig linux-2.6.18-xen/mm/Kconfig
+--- linux-2.6.18.3/mm/Kconfig 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/mm/Kconfig 2006-11-19 14:27:16.000000000 +0100
@@ -116,7 +116,6 @@
config MEMORY_HOTPLUG
bool "Allow for memory hot-add"
@@ -93933,9 +92251,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/mm/Kconfig linux-2.6.18-xen/mm/Kconfi
default "4"
#
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/mm/memory.c linux-2.6.18-xen/mm/memory.c
---- linux-2.6.18.1/mm/memory.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/mm/memory.c 2006-10-17 15:01:59.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/mm/memory.c linux-2.6.18-xen/mm/memory.c
+--- linux-2.6.18.3/mm/memory.c 2006-12-06 09:06:09.000000000 +0100
++++ linux-2.6.18-xen/mm/memory.c 2006-12-05 18:42:37.000000000 +0100
@@ -403,7 +403,8 @@
* and that the resulting page looks ok.
*/
@@ -94084,9 +92402,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/mm/memory.c linux-2.6.18-xen/mm/memor
/*
* handle_pte_fault chooses page fault handler according to an entry
* which was read non-atomically. Before making any commitment, on
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/mm/mmap.c linux-2.6.18-xen/mm/mmap.c
---- linux-2.6.18.1/mm/mmap.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/mm/mmap.c 2006-09-21 01:33:32.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/mm/mmap.c linux-2.6.18-xen/mm/mmap.c
+--- linux-2.6.18.3/mm/mmap.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/mm/mmap.c 2006-11-19 14:27:16.000000000 +0100
@@ -1963,6 +1963,10 @@
unsigned long nr_accounted = 0;
unsigned long end;
@@ -94098,9 +92416,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/mm/mmap.c linux-2.6.18-xen/mm/mmap.c
lru_add_drain();
flush_cache_mm(mm);
tlb = tlb_gather_mmu(mm, 1);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/mm/page_alloc.c linux-2.6.18-xen/mm/page_alloc.c
---- linux-2.6.18.1/mm/page_alloc.c 2006-10-19 11:01:25.000000000 +0200
-+++ linux-2.6.18-xen/mm/page_alloc.c 2006-10-17 15:01:59.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/mm/page_alloc.c linux-2.6.18-xen/mm/page_alloc.c
+--- linux-2.6.18.3/mm/page_alloc.c 2006-12-06 09:06:09.000000000 +0100
++++ linux-2.6.18-xen/mm/page_alloc.c 2006-12-05 18:42:37.000000000 +0100
@@ -443,7 +443,8 @@
int i;
int reserved = 0;
@@ -94121,9 +92439,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/mm/page_alloc.c linux-2.6.18-xen/mm/p
if (PageAnon(page))
page->mapping = NULL;
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/net/core/dev.c linux-2.6.18-xen/net/core/dev.c
---- linux-2.6.18.1/net/core/dev.c 2006-10-19 11:01:25.000000000 +0200
-+++ linux-2.6.18-xen/net/core/dev.c 2006-10-17 15:01:59.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/net/core/dev.c linux-2.6.18-xen/net/core/dev.c
+--- linux-2.6.18.3/net/core/dev.c 2006-12-06 09:06:10.000000000 +0100
++++ linux-2.6.18-xen/net/core/dev.c 2006-12-05 18:42:37.000000000 +0100
@@ -118,6 +118,12 @@
#include <linux/err.h>
#include <linux/ctype.h>
@@ -94222,9 +92540,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/net/core/dev.c linux-2.6.18-xen/net/c
#if defined(CONFIG_BRIDGE) || defined(CONFIG_BRIDGE_MODULE)
EXPORT_SYMBOL(br_handle_frame_hook);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/net/core/skbuff.c linux-2.6.18-xen/net/core/skbuff.c
---- linux-2.6.18.1/net/core/skbuff.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/net/core/skbuff.c 2006-09-04 16:31:21.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/net/core/skbuff.c linux-2.6.18-xen/net/core/skbuff.c
+--- linux-2.6.18.3/net/core/skbuff.c 2006-12-06 09:06:10.000000000 +0100
++++ linux-2.6.18-xen/net/core/skbuff.c 2006-12-05 18:42:37.000000000 +0100
@@ -139,6 +139,7 @@
* Buffers may only be allocated from interrupts using a @gfp_mask of
* %GFP_ATOMIC.
@@ -94295,9 +92613,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/net/core/skbuff.c linux-2.6.18-xen/ne
C(pkt_type);
C(ip_summed);
C(priority);
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/net/ipv4/netfilter/ip_nat_proto_tcp.c linux-2.6.18-xen/net/ipv4/netfilter/ip_nat_proto_tcp.c
---- linux-2.6.18.1/net/ipv4/netfilter/ip_nat_proto_tcp.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/net/ipv4/netfilter/ip_nat_proto_tcp.c 2006-09-04 16:31:22.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/net/ipv4/netfilter/ip_nat_proto_tcp.c linux-2.6.18-xen/net/ipv4/netfilter/ip_nat_proto_tcp.c
+--- linux-2.6.18.3/net/ipv4/netfilter/ip_nat_proto_tcp.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/net/ipv4/netfilter/ip_nat_proto_tcp.c 2006-11-19 14:27:18.000000000 +0100
@@ -129,7 +129,12 @@
if (hdrsize < sizeof(*hdr))
return 1;
@@ -94312,9 +92630,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/net/ipv4/netfilter/ip_nat_proto_tcp.c
ip_nat_cheat_check(oldport ^ 0xFFFF,
newport,
hdr->check));
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/net/ipv4/netfilter/ip_nat_proto_udp.c linux-2.6.18-xen/net/ipv4/netfilter/ip_nat_proto_udp.c
---- linux-2.6.18.1/net/ipv4/netfilter/ip_nat_proto_udp.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/net/ipv4/netfilter/ip_nat_proto_udp.c 2006-09-04 16:31:22.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/net/ipv4/netfilter/ip_nat_proto_udp.c linux-2.6.18-xen/net/ipv4/netfilter/ip_nat_proto_udp.c
+--- linux-2.6.18.3/net/ipv4/netfilter/ip_nat_proto_udp.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/net/ipv4/netfilter/ip_nat_proto_udp.c 2006-11-19 14:27:18.000000000 +0100
@@ -114,7 +114,12 @@
portptr = &hdr->dest;
}
@@ -94329,9 +92647,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/net/ipv4/netfilter/ip_nat_proto_udp.c
ip_nat_cheat_check(*portptr ^ 0xFFFF,
newport,
hdr->check));
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/net/ipv4/xfrm4_output.c linux-2.6.18-xen/net/ipv4/xfrm4_output.c
---- linux-2.6.18.1/net/ipv4/xfrm4_output.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/net/ipv4/xfrm4_output.c 2006-09-04 16:31:23.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/net/ipv4/xfrm4_output.c linux-2.6.18-xen/net/ipv4/xfrm4_output.c
+--- linux-2.6.18.3/net/ipv4/xfrm4_output.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/net/ipv4/xfrm4_output.c 2006-11-19 14:27:18.000000000 +0100
@@ -18,6 +18,8 @@
#include <net/xfrm.h>
#include <net/icmp.h>
@@ -94352,9 +92670,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/net/ipv4/xfrm4_output.c linux-2.6.18-
if (skb->ip_summed == CHECKSUM_HW) {
err = skb_checksum_help(skb, 0);
if (err)
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/net/ipv6/addrconf.c linux-2.6.18-xen/net/ipv6/addrconf.c
---- linux-2.6.18.1/net/ipv6/addrconf.c 2006-09-20 05:42:06.000000000 +0200
-+++ linux-2.6.18-xen/net/ipv6/addrconf.c 2006-09-04 16:31:23.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/net/ipv6/addrconf.c linux-2.6.18-xen/net/ipv6/addrconf.c
+--- linux-2.6.18.3/net/ipv6/addrconf.c 2006-09-20 05:42:06.000000000 +0200
++++ linux-2.6.18-xen/net/ipv6/addrconf.c 2006-11-19 14:27:18.000000000 +0100
@@ -2514,6 +2514,7 @@
spin_lock_bh(&ifp->lock);
@@ -94371,9 +92689,9 @@ diff -urN -x .hg -x .hgtags linux-2.6.18.1/net/ipv6/addrconf.c linux-2.6.18-xen/
(ipv6_addr_type(&ifp->addr) & IPV6_ADDR_LINKLOCAL)) {
struct in6_addr all_routers;
-diff -urN -x .hg -x .hgtags linux-2.6.18.1/scripts/Makefile.xen linux-2.6.18-xen/scripts/Makefile.xen
---- linux-2.6.18.1/scripts/Makefile.xen 1970-01-01 01:00:00.000000000 +0100
-+++ linux-2.6.18-xen/scripts/Makefile.xen 2006-09-04 16:31:23.000000000 +0200
+diff -urN -x .hg -x .hgtags linux-2.6.18.3/scripts/Makefile.xen linux-2.6.18-xen/scripts/Makefile.xen
+--- linux-2.6.18.3/scripts/Makefile.xen 1970-01-01 01:00:00.000000000 +0100
++++ linux-2.6.18-xen/scripts/Makefile.xen 2006-11-19 14:27:19.000000000 +0100
@@ -0,0 +1,14 @@
+
+# cherrypickxen($1 = allobj)
diff --git a/debian/patches/features/all/xen/vserver-update.patch b/debian/patches/features/all/xen/vserver-update.patch
index 7e54e9b99b79..05b3a9cedd1a 100644
--- a/debian/patches/features/all/xen/vserver-update.patch
+++ b/debian/patches/features/all/xen/vserver-update.patch
@@ -1,42 +1,17 @@
diff -ur source-amd64-xen/arch/i386/kernel/irq-xen.c source-amd64-xen-vserver-patch/arch/i386/kernel/irq-xen.c
---- source-amd64-xen/arch/i386/kernel/irq-xen.c 2006-11-06 11:57:48.000000000 +0100
-+++ source-amd64-xen-vserver-patch/arch/i386/kernel/irq-xen.c 2006-11-06 12:06:08.000000000 +0100
-@@ -18,6 +18,7 @@
- #include <linux/notifier.h>
- #include <linux/cpu.h>
- #include <linux/delay.h>
-+#include <linux/vs_context.h>
-
- DEFINE_PER_CPU(irq_cpustat_t, irq_stat) ____cacheline_internodealigned_in_smp;
- EXPORT_PER_CPU_SYMBOL(irq_stat);
-@@ -55,6 +56,7 @@
- {
- /* high bit used in ret_from_ code */
- int irq = ~regs->orig_eax;
-+ struct vx_info_save vxis;
- #ifdef CONFIG_4KSTACKS
- union irq_ctx *curctx, *irqctx;
- u32 *isp;
-@@ -81,7 +83,7 @@
+--- source-amd64-xen/arch/i386/kernel/irq-xen.c 2006-12-15 18:44:42.000000000 +0100
++++ source-amd64-xen-vserver-patch/arch/i386/kernel/irq-xen.c 2006-12-15 18:45:43.000000000 +0100
+@@ -81,7 +81,6 @@
}
}
#endif
-
-+ __enter_vx_admin(&vxis);
#ifdef CONFIG_4KSTACKS
curctx = (union irq_ctx *) current_thread_info();
-@@ -120,6 +122,7 @@
- } else
- #endif
- __do_IRQ(irq, regs);
-+ __leave_vx_admin(&vxis);
-
- irq_exit();
-
diff -ur source-amd64-xen/arch/i386/kernel/traps-xen.c source-amd64-xen-vserver-patch/arch/i386/kernel/traps-xen.c
---- source-amd64-xen/arch/i386/kernel/traps-xen.c 2006-11-06 11:57:48.000000000 +0100
-+++ source-amd64-xen-vserver-patch/arch/i386/kernel/traps-xen.c 2006-11-06 12:06:08.000000000 +0100
+--- source-amd64-xen/arch/i386/kernel/traps-xen.c 2006-12-15 18:44:42.000000000 +0100
++++ source-amd64-xen-vserver-patch/arch/i386/kernel/traps-xen.c 2006-12-15 18:45:43.000000000 +0100
@@ -53,6 +53,7 @@
#include <asm/kdebug.h>
@@ -45,7 +20,7 @@ diff -ur source-amd64-xen/arch/i386/kernel/traps-xen.c source-amd64-xen-vserver-
#include "mach_traps.h"
-@@ -309,8 +310,8 @@
+@@ -310,8 +311,8 @@
regs->esi, regs->edi, regs->ebp, esp);
printk(KERN_EMERG "ds: %04x es: %04x ss: %04x\n",
regs->xds & 0xffff, regs->xes & 0xffff, ss);
@@ -56,7 +31,7 @@ diff -ur source-amd64-xen/arch/i386/kernel/traps-xen.c source-amd64-xen-vserver-
current_thread_info(), current, current->thread_info);
/*
* When in-kernel, we also print out the stack and code at the
-@@ -392,6 +393,8 @@
+@@ -393,6 +394,8 @@
oops_enter();
@@ -65,7 +40,7 @@ diff -ur source-amd64-xen/arch/i386/kernel/traps-xen.c source-amd64-xen-vserver-
if (die.lock_owner != raw_smp_processor_id()) {
console_verbose();
spin_lock_irqsave(&die.lock, flags);
-@@ -428,9 +431,9 @@
+@@ -429,9 +432,9 @@
if (nl)
printk("\n");
if (notify_die(DIE_OOPS, str, regs, err,
@@ -78,8 +53,8 @@ diff -ur source-amd64-xen/arch/i386/kernel/traps-xen.c source-amd64-xen-vserver-
esp = (unsigned long) (&regs->esp);
savesegment(ss, ss);
diff -ur source-amd64-xen/arch/x86_64/ia32/ia32entry-xen.S source-amd64-xen-vserver-patch/arch/x86_64/ia32/ia32entry-xen.S
---- source-amd64-xen/arch/x86_64/ia32/ia32entry-xen.S 2006-11-06 11:57:48.000000000 +0100
-+++ source-amd64-xen-vserver-patch/arch/x86_64/ia32/ia32entry-xen.S 2006-11-06 12:06:08.000000000 +0100
+--- source-amd64-xen/arch/x86_64/ia32/ia32entry-xen.S 2006-12-15 18:44:42.000000000 +0100
++++ source-amd64-xen-vserver-patch/arch/x86_64/ia32/ia32entry-xen.S 2006-12-15 18:45:43.000000000 +0100
@@ -695,7 +695,7 @@
.quad sys_tgkill /* 270 */
.quad compat_sys_utimes
@@ -90,8 +65,8 @@ diff -ur source-amd64-xen/arch/x86_64/ia32/ia32entry-xen.S source-amd64-xen-vser
.quad compat_sys_get_mempolicy /* 275 */
.quad sys_set_mempolicy
diff -ur source-amd64-xen/arch/x86_64/ia32/syscall32-xen.c source-amd64-xen-vserver-patch/arch/x86_64/ia32/syscall32-xen.c
---- source-amd64-xen/arch/x86_64/ia32/syscall32-xen.c 2006-11-06 11:57:48.000000000 +0100
-+++ source-amd64-xen-vserver-patch/arch/x86_64/ia32/syscall32-xen.c 2006-11-06 12:06:08.000000000 +0100
+--- source-amd64-xen/arch/x86_64/ia32/syscall32-xen.c 2006-12-15 18:44:42.000000000 +0100
++++ source-amd64-xen-vserver-patch/arch/x86_64/ia32/syscall32-xen.c 2006-12-15 18:45:43.000000000 +0100
@@ -10,6 +10,7 @@
#include <linux/init.h>
#include <linux/stringify.h>
@@ -109,39 +84,10 @@ diff -ur source-amd64-xen/arch/x86_64/ia32/syscall32-xen.c source-amd64-xen-vser
up_write(&mm->mmap_sem);
return 0;
}
-diff -ur source-amd64-xen/arch/x86_64/kernel/irq-xen.c source-amd64-xen-vserver-patch/arch/x86_64/kernel/irq-xen.c
---- source-amd64-xen/arch/x86_64/kernel/irq-xen.c 2006-11-06 11:57:48.000000000 +0100
-+++ source-amd64-xen-vserver-patch/arch/x86_64/kernel/irq-xen.c 2006-11-06 12:06:08.000000000 +0100
-@@ -15,6 +15,7 @@
- #include <linux/seq_file.h>
- #include <linux/module.h>
- #include <linux/delay.h>
-+#include <linux/vs_context.h>
- #include <asm/uaccess.h>
- #include <asm/io_apic.h>
- #include <asm/idle.h>
-@@ -117,6 +118,7 @@
- {
- /* high bit used in ret_from_ code */
- unsigned irq = ~regs->orig_rax;
-+ struct vx_info_save vxis;
-
- if (unlikely(irq >= NR_IRQS)) {
- printk(KERN_EMERG "%s: cannot handle IRQ %d\n",
-@@ -130,7 +132,9 @@
- #ifdef CONFIG_DEBUG_STACKOVERFLOW
- stack_overflow_check(regs);
- #endif
-+ __enter_vx_admin(&vxis);
- __do_IRQ(irq, regs);
-+ __leave_vx_admin(&vxis);
- irq_exit();
-
- return 1;
diff -ur source-amd64-xen/arch/x86_64/kernel/traps-xen.c source-amd64-xen-vserver-patch/arch/x86_64/kernel/traps-xen.c
---- source-amd64-xen/arch/x86_64/kernel/traps-xen.c 2006-11-06 11:57:48.000000000 +0100
-+++ source-amd64-xen-vserver-patch/arch/x86_64/kernel/traps-xen.c 2006-11-06 12:06:08.000000000 +0100
-@@ -436,8 +436,9 @@
+--- source-amd64-xen/arch/x86_64/kernel/traps-xen.c 2006-12-15 18:44:42.000000000 +0100
++++ source-amd64-xen-vserver-patch/arch/x86_64/kernel/traps-xen.c 2006-12-15 18:45:43.000000000 +0100
+@@ -435,8 +435,9 @@
printk("CPU %d ", cpu);
__show_regs(regs);
diff --git a/debian/patches/series/orig-1 b/debian/patches/series/orig-1
new file mode 100644
index 000000000000..518f00295572
--- /dev/null
+++ b/debian/patches/series/orig-1
@@ -0,0 +1,7 @@
+X debian/dfsg/files-1
++ debian/dfsg/drivers-media-video-dabus.patch
++ debian/dfsg/drivers-net-appletalk-cops.patch
++ debian/dfsg/drivers-net-dgrs.patch
++ debian/dfsg/drivers-net-tokenring-3c359-smctr.patch
++ debian/dfsg/drivers-usb-misc-emi62-emi26.patch
++ debian/dfsg/drivers-usb-serial-keyspan.patch
diff --git a/debian/rules b/debian/rules
index 8483d2dedb28..cc43342e7c6e 100755
--- a/debian/rules
+++ b/debian/rules
@@ -69,7 +69,7 @@ binary: binary-indep binary-arch
# Makes the master debian/control file by substituting
# variable values into the template.
#
-CONTROL_FILES = debian/changelog $(wildcard debian/templates/control.*)
+CONTROL_FILES = debian/changelog $(wildcard debian/templates/*)
CONTROL_FILES += debian/arch/defines $(wildcard debian/arch/*/defines) $(wildcard debian/arch/*/*/defines)
debian/control debian/rules.gen: debian/bin/gencontrol.py $(CONTROL_FILES)
if [ -f debian/control.md5sum ]; then \
diff --git a/debian/rules.real b/debian/rules.real
index 6348c5731818..537713291a6a 100644
--- a/debian/rules.real
+++ b/debian/rules.real
@@ -35,7 +35,7 @@ include debian/rules.defs
# replaced by the flavour for which the command is run.
#
kpkg_image := make-kpkg
-kpkg_image += --arch '$(ARCH)'
+kpkg_image += --arch '$(firstword $(KPKG_ARCH) $(ARCH))' --cross-compile=-
kpkg_image += --stem linux
kpkg_image += --config silentoldconfig
ifneq ($(INITRAMFS),False)
@@ -45,9 +45,6 @@ ifdef KPKG_SUBARCH
kpkg_image += --subarch '$(KPKG_SUBARCH)'
endif
setup_env := env -u ABINAME -u ARCH -u SUBARCH -u FLAVOUR -u VERSION -u LOCALVERSION -u MAKEFLAGS
-ifneq ($(DEB_BUILD_ARCH),$(DEB_HOST_ARCH))
- kpkg_image += --cross-compile='$(DEB_HOST_GNU_TYPE)'
-endif
ifdef DEBIAN_KERNEL_JOBS
setup_env_kpkg_jobs = CONCURRENCY_LEVEL=$(DEBIAN_KERNEL_JOBS)
@@ -122,6 +119,18 @@ $(STAMPS_DIR)/setup-$(ARCH)-$(SUBARCH)-$(FLAVOUR)-$(TYPE): DIR=$(BUILD_DIR)/buil
$(STAMPS_DIR)/setup-$(ARCH)-$(SUBARCH)-$(FLAVOUR)-$(TYPE): $(BUILD_DIR)/config.$(ARCH)-$(SUBARCH)-$(FLAVOUR) $(STAMPS_DIR)/source-$(ARCH)-$(SUBARCH)
# TODO: Should we set CROSS_COMPILE always?
+ifdef OVERRIDE_HOST_TYPE
+define SETUP_DIR_HOST_TYPE
+ echo 'override CROSS_COMPILE = $(OVERRIDE_HOST_TYPE)-' >> '$(DIR)/.kernelvariables'
+endef
+else
+define SETUP_DIR_HOST_TYPE
+ echo 'ifneq ($$(DEB_BUILD_ARCH),$$(DEB_HOST_ARCH))' >> '$(DIR)/.kernelvariables'
+ echo 'override CROSS_COMPILE = $$(DEB_HOST_GNU_TYPE)-' >> '$(DIR)/.kernelvariables'
+ echo 'endif' >> '$(DIR)/.kernelvariables'
+endef
+endif
+
define SETUP_DIR
rm -rf '$(DIR)'
cp -al '$(SOURCE_DIR)' '$(DIR)'
@@ -130,9 +139,7 @@ define SETUP_DIR
echo 'override ARCH = $(KERNEL_ARCH)' >> '$(DIR)/.kernelvariables'
echo 'CCACHE = ccache' >> '$(DIR)/.kernelvariables'
echo 'CC = $$(if $$(DEBIAN_KERNEL_USE_CCACHE),$$(CCACHE)) $$(CROSS_COMPILE)$(COMPILER)' >> '$(DIR)/.kernelvariables'
- echo 'ifneq ($$(DEB_BUILD_ARCH),$$(DEB_HOST_ARCH))' >> '$(DIR)/.kernelvariables'
- echo 'override CROSS_COMPILE = $$(DEB_HOST_GNU_TYPE)-' >> '$(DIR)/.kernelvariables'
- echo 'endif' >> '$(DIR)/.kernelvariables'
+ $(SETUP_DIR_HOST_TYPE)
cd '$(DIR)'; $(setup_env) make reportoldconfig
endef
diff --git a/debian/templates/control.image.type-kernel-package.in b/debian/templates/control.image.type-kernel-package.in
new file mode 100644
index 000000000000..ae4b43eea048
--- /dev/null
+++ b/debian/templates/control.image.type-kernel-package.in
@@ -0,0 +1,12 @@
+Package: linux-image-@upstreamversion@@abiname@@localversion@
+Section: admin
+Priority: optional
+Provides: linux-image, linux-image-@major@, linux-modules-@upstreamversion@@abiname@@localversion@
+Pre-Depends: debconf (>= 0.2.17) | debconf-2.0
+Depends: module-init-tools (>= 0.9.13), coreutils (>= 5.2.1)
+Suggests: linux-doc-@version@
+Description: Linux @upstreamversion@ image on @class@
+ This package provides the binary image and pre-built loadable modules for
+ Linux kernel @upstreamversion@ on @longclass@ machines.
+ .
+ @desc@
diff --git a/debian/templates/control.source.in b/debian/templates/control.source.in
index b70b000c03d1..ef4c8bbad012 100644
--- a/debian/templates/control.source.in
+++ b/debian/templates/control.source.in
@@ -5,4 +5,4 @@ Maintainer: Debian Kernel Team <debian-kernel@lists.debian.org>
Uploaders: Andres Salomon <dilinger@debian.org>, Bastian Blank <waldi@debian.org>, Simon Horman <horms@debian.org>, Sven Luther <luther@debian.org>, Jonas Smedegaard <dr@jones.dk>, Norbert Tretkowski <nobse@debian.org>, Frederik Schüler <fs@debian.org>
Standards-Version: 3.6.1.0
Build-Depends: debhelper (>= 4.1.0), module-init-tools, dpkg-dev (>= 1.10.23), debianutils (>= 1.6), bzip2, sparc-utils [sparc], kernel-package (>= 10.063), python, python2.4-minimal
-Build-Depends-Indep: docbook-utils, gs, transfig, xmlto
+Build-Depends-Indep: docbook-utils, findutils (>= 4.2.12), gs, transfig, xmlto