All of lore.kernel.org
 help / color / mirror / Atom feed
From: Roland Dreier <rdreier@cisco.com>
To: Ingo Molnar <mingo@elte.hu>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	"David S. Miller" <davem@davemloft.net>,
	Alan Cox <alan@lxorguk.ukuu.org.uk>,
	linux-kernel@vger.kernel.org,
	Peter Zijlstra <a.p.zijlstra@chello.nl>,
	Thomas Gleixner <tglx@linutronix.de>,
	"H. Peter Anvin" <hpa@zytor.com>,
	David Howells <dhowells@redhat.com>
Subject: Re: [announce] new tree: "fix all build warnings, on all configs"
Date: Fri, 17 Oct 2008 12:36:54 -0700	[thread overview]
Message-ID: <adaiqrrrp2h.fsf@cisco.com> (raw)
In-Reply-To: <20081017191202.GA5396@elte.hu> (Ingo Molnar's message of "Fri, 17 Oct 2008 21:12:02 +0200")

 > the drivers/net/mlx4/mcg.c commit you pointed out is one of the very few 
 > borderline cases: the code gets neither better, nor worse.

Yes, I agree exactly.  As long as there are not too many such cases
(since every commit has some cost just from causing churn) then we are
OK, I think.

 > If you look at the totality of fixes they are not common at all. (and
 > almost by definition the 100-200 unfixed warnings that we have piled
 > up in -git are the _problematic_ cases - clear-cut cases tend to be
 > fixed.)

Yes, and I think that merging such changes makes the most sense as part
of a project such as yours that wants to kill all warnings.  I looked at
the mcg.c warning and found the same workaround, but in the context of
my maintenance work, I just reported the gcc bug and lived with the
warning when using gcc 4.3.

By the way, just out of curiousity, how are you dealing with warnings
about "format not a string literal and no format arguments" caused by
code like arch/x86/kernel/dumpstack_64.c:

static void print_trace_address(void *data, unsigned long addr, int reliable)
{
	touch_nmi_watchdog();
	printk(data);
	printk_address(addr, reliable);
}

and also cases like:

	char *name;

	//...

	kobject_set_name(obj, name);

(I get these with gcc "(Ubuntu 4.3.2-1ubuntu10) 4.3.2")

 > i certainly have a found a couple of such cases, see tip/warnings/ugly - 
 > for example see the one below where gcc is not able to see through type 
 > width.

Yes, the uninitialized variable warnings are obnoxious too.  By the way,
I think this:

@@ -72,7 +72,7 @@ static __always_inline void *__constant_memcpy(void *to, const void *from,
 		return to;
 	case 5:
 		*(int *)to = *(int *)from;
-		*((char *)to + 4) = *((char *)from + 4);
+		*((short *)to + 3) = *((short *)from + 3);
 		return to;
 	case 6:
 		*(int *)to = *(int *)from;

is actually *wrong*, because the cast operator binds tighter than
addition -- so

+		*((short *)to + 3) = *((short *)from + 3);

actually copies bytes at offset 6 and 7; I think what you intended was:

+		*((short *)(to + 3)) = *((short *)(from + 3));

which illustrates the risks in fixing warnings.

 - R.

  reply	other threads:[~2008-10-17 19:37 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-10-17 17:11 [announce] new tree: "fix all build warnings, on all configs" Ingo Molnar
2008-10-17 17:59 ` Roland Dreier
2008-10-17 18:05   ` Ingo Molnar
2008-10-17 18:47     ` Roland Dreier
2008-10-17 19:12       ` Ingo Molnar
2008-10-17 19:36         ` Roland Dreier [this message]
2008-10-18  8:22           ` Ingo Molnar
2008-10-20 16:37             ` Linus Torvalds
2008-10-20 16:49               ` H. Peter Anvin
2008-10-20 16:57                 ` Linus Torvalds
2008-10-20 19:21               ` Ingo Molnar
2008-10-21  6:41                 ` Jörn Engel
2008-10-22  9:47                   ` Ingo Molnar
2008-10-22 10:10                     ` Jörn Engel
2008-10-18  7:43 ` Andi Kleen
2008-10-21 10:30   ` [announce] new tree: "fix all build warnings, on all configs" II Andi Kleen
2008-10-21 11:17   ` [announce] new tree: "fix all build warnings, on all configs" Ingo Molnar
2008-10-21 12:07     ` Andi Kleen
2008-10-21 19:39       ` Rafael J. Wysocki
2008-10-21 19:37     ` Rafael J. Wysocki
2008-10-22  4:11       ` Len Brown
2008-10-22 12:23         ` [PATCH] ACPI suspend: Fix CONFIG_ACPI_SLEEP dependence and some compilation warnings (was: Re: [announce] new tree: "fix all build warnings, on all configs") Rafael J. Wysocki
2008-10-22 12:23           ` Rafael J. Wysocki
2008-10-22 18:58           ` Len Brown
2008-10-22 18:58           ` Len Brown
2008-10-22 12:23         ` Rafael J. Wysocki

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=adaiqrrrp2h.fsf@cisco.com \
    --to=rdreier@cisco.com \
    --cc=a.p.zijlstra@chello.nl \
    --cc=akpm@linux-foundation.org \
    --cc=alan@lxorguk.ukuu.org.uk \
    --cc=davem@davemloft.net \
    --cc=dhowells@redhat.com \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=tglx@linutronix.de \
    --cc=torvalds@linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.