From: Russell King <rmk@arm.linux.org.uk>
To: Takashi Iwai <tiwai@suse.de>
Cc: Stephen Rothwell <sfr@canb.auug.org.au>,
linux-next@vger.kernel.org, Ben Dooks <ben@simtec.co.uk>,
Mark Brown <broonie@opensource.wolfsonmicro.com>,
Alexander Schulz <alex@shark-linux.de>
Subject: Re: linux-next: manual merge of the sound tree with the arm tree
Date: Wed, 11 Mar 2009 09:41:27 +0000 [thread overview]
Message-ID: <20090311094126.GA4619@flint.arm.linux.org.uk> (raw)
In-Reply-To: <s5h63igifin.wl%tiwai@suse.de>
On Wed, Mar 11, 2009 at 10:18:40AM +0100, Takashi Iwai wrote:
> At Wed, 11 Mar 2009 08:52:54 +0000,
> Russell King wrote:
> >
> > On Tue, Mar 10, 2009 at 02:45:28PM +1100, Stephen Rothwell wrote:
> > > Hi Takashi,
> > >
> > > Today's linux-next merge of the sound tree got a conflict in
> > > arch/arm/mach-shark/include/mach/io.h between commit
> > > eab184c2362567f2b2e951b7bd0e0d353a7e5091 ("[ARM] 5363/1: Shark cleanup
> > > and new defconfig") from the arm tree and commit
> > > 8150bc886be5ce3cc301a2baca1fcf2cf7bd7f39 ("S3C24XX: Move and update IIS
> > > headers") from the sound tree.
> > >
> > > I fixed it up (see below) and can carry the fix as necessary.
> >
> > NAK to this patch.
> >
> > The greater concern is WTF are cleanup patches for the ARM architecture
> > going via the sound tree. Especially patches which I have concerns about.
> >
> > > --- a/arch/arm/mach-shark/include/mach/io.h
> > > +++ b/arch/arm/mach-shark/include/mach/io.h
> > > @@@ -11,10 -11,10 +11,10 @@@
> > > #ifndef __ASM_ARM_ARCH_IO_H
> > > #define __ASM_ARM_ARCH_IO_H
> > >
> > > -#define PCIO_BASE 0xe0000000
> > > -#define IO_SPACE_LIMIT 0xffffffff
> > > +#define IO_SPACE_LIMIT 0xffffffff
> > >
> > > - #define __io(a) ((void __iomem *)(0xe0000000 + (a)))
> > > -#define __io(a) __typesafe_io(PCIO_BASE + (a))
> > > -#define __mem_pci(addr) (addr)
> > > ++#define __io(a) __typesafe_io(0xe0000000 + (a))
> >
> > Do not use __typesafe_io() with the addition here without first ensuring
> > that you've investigated whether it causes the compiler to mis-optimise
> > the code.
>
> Hrm, is that particular change also in ARM tree, no? Judging from the
> conflict-diff above, it looks like the patch just follows that...
>
> > Takashi - please remove all such patches from the sound tree. They
> > should not be in there.
>
> Oh, I thought Mark already sent you Ben's patches.
What is in my tree is:
------
diff --git a/arch/arm/mach-shark/include/mach/io.h b/arch/arm/mach-shark/include/mach/io.h
index c5cee82..9ccbcec 100644
--- a/arch/arm/mach-shark/include/mach/io.h
+++ b/arch/arm/mach-shark/include/mach/io.h
@@ -11,10 +11,10 @@
#ifndef __ASM_ARM_ARCH_IO_H
#define __ASM_ARM_ARCH_IO_H
-#define PCIO_BASE 0xe0000000
-#define IO_SPACE_LIMIT 0xffffffff
+#define IO_SPACE_LIMIT 0xffffffff
-#define __io(a) ((void __iomem *)(PCIO_BASE + (a)))
-#define __mem_pci(addr) (addr)
+#define __io(a) ((void __iomem *)(0xe0000000 + (a)))
+
+#define __mem_pci(addr) (addr)
#endif
------
which is basically the same thing from Alexander Schulz but without the
addition of __typesafe_io(), and it's that which I'm objecting to.
> Sorry if it wasn't done yet.
It seems not. Searching for all messages from Mark containing the
string 'typesafe' results in no matches for messages since 1st January.
> Basically it's two patches to create a branch to move and update IIS
> and audio.h headers. Since some drivers require these changes, they
> have to be in the sound tree, too. Otherwise the tree gets
> inconsistent and can't be built.
Maybe, but the point here is that's not the only thing it does. It also
makes other changes _as well_ that are not relevent to the changes you're
talking about above.
> The relevant changes are in another branch (s3c-iis-header) of asoc
> tree so that it can be easily pulled to another tree:
> git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound-2.6.git s3c-iis-header
>
> So, if you can pull these changes above into your GIT tree simply via
> "git pull", everything will settle down (as both trees share the same
> GIT objects).
Why do I want to pull stuff that I consider broken into my tree? Please
get rid of the use of __typesafe_io in the shark io.h header in your tree
or drop these patches entirely and ask the submitter to fix (whatever's
easier for you.)
As I said when Daniel proposed the change to Footbridge and I avoided
his patch for footbridge's io.h:
| On Mon, Feb 02, 2009 at 03:59:56PM +0000, Daniel Silverstone wrote:
| > Footbridge: __io() should __force to __iomem pointer
| >
| > This trivial patch fixes many warnings (around 850) by forcing
| > the return from __io() to be 'void __iomem *'. This stops sparse
| > warning about the implicit casting into an address space.
|
| I don't think gcc is bright enough to handle this - rather than doing
| the addition in the load/store instruction, I think you'll find that
| gcc will issue a separate add instruction with this.
|
| That's why I never converted any of the __io() macros which have an
| addition in them to use __typesafe_io().
the same applies to shark's io.h. The effect of this change has not been
evaluated and so should NOT be merged for mainline yet.
So, in case it still isn't clear, what I'm objecting to is replacing:
+#define __io(a) ((void __iomem *)(0xe0000000 + (a)))
with:
+#define __io(a) __typesafe_io(0xe0000000 + (a))
I repeat: please back this change out of your tree.
--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of:
next prev parent reply other threads:[~2009-03-11 9:42 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-03-10 3:45 linux-next: manual merge of the sound tree with the arm tree Stephen Rothwell
2009-03-10 20:04 ` Mark Brown
2009-03-11 0:41 ` Stephen Rothwell
2009-03-11 6:58 ` Takashi Iwai
2009-03-11 8:52 ` Russell King
2009-03-11 9:18 ` Takashi Iwai
2009-03-11 9:41 ` Russell King [this message]
2009-03-11 10:02 ` Takashi Iwai
2009-03-11 10:40 ` Russell King
2009-03-11 11:24 ` Mark Brown
2009-03-11 13:28 ` Takashi Iwai
2009-03-11 22:32 ` Mark Brown
2009-03-12 2:48 ` Stephen Rothwell
2009-03-11 9:49 ` Mark Brown
-- strict thread matches above, loose matches on Subject: below --
2010-07-19 1:00 Stephen Rothwell
2010-07-20 9:03 ` Mark Brown
2010-07-20 20:54 ` Ryan Mallon
2010-07-22 1:28 Stephen Rothwell
2010-07-22 6:18 ` Takashi Iwai
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=20090311094126.GA4619@flint.arm.linux.org.uk \
--to=rmk@arm.linux.org.uk \
--cc=alex@shark-linux.de \
--cc=ben@simtec.co.uk \
--cc=broonie@opensource.wolfsonmicro.com \
--cc=linux-next@vger.kernel.org \
--cc=sfr@canb.auug.org.au \
--cc=tiwai@suse.de \
/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).