All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Luck, Tony" <tony.luck@intel.com>
To: linux-ia64@vger.kernel.org
Subject: Re: [PATCH]: Prevent sn2 ptc code from executing on all ia64 subarches
Date: Tue, 13 Dec 2005 17:57:50 +0000	[thread overview]
Message-ID: <20051213175750.GA28808@agluck-lia64.sc.intel.com> (raw)
In-Reply-To: <20051121180016.24224.2378.sendpatchset@prarit.boston.redhat.com>

On Tue, Dec 13, 2005 at 10:42:28AM -0500, Prarit Bhargava wrote:
> Therefore the could would be something like (this is based off the existing 
> do_initcalls)
> 
> for (call = __initcall_start, platform = __platform_start;
>       call < __initcall_end; call++, platform++) {

Running two separate parallel structures seems complex.
Why not make the entries in the .initcall sections be tuples
instead of just being an array:

struct initcalls {
	initcall_t	call;
#ifdef	CONFIG_PLATFORM_SPECIFIC_INIT
	char		*platform;
#endif
};

#ifndef CONFIG_PLATFORM_SPECIFIC_INIT
#define	arch_match(str) 1
old definition of __define_initcall (modified for structure}
#else
new definition of __define_initcall initializes to "{ fn, 0 }"
plus a __define_initcall_platform() that takes the extra arg
and initializes to "{ fn, plat }"
#endif

Then the do_initcalls loop looks like this:

	struct initcalls *call;

	for (call = __initcall_start; call < __initcall_end; call++) {
		if (!arch_match(call->platform))
			continue;
		(*call->call)();


		...
	}

-Tony

  parent reply	other threads:[~2005-12-13 17:57 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-11-21 18:00 [PATCH]: Prevent sn2 ptc code from executing on all ia64 subarches Prarit Bhargava
2005-12-09 17:11 ` Robin Holt
2005-12-09 17:46 ` Bjorn Helgaas
2005-12-09 17:54 ` Luck, Tony
2005-12-09 18:22 ` Prarit Bhargava
2005-12-09 18:31 ` Prarit Bhargava
2005-12-09 18:38 ` Luck, Tony
2005-12-09 19:41 ` Andreas Schwab
2005-12-13 14:06 ` Prarit Bhargava
2005-12-13 15:10 ` Andreas Schwab
2005-12-13 15:42 ` Prarit Bhargava
2005-12-13 15:43 ` Prarit Bhargava
2005-12-13 16:03 ` Prarit Bhargava
2005-12-13 17:02 ` Christoph Hellwig
2005-12-13 17:14 ` Bjorn Helgaas
2005-12-13 17:24 ` Luck, Tony
2005-12-13 17:47 ` Bjorn Helgaas
2005-12-13 17:57 ` Luck, Tony [this message]
2005-12-13 18:26 ` Prarit Bhargava
2005-12-13 20:27 ` Bjorn Helgaas
2005-12-14 13:17 ` Prarit Bhargava
2005-12-15 14:33 ` Prarit Bhargava
2005-12-15 15:51 ` Bjorn Helgaas
2005-12-15 20:56 ` Prarit Bhargava
2005-12-15 21:08 ` Luck, Tony

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=20051213175750.GA28808@agluck-lia64.sc.intel.com \
    --to=tony.luck@intel.com \
    --cc=linux-ia64@vger.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 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.