GIT 696e449d35140b8e9fe0cb3ebdbb22ab503e9f05 git+ssh://master.kernel.org/pub/scm/linux/kernel/git/jgarzik/misc-2.6.git#gccbug

commit 696e449d35140b8e9fe0cb3ebdbb22ab503e9f05
Author: Jeff Garzik <jeff@garzik.org>
Date:   Sun May 27 07:04:25 2007 -0400

    drivers/char/cyclades: fix verified-bogus gcc warnings

commit e2b015769f3c8f941a3f31b15feb961580cdce9a
Author: Jeff Garzik <jeff@garzik.org>
Date:   Fri Apr 27 14:25:50 2007 -0400

    arch/i386, sound/pci: kill gcc warnings verified as bogus
    
    Signed-off-by: Jeff Garzik <jeff@garzik.org>

commit aade56bc8a87044c6d8a2a71dd7135dd49ebe383
Author: Jeff Garzik <jeff@garzik.org>
Date:   Fri Apr 27 14:25:23 2007 -0400

    drives/*: kill gcc warnings verified as bogus
    
    Signed-off-by: Jeff Garzik <jeff@garzik.org>

commit 6045a293cc671c40c63630fbf716319489e7d86c
Author: Jeff Garzik <jeff@garzik.org>
Date:   Fri Apr 27 14:24:42 2007 -0400

    fs/*: kill gcc warnings verified as bogus
    
    Signed-off-by: Jeff Garzik <jeff@garzik.org>

commit ba04b72e1d7fba2322a15d43b9757c5423aa0677
Author: Jeff Garzik <jeff@garzik.org>
Date:   Fri Apr 27 12:48:00 2007 -0400

    kernel/*, ipc/*: kill gcc warnings verified as bogus
    
    Signed-off-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
---

 arch/i386/kernel/efi.c                 |    2 ++
 drivers/atm/zatm.c                     |    4 +++-
 drivers/char/cyclades.c                |    4 ++--
 drivers/infiniband/hw/mthca/mthca_qp.c |    4 ++--
 drivers/md/dm-exception-store.c        |    2 +-
 drivers/net/r8169.c                    |    2 +-
 drivers/net/tokenring/smctr.c          |    2 +-
 drivers/net/wan/sbni.c                 |    2 +-
 drivers/usb/misc/auerswald.c           |    2 +-
 drivers/video/matrox/matroxfb_maven.c  |    4 ++--
 drivers/video/riva/riva_hw.c           |    2 +-
 fs/udf/balloc.c                        |    2 ++
 ipc/msg.c                              |    2 ++
 ipc/sem.c                              |    2 ++
 kernel/auditfilter.c                   |    2 +-
 sound/pci/pcxhr/pcxhr.c                |    2 +-
 16 files changed, 25 insertions(+), 15 deletions(-)

Index: linux/arch/i386/kernel/efi.c
===================================================================
--- linux.orig/arch/i386/kernel/efi.c	2007-07-12 16:53:59.000000000 +0100
+++ linux/arch/i386/kernel/efi.c	2007-07-12 17:04:08.000000000 +0100
@@ -283,6 +283,8 @@ void efi_memmap_walk(efi_freemem_callbac
 	unsigned long start, end;
 	void *p;
 
+	prev.start = prev.end = 0;
+
 	for (p = memmap.map; p < memmap.map_end; p += memmap.desc_size) {
 		md = p;
 
Index: linux/drivers/atm/zatm.c
===================================================================
--- linux.orig/drivers/atm/zatm.c	2007-07-12 16:53:59.000000000 +0100
+++ linux/drivers/atm/zatm.c	2007-07-12 17:04:08.000000000 +0100
@@ -915,7 +915,7 @@ static int open_tx_first(struct atm_vcc 
 	unsigned long flags;
 	u32 *loop;
 	unsigned short chan;
-	int pcr,unlimited;
+	int unlimited;
 
 	DPRINTK("open_tx_first\n");
 	zatm_dev = ZATM_DEV(vcc->dev);
@@ -936,6 +936,8 @@ static int open_tx_first(struct atm_vcc 
 	    vcc->qos.txtp.max_pcr >= ATM_OC3_PCR);
 	if (unlimited && zatm_dev->ubr != -1) zatm_vcc->shaper = zatm_dev->ubr;
 	else {
+		int pcr = 0;
+
 		if (unlimited) vcc->qos.txtp.max_sdu = ATM_MAX_AAL5_PDU;
 		if ((zatm_vcc->shaper = alloc_shaper(vcc->dev,&pcr,
 		    vcc->qos.txtp.min_pcr,vcc->qos.txtp.max_pcr,unlimited))
Index: linux/drivers/char/cyclades.c
===================================================================
--- linux.orig/drivers/char/cyclades.c	2007-07-12 16:53:59.000000000 +0100
+++ linux/drivers/char/cyclades.c	2007-07-12 17:04:08.000000000 +0100
@@ -4433,10 +4433,10 @@ static void cy_hangup(struct tty_struct 
 static int __devinit cy_init_card(struct cyclades_card *cinfo)
 {
 	struct cyclades_port *info;
-	u32 mailbox;
+	u32 mailbox = 0xffffffff;
 	unsigned int nports;
 	unsigned short chip_number;
-	int index, port;
+	int index = -1, port;
 
 	spin_lock_init(&cinfo->card_lock);
 
Index: linux/drivers/infiniband/hw/mthca/mthca_qp.c
===================================================================
--- linux.orig/drivers/infiniband/hw/mthca/mthca_qp.c	2007-07-12 16:53:59.000000000 +0100
+++ linux/drivers/infiniband/hw/mthca/mthca_qp.c	2007-07-12 17:04:08.000000000 +0100
@@ -1591,7 +1591,7 @@ int mthca_tavor_post_send(struct ib_qp *
 	int i;
 	int size;
 	int size0 = 0;
-	u32 f0;
+	u32 f0 = 0;
 	int ind;
 	u8 op0 = 0;
 
@@ -1946,7 +1946,7 @@ int mthca_arbel_post_send(struct ib_qp *
 	int i;
 	int size;
 	int size0 = 0;
-	u32 f0;
+	u32 f0 = 0;
 	int ind;
 	u8 op0 = 0;
 
Index: linux/drivers/md/dm-exception-store.c
===================================================================
--- linux.orig/drivers/md/dm-exception-store.c	2007-07-12 17:04:04.000000000 +0100
+++ linux/drivers/md/dm-exception-store.c	2007-07-12 17:04:08.000000000 +0100
@@ -449,7 +449,7 @@ static void persistent_destroy(struct ex
 
 static int persistent_read_metadata(struct exception_store *store)
 {
-	int r, new_snapshot;
+	int r, new_snapshot = 0;
 	struct pstore *ps = get_info(store);
 
 	/*
Index: linux/drivers/net/r8169.c
===================================================================
--- linux.orig/drivers/net/r8169.c	2007-07-12 16:53:59.000000000 +0100
+++ linux/drivers/net/r8169.c	2007-07-12 17:04:08.000000000 +0100
@@ -2231,7 +2231,7 @@ static int rtl8169_xmit_frags(struct rtl
 {
 	struct skb_shared_info *info = skb_shinfo(skb);
 	unsigned int cur_frag, entry;
-	struct TxDesc *txd;
+	struct TxDesc *txd = NULL;
 
 	entry = tp->cur_tx;
 	for (cur_frag = 0; cur_frag < info->nr_frags; cur_frag++) {
Index: linux/drivers/net/tokenring/smctr.c
===================================================================
--- linux.orig/drivers/net/tokenring/smctr.c	2007-07-12 16:53:59.000000000 +0100
+++ linux/drivers/net/tokenring/smctr.c	2007-07-12 17:04:08.000000000 +0100
@@ -3692,7 +3692,7 @@ static int smctr_process_rx_packet(MAC_H
         __u16 rcode, correlator;
         int err = 0;
         __u8 xframe = 1;
-        __u16 tx_fstatus;
+        __u16 tx_fstatus = 0;
 
         rmf->vl = SWAP_BYTES(rmf->vl);
         if(rx_status & FCB_RX_STATUS_DA_MATCHED)
Index: linux/drivers/net/wan/sbni.c
===================================================================
--- linux.orig/drivers/net/wan/sbni.c	2007-07-12 16:53:59.000000000 +0100
+++ linux/drivers/net/wan/sbni.c	2007-07-12 17:04:08.000000000 +0100
@@ -595,7 +595,7 @@ recv_frame( struct net_device  *dev )
 
 	u32  crc = CRC32_INITIAL;
 
-	unsigned  framelen, frameno, ack;
+	unsigned  framelen = 0, frameno, ack;
 	unsigned  is_first, frame_ok;
 
 	if( check_fhdr( ioaddr, &framelen, &frameno, &ack, &is_first, &crc ) ) {
Index: linux/drivers/usb/misc/auerswald.c
===================================================================
--- linux.orig/drivers/usb/misc/auerswald.c	2007-07-12 16:53:59.000000000 +0100
+++ linux/drivers/usb/misc/auerswald.c	2007-07-12 17:04:08.000000000 +0100
@@ -664,7 +664,7 @@ static int auerchain_control_msg (pauerc
 	int ret;
 	struct usb_ctrlrequest *dr;
 	struct urb *urb;
-        int length;
+        int length = 0;
 
         dbg ("auerchain_control_msg");
         dr = kmalloc (sizeof (struct usb_ctrlrequest), GFP_KERNEL);
Index: linux/drivers/video/matrox/matroxfb_maven.c
===================================================================
--- linux.orig/drivers/video/matrox/matroxfb_maven.c	2007-07-12 16:53:59.000000000 +0100
+++ linux/drivers/video/matrox/matroxfb_maven.c	2007-07-12 17:04:08.000000000 +0100
@@ -284,7 +284,7 @@ static unsigned int matroxfb_mavenclock(
 		unsigned int* in, unsigned int* feed, unsigned int* post,
 		unsigned int* htotal2) {
 	unsigned int fvco;
-	unsigned int p;
+	unsigned int p = 0;
 
 	fvco = matroxfb_PLL_mavenclock(&maven1000_pll, ctl, htotal, vtotal, in, feed, &p, htotal2);
 	if (!fvco)
@@ -715,7 +715,7 @@ static int maven_find_exact_clocks(unsig
 	m->regs[0x82] = 0x81;
 
 	for (x = 0; x < 8; x++) {
-		unsigned int a, b, c, h2;
+		unsigned int a = 0, b = 0, c, h2 = 0;
 		unsigned int h = ht + 2 + x;
 
 		if (!matroxfb_mavenclock((m->mode == MATROXFB_OUTPUT_MODE_PAL) ? &maven_PAL : &maven_NTSC, h, vt, &a, &b, &c, &h2)) {
Index: linux/drivers/video/riva/riva_hw.c
===================================================================
--- linux.orig/drivers/video/riva/riva_hw.c	2007-07-12 16:53:59.000000000 +0100
+++ linux/drivers/video/riva/riva_hw.c	2007-07-12 17:04:08.000000000 +0100
@@ -1240,7 +1240,7 @@ int CalcStateExt
     int            dotClock
 )
 {
-    int pixelDepth, VClk, m, n, p;
+    int pixelDepth, VClk = 0, m = 0, n = 0, p = 0;
     /*
      * Save mode parameters.
      */
