public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Chen Gang F T <chen.gang.flying.transformer@gmail.com>
To: Arnd Bergmann <arnd@arndb.de>
Cc: Chen Gang <gang.chen@asianux.com>,
	Greg KH <gregkh@linuxfoundation.org>,
	Steven Rostedt <rostedt@goodmis.org>,
	Geert Uytterhoeven <geert@linux-m68k.org>,
	Richard Weinberger <richard@nod.at>,
	Jeff Dike <jdike@addtoit.com>, David Sharp <dhsharp@google.com>,
	"sfr@canb.auug.org.au" <sfr@canb.auug.org.au>,
	Ingo Molnar <mingo@kernel.org>,
	uml-devel <user-mode-linux-devel@lists.sourceforge.net>,
	uml-user <user-mode-linux-user@lists.sourceforge.net>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Linux-Arch <linux-arch@vger.kernel.org>,
	Mark Brown <broonie@kernel.org>,
	David Miller <davem@davemloft.net>,
	Andrew Morton <akpm@linux-foundation.org>,
	Jiri Kosina <trivial@kernel.org>, Jiri Slaby <jslaby@suse.cz>
Subject: Re: [PATCH] include/asm-generic/io.h: add dummy fuctions to support 'COMPILE_TEST' in 'asm-generic'.
Date: Fri, 05 Jul 2013 08:03:31 +0800	[thread overview]
Message-ID: <51D60D53.7050405@gmail.com> (raw)
In-Reply-To: <201307041125.15083.arnd@arndb.de>

On 07/04/2013 05:25 PM, Arnd Bergmann wrote:
> On Thursday 04 July 2013, Chen Gang wrote:
> 
>> > --------------------------patch begin----------------------------------
>> > 
>> > 'asm-generic' need provide necessary configuration checking, if can't
>> > pass checking, 'asm-generic' shouldn't implement it.
>> > 
>> > For 'COMPILE_TEST', according to its help contents, 'asm-generic' need
>> > let it pass configuration checking, and provide related dummy contents
>> > for it.
>> > 
>> > Part of 'COMPLE_TEST' help contents in "init/Kconfig":
>> > 
>> >   "...Despite they cannot be loaded there (or even when they load they cannot be used due to missing HW support)..."
>> > 
>> > One sample for using 'COMPILE_TEST':
>> > 
>> >   'PTP_1588_CLOCK_PCH' in drivers/ptp/Kconfig, which need depend on 'HAS_IOMEM'.
> Then please submit a patch that adds the 'depends on HAS_IOMEM' line there.
> That line was clearly left out by accident.
> 

Yes, I will send the related patch for it (I have sent one, but that
seems incorrect, I will send patch v2 for that, after this patch
finishes discussing).

But excluding 'PTP_1588_CLOCK_PCH' own issue, it is as a sample for our
discussion (If "COMPILE_TEST=y", it should can be compiled under the
archs which no 'HAS_IOMEM').


>> > Signed-off-by: Chen Gang <gang.chen@asianux.com>
>> > ---
>> >  include/asm-generic/io.h |   22 ++++++++++++++++++----
>> >  1 files changed, 18 insertions(+), 4 deletions(-)
>> > 
>> > diff --git a/include/asm-generic/io.h b/include/asm-generic/io.h
>> > index d5afe96..301ce80 100644
>> > --- a/include/asm-generic/io.h
>> > +++ b/include/asm-generic/io.h
>> > @@ -303,13 +303,18 @@ static inline void *phys_to_virt(unsigned long address)
>> >  /*
>> >   * Change "struct page" to physical address.
>> >   *
>> > - * This implementation is for the no-MMU case only... if you have an MMU
>> > - * you'll need to provide your own definitions.
>> > + * This for the no-MMU, or no-IOMEM but still try to COMPILE_TEST cases.
>> > + * if you have an MMU and IOMEM, you'll need to provide your own definitions.
>> >   */
>> > -#ifndef CONFIG_MMU
>> > +#if !defined(CONFIG_MMU) || \
>> > +	(!defined(CONFIG_HAS_IOMEM) && defined(CONFIG_COMPILE_TEST))
>> >  static inline void __iomem *ioremap(phys_addr_t offset, unsigned long size)
>> >  {
>> > +#if !defined(CONFIG_MMU)
>> >  	return (void __iomem*) (unsigned long)offset;
>> > +#else
>> > +	return NULL;
>> > +#endif
>> >  }
>> >  
>> >  #define __ioremap(offset, size, flags)	ioremap(offset, size)
> This is wrong for multiple reasons, all of which have been discussed in
> this thread before.

Hmm..., COMPILE_TEST has integrated into 3.11 (at least can be found in
next tree).

When a module select "COMPILE_TEST=y" (e.g with allmodconfig), it has
right to compile under the architecture which no related HW support.

