SOURCES: linux-2.4-gcc4.patch (NEW) - gcc 4.x fixes (at least to b...
qboosh
qboosh at pld-linux.org
Sun Dec 4 01:30:00 CET 2005
Author: qboosh Date: Sun Dec 4 00:30:00 2005 GMT
Module: SOURCES Tag: HEAD
---- Log message:
- gcc 4.x fixes (at least to build sparc64 kernel using gcc 4.0.2)
---- Files affected:
SOURCES:
linux-2.4-gcc4.patch (NONE -> 1.1) (NEW)
---- Diffs:
================================================================
Index: SOURCES/linux-2.4-gcc4.patch
diff -u /dev/null SOURCES/linux-2.4-gcc4.patch:1.1
--- /dev/null Sun Dec 4 01:30:00 2005
+++ SOURCES/linux-2.4-gcc4.patch Sun Dec 4 01:29:55 2005
@@ -0,0 +1,557 @@
+--- linux-2.4.32/drivers/net/wan/comx.c.orig 2002-08-03 00:39:44.000000000 +0000
++++ linux-2.4.32/drivers/net/wan/comx.c 2005-12-03 16:47:24.395727094 +0000
+@@ -111,7 +111,7 @@
+ };
+
+
+-static struct proc_dir_entry * comx_root_dir;
++struct proc_dir_entry * comx_root_dir;
+
+ struct comx_debugflags_struct comx_debugflags[] = {
+ { "comx_rx", DEBUG_COMX_RX },
+--- linux-2.4.32/drivers/sbus/char/pcikbd.h.orig 1998-01-12 23:15:45.000000000 +0000
++++ linux-2.4.32/drivers/sbus/char/pcikbd.h 2005-12-03 16:52:06.403543318 +0000
+@@ -31,9 +31,6 @@
+ extern unsigned char pckbd_read_mask;
+ extern unsigned char aux_device_present;
+
+-extern unsigned long pcikbd_iobase;
+-extern unsigned int pcikbd_irq;
+-
+ /*
+ * Keyboard Controller Registers
+ *
+--- linux-2.4.32/include/net/ipv6.h.orig 2005-12-03 16:56:22.516355000 +0000
++++ linux-2.4.32/include/net/ipv6.h 2005-12-03 17:12:15.276979392 +0000
+@@ -101,6 +101,7 @@
+ #ifdef __KERNEL__
+
+ #include <net/sock.h>
++#include <net/snmp.h>
+
+ /* sysctls */
+ extern int sysctl_ipv6_bindv6only;
+--- linux-2.4.32/include/net/icmp.h.orig 2005-12-03 17:12:44.765810000 +0000
++++ linux-2.4.32/include/net/icmp.h 2005-12-03 17:15:30.088592934 +0000
+@@ -22,6 +22,7 @@
+ #include <linux/skbuff.h>
+
+ #include <net/sock.h>
++#include <net/snmp.h>
+ #include <net/protocol.h>
+
+ struct icmp_err {
+--- linux-2.4.32/include/asm-sparc64/mostek.h.orig 2005-12-03 17:19:12.589934000 +0000
++++ linux-2.4.32/include/asm-sparc64/mostek.h 2005-12-03 17:22:39.581903369 +0000
+@@ -134,13 +134,11 @@
+ */
+ #define MOSTEK_48T08_OFFSET 0x0000UL /* Lower NVRAM portions */
+ #define MOSTEK_48T08_48T02 0x1800UL /* Offset to 48T02 chip */
+-extern unsigned long mstk48t08_regs;
+
+ /* SUN5 systems usually have 48t59 model clock chipsets. But we keep the older
+ * clock chip definitions around just in case.
+ */
+ #define MOSTEK_48T59_OFFSET 0x0000UL /* Lower NVRAM portions */
+ #define MOSTEK_48T59_48T02 0x1800UL /* Offset to 48T02 chip */
+-extern unsigned long mstk48t59_regs;
+
+ #endif /* !(_SPARC64_MOSTEK_H) */
+--- linux-2.4.32/include/asm-sparc/mostek.h.orig 2001-01-22 21:30:20.000000000 +0000
++++ linux-2.4.32/include/asm-sparc/mostek.h 2005-12-03 17:22:28.801464500 +0000
+@@ -127,7 +127,6 @@
+ char offset[6*1024]; /* Magic things may be here, who knows? */
+ struct mostek48t02 regs; /* Here is what we are interested in. */
+ };
+-extern struct mostek48t08 *mstk48t08_regs;
+
+ extern enum sparc_clock_type sp_clock_typ;
+
+--- linux-2.4.32/arch/sparc64/mm/init.c.orig 2004-11-17 11:54:21.000000000 +0000
++++ linux-2.4.32/arch/sparc64/mm/init.c 2005-12-03 17:27:13.883418845 +0000
+@@ -95,7 +95,7 @@
+ if (page2)
+ page2->next_hash = page->next_hash;
+ else
+- (struct page *)pgd_quicklist = page->next_hash;
++ pgd_quicklist = page->next_hash;
+ page->next_hash = NULL;
+ page->pprev_hash = NULL;
+ pgd_cache_size -= 2;
+--- linux-2.4.32/drivers/atm/fore200e.c.orig 2004-11-17 11:54:21.000000000 +0000
++++ linux-2.4.32/drivers/atm/fore200e.c 2005-12-03 17:35:49.888672929 +0000
+@@ -112,8 +112,8 @@
+ #endif
+
+
+-extern const struct atmdev_ops fore200e_ops;
+-extern const struct fore200e_bus fore200e_bus[];
++static const struct atmdev_ops fore200e_ops;
++static const struct fore200e_bus fore200e_bus[];
+
+ static struct fore200e* fore200e_boards = NULL;
+
+--- linux-2.4.32/drivers/block/nbd.c.orig 2005-12-03 16:40:57.827650000 +0000
++++ linux-2.4.32/drivers/block/nbd.c 2005-12-03 17:45:11.225316266 +0000
+@@ -34,7 +34,6 @@
+ * structure with userland
+ */
+
+-#define PARANOIA
+ #include <linux/major.h>
+
+ #include <linux/module.h>
+--- linux-2.4.32/drivers/fc4/soc.h.orig 2005-12-03 17:46:20.095041000 +0000
++++ linux-2.4.32/drivers/fc4/soc.h 2005-12-03 17:51:36.792763541 +0000
+@@ -111,21 +111,21 @@
+ }
+ }
+
+-static inline void xram_copy_from (void *p, xram_p x, int len)
++static inline void xram_copy_from (u32 *p, xram_p x, int len)
+ {
+ for (len >>= 2; len > 0; len--, x += sizeof(u32)) {
+ u32 val;
+
+ val = ((sbus_readw(x + 0x00UL) << 16) |
+ (sbus_readw(x + 0x02UL)));
+- *((u32 *)p)++ = val;
++ *p++ = val;
+ }
+ }
+
+-static inline void xram_copy_to (xram_p x, void *p, int len)
++static inline void xram_copy_to (xram_p x, u32 *p, int len)
+ {
+ for (len >>= 2; len > 0; len--, x += sizeof(u32)) {
+- u32 tmp = *((u32 *)p)++;
++ u32 tmp = *p++;
+ sbus_writew(tmp >> 16, x + 0x00UL);
+ sbus_writew(tmp, x + 0x02UL);
+ }
+--- linux-2.4.32/include/linux/i2c.h.orig 2005-12-03 18:24:44.838428000 +0000
++++ linux-2.4.32/include/linux/i2c.h 2005-12-03 18:29:22.494552894 +0000
+@@ -60,6 +60,25 @@
+ union i2c_smbus_data;
+
+ /*
++ * I2C Message - used for pure i2c transaction, also from /dev interface
++ */
++struct i2c_msg {
++ __u16 addr; /* slave address */
++ __u16 flags;
++#define I2C_M_TEN 0x10 /* we have a ten bit chip address */
++#define I2C_M_RD 0x01
++#define I2C_M_NOSTART 0x4000
++#define I2C_M_REV_DIR_ADDR 0x2000
++#define I2C_M_IGNORE_NAK 0x1000
++#define I2C_M_NO_RD_ACK 0x0800
++#define I2C_M_RECV_LEN 0x0400 /* length will be first received byte */
++#define I2C_M_RECV_PEC 0x0200 /* receive one more than the returned
++ length byte for the PEC */
++ __u16 len; /* msg length */
++ __u8 *buf; /* pointer to msg data */
++};
++
++/*
+ * The master routines are the ones normally used to transmit data to devices
+ * on a bus (or read from them). Apart from two basic transfer functions to
+ * transmit one message at a time, a more complex version can be used to
+@@ -372,25 +391,6 @@
+ /* Return 1 if adapter supports everything we need, 0 if not. */
+ extern int i2c_check_functionality (struct i2c_adapter *adap, u32 func);
+
+-/*
+- * I2C Message - used for pure i2c transaction, also from /dev interface
+- */
+-struct i2c_msg {
+- __u16 addr; /* slave address */
+- __u16 flags;
+-#define I2C_M_TEN 0x10 /* we have a ten bit chip address */
+-#define I2C_M_RD 0x01
+-#define I2C_M_NOSTART 0x4000
+-#define I2C_M_REV_DIR_ADDR 0x2000
+-#define I2C_M_IGNORE_NAK 0x1000
+-#define I2C_M_NO_RD_ACK 0x0800
+-#define I2C_M_RECV_LEN 0x0400 /* length will be first received byte */
+-#define I2C_M_RECV_PEC 0x0200 /* receive one more than the returned
+- length byte for the PEC */
+- __u16 len; /* msg length */
+- __u8 *buf; /* pointer to msg data */
+-};
+-
+ /* To determine what functionality is present */
+
+ #define I2C_FUNC_I2C 0x00000001
+--- linux-2.4.32/drivers/ieee1394/highlevel.c.orig 2003-11-28 18:26:20.000000000 +0000
++++ linux-2.4.32/drivers/ieee1394/highlevel.c 2005-12-03 18:35:28.930046618 +0000
+@@ -500,7 +500,7 @@
+ rcode = RCODE_TYPE_ERROR;
+ }
+
+- (u8 *)data += partlength;
++ data += partlength;
+ length -= partlength;
+ addr += partlength;
+
+@@ -546,7 +546,7 @@
+ rcode = RCODE_TYPE_ERROR;
+ }
+
+- (u8 *)data += partlength;
++ data += partlength;
+ length -= partlength;
+ addr += partlength;
+
+--- linux-2.4.32/drivers/md/lvm-internal.h.orig 2005-12-03 18:36:51.591981000 +0000
++++ linux-2.4.32/drivers/md/lvm-internal.h 2005-12-03 18:38:37.245186060 +0000
+@@ -45,7 +45,6 @@
+ extern const char *const lvm_name;
+
+
+-extern uint vg_count;
+ extern vg_t *vg[];
+ extern struct file_operations lvm_chr_fops;
+
+--- linux-2.4.32/drivers/media/video/videodev.c.orig 2005-12-03 18:09:57.849459000 +0000
++++ linux-2.4.32/drivers/media/video/videodev.c 2005-12-03 18:40:38.955371653 +0000
+@@ -516,7 +516,7 @@
+
+ #endif /* CONFIG_VIDEO_PROC_FS */
+
+-extern struct file_operations video_fops;
++static struct file_operations video_fops;
+
+ /**
+ * video_register_device - register video4linux devices
+--- linux-2.4.32/drivers/net/acenic.c.orig 2003-08-25 11:44:42.000000000 +0000
++++ linux-2.4.32/drivers/net/acenic.c 2005-12-03 18:51:53.238428300 +0000
+@@ -594,6 +594,7 @@
+
+ static int probed __initdata = 0;
+
++static void ace_watchdog(struct net_device *dev);
+
+ int __devinit acenic_probe (ACE_PROBE_ARG)
+ {
+@@ -665,7 +666,6 @@
+ dev->vlan_rx_kill_vid = ace_vlan_rx_kill_vid;
+ #endif
+ if (1) {
+- static void ace_watchdog(struct net_device *dev);
+ dev->tx_timeout = &ace_watchdog;
+ dev->watchdog_timeo = 5*HZ;
+ }
+--- linux-2.4.32/drivers/net/bonding/bond_alb.c.orig 2004-04-14 13:05:30.000000000 +0000
++++ linux-2.4.32/drivers/net/bonding/bond_alb.c 2005-12-03 18:56:51.592018586 +0000
+@@ -1275,7 +1275,7 @@
+ int bond_alb_xmit(struct sk_buff *skb, struct net_device *bond_dev)
+ {
+ struct bonding *bond = bond_dev->priv;
+- struct ethhdr *eth_data = (struct ethhdr *)skb->mac.raw = skb->data;
++ struct ethhdr *eth_data = (struct ethhdr *)(skb->mac.raw = skb->data);
+ struct alb_bond_info *bond_info = &(BOND_ALB_INFO(bond));
+ struct slave *tx_slave = NULL;
+ static u32 ip_bcast = 0xffffffff;
+--- linux-2.4.32/drivers/net/sk98lin/skvpd.c.orig 2005-04-04 01:42:19.000000000 +0000
++++ linux-2.4.32/drivers/net/sk98lin/skvpd.c 2005-12-03 19:01:15.154882292 +0000
+@@ -472,7 +472,7 @@
+ ((unsigned char)pAC->vpd.vpd_buf[0x40] == 0x3c) &&
+ ((unsigned char)pAC->vpd.vpd_buf[0x41] == 0x45) ) {
+ printk(KERN_INFO "sk98lin : humm... Asus mainboard with buggy VPD ? correcting data.\n");
+- (unsigned char)pAC->vpd.vpd_buf[0x40] = 0x38;
++ pAC->vpd.vpd_buf[0x40] = 0x38;
+ }
+
+ /* find the end tag of the RO area */
+--- linux-2.4.32/drivers/net/wan/comx-hw-comx.c.orig 2002-11-28 23:53:14.000000000 +0000
++++ linux-2.4.32/drivers/net/wan/comx-hw-comx.c 2005-12-03 19:05:38.218811988 +0000
+@@ -92,9 +92,9 @@
+ };
+
+ static struct net_device *memory_used[(COMX_MEM_MAX - COMX_MEM_MIN) / 0x10000];
+-extern struct comx_hardware hicomx_hw;
+-extern struct comx_hardware comx_hw;
+-extern struct comx_hardware cmx_hw;
++static struct comx_hardware hicomx_hw;
++static struct comx_hardware comx_hw;
++static struct comx_hardware cmx_hw;
+
+ static void COMX_interrupt(int irq, void *dev_id, struct pt_regs *regs);
+
+--- linux-2.4.32/drivers/scsi/aic7xxx/Makefile.orig 2005-12-03 18:09:58.275455000 +0000
++++ linux-2.4.32/drivers/scsi/aic7xxx/Makefile 2005-12-03 19:16:13.274964696 +0000
+@@ -13,7 +13,7 @@
+ obj-$(CONFIG_SCSI_AIC79XX) += aic79xx.o
+ endif
+
+-EXTRA_CFLAGS += -I$(TOPDIR)/drivers/scsi -Werror
++EXTRA_CFLAGS += -I$(TOPDIR)/drivers/scsi
+ ifeq ($(wildcard $(TOPDIR)/include/linux/rhconfig.h), \
+ $(TOPDIR)/include/linux/rhconfig.h)
+ EXTRA_CFLAGS += -DAIC_RED_HAT_LINUX_KERNEL
+--- linux-2.4.32/drivers/sound/sound_firmware.c.orig 2001-02-09 19:30:23.000000000 +0000
++++ linux-2.4.32/drivers/sound/sound_firmware.c 2005-12-03 19:20:48.370363242 +0000
+@@ -7,7 +7,6 @@
+ #include <linux/unistd.h>
+ #include <asm/uaccess.h>
+
+-static int errno;
+ static int do_mod_firmware_load(const char *fn, char **fp)
+ {
+ int fd;
+--- linux-2.4.32/drivers/usb/inode.c.orig 2004-02-18 13:36:31.000000000 +0000
++++ linux-2.4.32/drivers/usb/inode.c 2005-12-03 19:31:02.273854403 +0000
+@@ -64,6 +64,9 @@
+
+ #define NRSPECIAL (sizeof(special)/sizeof(special[0]))
+
++static struct inode_operations usbdevfs_bus_inode_operations;
++static struct file_operations usbdevfs_bus_file_operations;
++
+ /* --------------------------------------------------------------------- */
+
+ static int dnumber(struct dentry *dentry)
+--- linux-2.4.32/include/linux/usbdevice_fs.h.orig 2005-12-03 18:21:45.706998000 +0000
++++ linux-2.4.32/include/linux/usbdevice_fs.h 2005-12-03 19:30:45.804280530 +0000
+@@ -185,8 +185,6 @@
+ extern struct file_operations usbdevfs_devices_fops;
+ extern struct file_operations usbdevfs_device_file_operations;
+ extern struct inode_operations usbdevfs_device_inode_operations;
+-extern struct inode_operations usbdevfs_bus_inode_operations;
+-extern struct file_operations usbdevfs_bus_file_operations;
+ extern void usbdevfs_conn_disc_event(void);
+
+ #endif /* __KERNEL__ */
+--- linux-2.4.32/drivers/usb/audio.c.orig 2004-11-17 11:54:21.000000000 +0000
++++ linux-2.4.32/drivers/usb/audio.c 2005-12-03 19:42:13.444071912 +0000
+@@ -217,9 +217,6 @@
+
+ #define dprintk(x)
+
+-#undef abs
+-extern int abs(int __x) __attribute__ ((__const__)); /* Shut up warning */
+-
+ /* --------------------------------------------------------------------- */
+
+ /*
+@@ -460,9 +457,7 @@
+
+ /* --------------------------------------------------------------------- */
+
+-/* prevent picking up a bogus abs macro */
+-#undef abs
+-static inline int abs(int x)
++static inline int s_abs(int x)
+ {
+ if (x < 0)
+ return -x;
+@@ -1401,7 +1396,7 @@
+ continue;
+ }
+ f = cp[0] | (cp[1] << 8) | (cp[2] << 16);
+- if (abs(f - u->freqn) > (u->freqn >> 3) || f > u->freqmax) {
++ if (s_abs(f - u->freqn) > (u->freqn >> 3) || f > u->freqmax) {
+ printk(KERN_WARNING "usbout_sync_retire_desc: requested frequency %u (nominal %u) out of range!\n", f, u->freqn);
+ continue;
+ }
+--- linux-2.4.32/drivers/usb/host/ehci-q.c.orig 2005-01-19 14:10:07.000000000 +0000
++++ linux-2.4.32/drivers/usb/host/ehci-q.c 2005-12-03 19:46:27.828052178 +0000
+@@ -199,8 +199,6 @@
+ #ifdef INTR_AUTOMAGIC
+ struct urb *resubmit = 0;
+ struct usb_device *dev = 0;
+-
+- static int ehci_urb_enqueue (struct usb_hcd *, struct urb *, int);
+ #endif
+
+ if (likely (urb->hcpriv != 0)) {
+--- linux-2.4.32/fs/cifs/cifsfs.c.orig 2004-07-13 22:25:04.000000000 +0000
++++ linux-2.4.32/fs/cifs/cifsfs.c 2005-12-03 19:56:53.834177489 +0000
+@@ -50,8 +50,6 @@
+ static struct quotactl_ops cifs_quotactl_ops;
+ #endif
+
+-extern struct file_system_type cifs_fs_type;
+-
+ int cifsFYI = 0;
+ int cifsERROR = 1;
+ int traceSMB = 0;
+--- linux-2.4.32/fs/reiserfs/file.c.orig 2005-12-03 18:09:53.787491000 +0000
++++ linux-2.4.32/fs/reiserfs/file.c 2005-12-03 20:16:05.515658191 +0000
+@@ -92,61 +92,6 @@
+ return ( n_err < 0 ) ? -EIO : 0;
+ }
+
+-static int reiserfs_setattr(struct dentry *dentry, struct iattr *attr) {
+- struct inode *inode = dentry->d_inode ;
+- int error ;
+- unsigned int ia_valid = attr->ia_valid ;
+-
+- if (ia_valid & ATTR_SIZE) {
+- /* version 2 items will be caught by the s_maxbytes check
+- ** done for us in vmtruncate
+- */
+- if (get_inode_item_key_version(inode) == KEY_FORMAT_3_5 &&
+- attr->ia_size > MAX_NON_LFS)
+- return -EFBIG ;
+-
+- /* During a truncate, we have to make sure the new i_size is in
+- ** the transaction before we start dropping updates to data logged
+- ** or ordered write data pages.
+- */
+- if (attr->ia_size < inode->i_size && reiserfs_file_data_log(inode)) {
+- struct reiserfs_transaction_handle th ;
+- journal_begin(&th, inode->i_sb, 1) ;
+- reiserfs_update_sd_size(&th, inode, attr->ia_size) ;
+- journal_end(&th, inode->i_sb, 1) ;
+- /* fill in hole pointers in the expanding truncate case. */
+- } else if (attr->ia_size > inode->i_size) {
+- error = generic_cont_expand(inode, attr->ia_size) ;
+- if (inode->u.reiserfs_i.i_prealloc_count > 0) {
+- struct reiserfs_transaction_handle th ;
+- /* we're changing at most 2 bitmaps, inode + super */
+- journal_begin(&th, inode->i_sb, 4) ;
+- reiserfs_discard_prealloc (&th, inode);
+- journal_end(&th, inode->i_sb, 4) ;
+- }
+- if (error)
+- return error ;
+- }
+- }
+-
+- if ((((attr->ia_valid & ATTR_UID) && (attr->ia_uid & ~0xffff)) ||
+- ((attr->ia_valid & ATTR_GID) && (attr->ia_gid & ~0xffff))) &&
+- (get_inode_sd_version (inode) == STAT_DATA_V1))
+- /* stat data of format v3.5 has 16 bit uid and gid */
+- return -EINVAL;
+-
+- error = inode_change_ok(inode, attr) ;
+- if (!error) {
+- if ((ia_valid & ATTR_UID && attr->ia_uid != inode->i_uid) ||
+- (ia_valid & ATTR_GID && attr->ia_gid != inode->i_gid))
+- error = DQUOT_TRANSFER(inode, attr) ? -EDQUOT : 0;
+-
+- if (!error)
+- error = inode_setattr(inode, attr) ;
+- }
+- return error ;
+-}
+-
+ static ssize_t
+ reiserfs_file_write(struct file *f, const char *b, size_t count, loff_t *ppos)
+ {
+--- linux-2.4.32/include/linux/ufs_fs.h.orig 2005-12-03 18:10:47.690049000 +0000
++++ linux-2.4.32/include/linux/ufs_fs.h 2005-12-03 20:21:16.218147850 +0000
+@@ -555,7 +555,6 @@
+ extern struct file_operations ufs_dir_operations;
+
+ /* super.c */
+-extern struct file_system_type ufs_fs_type;
+ extern void ufs_warning (struct super_block *, const char *, const char *, ...) __attribute__ ((format (printf, 3, 4)));
+ extern void ufs_error (struct super_block *, const char *, const char *, ...) __attribute__ ((format (printf, 3, 4)));
+ extern void ufs_panic (struct super_block *, const char *, const char *, ...) __attribute__ ((format (printf, 3, 4)));
+--- linux-2.4.32/include/net/udp.h.orig 2005-12-03 21:13:16.977449000 +0000
++++ linux-2.4.32/include/net/udp.h 2005-12-03 21:13:55.194494543 +0000
+@@ -25,6 +25,7 @@
+ #include <linux/udp.h>
+ #include <linux/poll.h>
+ #include <net/sock.h>
++#include <net/snmp.h>
+
+ #define UDP_HTABLE_SIZE 128
+
+--- linux-2.4.32/net/ipv4/netfilter/ipt_XOR.c.orig 2005-12-03 18:09:54.309487000 +0000
++++ linux-2.4.32/net/ipv4/netfilter/ipt_XOR.c 2005-12-03 21:29:04.347218791 +0000
+@@ -34,7 +34,7 @@
+ tcph = (struct tcphdr *) ((*pskb)->data + iph->ihl*4);
+ for (i=0, j=0; i<(ntohs(iph->tot_len) - iph->ihl*4 - tcph->doff*4); ) {
+ for (k=0; k<=info->block_size; k++) {
+- (char) (*pskb)->data[ iph->ihl*4 + tcph->doff*4 + i ] ^=
++ (*pskb)->data[ iph->ihl*4 + tcph->doff*4 + i ] ^=
+ info->key[j];
+ i++;
+ }
+@@ -46,7 +46,7 @@
+ udph = (struct udphdr *) ((*pskb)->data + iph->ihl*4);
+ for (i=0, j=0; i<(ntohs(udph->len)-8); ) {
+ for (k=0; k<=info->block_size; k++) {
+- (char) (*pskb)->data[ iph->ihl*4 + sizeof(struct udphdr) + i ] ^=
++ (*pskb)->data[ iph->ihl*4 + sizeof(struct udphdr) + i ] ^=
+ info->key[j];
+ i++;
+ }
+--- linux-2.4.32/include/net/ip6_fib.h.orig 2005-12-03 21:22:38.899922000 +0000
++++ linux-2.4.32/include/net/ip6_fib.h 2005-12-03 21:42:51.146783596 +0000
+@@ -95,19 +95,8 @@
+ void *args;
+ };
+
+-extern struct fib6_walker_t fib6_walker_list;
+ extern rwlock_t fib6_walker_lock;
+
+-static inline void fib6_walker_link(struct fib6_walker_t *w)
+-{
+- write_lock_bh(&fib6_walker_lock);
+- w->next = fib6_walker_list.next;
+- w->prev = &fib6_walker_list;
+- w->next->prev = w;
+- w->prev->next = w;
+- write_unlock_bh(&fib6_walker_lock);
+-}
+-
+ static inline void fib6_walker_unlink(struct fib6_walker_t *w)
+ {
+ write_lock_bh(&fib6_walker_lock);
+--- linux-2.4.32/net/ipv6/ip6_fib.c.orig 2005-11-16 19:12:54.000000000 +0000
++++ linux-2.4.32/net/ipv6/ip6_fib.c 2005-12-03 21:43:04.714778854 +0000
+@@ -101,6 +101,16 @@
+
+ #define FOR_WALKERS(w) for ((w)=fib6_walker_list.next; (w) != &fib6_walker_list; (w)=(w)->next)
+
++static inline void fib6_walker_link(struct fib6_walker_t *w)
++{
++ write_lock_bh(&fib6_walker_lock);
++ w->next = fib6_walker_list.next;
++ w->prev = &fib6_walker_list;
++ w->next->prev = w;
++ w->prev->next = w;
++ write_unlock_bh(&fib6_walker_lock);
++}
++
+ static __inline__ u32 fib6_new_sernum(void)
+ {
+ u32 n = ++rt_sernum;
+--- linux-2.4.32/net/ipv6/sysctl_net_ipv6.c.orig 2004-04-14 13:05:41.000000000 +0000
++++ linux-2.4.32/net/ipv6/sysctl_net_ipv6.c 2005-12-03 21:49:33.177978127 +0000
+@@ -31,8 +31,7 @@
+
+ #ifdef MODULE
+ static struct ctl_table_header *ipv6_sysctl_header;
+-static struct ctl_table ipv6_root_table[];
+-static struct ctl_table ipv6_net_table[];
++extern struct ctl_table ipv6_net_table[];
+
+
+ ctl_table ipv6_root_table[] = {
+--- linux-2.4.32/net/khttpd/prototypes.h.orig 2005-12-03 21:51:51.222351000 +0000
++++ linux-2.4.32/net/khttpd/prototypes.h 2005-12-03 22:28:03.523640493 +0000
+@@ -49,7 +49,7 @@
+ extern struct khttpd_threadinfo threadinfo[CONFIG_KHTTPD_NUMCPU];
+ extern char CurrentTime[];
+ extern atomic_t ConnectCount;
+-extern struct wait_queue main_wait[CONFIG_KHTTPD_NUMCPU];
++extern wait_queue_t main_wait[CONFIG_KHTTPD_NUMCPU];
+
+ /* misc.c */
+
+--- linux-2.4.32/include/asm-sparc64/smp.h.orig 2005-12-03 22:45:57.606882000 +0000
++++ linux-2.4.32/include/asm-sparc64/smp.h 2005-12-03 23:00:43.818492761 +0000
+@@ -60,7 +60,6 @@
+ * Private routines/data
+ */
+
+-extern unsigned char boot_cpu_id;
+ extern unsigned long cpu_present_map;
+ #define cpu_online_map cpu_present_map
+
================================================================
More information about the pld-cvs-commit
mailing list