linux-arch.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Randy Dunlap <randy.dunlap-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
To: Will Newton <will.newton-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Cc: Linux Kernel list
	<linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
	linux-arch-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [RFC] Introduce __ARCH_WANT_SYS_SYSFS
Date: Tue, 22 Apr 2008 08:12:11 -0700	[thread overview]
Message-ID: <20080422081211.e85989ec.randy.dunlap@oracle.com> (raw)
In-Reply-To: <87a5b0800804220513t75690ceao938a288596b5ad0c-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>

On Tue, 22 Apr 2008 13:13:39 +0100 Will Newton wrote:

> Hi,
> 
> This patch introduces a __ARCH_WANT_SYS_SYSFS #define for
> architectures that support the sysfs(2) system call. At the moment
> that's everybody but blackfin, but future architectures may want to
> save the (admittedly small) code size that it adds to the kernel as
> well.
> 
> (patch attached as well as inline because gmail seems to mangle my whitespace)
> 
> ---
> >From d0746366e8ccb5fbaa6c9945540cecbe0c421222 Mon Sep 17 00:00:00 2001
> From: Will Newton <will.newton-1AXoQHu6uovQT0dZR+AlfA@public.gmane.org>
> Date: Tue, 22 Apr 2008 12:57:03 +0100
> Subject: [PATCH] Introduce __ARCH_WANT_SYS_SYSFS.
> 
> Signed-off-by: Will Newton <will.newton-1AXoQHu6uovQT0dZR+AlfA@public.gmane.org>
> 
> All arches that want the sysfs(2) system call should define this symbol.
> Arches such as blackfin that do not implement the system call don't compile
> the code and save some small amount of space.

Is there any reason that this couldn't (and shouldn't) be done
in the Kconfig space and done as documented in
Documentation/kbuild/kconfig-language.txt ?

<quote:>
Adding common features and make the usage configurable
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
It is a common idiom to implement a feature/functionality that are
relevant for some architectures but not all.
The recommended way to do so is to use a config variable named HAVE_*
that is defined in a common Kconfig file and selected by the relevant
architectures.
An example is the generic IOMAP functionality.

We would in lib/Kconfig see:

# Generic IOMAP is used to ...
config HAVE_GENERIC_IOMAP

config GENERIC_IOMAP
	depends on HAVE_GENERIC_IOMAP && FOO

And in lib/Makefile we would see:
obj-$(CONFIG_GENERIC_IOMAP) += iomap.o

For each architecture using the generic IOMAP functionality we would see:

config X86
	select ...
	select HAVE_GENERIC_IOMAP
	select ...



---
~Randy

WARNING: multiple messages have this Message-ID (diff)
From: Randy Dunlap <randy.dunlap@oracle.com>
To: Will Newton <will.newton@gmail.com>
Cc: Linux Kernel list <linux-kernel@vger.kernel.org>,
	linux-arch@vger.kernel.org
Subject: Re: [RFC] Introduce __ARCH_WANT_SYS_SYSFS
Date: Tue, 22 Apr 2008 08:12:11 -0700	[thread overview]
Message-ID: <20080422081211.e85989ec.randy.dunlap@oracle.com> (raw)
Message-ID: <20080422151211.1hIkmvTxaLeXuNWeRg7jeD5kN5hWQ4jFoXXxop4EevU@z> (raw)
In-Reply-To: <87a5b0800804220513t75690ceao938a288596b5ad0c@mail.gmail.com>

On Tue, 22 Apr 2008 13:13:39 +0100 Will Newton wrote:

> Hi,
> 
> This patch introduces a __ARCH_WANT_SYS_SYSFS #define for
> architectures that support the sysfs(2) system call. At the moment
> that's everybody but blackfin, but future architectures may want to
> save the (admittedly small) code size that it adds to the kernel as
> well.
> 
> (patch attached as well as inline because gmail seems to mangle my whitespace)
> 
> ---
> >From d0746366e8ccb5fbaa6c9945540cecbe0c421222 Mon Sep 17 00:00:00 2001
> From: Will Newton <will.newton@imgtec.com>
> Date: Tue, 22 Apr 2008 12:57:03 +0100
> Subject: [PATCH] Introduce __ARCH_WANT_SYS_SYSFS.
> 
> Signed-off-by: Will Newton <will.newton@imgtec.com>
> 
> All arches that want the sysfs(2) system call should define this symbol.
> Arches such as blackfin that do not implement the system call don't compile
> the code and save some small amount of space.