If it can not pass compiling, at least it is not the module's issue,
neither the architecture's issue.

We have to look for who has duty on it. At least now, it seems only
'asm-generic' can be qualified to play this unlucky role.


Could you provide your suggestions or completions for this issue ?


Thanks.
-- 
Chen Gang

  reply	other threads:[~2013-07-05  0:04 UTC|newest]

Thread overview: 54+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-06-26  6:31 [PATCH] include/asm-generic/io.h: add 'UML' case just like 'no-MMU' Chen Gang
2013-06-26  6:54 ` Richard Weinberger
2013-06-26  7:38   ` Geert Uytterhoeven
2013-06-26  7:56     ` Chen Gang
2013-06-26  7:56   ` Chen Gang
2013-06-26  8:05     ` Richard Weinberger
2013-06-26  8:34       ` Chen Gang
2013-06-26  8:39         ` Richard Weinberger
2013-06-26  8:58           ` Chen Gang
2013-06-26  9:03             ` Richard Weinberger
2013-06-26  9:33               ` Chen Gang
2013-06-26  9:38                 ` Richard Weinberger
2013-06-26  9:48                   ` Geert Uytterhoeven
2013-06-26 10:01                     ` Chen Gang
2013-06-26 10:17                       ` Richard Weinberger
2013-06-26 10:22                         ` Chen Gang
2013-07-01  1:40                           ` Chen Gang
2013-07-01  3:43                             ` Chen Gang
2013-07-02  2:13                               ` [PATCH] include/asm-generic/io.h: add dummy fuctions to support 'COMPILE_TEST' in 'asm-generic' Chen Gang
2013-07-02  7:19                                 ` Geert Uytterhoeven
2013-07-02  8:00                                   ` Chen Gang
2013-07-02 10:57                                     ` Geert Uytterhoeven
2013-07-03  0:51                                       ` Chen Gang
2013-07-03  1:26                                         ` Chen Gang
2013-07-03  8:14                                         ` Arnd Bergmann
2013-07-03  8:43                                           ` Chen Gang
2013-07-04  0:57                                             ` Chen Gang
2013-07-04  1:12                                               ` Greg KH
2013-07-04  1:23                                                 ` Steven Rostedt
2013-07-04  2:19                                                   ` Chen Gang F T
2013-07-04  1:49                                                 ` Chen Gang
2013-07-04  2:03                                                   ` Steven Rostedt
2013-07-04  2:10                                                     ` Chen Gang F T
2013-07-04  2:29                                                       ` Steven Rostedt
2013-07-04  2:42                                                         ` Chen Gang F T
2013-07-04  3:06                                                           ` Steven Rostedt
2013-07-04  3:26                                                             ` Chen Gang F T
2013-07-04  4:08                                                               ` Greg KH
2013-07-04  4:50                                                                 ` Chen Gang
2013-07-04  6:12                                                                   ` Greg KH
2013-07-04  6:35                                                                     ` Chen Gang
2013-07-04  9:25                                                                       ` Arnd Bergmann
2013-07-05  0:03                                                                         ` Chen Gang F T [this message]
2013-07-05  0:12                                                                           ` Greg KH
2013-07-05  0:35                                                                             ` Chen Gang
2013-07-05  0:52                                                                             ` Chen Gang F T
2013-07-05  0:14                                                                           ` Stephen Rothwell
2013-07-05  0:48                                                                             ` Chen Gang F T
2013-07-05  8:01                                                                               ` Chen Gang F T
2013-07-05 11:13                                                                                 ` Arnd Bergmann
2013-07-08  2:10                                                                                   ` Chen Gang F T
2013-07-04  8:09                                                                     ` Geert Uytterhoeven
2013-07-05  0:10                                                                       ` Chen Gang
2013-06-26  9:54                   ` [PATCH] include/asm-generic/io.h: add 'UML' case just like 'no-MMU' Chen Gang

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=51D60D53.7050405@gmail.com \
    --to=chen.gang.flying.transformer@gmail.com \
    --cc=akpm@linux-foundation.org \
    --cc=arnd@arndb.de \
    --cc=broonie@kernel.org \
    --cc=davem@davemloft.net \
    --cc=dhsharp@google.com \
    --cc=gang.chen@asianux.com \
    --cc=geert@linux-m68k.org \
    --cc=gregkh@linuxfoundation.org \
    --cc=jdike@addtoit.com \
    --cc=jslaby@suse.cz \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=richard@nod.at \
    --cc=rostedt@goodmis.org \
    --cc=sfr@canb.auug.org.au \
    --cc=trivial@kernel.org \
    --cc=user-mode-linux-devel@lists.sourceforge.net \
    --cc=user-mode-linux-user@lists.sourceforge.net \
    /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