Index: linux/fs/udf/balloc.c
===================================================================
--- linux.orig/fs/udf/balloc.c	2007-07-12 16:53:59.000000000 +0100
+++ linux/fs/udf/balloc.c	2007-07-12 17:04:08.000000000 +0100
@@ -750,6 +750,8 @@ static int udf_table_new_block(struct su
 
 	*err = -ENOSPC;
 
+	memset(&goal_eloc, 0, sizeof(goal_eloc));
+
 	if (UDF_I_ALLOCTYPE(table) == ICBTAG_FLAG_AD_SHORT)
 		adsize = sizeof(short_ad);
 	else if (UDF_I_ALLOCTYPE(table) == ICBTAG_FLAG_AD_LONG)
Index: linux/ipc/msg.c
===================================================================
--- linux.orig/ipc/msg.c	2007-07-12 16:53:59.000000000 +0100
+++ linux/ipc/msg.c	2007-07-12 17:04:08.000000000 +0100
@@ -395,6 +395,8 @@ asmlinkage long sys_msgctl(int msqid, in
 	if (msqid < 0 || cmd < 0)
 		return -EINVAL;
 
+	memset(&setbuf, 0, sizeof(setbuf));
+
 	version = ipc_parse_version(&cmd);
 	ns = current->nsproxy->ipc_ns;
 
Index: linux/ipc/sem.c
===================================================================
--- linux.orig/ipc/sem.c	2007-07-12 16:53:59.000000000 +0100
+++ linux/ipc/sem.c	2007-07-12 17:04:08.000000000 +0100
@@ -861,6 +861,8 @@ static int semctl_down(struct ipc_namesp
 	struct sem_setbuf setbuf;
 	struct kern_ipc_perm *ipcp;
 
+	memset(&setbuf, 0, sizeof(setbuf));
+
 	if(cmd == IPC_SET) {
 		if(copy_semid_from_user (&setbuf, arg.buf, version))
 			return -EFAULT;
Index: linux/kernel/auditfilter.c
===================================================================
--- linux.orig/kernel/auditfilter.c	2007-07-12 16:53:59.000000000 +0100
+++ linux/kernel/auditfilter.c	2007-07-12 17:04:08.000000000 +0100
@@ -1210,7 +1210,7 @@ static inline int audit_add_rule(struct 
 	struct audit_entry *e;
 	struct audit_field *inode_f = entry->rule.inode_f;
 	struct audit_watch *watch = entry->rule.watch;
-	struct nameidata *ndp, *ndw;
+	struct nameidata *ndp = NULL, *ndw = NULL;
 	int h, err, putnd_needed = 0;
 #ifdef CONFIG_AUDITSYSCALL
 	int dont_count = 0;
Index: linux/sound/pci/pcxhr/pcxhr.c
===================================================================
--- linux.orig/sound/pci/pcxhr/pcxhr.c	2007-07-12 16:53:59.000000000 +0100
+++ linux/sound/pci/pcxhr/pcxhr.c	2007-07-12 17:04:08.000000000 +0100
@@ -637,7 +637,7 @@ static void pcxhr_trigger_tasklet(unsign
  */
 static int pcxhr_trigger(struct snd_pcm_substream *subs, int cmd)
 {
-	struct pcxhr_stream *stream;
+	struct pcxhr_stream *stream = NULL;
 	struct snd_pcm_substream *s;
 
 	switch (cmd) {