Is there any reason that this couldn't (and shouldn't) be done
in the Kconfig space and done as documented in
Documentation/kbuild/kconfig-language.txt ?

<quote:>
Adding common features and make the usage configurable
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
It is a common idiom to implement a feature/functionality that are
relevant for some architectures but not all.
The recommended way to do so is to use a config variable named HAVE_*
that is defined in a common Kconfig file and selected by the relevant
architectures.
An example is the generic IOMAP functionality.

We would in lib/Kconfig see:

# Generic IOMAP is used to ...
config HAVE_GENERIC_IOMAP

config GENERIC_IOMAP
	depends on HAVE_GENERIC_IOMAP && FOO

And in lib/Makefile we would see:
obj-$(CONFIG_GENERIC_IOMAP) += iomap.o

For each architecture using the generic IOMAP functionality we would see:

config X86
	select ...
	select HAVE_GENERIC_IOMAP
	select ...



---
~Randy

  parent reply	other threads:[~2008-04-22 15:12 UTC|newest]

Thread overview: 91+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-04-22 12:13 [RFC] Introduce __ARCH_WANT_SYS_SYSFS Will Newton
2008-04-22 12:13 ` Will Newton
2008-04-22 13:15 ` Arnd Bergmann
2008-04-22 13:15   ` Arnd Bergmann
     [not found]   ` <200804221515.28075.arnd-r2nGTMty4D4@public.gmane.org>
2008-04-23 21:16     ` Michal Simek
2008-04-23 21:16       ` Michal Simek
     [not found]       ` <480FA729.3000406-9Vj9tDbzfuSlVyrhU4qvOw@public.gmane.org>
2008-04-23 21:38         ` Mike Frysinger
2008-04-23 21:38           ` Mike Frysinger
2008-04-24 11:11         ` microblaze syscall list Arnd Bergmann
2008-04-24 11:11           ` Arnd Bergmann
2008-04-24 18:42           ` Michal Simek
2008-04-24 18:42             ` Michal Simek
     [not found]             ` <4810D4A4.7050900-9Vj9tDbzfuSlVyrhU4qvOw@public.gmane.org>
2008-04-24 21:21               ` Arnd Bergmann
2008-04-24 21:21                 ` Arnd Bergmann
2008-04-25  9:36               ` [microblaze-uclinux] " John Williams
2008-04-25  9:36                 ` John Williams
     [not found]                 ` <4811A623.80104-rVRm/Wmeqae7NGdpmJTKYQ@public.gmane.org>
2008-04-25 10:06                   ` Matthew Wilcox
2008-04-25 10:06                     ` Matthew Wilcox
     [not found]                     ` <20080425100614.GB14990-6jwH94ZQLHl74goWV3ctuw@public.gmane.org>
2008-04-25 11:32                       ` Geert Uytterhoeven
2008-04-25 11:32                         ` Geert Uytterhoeven
2008-04-27  2:04                     ` John Williams
2008-04-27  2:04                       ` John Williams
     [not found]                       ` <4813DF3E.6080800-rVRm/Wmeqae7NGdpmJTKYQ@public.gmane.org>
2008-04-27 15:52                         ` Michal Simek
2008-04-27 15:52                           ` Michal Simek
     [not found]                           ` <4814A153.3040600-9Vj9tDbzfuSlVyrhU4qvOw@public.gmane.org>
2008-04-27 16:50                             ` Alan Cox
2008-04-27 16:50                               ` Alan Cox
2008-04-27 20:15                           ` Arnd Bergmann
2008-04-27 20:15                             ` Arnd Bergmann
     [not found]                             ` <200804272215.32862.arnd-r2nGTMty4D4@public.gmane.org>
2008-04-28  0:15                               ` John Williams
2008-04-28  0:15                                 ` John Williams
2008-04-28 12:31                                 ` Arnd Bergmann
2008-04-28 12:31                                   ` Arnd Bergmann
2008-05-01 19:17                                   ` Arnd Bergmann
2008-05-02  5:38                                     ` John Williams
2008-05-02  8:18                                       ` Michal Simek
2008-05-02  8:18                                         ` Michal Simek
2008-05-03  3:49                                         ` John Williams
2008-05-03  3:49                                           ` John Williams
2008-05-03  9:16                                           ` Arnd Bergmann
2008-05-03 15:56                                             ` Ulrich Drepper
2008-05-03 21:14                                               ` Arnd Bergmann
2008-05-05  1:09                                             ` John Williams
2008-05-05 14:08                                               ` Arnd Bergmann
2008-05-03 21:57                           ` Arnd Bergmann
2008-05-04  9:12                             ` Michal Simek
2008-05-04 19:37                               ` Arnd Bergmann
2008-05-05  6:18                                 ` Michal Simek
2008-05-04 22:09                               ` H. Peter Anvin
2008-05-04 22:54                                 ` Arnd Bergmann
2008-05-04 22:53                                   ` H. Peter Anvin
2008-05-04 22:53                                     ` H. Peter Anvin
2008-05-06  8:33                                 ` Michal Simek
2008-04-28  3:58                       ` Stephen Neuendorffer
     [not found]           ` <200804241311.09881.arnd-r2nGTMty4D4@public.gmane.org>
2008-04-24 20:51             ` Michal Simek
2008-04-24 20:51               ` Michal Simek
     [not found]               ` <4988.7968-24314-1195487808-1209070282-9Vj9tDbzfuSlVyrhU4qvOw@public.gmane.org>
