From: Thomas Gleixner <tglx@linutronix.de>
To: "Eric W. Biederman" <ebiederm@xmission.com>
Cc: Yinghai Lu <yinghai@kernel.org>, Ingo Molnar <mingo@elte.hu>,
"H. Peter Anvin" <hpa@zytor.com>,
Andrew Morton <akpm@linux-foundation.org>,
Rusty Russell <rusty@rustcorp.com.au>,
Suresh Siddha <suresh.b.siddha@intel.com>,
LKML <linux-kernel@vger.kernel.org>,
Jeremy Fitzhardinge <jeremy@goop.org>,
linux-arch@vger.kernel.org
Subject: Re: [PATCH -v2 2/2] genericirq: change ack/mask in irq_chip to take irq_desc instead of irq
Date: Tue, 2 Mar 2010 15:58:26 +0100 (CET) [thread overview]
Message-ID: <alpine.LFD.2.00.1003021522340.4245@localhost.localdomain> (raw)
In-Reply-To: <m1ljei5n9q.fsf@fess.ebiederm.org>
On Wed, 24 Feb 2010, Eric W. Biederman wrote:
> Yinghai Lu <yinghai@kernel.org> writes:
>
> > will have
> > void (*ack)(struct irq_desc *desc);
> > void (*mask)(struct irq_desc *desc);
> > void (*mask_ack)(struct irq_desc *desc);
> > void (*unmask)(struct irq_desc *desc);
> > void (*eoi)(struct irq_desc *desc);
> >
> > so for sparseirq with raidix tree, we don't call extra
> > irq_to_desc, and could use desc directly
>
> Overall this looks pretty decent. This look pretty complete.
> How many platforms did you manage to compile test this on?
>
> I have found a couple of issues (see below).
>
> A few times you change a bit more than is necessary which is a bit
> spooky in a patch this far ranging.
>
> Reading through this patch to review it took an uncomfortably long
> time.
And you didn't even catch all problem spots.
While I like the idea, I really hate the convert wholesale approach.
303 files changed, 3127 insertions(+), 2191 deletions(-)
is fine for a sed script renaming action, but definitely _not_ for
patches which require semantical changes to the affected code.
The right way to do that is
1) add new function pointers, which take irq_desc as their argument
2) make the generic code use them when the old function pointer is
NULL
3) convert the irq_chip implementations one by one with separate
patches
4) Remove the old function pointers and switch the generic code
fully over to use the new ones
Yes, it's more work, but it's less error prone and easier to review,
as the maintainers just have to look at the patch which affects their
particular area.
Thanks,
tglx
next prev parent reply other threads:[~2010-03-02 14:59 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-02-13 2:49 [PATCH 0/8] tip related: radix tree for spareseirq and logical flat clean up Yinghai Lu
2010-02-13 2:49 ` [PATCH 1/8] irq: remove not need bootmem code Yinghai Lu
2010-02-13 2:49 ` [PATCH 2/8] radix: move radix init early Yinghai Lu
2010-02-13 2:49 ` [PATCH 3/8] sparseirq: change irq_desc_ptrs to static Yinghai Lu
2010-02-13 2:49 ` [PATCH 4/8] sparseirq: use radix_tree instead of ptrs array Yinghai Lu
2010-02-13 2:49 ` [PATCH 5/8] x86: remove arch_probe_nr_irqs Yinghai Lu
2010-02-13 2:49 ` [PATCH 6/8] use nr_cpus= to set nr_cpu_ids early Yinghai Lu
2010-02-13 2:49 ` [PATCH 7/8] x86: use num_processors for possible cpus Yinghai Lu
2010-02-13 2:49 ` [PATCH 8/8] x86: make 32bit apic flat to physflat switch like 64bit Yinghai Lu
2010-02-13 3:44 ` [PATCH 0/8] tip related: radix tree for spareseirq and logical flat clean up Eric W. Biederman
2010-02-13 3:49 ` H. Peter Anvin
2010-02-13 4:17 ` Eric W. Biederman
2010-02-13 22:12 ` Jeremy Fitzhardinge
2010-02-13 22:26 ` Eric W. Biederman
2010-02-13 9:54 ` Yinghai Lu
2010-02-13 11:39 ` Eric W. Biederman
2010-02-13 12:04 ` Eric W. Biederman
2010-02-13 22:40 ` Yinghai Lu
2010-02-13 23:14 ` Eric W. Biederman
2010-02-13 23:59 ` Yinghai Lu
2010-02-14 0:30 ` Eric W. Biederman
2010-02-14 0:49 ` Yinghai Lu
2010-02-18 2:49 ` [PATCH 1/3] xen: Remove unnecessary arch specific xen irq functions Yinghai Lu
2010-02-19 1:36 ` [tip:x86/irq] " tip-bot for Eric W. Biederman
[not found] ` <4B7CA9A1.3020806@kernel.org>
2010-02-18 2:49 ` [PATCH 0/3] radix tree spareirq addon cleanup Yinghai Lu
2010-02-18 2:50 ` [PATCH 2/3] x86: use vector_desc instead of vector_irq Yinghai Lu
2010-02-18 17:22 ` Eric W. Biederman
2010-02-23 6:39 ` [PATCH -v3 1/2] " Yinghai Lu
2010-02-23 6:44 ` [PATCH -v2 2/2] genericirq: change ack/mask in irq_chip to take irq_desc instead of irq Yinghai Lu
2010-02-24 21:36 ` Eric W. Biederman
2010-02-24 22:07 ` Yinghai Lu
2010-02-25 0:22 ` Stephen Rothwell
2010-03-02 14:58 ` Thomas Gleixner [this message]
2010-03-03 8:49 ` Yinghai Lu
2010-03-03 10:26 ` Thomas Gleixner
[not found] ` <4B84F013.9040708@kernel.org>
2010-02-24 9:26 ` [PATCH -v3 " Yinghai Lu
2010-02-24 9:27 ` [PATCH -v4 1/2] x86: use vector_desc instead of vector_irq Yinghai Lu
2010-02-18 2:50 ` [RFC PATCH 3/3] genericirq: change ack/mask in irq_chip to take irq_desc in addition to irq Yinghai Lu
2010-02-18 17:04 ` Eric W. Biederman
2010-02-18 17:13 ` H. Peter Anvin
2010-02-18 19:51 ` Yinghai Lu
2010-02-13 12:26 ` [PATCH 0/8] tip related: radix tree for spareseirq and logical flat clean up Eric W. Biederman
2010-02-13 22:36 ` Yinghai Lu
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=alpine.LFD.2.00.1003021522340.4245@localhost.localdomain \
--to=tglx@linutronix.de \
--cc=akpm@linux-foundation.org \
--cc=ebiederm@xmission.com \
--cc=hpa@zytor.com \
--cc=jeremy@goop.org \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=rusty@rustcorp.com.au \
--cc=suresh.b.siddha@intel.com \
--cc=yinghai@kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®