Re: [git pull] core kernel updates for v2.6.28

From: Linus Torvalds
Date: Thu Oct 16 2008 - 18:32:54 EST




On Wed, 15 Oct 2008, Ingo Molnar wrote:
>
> Please pull the latest core-v28-for-linus git tree from:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip.git core-v28-for-linus
>
> this is a combination of the following topics:
> ...
> core/resources

Ok, the resource_size_t -> generic phys_addr_t changes conflicted with the
PowerPC changes I had merged yesterday. The resolution wasn't overly
complex, but I'm sure I screwed something up anyway. Can the involved
Power people take a look (looks like BenH, Kumar, Becky to me), and
Jeremy/Ingo on the generic resource side?

> Frederic Weisbecker (1):
> softirq, warning fix: correct a format to avoid a warning

Ingo, stop dicking around with this crap. You apparently fixed some
warning that I never saw by turning it into a warning that I _do_ see:

kernel/softirq.c: In function ʽ__do_softirqʼ:
kernel/softirq.c:216: warning: format ʽ%dʼ expects type ʽintʼ, but argument 2 has type ʽlong intʼ

and as far as I can tell, you damn well should have seen it if you ever
compile a 64-bit kernel!

The fact is, that second argument was a "ptrdiff_t", which is neither
"int" nor "long". It should be "%td" I think. But the thing is, when you
fix a warning, you should damn well know what the hell you're doing, not
just shut it up.

Fixing warnings without knowing what is going on is WORSE than leaving the
warning alone. Leaving it alone at least keeps the status quo. Fixing it
without looking deeply enough at it has the potential to change a known
issue to a new issue and just moves bugs around, making the whole process
irritating and harder to handle/debug.

So PLEASE don't take even 'trivial' warning fixes unless you actually know
what is going on, or you trust the person very deeply to know.

Anyway, the correct fix is appended, but I haven't actually tested it.

Linus

---
kernel/softirq.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/kernel/softirq.c b/kernel/softirq.c
index be7a829..37d67aa 100644
--- a/kernel/softirq.c
+++ b/kernel/softirq.c
@@ -210,7 +210,7 @@ restart:
h->action(h);

if (unlikely(prev_count != preempt_count())) {
- printk(KERN_ERR "huh, entered softirq %d %p"
+ printk(KERN_ERR "huh, entered softirq %td %p"
"with preempt_count %08x,"
" exited with %08x?\n", h - softirq_vec,
h->action, prev_count, preempt_count());
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/