2008-04-24 21:37                 ` Arnd Bergmann
2008-04-24 21:37                   ` Arnd Bergmann
     [not found] ` <87a5b0800804220513t75690ceao938a288596b5ad0c-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-04-22 15:12   ` Randy Dunlap [this message]
2008-04-22 15:12     ` [RFC] Introduce __ARCH_WANT_SYS_SYSFS Randy Dunlap
     [not found]     ` <20080422081211.e85989ec.randy.dunlap-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
2008-04-22 15:16       ` Will Newton
2008-04-22 15:16         ` Will Newton
     [not found]         ` <87a5b0800804220816y72a7f4f9gec2111df08a1a57f-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-04-22 15:24           ` Kyle McMartin
2008-04-22 15:24             ` Kyle McMartin
     [not found]             ` <20080422152426.GG19802-EK4dZfYtfFRW/gs8oUvUg/d9D2ou9A/h@public.gmane.org>
2008-04-22 15:34               ` Will Newton
2008-04-22 15:34                 ` Will Newton
     [not found]                 ` <87a5b0800804220834q4d6daec1x4146d211115ab5c-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-04-22 15:38                   ` Kyle McMartin
2008-04-22 15:38                     ` Kyle McMartin
     [not found]                     ` <20080422153849.GH19802-EK4dZfYtfFRW/gs8oUvUg/d9D2ou9A/h@public.gmane.org>
2008-04-23 14:36                       ` Will Newton
2008-04-23 14:36                         ` Will Newton
     [not found]                         ` <87a5b0800804230736k340e7fe9mffbd72b5b8164015-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-04-23 14:59                           ` Arnd Bergmann
2008-04-23 14:59                             ` Arnd Bergmann
2008-04-23 15:40                           ` Kyle McMartin
2008-04-23 15:40                             ` Kyle McMartin
     [not found]                             ` <20080423154038.GL19802-EK4dZfYtfFRW/gs8oUvUg/d9D2ou9A/h@public.gmane.org>
2008-04-23 15:50                               ` Will Newton
2008-04-23 15:50                                 ` Will Newton
2008-04-23 16:05                                 ` Mike Frysinger
2008-04-23 16:05                                   ` Mike Frysinger
     [not found]                                   ` <8bd0f97a0804230905x19fd96aevc8f225d241e59369-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-04-23 17:59                                     ` Mike Frysinger
2008-04-23 17:59                                       ` Mike Frysinger
     [not found]                                       ` <8bd0f97a0804231059w76592878s3f6bf4a488b3ddea-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-04-24  9:18                                         ` Will Newton
2008-04-24  9:18                                           ` Will Newton
2008-04-23 18:44                           ` Sam Ravnborg
2008-04-23 18:44                             ` Sam Ravnborg
2008-04-24 14:51       ` Adrian Bunk
2008-04-24 14:51         ` Adrian Bunk
2008-04-22 15:21   ` Kyle McMartin
2008-04-22 15:21     ` Kyle McMartin
     [not found]     ` <20080422152122.GF19802-EK4dZfYtfFRW/gs8oUvUg/d9D2ou9A/h@public.gmane.org>
2008-04-22 15:38       ` Arnd Bergmann
2008-04-22 15:38         ` Arnd Bergmann
2008-04-22 15:42         ` Kyle McMartin
2008-04-22 15:42           ` Kyle McMartin

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=20080422081211.e85989ec.randy.dunlap@oracle.com \
    --to=randy.dunlap-qhclzuegtsvqt0dzr+alfa@public.gmane.org \
    --cc=linux-arch-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
    --cc=will.newton-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.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;
as well as URLs for NNTP newsgroup(s).