* Re: [PATCH] ata: Don't use NO_IRQ in pata_of_platform driver
From: Nicolas Pitre @ 2011-12-05 18:18 UTC (permalink / raw)
To: Dave Martin
Cc: Russell King - ARM Linux, Benjamin Herrenschmidt, Linus Torvalds,
Anton Vorontsov, Alan Cox, Stephen Rothwell, Andrew Morton,
devicetree-discuss, LKML, linux-ide, Randy Dunlap, linux-next,
Ingo Molnar, Jeff Garzik, Pawel Moll, linux-arm-kernel
In-Reply-To: <20111205180253.GB29812@localhost.localdomain>
On Mon, 5 Dec 2011, Dave Martin wrote:
> On Mon, Dec 05, 2011 at 12:40:16PM -0500, Nicolas Pitre wrote:
> > On Mon, 5 Dec 2011, Dave Martin wrote:
> > > On Sat, Dec 03, 2011 at 10:12:53AM +1100, Benjamin Herrenschmidt wrote:
> > > > On Fri, 2011-12-02 at 11:28 -0800, Linus Torvalds wrote:
> > > > > Don't *change* NO_IRQ to zero (that whole #define is broken - leave it
> > > > > around as a marker of brokenness), just start removing it from all the
> > > > > ARM drivers that use the OF infrastructure. Which is presumably not
> > > > > all that many yet.
> > > > >
> > > > > So whenever you find breakage, the fix now is to just remove NO_IRQ
> > > > > tests, and replace them with "!irq".
> > > >
> > >
> > > Russell, do you know whether it would make sense to set a timeline for
> > > removing NO_IRQ from ARM platforms and migrating to 0 for the no-interrupt
> > > case? I'm assuming that this mainly involves migrating existing hard-wired
> > > code that deals with interrupt numbers to use irq domains.
> >
> > How many drivers do use IRQ #0 to start with? We might discover that in
> > practice there is only a very few cases where this is an issue if 0
> > would mean no IRQ.
>
> The total number of files referring to NO_IRQ is not that huge:
>
> arch/arm/ 188 matches in 39 files
> drivers/ 174 matches in 84 files
>
> Unfortunately, NO_IRQ is often not spelled "NO_IRQ". It looks like the assumption
> "irq < 0 === no irq" may be quite a lot more widespread than "NO_IRQ === no irq".
> Since there's no specific thing we can grep for (and simply due to volume)
> finding all such instances may be quite a bit harder.
[...]
ARgh.
My point was about current actual usage of the IRQ numbered 0 which
probably prompted the introduction of NO_IRQ in the first place. What I
was saying is that the number of occurrences where IRQ #0 is currently
used into drivers that would get confused if 0 would mean no IRQ is
probably quite small.
But as you illustrated, there is a large number of drivers that already
assume no IRQ is < 0, even if they don't use any IRQ #0 themselves.
That is a much bigger problem to fix.
Nicolas
^ permalink raw reply
* Re: [PATCH] ata: Don't use NO_IRQ in pata_of_platform driver
From: Geert Uytterhoeven @ 2011-12-05 18:15 UTC (permalink / raw)
To: Dave Martin
Cc: Nicolas Pitre, Russell King - ARM Linux, Benjamin Herrenschmidt,
Linus Torvalds, Anton Vorontsov, Alan Cox, Stephen Rothwell,
Andrew Morton, devicetree-discuss, LKML, linux-ide, Randy Dunlap,
linux-next, Ingo Molnar, Jeff Garzik, Pawel Moll,
linux-arm-kernel
In-Reply-To: <20111205180253.GB29812@localhost.localdomain>
On Mon, Dec 5, 2011 at 19:02, Dave Martin <dave.martin@linaro.org> wrote:
> Unfortunately, NO_IRQ is often not spelled "NO_IRQ". It looks like the assumption
> "irq < 0 === no irq" may be quite a lot more widespread than "NO_IRQ === no irq".
Can we make irq unsigned, and hope the compiler catches all of them
(comparison always
false blah blah blah)?
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
^ permalink raw reply
* Re: [PATCH] ata: Don't use NO_IRQ in pata_of_platform driver
From: Dave Martin @ 2011-12-05 18:02 UTC (permalink / raw)
To: Nicolas Pitre
Cc: Russell King - ARM Linux, Benjamin Herrenschmidt, Linus Torvalds,
Anton Vorontsov, Alan Cox, Stephen Rothwell, Andrew Morton,
devicetree-discuss, LKML, linux-ide, Randy Dunlap, linux-next,
Ingo Molnar, Jeff Garzik, Pawel Moll, linux-arm-kernel
In-Reply-To: <alpine.LFD.2.02.1112051236350.2357@xanadu.home>
On Mon, Dec 05, 2011 at 12:40:16PM -0500, Nicolas Pitre wrote:
> On Mon, 5 Dec 2011, Dave Martin wrote:
> > On Sat, Dec 03, 2011 at 10:12:53AM +1100, Benjamin Herrenschmidt wrote:
> > > On Fri, 2011-12-02 at 11:28 -0800, Linus Torvalds wrote:
> > > > Don't *change* NO_IRQ to zero (that whole #define is broken - leave it
> > > > around as a marker of brokenness), just start removing it from all the
> > > > ARM drivers that use the OF infrastructure. Which is presumably not
> > > > all that many yet.
> > > >
> > > > So whenever you find breakage, the fix now is to just remove NO_IRQ
> > > > tests, and replace them with "!irq".
> > >
> >
> > Russell, do you know whether it would make sense to set a timeline for
> > removing NO_IRQ from ARM platforms and migrating to 0 for the no-interrupt
> > case? I'm assuming that this mainly involves migrating existing hard-wired
> > code that deals with interrupt numbers to use irq domains.
>
> How many drivers do use IRQ #0 to start with? We might discover that in
> practice there is only a very few cases where this is an issue if 0
> would mean no IRQ.
The total number of files referring to NO_IRQ is not that huge:
arch/arm/ 188 matches in 39 files
drivers/ 174 matches in 84 files
Unfortunately, NO_IRQ is often not spelled "NO_IRQ". It looks like the assumption
"irq < 0 === no irq" may be quite a lot more widespread than "NO_IRQ === no irq".
Since there's no specific thing we can grep for (and simply due to volume)
finding all such instances may be quite a bit harder.
For example, git grep 'irq.*\(>=\|<[^=]\) *0' gives
drivers/ 435 matches in 314 files
arch/arm/ 18 matches in 15 files
A few examples:
drivers/input/mouse/pxa930_trkball.c: if (irq < 0) {
drivers/input/keyboard/tegra-kbc.c: if (irq < 0) {
drivers/crypto/omap-sham.c: if (dd->irq >= 0)
...etc., etc., although there are probably a fair number of false positives here.
whereas git grep 'irq.*\(<\|>\|<=\|>=\|==\|!=\) \+-1' gives
drivers/ 68 matches in 28 files
arch/arm/ 18 matches in 15 files
Examples:
...and that's just the code which is C and is also kind enough to put
irq numbers in variables with names containing "irq".
It also doesn't catch people initialising variables or struct/array
members to -1, unadorned "-1" arguments to functions and so on... though
those are likely to appear in mostly the same files matching the above
expressions, it won't be an exact 1:1 correspondence.
Cheers
---Dave
^ permalink raw reply
* Re: [PATCH] ata: Don't use NO_IRQ in pata_of_platform driver
From: Alan Cox @ 2011-12-05 17:41 UTC (permalink / raw)
To: Dave Martin
Cc: Stephen Rothwell, Russell King - ARM Linux, Pawel Moll,
devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, LKML, Jeff Garzik,
linux-ide-u79uwXL29TY76Z2rM5mHXA, Randy Dunlap,
linux-next-u79uwXL29TY76Z2rM5mHXA, Anton Vorontsov, Andrew Morton,
Linus Torvalds, Ingo Molnar,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r
In-Reply-To: <20111205161157.GA27550-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
> Russell, do you know whether it would make sense to set a timeline for
> removing NO_IRQ from ARM platforms and migrating to 0 for the no-interrupt
> case? I'm assuming that this mainly involves migrating existing hard-wired
> code that deals with interrupt numbers to use irq domains.
The timelime was several years ago. Several years of complete inaction
later the chickens have come home to roost.
I refer you to Linus mail of 26 Sept 2006 to linux-kernel ('restore
libata build on frv')
Quoting Linus email:
>> That's fine -- but don't use zero to mean none. We have NO_IRQ for
>> that, and zero isn't an appropriate choice.
>
> Zero _is_ an appropriate choice, dammit!
>
> That NO_IRQ thing should be zero, and any architecture that thinks that
>zero is a valid IRQ just needs to fix its own irq mapping so that the
> "cookie" doesn't work.
>
> The thing is, it's zero. Get over it. It can't be "-1" or some other
> random value like people have indicated, because that thing is often read
> from places where "-1" simply isn't a possible value (eg it gets its
> default value initialized from a "unsigned char" in MMIO space on x86).
>
> So instead of making everybody and their dog to silly things with some
> NO_IRQ define that they haven't historically done, the rule is simple: "0"
> means "no irq", so that you can test for it with obvious code like
>
> if (!dev->irq)
> ..
>
> and then, if your actual _hardware_ things that the bit-pattern with all
> bits clear is a valid irq that can be used for normal devices, then what
> you do is you add a irq number translation layer (WHICH WE NEED AND HAVE
> _ANYWAY_) and make sure that nobody sees that on a _software_ level.
----------
On 15th October 2008 Linus said the following to linux-next
> Grr. Can we please just get rid of that IDIOTIC thing instead?
>
> NO_IRQ was a bad idea to begin with. Let's not add more.
>
> I assume that broken driver is some ARM-specific thing. I certainly don't
> want to see NO_IRQ in any general drivers. So instead of having that
> NO_IRQ insanity spread any more, I'd much rather see the driver either
> fixed to not use it, or just marked ARM-only.
>
> The proper way to test for whether an interrupt is valid or not is to do
>
> if (dev->irq) {
> ...
> and no other. There is no spoon. That NO_IRQ was insane. And
> architectures or drivers that still think otherwise should fix themselves.
------------
So there we are.. ARM spent years ignoring clear direction. If ARM breaks
for a release now so be it. You've had *YEARS* to get off your collective
backsides and sort it out.
> I worry that if we just change the convention for the OF case, we'll end
> up with OF-ised platform drivers which have to deal with a different no-
> irq convention depending on whether they are probed as platform drivers
> or through the OF framework ... and these ported or semi-ported drivers
> will be intermixed with unported drivers, confusing maintainers
All drivers should assume that if (!dev->irq) works. Zero is not an IRQ
except in certain buried internal invisible cases in arch code (legacy PC
timer being the obvious one).
Come to think about it we had a prior discussion about NO_IRQ in 2005
even!
The core kernel generic IRQ code knows about zero being special, many
common driver layer components such as serial and network phylib do, so
if anything it's going to fix bugs sorting the mess out on ARM.
Jut fix it. Other platforms have done so without problem.
Alan
^ permalink raw reply
* Re: [PATCH] ata: Don't use NO_IRQ in pata_of_platform driver
From: Nicolas Pitre @ 2011-12-05 17:40 UTC (permalink / raw)
To: Dave Martin
Cc: Russell King - ARM Linux, Benjamin Herrenschmidt, Linus Torvalds,
Anton Vorontsov, Alan Cox, Stephen Rothwell, Andrew Morton,
devicetree-discuss, LKML, linux-ide, Randy Dunlap, linux-next,
Ingo Molnar, Jeff Garzik, Pawel Moll, linux-arm-kernel
In-Reply-To: <20111205161157.GA27550@localhost.localdomain>
On Mon, 5 Dec 2011, Dave Martin wrote:
> On Sat, Dec 03, 2011 at 10:12:53AM +1100, Benjamin Herrenschmidt wrote:
> > On Fri, 2011-12-02 at 11:28 -0800, Linus Torvalds wrote:
> > > Don't *change* NO_IRQ to zero (that whole #define is broken - leave it
> > > around as a marker of brokenness), just start removing it from all the
> > > ARM drivers that use the OF infrastructure. Which is presumably not
> > > all that many yet.
> > >
> > > So whenever you find breakage, the fix now is to just remove NO_IRQ
> > > tests, and replace them with "!irq".
> >
>
> Russell, do you know whether it would make sense to set a timeline for
> removing NO_IRQ from ARM platforms and migrating to 0 for the no-interrupt
> case? I'm assuming that this mainly involves migrating existing hard-wired
> code that deals with interrupt numbers to use irq domains.
How many drivers do use IRQ #0 to start with? We might discover that in
practice there is only a very few cases where this is an issue if 0
would mean no IRQ.
Nicolas
^ permalink raw reply
* Re: linux-next: Tree for Dec 5 (staging/et131x)
From: Randy Dunlap @ 2011-12-05 18:37 UTC (permalink / raw)
To: Stephen Rothwell
Cc: linux-next, LKML, devel@driverdev.osuosl.org, Mark Einon, Greg KH
In-Reply-To: <20111205154444.bf59a93a6b03cb4985850d82@canb.auug.org.au>
On 12/04/2011 08:44 PM, Stephen Rothwell wrote:
> Hi all,
>
> Changes since 20111202:
on i386 (X86_32) builds:
drivers/staging/et131x/et131x.c:2483:8: warning: right shift count >= width of type
drivers/staging/et131x/et131x.c:2531:8: warning: right shift count >= width of type
--
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***
^ permalink raw reply
* Re: [PATCH] ata: Don't use NO_IRQ in pata_of_platform driver
From: Dave Martin @ 2011-12-05 16:11 UTC (permalink / raw)
To: Russell King - ARM Linux
Cc: Benjamin Herrenschmidt, Linus Torvalds, Anton Vorontsov, Alan Cox,
Stephen Rothwell, Andrew Morton, devicetree-discuss, LKML,
linux-ide, Randy Dunlap, linux-next, Ingo Molnar, Jeff Garzik,
Pawel Moll, linux-arm-kernel
In-Reply-To: <1322867573.11728.22.camel@pasglop>
On Sat, Dec 03, 2011 at 10:12:53AM +1100, Benjamin Herrenschmidt wrote:
> On Fri, 2011-12-02 at 11:28 -0800, Linus Torvalds wrote:
> > On Fri, Dec 2, 2011 at 11:26 AM, Dave Martin <dave.martin@linaro.org> wrote:
> > >
> > > This is now broken on ARM where, for good or bad, NO_IRQ currently is
> > > used and is -1.
> > >
> > > How do we resolve it? If we are ready to eliminate NO_IRQ from
> > > drivers/of/irq.c (or indeed, all code that uses it) and just use 0 for
> > > that case, we should surely just do it... but I'm not confident I can
> > > judge on that.
> >
> > Just stop using NO_IRQ. First in drivers/of/irq.c, then in any drivers
> > as you notice breakage.
>
> Agreed. In fact the whole hack in drivers/of/irq.c was to accomodate ARM
> which still uses -1, powerpc changed to 0 a long time ago.
>
> Now that we have a generic remapper between HW and "linux" IRQ numbers,
> there is no reason to stick to -1 even on ARM.
>
> > Don't *change* NO_IRQ to zero (that whole #define is broken - leave it
> > around as a marker of brokenness), just start removing it from all the
> > ARM drivers that use the OF infrastructure. Which is presumably not
> > all that many yet.
> >
> > So whenever you find breakage, the fix now is to just remove NO_IRQ
> > tests, and replace them with "!irq".
>
Russell, do you know whether it would make sense to set a timeline for
removing NO_IRQ from ARM platforms and migrating to 0 for the no-interrupt
case? I'm assuming that this mainly involves migrating existing hard-wired
code that deals with interrupt numbers to use irq domains.
I worry that if we just change the convention for the OF case, we'll end
up with OF-ised platform drivers which have to deal with a different no-
irq convention depending on whether they are probed as platform drivers
or through the OF framework ... and these ported or semi-ported drivers
will be intermixed with unported drivers, confusing maintainers.
If board code starts initialising platform data for non-OF-ised platform
drivers based on IRQ numbers fetched via the OF code, things will get
even more confused...
Cheers
---Dave
^ permalink raw reply
* Re: linux-next: manual merge of the net-next tree with the tree
From: wwguy @ 2011-12-05 15:42 UTC (permalink / raw)
To: John W. Linville
Cc: Stephen Rothwell, David Miller, netdev@vger.kernel.org,
linux-next@vger.kernel.org, linux-kernel@vger.kernel.org,
Berg, Johannes
In-Reply-To: <20111205145320.GA2531@tuxdriver.com>
On Mon, 2011-12-05 at 06:53 -0800, John W. Linville wrote:
> On Mon, Dec 05, 2011 at 03:34:16PM +1100, Stephen Rothwell wrote:
> > On Mon, 5 Dec 2011 12:34:28 +1100 Stephen Rothwell <sfr@canb.auug.org.au> wrote:
> > >
> > > Today's linux-next merge of the net-next tree got a conflict in
> > > drivers/net/wireless/iwlwifi/iwl-agn.c between commits from the
> >
> > wireless (sorry)
> >
> > > tree and commit 7335613ae27a ("iwlwifi: move all mac80211 related
> > > functions to one place") from the net-next tree.
> > >
> > > I just used the net-next version (which may require some fixes).
>
> Yeah, I'll try to get that straightened-out over the next day or two.
>
John, anything I can help?
Thanks
Wey
^ permalink raw reply
* Re: linux-next: manual merge of the net-next tree with the tree
From: John W. Linville @ 2011-12-05 14:53 UTC (permalink / raw)
To: Stephen Rothwell
Cc: David Miller, netdev, linux-next, linux-kernel, Wey-Yi Guy,
Johannes Berg
In-Reply-To: <20111205153416.e1dd01e5368ce7c016d99a59@canb.auug.org.au>
On Mon, Dec 05, 2011 at 03:34:16PM +1100, Stephen Rothwell wrote:
> On Mon, 5 Dec 2011 12:34:28 +1100 Stephen Rothwell <sfr@canb.auug.org.au> wrote:
> >
> > Today's linux-next merge of the net-next tree got a conflict in
> > drivers/net/wireless/iwlwifi/iwl-agn.c between commits from the
>
> wireless (sorry)
>
> > tree and commit 7335613ae27a ("iwlwifi: move all mac80211 related
> > functions to one place") from the net-next tree.
> >
> > I just used the net-next version (which may require some fixes).
Yeah, I'll try to get that straightened-out over the next day or two.
John
--
John W. Linville Someday the world will need a hero, and you
linville@tuxdriver.com might be all we have. Be ready.
^ permalink raw reply
* Re: linux-next: manual merge of the sound-asoc tree with the s5p tree
From: Mark Brown @ 2011-12-05 10:28 UTC (permalink / raw)
To: Stephen Rothwell; +Cc: Liam Girdwood, linux-next, linux-kernel, Kukjin Kim
In-Reply-To: <20111205130102.aec262d85aa6b47b0aec7011@canb.auug.org.au>
On Mon, Dec 05, 2011 at 01:01:02PM +1100, Stephen Rothwell wrote:
> Just context changes. I fixed it up (see below) and can carry the fix as
> necessary.
Thanks!
^ permalink raw reply
* Re: Please add my tree to linux-next
From: Cong Wang @ 2011-12-05 6:52 UTC (permalink / raw)
To: Stephen Rothwell; +Cc: Andrew Morton, linux-next, LKML
In-Reply-To: <20111205171207.3b3bc1ad6d99ad7d7c9c0792@canb.auug.org.au>
于 2011年12月05日 14:12, Stephen Rothwell 写道:
> Hi,
> On Mon, 05 Dec 2011 13:40:29 +0800 Cong Wang<amwang@redhat.com> wrote:
>>
>>> * submitted under GPL v2 (or later) and include the Contributor's
>>> Signed-off-by,
>>
>> When I sent the patches out, they all have my Signed-off-by, but not in the
>> commit logs in my tree. Is this a problem?
>
> Yes, you must have a signed-off-by line for each person who handles the
> patches (in this case just you, since you are also the author).
> Linus (in theory) would not merge your tree if you asked him to if it
> lacked signed-off-by lines (and I will have to drop it if they are not
> added - this will mean rebasing your tree, of course).
>
Ok, I will re-commit those patches with my S-o-b and rebase my tree.
Thanks!
^ permalink raw reply
* Re: Please add my tree to linux-next
From: Stephen Rothwell @ 2011-12-05 6:12 UTC (permalink / raw)
To: Cong Wang; +Cc: Andrew Morton, linux-next, LKML
In-Reply-To: <4EDC594D.5040008@redhat.com>
[-- Attachment #1: Type: text/plain, Size: 756 bytes --]
Hi,
On Mon, 05 Dec 2011 13:40:29 +0800 Cong Wang <amwang@redhat.com> wrote:
>
> > * submitted under GPL v2 (or later) and include the Contributor's
> > Signed-off-by,
>
> When I sent the patches out, they all have my Signed-off-by, but not in the
> commit logs in my tree. Is this a problem?
Yes, you must have a signed-off-by line for each person who handles the
patches (in this case just you, since you are also the author).
Linus (in theory) would not merge your tree if you asked him to if it
lacked signed-off-by lines (and I will have to drop it if they are not
added - this will mean rebasing your tree, of course).
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* Re: Please add my tree to linux-next
From: Cong Wang @ 2011-12-05 5:40 UTC (permalink / raw)
To: Stephen Rothwell; +Cc: Andrew Morton, linux-next, LKML
In-Reply-To: <20111205100930.1bedc458a5e78b85c563465d@canb.auug.org.au>
于 2011年12月05日 07:09, Stephen Rothwell 写道:
> Hi,
>
> On Fri, 02 Dec 2011 12:22:54 +0800 Cong Wang<amwang@redhat.com> wrote:
>>
>> As Andrew Morton suggested, please add my tree which contains all
>> of my patches for kmap_atomic() [1] to linux-next. Some of the
>> individual patches already got ACK from subsystem maintainers.
>> The tree is hosted on github:
>>
>> git://github.com/congwang/linux.git #kmap_atomic
>
> I have added this tree to linux-next today.
>
> Thanks for adding your subsystem tree as a participant of linux-next. As
> you may know, this is not a judgment of your code. The purpose of
> linux-next is for integration testing and to lower the impact of
> conflicts between subsystems in the next merge window.
>
> You will need to ensure that the patches/commits in your tree/series have
> been:
> * submitted under GPL v2 (or later) and include the Contributor's
> Signed-off-by,
When I sent the patches out, they all have my Signed-off-by, but not in the
commit logs in my tree. Is this a problem?
> * posted to the relevant mailing list,
Yes, see http://lkml.org/lkml/2011/11/27/2.
> * reviewed by you (or another maintainer of your subsystem tree),
Yes.
> * successfully unit tested, and
Yes, compile-tested on x86_64 and ppc.
> * destined for the current or next Linux merge window.
Yes, for next merge window.
>
> Basically, this should be just what you would send to Linus (or ask him
> to fetch). It is allowed to be rebased if you deem it necessary.
>
Ok.
Thanks!
^ permalink raw reply
* linux-next: Tree for Dec 5
From: Stephen Rothwell @ 2011-12-05 4:44 UTC (permalink / raw)
To: linux-next; +Cc: LKML
[-- Attachment #1: Type: text/plain, Size: 39030 bytes --]
Hi all,
Changes since 20111202:
New tree: kmap_atomic
The s5p tree gained a conflict agsinst the arm tree.
The net-next tree gained a conflict against the wireless tree.
The sound-asoc tree lost its build failure and gained a conflict against
the s5p tree.
The trivial tree gained a conflict against the wireless-next tree.
I removed a patch from the akpm tree that has turned up elsewhere.
----------------------------------------------------------------------------
I have created today's linux-next tree at
git://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
(patches at http://www.kernel.org/pub/linux/kernel/next/ ). If you
are tracking the linux-next tree using git, you should not use "git pull"
to do so as that will try to merge the new linux-next release with the
old one. You should use "git fetch" as mentioned in the FAQ on the wiki
(see below).
You can see which trees have been included by looking in the Next/Trees
file in the source. There are also quilt-import.log and merge.log files
in the Next directory. Between each merge, the tree was built with
a ppc64_defconfig for powerpc and an allmodconfig for x86_64. After the
final fixups (if any), it is also built with powerpc allnoconfig (32 and
64 bit), ppc44x_defconfig and allyesconfig (minus
CONFIG_PROFILE_ALL_BRANCHES - this fails its final link) and i386, sparc
and sparc64 defconfig. These builds also have
CONFIG_ENABLE_WARN_DEPRECATED, CONFIG_ENABLE_MUST_CHECK and
CONFIG_DEBUG_INFO disabled when necessary.
Below is a summary of the state of the merge.
We are up to 201 trees (counting Linus' and 27 trees of patches pending
for Linus' tree), more are welcome (even if they are currently empty).
Thanks to those who have contributed, and to those who haven't, please do.
Status of my local build tests will be at
http://kisskb.ellerman.id.au/linux-next . If maintainers want to give
advice about cross compilers/configs that work, we are always open to add
more builds.
Thanks to Randy Dunlap for doing many randconfig builds.
There is a wiki covering stuff to do with linux-next at
http://linux.f-seidel.de/linux-next/pmwiki/ . Thanks to Frank Seidel.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
$ git checkout master
$ git reset --hard stable
Merging origin/master (8e8da02 x86: Fix boot failures on older AMD CPU's)
Merging fixes/master (aaa0b4f iio: iio_event_getfd -- fix ev_int build failure)
Merging kbuild-current/rc-fixes (44656fa kbuild: Fix missing system calls check on mips.)
Merging arm-current/fixes (4cbd6b1 ARM: 7182/1: ARM cpu topology: fix warning)
Merging m68k-current/for-linus (2690e21 m68k/mac: Remove mac_irq_{en,dis}able() wrappers)
Merging powerpc-merge/merge (49e4406 powerpc/44x: Add mtd ndfc to the ppx44x defconfig)
Merging 52xx-and-virtex-current/powerpc/merge (c49f878 dtc/powerpc: remove obsolete .gitignore entries)
Merging sparc/master (dbf2b92 sbus: convert drivers/sbus/char/* to use module_platform_driver())
Merging scsi-rc-fixes/master (e5a44df [SCSI] hpsa: Disable ASPM)
Merging net/master (f61759e ipv4: make sure RTO_ONLINK is saved in routing cache)
Merging sound-current/for-linus (cf54d47 Merge branch 'fix/asoc' into for-linus)
Merging pci-current/for-linus (4cac2eb PCI hotplug: shpchp: don't blindly claim non-AMD 0x7450 device IDs)
Merging wireless/master (9995ffe iwlwifi: change the default behavior of watchdog timer)
Merging driver-core.current/driver-core-linus (caca6a0 Linux 3.2-rc3)
Merging tty.current/tty-linus (caca6a0 Linux 3.2-rc3)
Merging usb.current/usb-linus (8593b6f Merge branch 'for-usb-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sarah/xhci into usb-linus)
Merging staging.current/staging-linus (dfd8ee9 Staging: comedi: fix integer overflow in do_insnlist_ioctl())
Merging char-misc.current/char-misc-linus (caca6a0 Linux 3.2-rc3)
Merging cpufreq-current/fixes (5983fe2 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net)
Merging input-current/for-linus (77f6ca5 Input: ams_delta_serio - include linux/module.h)
Merging md-current/for-linus (257a4b4 md/raid5: STRIPE_ACTIVE has lock semantics, add barriers)
Merging audit-current/for-linus (def5754 Audit: remove spaces from audit_log_d_path)
Merging crypto-current/master (2742528 crypto: mv_cesa - fix hashing of chunks > 1920 bytes)
Merging ide/master (0ab3d8b cy82c693: fix PCI device selection)
Merging dwmw2/master (244dc4e Merge git://git.infradead.org/users/dwmw2/random-2.6)
Merging sh-current/sh-fixes-for-linus (21d41f2 sh: fix the compile error in setup-sh7757.c)
Merging rmobile-current/rmobile-fixes-for-linus (a408bae ARM: mach-shmobile: sh7372 CMT3 and CMT4 clock support)
Merging devicetree-current/devicetree/merge (50e07f8 dt: add empty of_machine_is_compatible)
Merging spi-current/spi/merge (940ab88 drivercore: Add helper macro for platform_driver boilerplate)
Merging arm/for-next (92b19da Merge branch 'devel' into for-next)
CONFLICT (content): Merge conflict in arch/arm/tools/mach-types
CONFLICT (content): Merge conflict in arch/arm/plat-omap/include/plat/common.h
Merging arm-lpae/for-next (2a24f17 ARM: LPAE: Add the Kconfig entries)
CONFLICT (content): Merge conflict in arch/arm/mm/ioremap.c
CONFLICT (content): Merge conflict in arch/arm/include/asm/tlb.h
CONFLICT (content): Merge conflict in arch/arm/include/asm/pgtable.h
CONFLICT (content): Merge conflict in arch/arm/include/asm/pgalloc.h
Merging arm-soc/for-next (7958e98 Merge branch 'next/timer' into for-next)
CONFLICT (content): Merge conflict in arch/arm/mach-at91/setup.c
CONFLICT (content): Merge conflict in arch/arm/mach-at91/at91sam9rl.c
CONFLICT (content): Merge conflict in arch/arm/mach-at91/at91sam9g45.c
CONFLICT (content): Merge conflict in arch/arm/mach-at91/at91sam9263.c
CONFLICT (content): Merge conflict in arch/arm/mach-at91/at91sam9261.c
CONFLICT (content): Merge conflict in arch/arm/mach-at91/at91sam9260.c
CONFLICT (content): Merge conflict in arch/arm/mach-at91/at91cap9.c
Merging arm-perf/for-next/perf (c0b91d4 Merge branches 'perf/event-nos', 'perf/omap4' and 'perf/updates' into for-next/perf)
Merging at91/at91-next (8748dfa Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux)
Merging davinci/davinci-next (fe0d422 Linux 3.0-rc6)
Merging i.MX/for-next (5788f4d Merge branches 'imx-fixes', 'imx-cleanup' and 'imx-features' into master)
CONFLICT (content): Merge conflict in arch/arm/plat-mxc/include/mach/hardware.h
CONFLICT (modify/delete): arch/arm/mach-mx5/pm-imx5.c deleted in HEAD and modified in i.MX/for-next. Version i.MX/for-next of arch/arm/mach-mx5/pm-imx5.c left in tree.
CONFLICT (modify/delete): arch/arm/mach-mx5/Makefile deleted in HEAD and modified in i.MX/for-next. Version i.MX/for-next of arch/arm/mach-mx5/Makefile left in tree.
CONFLICT (modify/delete): arch/arm/mach-mx5/Kconfig deleted in HEAD and modified in i.MX/for-next. Version i.MX/for-next of arch/arm/mach-mx5/Kconfig left in tree.
CONFLICT (content): Merge conflict in arch/arm/mach-imx/mm-imx5.c
CONFLICT (content): Merge conflict in arch/arm/mach-imx/devices-imx53.h
CONFLICT (content): Merge conflict in arch/arm/mach-imx/clock-mx51-mx53.c
$ git rm -f arch/arm/mach-mx5/pm-imx5.c arch/arm/mach-mx5/Makefile arch/arm/mach-mx5/Kconfig
Merging linux-spec/for-next (5111711 Merge branch 'for-2.6.37' of git://linux-nfs.org/~bfields/linux)
Merging omap/for-next (322a8b0 Linux 3.1-rc1)
Merging pxa/for-next (19d6c13 [ARM] pxa/hx4700: actually use platform_lcd driver)
Merging samsung/next-samsung (9edb240 ARM: H1940/RX1950: Change default LED triggers)
Merging s5p/for-next (d3d936c Merge branch 'samsung-fixes-2' into for-next)
CONFLICT (content): Merge conflict in arch/arm/mach-s3c64xx/mach-crag6410.c
CONFLICT (content): Merge conflict in arch/arm/mach-exynos/include/mach/entry-macro.S
CONFLICT (content): Merge conflict in arch/arm/mach-exynos/cpu.c
Merging tegra/for-next (b48c54e Merge branch 'for-3.3/boards' into for-next)
Merging xilinx/arm-next (b85a3ef ARM: Xilinx: Adding Xilinx board support)
Merging blackfin/for-linus (e5fd47b xen/pm_idle: Make pm_idle be default_idle under Xen.)
Merging c6x/for-linux-next (2141355 C6X: MAINTAINERS)
Merging cris/for-next (ea78f5b CRIS: Update documentation)
Merging quilt/hexagon (110b372 Remove unneeded include of version.h from arch/hexagon/include/asm/spinlock_types.h)
Merging ia64/next (2174f6d pstore: gracefully handle NULL pstore_info functions)
Merging m68k/for-next (3ef5597 m68k: Don't comment out syscalls used by glibc)
Merging m68knommu/for-next (285aa94 m68knommu: fix broken ColdFire slice timer read_clk() code)
CONFLICT (content): Merge conflict in arch/m68k/Kconfig.debug
Merging microblaze/next (7f80850 Merge branch 'rmobile-fixes-for-linus' of git://github.com/pmundt/linux-sh)
Merging mips/mips-for-linux-next (1fc140c Merge branches 'next/ar7', 'next/ath79', 'next/bcm63xx', 'next/bmips', 'next/cavium', 'next/generic', 'next/kprobes', 'next/lantiq', 'next/perf' and 'next/raza' into mips-for-linux-next)
Merging openrisc/for-upstream (b6fd41e Linux 3.1-rc6)
Merging parisc/for-next (fc99a91 futex: Use same lock set as lws calls)
Merging powerpc/next (fa8cbaa powerpc+sparc64/mm: Remove hack in mmap randomize layout)
Merging 4xx/next (f1ab937 MAINTAINERS: Update PowerPC 4xx git tree)
Merging 52xx-and-virtex/powerpc/next (c1395f4 dtc/powerpc: remove obsolete .gitignore entries)
Merging galak/next (fa8cbaa powerpc+sparc64/mm: Remove hack in mmap randomize layout)
Merging s390/features (b6c55cb [S390] topology: increase poll frequency if change is anticipated)
Merging sh/sh-latest (b9a3acf Merge branch 'sh/stable-updates' into sh-latest)
Merging rmobile/rmobile-latest (b58c580 Merge branch 'rmobile-fixes-for-linus' into rmobile-latest)
Merging sparc-next/master (3ee72ca Merge git://github.com/davem330/net)
Merging tile/master (0c90547 arch/tile: use new generic {enable,disable}_percpu_irq() routines)
Merging unicore32/unicore32 (ed96dfb unicore32, exec: remove redundant set_fs(USER_DS))
Merging xtensa/master (29aced6 xtensa: remove defining register numbers)
Merging ceph/for-next (3395734 libceph: fix double-free of page vector)
Merging cifs/master (138514b cifs: check for NULL last_entry before calling cifs_save_resume_key)
Merging configfs/linux-next (b930c26 Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs)
Merging ecryptfs/next (aaef29d eCryptfs: Flush file in vma close)
Merging ext3/for_next (ed47a7d udf: Cleanup metadata flags handling)
Merging ext4/dev (4c81f04 ext4: fix racy use-after-free in ext4_end_io_dio())
Merging fatfs/master (710d440 fat: fat16 support maximum 4GB file/vol size as WinXP or 7.)
Merging fuse/for-next (cfcfc9e Linux 3.2-rc2)
Merging gfs2/master (018a01c GFS2: We only need one ACL getting function)
Merging hfsplus/for-next (6596528 hfsplus: ensure bio requests are not smaller than the hardware sectors)
Merging jfs/next (1c8007b jfs: flush journal completely before releasing metadata inodes)
Merging logfs/master (21f3eb8 logfs: update page reference count for pined pages)
CONFLICT (content): Merge conflict in fs/logfs/file.c
Merging nfs/linux-next (111d489 NFSv4.1: Ensure that we handle _all_ SEQUENCE status bits.)
Merging nfsd/nfsd-next (353de31 nfsd4: fix CONFIG_NFSD_FAULT_INJECTION compile error)
Merging nilfs2/for-next (93ee7a9 Linux 3.1-rc2)
Merging ocfs2/linux-next (9392557 ocfs2: avoid unaligned access to dqc_bitmap)
Merging omfs/for-next (976d167 Linux 3.1-rc9)
Merging squashfs/master (7657cac Squashfs: Add an option to set dev block size to 4K)
Merging v9fs/for-next (883381d Merge branch 'dev' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4)
Merging ubifs/linux-next (eaecf43 UBIFS: Use kmemdup rather than duplicating its implementation)
Merging xfs/master (a99ebf4 xfs: fix allocation length overflow in xfs_bmapi_write())
Merging vfs/for-next (206b1d0 Fix POSIX ACL permission check)
Merging vfs-scale/vfs-scale-working (32385c7 kernel: fix hlist_bl again)
Merging pci/linux-next (cfbf1bd PCI: msi: Disable msi interrupts when we initialize a pci device)
Merging hid/for-next (3f7f555 Merge branch 'hyperv' into for-next)
Merging quilt/i2c (caca6a0 Linux 3.2-rc3)
Merging bjdooks-i2c/next-i2c (f8420b7 fixup merge)
CONFLICT (add/add): Merge conflict in drivers/i2c/busses/i2c-designware-platdrv.c
Merging quilt/jdelvare-hwmon (dda4fa1 hwmon: (lm63) Add support for LM96163)
Merging hwmon-staging/hwmon-next (a976c2a hwmon: (pmbus/zl6100) Only instantiate external temperature sensor if enabled)
Merging quilt/kernel-doc (c3b92c8 Linux 3.1)
Merging docs/docs-move (5c24d8b Merge branch 'docs/docbook/drm' of git://github.com/mfwitten/linux into docs-move)
Merging v4l-dvb/master (ed3825f Merge branch 'poll-pwc2' of /home/v4l/v4l/patchwork)
CONFLICT (content): Merge conflict in drivers/staging/media/as102/as102_drv.h
Merging kbuild/for-next (ddb550d Merge branch 'kbuild/misc' into kbuild/for-next)
Merging kconfig/for-next (eae1c36 Merge branch 'kconfig/for-linus-2' into kconfig/for-next)
Merging libata/NEXT (3fab0c1 ahci: start engine only during soft/hard resets)
Merging infiniband/for-next (5611cc45 Linux 3.2-rc4)
Merging acpi/next (efb9058 Merge branches 'acpi', 'idle', 'mrst-pmu' and 'pm-tools' into next)
Merging cpupowerutils/master (498ca79 cpupower: use man(1) when calling "cpupower help subcommand")
Merging ieee1394/for-next (a572e68 firewire: ohci: fix isochronous DMA synchronization)
Merging ubi/linux-next (c55d743 UBI: fix missing scrub when there is a bit-flip)
Merging dlm/next (9beb3bf dlm: convert rsb list to rb_tree)
Merging scsi/master (f7c9c6b [SCSI] Fix block queue and elevator memory leak in scsi_alloc_sdev)
Merging target-updates/for-next (5bda90c target: use ->exectute_task for all CDB emulation)
Merging target-merge/for-next-merge (e0d85e5 ib_srpt: Initial SRP Target merge for v3.2-rc1)
Merging slave-dma/next (02f88be dmaengine: at_hdmac: simplify device selection from platform data or DT)
CONFLICT (content): Merge conflict in drivers/dma/pl330.c
Merging async_tx/next (21ef4b8 dmaengine: use DEFINE_IDR for static initialization)
Merging net-next/master (761965e tcp: tcp_sendmsg() page recycling)
CONFLICT (content): Merge conflict in drivers/net/wireless/iwlwifi/iwl-agn.c
Merging wireless-next/master (d7a4858 Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless)
CONFLICT (content): Merge conflict in drivers/net/wireless/iwlwifi/iwl-agn.c
Merging bluetooth/master (5a13b09 Bluetooth: trivial: correct check for LMP version)
Merging mtd/master (629be5f mtd: ndfc: fix typo in structure dereference)
Merging l2-mtd/master (d9c5472 mtdoops: skip reading initially bad blocks)
Merging crypto/master (741e8c2 crypto: convert drivers/crypto/* to use module_platform_driver())
Merging sound/for-next (3ff60ef Merge branch 'topic/misc' into for-next)
Merging sound-asoc/for-next (dd85ecc ASoC: Make SND_SOC_LITTLEMILL select MFD_WM8994)
CONFLICT (content): Merge conflict in arch/arm/mach-s3c64xx/mach-crag6410.c
Merging cpufreq/next (b191c54 Merge branch 'for_3.3/omap-cpufreq' of git://git.kernel.org/pub/scm/linux/kernel/git/khilman/linux-omap-pm into next)
Merging quilt/rr (bbdfe28 lguest: switch segment-voodoo-numbers to readable symbols)
Merging input/next (e23ed60 Input: htcpen - switch to DMI-based autoloading)
CONFLICT (content): Merge conflict in drivers/input/keyboard/samsung-keypad.c
Merging input-mt/next (02f8c6a Linux 3.0)
Merging lsm/for-next (ca05a99 capabilities: remain source compatible with 32-bit raw legacy capability support.)
Merging block/for-next (629baa7 Merge branch 'for-linus' into for-next)
Merging quilt/device-mapper (94956ee Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net)
Merging embedded/master (4744b43 embedded: fix vc_translate operator precedence)
Merging firmware/master (6e03a20 firmware: speed up request_firmware(), v3)
Merging pcmcia/master (74411c0 smc91c92_cs.c: fix bogus compiler warning)
Merging battery/master (00a159a max8925_power: Check at probe time if power to set online)
Merging mmc/mmc-next (666b6ab mmc: sdhci-s3c: Add pm_caps into SD/MMC host)
Merging kgdb/kgdb-next (880ba69 lib: rename pack_hex_byte() to hex_byte_pack())
Merging slab/for-next (7436099 Merge branch 'slab/next' into for-next)
Merging uclinux/for-next (5e442a4 Revert "proc: fix races against execve() of /proc/PID/fd**")
Merging md/for-next (c7eefaf md/raid1: Mark device replaceable when we see a write error.)
Merging mfd/for-next (b958f7a mfd: Fix missing abx500 header file updates)
Merging hdlc/hdlc-next (4a6908a Linux 2.6.28)
Merging drm/drm-next (04b3924 drm: Redefine pixel formats)
Merging fbdev/fbdev-next (f940b88 video: s3c2410: fix checkpatch error and warnings)
Merging viafb/viafb-next (4ce36bb viafb: replace strict_strtoul to kstrto* and check return value)
Merging omap_dss2/for-next (3e28189 OMAPDSS: picodlp: add missing #include <linux/module.h>)
Merging regulator/for-next (eb29674 regulator: Allow regulators to register with no init_data)
Merging security/next (de35353 digsig: build dependency fix)
CONFLICT (content): Merge conflict in lib/Makefile
Merging selinux/master (ded5098 SELinux: skip file_name_trans_write() when policy downgraded.)
Merging lblnet/master (7e27d6e Linux 2.6.35-rc3)
Merging watchdog/linux-next (80fee40 watchdog: move coh901327 state holders)
Merging bdev/master (feaf384 Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block)
Merging dwmw2-iommu/master (c3b92c8 Linux 3.1)
Merging iommu/next (a7e892e Merge branches 'iommu/fixes', 'iommu/page-sizes' and 'iommu/group-id' into next)
Merging cputime/cputime (c5927fe [S390] cputime: add sparse checking and cleanup)
Merging osd/linux-next (dde406e pnfs-obj: Support for RAID5 read-4-write interface.)
Merging jc_docs/docs-next (5c050fb docs: update the development process document)
Merging nommu/master (0ce790e Linux 2.6.39-rc1)
Merging trivial/for-next (0518318 hyper-v: Update MAINTAINERS)
CONFLICT (content): Merge conflict in net/mac80211/work.c
CONFLICT (content): Merge conflict in arch/powerpc/platforms/40x/Kconfig
Merging audit/for-next (def5754 Audit: remove spaces from audit_log_d_path)
Merging pm/linux-next (3d564ef PM / Sleep: Unify diagnostic messages from device suspend/resume)
Merging apm/for-next (282e5aa x86: Kconfig: drop unknown symbol 'APM_MODULE')
Merging fsnotify/for-next (ef9bf3b fanotify: only destroy a mark if both its mask and its ignored_mask are cleared)
Merging irda/for-next (94d57c4 enic: Update MAINTAINERS)
Merging edac/linux_next (4d096ca MAINTAINERS: add an entry for Edac Sandy Bridge driver)
Merging edac-amd/for-next (ed8ccfa Merge branch '3.3-edac-scrubrate' into edac-for-next)
Merging devicetree/devicetree/next (ae97159 of_mdio: Don't phy_scan_fixups() twice)
Merging spi/spi/next (940ab88 drivercore: Add helper macro for platform_driver boilerplate)
Merging gpio/gpio/next (d92ef29 h8300: Move gpio.h to gpio-internal.h)
Merging tip/auto-latest (e79d72b Merge branch 'sched/core' into auto-latest)
CONFLICT (content): Merge conflict in arch/mips/kernel/perf_event_mipsxx.c
Merging rcu/rcu/next (afe24b1 rcu: Move propagation of ->completed from rcu_start_gp() to rcu_report_qs_rsp())
Merging uprobes/for-next (b23a347 x86: skip singlestep where possible)
Merging cgroup/for-next (a34815b Merge branch 'for-3.2-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup)
Merging kmemleak/kmemleak (029aeff kmemleak: Add support for memory hotplug)
Merging kvm/kvm-updates/3.2 (a3e06bb KVM: emulate lapic tsc deadline timer for guest)
Merging oprofile/for-next (de346b6 Merge branch 'perf/core' into oprofile/master)
Merging xen/upstream/xen (ec8161f Merge branch 'upstream/microcode' into upstream/xen)
CONFLICT (content): Merge conflict in arch/x86/xen/Kconfig
Merging xen-two/linux-next (54e6a3c Merge branch 'stable/for-linus-3.3' into linux-next)
CONFLICT (content): Merge conflict in arch/x86/xen/Kconfig
Merging xen-pvhvm/linux-next (b056b6a xen: suspend: remove xen_hvm_suspend)
Merging percpu/for-next (a34815b Merge branch 'for-3.2-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup)
Merging workqueues/for-next (9c5a2ba workqueue: separate out drain_workqueue() from destroy_workqueue())
Merging sfi/sfi-test (5b026c4 SFI: use ioremap_cache() instead of ioremap())
Merging asm-generic/next (35dbc0e asm-generic/io.h: allow people to override individual funcs)
Merging drivers-x86/linux-next (15b956a acer-wmi: support Lenovo ideapad S205 wifi switch)
Merging hwpoison/hwpoison (46e387b Merge branch 'hwpoison-hugepages' into hwpoison)
Merging sysctl/master (c2f5631 sysctl: remove impossible condition check)
Merging namespace/master (7e05c93 proc: Fix the proc access checks to namespace files.)
Merging regmap/for-next (bc7ee55 regmap: Add trace event for successful cache reads)
Merging hsi/for-next (a8b4dea HSI: hsi_char: Update ioctl-number.txt)
Merging driver-core/driver-core-next (11e3123 uio: convert drivers/uio/* to use module_platform_driver())
Merging tty/tty-next (7962fce tty: n_hdlc not atomic use tty->flags.)
CONFLICT (content): Merge conflict in drivers/tty/serial/Makefile
CONFLICT (content): Merge conflict in drivers/tty/serial/Kconfig
Merging usb/usb-next (b870def USB: ohci-s3c2410: add PM support)
Merging staging/staging-next (0c9d196 Staging: hv: update TODO file)
CONFLICT (content): Merge conflict in drivers/staging/iio/industrialio-core.c
CONFLICT (content): Merge conflict in drivers/staging/iio/adc/ad799x_core.c
CONFLICT (content): Merge conflict in drivers/staging/hv/Makefile
CONFLICT (content): Merge conflict in drivers/staging/hv/Kconfig
CONFLICT (rename/delete): drivers/hid/hid-hyperv.c deleted in staging/staging-next and renamed in HEAD. Version HEAD of drivers/hid/hid-hyperv.c left in tree.
Merging char-misc/char-misc-next (7f3379d misc: ad525x_dpot: Add support for SPI module device table matching)
Merging bkl-config/config (4ba8216 BKL: That's all, folks)
Merging tmem/tmem (665c1e6 mm: cleancache: Use __read_mostly as appropiate.)
CONFLICT (content): Merge conflict in mm/swapfile.c
Merging writeback/writeback-for-next (2c03412 btrfs: fix dirtied pages accounting on sub-page writes)
Merging arm-dt/devicetree/arm-next (ede338f dt: add documentation of ARM dt boot interface)
Merging hwspinlock/linux-next (8b37fcf hwspinlock: add MAINTAINERS entries)
Merging pinctrl/for-next (5becdc7 pinctrl/coh901: driver to request its pins)
Merging moduleh/for-sfr (6aec187 drivers/media: video/a5k6aa is a module and so needs module.h)
Merging vhost/linux-next (193a667 alpha: drop pci_iomap/pci_iounmap from pci-noop.c)
CONFLICT (content): Merge conflict in arch/m68k/Kconfig
CONFLICT (content): Merge conflict in arch/hexagon/Kconfig
Merging kmap_atomic/kmap_atomic (9578557 feature-removal-schedule.txt: add the deprecated form of kmap_atomic())
Merging kvmtool/master (1fbd119 kvm tools: Drop write operation in ro_ops_nowrite)
CONFLICT (content): Merge conflict in scripts/kconfig/Makefile
CONFLICT (content): Merge conflict in include/net/9p/9p.h
Merging scsi-post-merge/merge-base:master ()
$ git checkout akpm
Applying: vmscan: fix initial shrinker size handling
Applying: vmscan: use atomic-long for shrinker batching
Applying: fs/proc/meminfo.c: fix compilation error
Applying: thp: reduce khugepaged freezing latency
Applying: CREDITS: update Kees's expired fingerprint and fix details
Applying: drivers/rtc/rtc-s3c.c: fix driver clock enable/disable balance issues
Applying: memcg: update maintainers
Applying: printk: avoid double lock acquire
Applying: thp: add compound tail page _mapcount when mapped
Applying: thp: set compound tail page _count to zero
Applying: mm/migrate.c: pair unlock_page() and lock_page() when migrating huge pages
Applying: mm: Ensure that pfn_valid() is called once per pageblock when reserving pageblocks
Applying: cpusets: stall when updating mems_allowed for mempolicy or disjoint nodemask
Applying: cpusets-stall-when-updating-mems_allowed-for-mempolicy-or-disjoint-nodemask-fix
Applying: net/netfilter/nf_conntrack_netlink.c: fix Oops on container destroy
Applying: acerhdf: add support for Aspire 1410 BIOS v1.3314
Applying: acerhdf: add support for new hardware
Applying: acerhdf: lowered default temp fanon/fanoff values
Applying: arch/x86/platform/iris/iris.c: register a platform device and a platform driver
Applying: x86, olpc-xo15-sci: enable lid close wakeup control through sysfs
Applying: x86-olpc-xo15-sci-enable-lid-close-wakeup-control-through-sysfs-fix
Applying: x86: fix mmap random address range
Applying: arch/x86/kernel/e820.c: eliminate bubble sort from sanitize_e820_map
Applying: x86: rtc: don't register a platform RTC device for Intel MID platforms
Applying: arch/x86/kernel/e820.c: quiet sparse noise about plain integer as NULL pointer
Applying: arch/x86/kernel/ptrace.c: quiet sparse noise
Applying: arch/x86/mm/pageattr.c: quiet sparse noise; local functions should be static
Applying: x86: tlb flush avoid superflous leave_mm()
Applying: x86: reduce clock calibration time during slave cpu startup
Applying: x86/paravirt: PTE updates in k(un)map_atomic need to be synchronous, regardless of lazy_mmu mode
Applying: mm/vmalloc.c: eliminate extra loop in pcpu_get_vm_areas error path
Applying: mm-vmallocc-eliminate-extra-loop-in-pcpu_get_vm_areas-error-path-fix
Applying: x86: mpparse: account for bus types other than ISA and PCI
Applying: drivers/platform/x86/sony-laptop.c: fix scancodes
Applying: drivers-platform-x86-sony-laptopc-fix-scancodes-checkpatch-fixes
Applying: arch/arm/mach-ux500/mbox-db5500.c: world-writable sysfs fifo file
Applying: arm, exec: remove redundant set_fs(USER_DS)
Applying: intel-iommu: Fix __init section missmatch of dmar_parse_rmrr_atsr_dev
Applying: hrtimers: Special-case zero length sleeps
Applying: tick-sched: add specific do_timer_cpu value for nohz off mode
Applying: ia64, exec: remove redundant set_fs(USER_DS)
Applying: kconfig: add merge_config.sh script
Applying: merge_config.sh: use signal names compatible with dash and bash
Applying: merge_config.sh: whitespace cleanup
Applying: merge_config.sh: fix bug in final check
Applying: ctags: remove struct forward declarations
Applying: ipc/mqueue: cleanup definition names and locations
Applying: ipc/mqueue: switch back to using non-max values on create
Applying: ipc/mqueue: enforce hard limits
Applying: ipc/mqueue: update maximums for the mqueue subsystem
Applying: ipc-mqueue-update-maximums-for-the-mqueue-subsystem-fix
Applying: ipc-mqueue-update-maximums-for-the-mqueue-subsystem-checkpatch-fixes
Applying: debugobjects: be smarter about static objects
Applying: debugobjects: extend to assert that an object is initialized
Applying: kernel/timer.c: use debugobjects to catch deletion of uninitialized timers
Applying: ext4: use proper little-endian bitops
Applying: parisc, exec: remove redundant set_fs(USER_DS)
Applying: scsi: fix a header to include linux/types.h
Applying: drivers/scsi/megaraid.c: fix sparse warnings
Applying: drivers/scsi/aacraid/commctrl.c: fix mem leak in aac_send_raw_srb()
Applying: drivers/scsi/sg.c: convert to kstrtoul_from_user()
Applying: drivers/scsi/mpt2sas/mpt2sas_base.c: fix mismatch in mpt2sas_base_hard_reset_handler() mutex lock-unlock
Applying: drivers/message/fusion/mptbase.c: ensure NUL-termination of MptCallbacksName elements
Applying: fs: remove unneeded plug in mpage_readpages()
Applying: MAINTAINERS: Staging: cx25821: Add L: linux-media
Applying: mm/page-writeback.c: make determine_dirtyable_memory static again
Applying: vmscan: promote shared file mapped pages
Applying: vmscan: activate executable pages after first usage
Applying: mm: add free_hot_cold_page_list() helper
Applying: mm-add-free_hot_cold_page_list-helper-v2
Applying: mm-add-free_hot_cold_page_list-helper-v3
Applying: mm: remove unused pagevec_free
Applying: mm-tracepoint: rename page-free events
Applying: mm-tracepoint: fix documentation and examples
Applying: mm: fix page-faults detection in swap-token logic
Applying: mm: add extra free kbytes tunable
Applying: mm-add-extra-free-kbytes-tunable-update
Applying: mm-add-extra-free-kbytes-tunable-update-checkpatch-fixes
Applying: mm: migrate: one less atomic operation
Applying: mm: do not stall in synchronous compaction for THP allocations
Applying: mm-do-not-stall-in-synchronous-compaction-for-thp-allocations-v3
Applying: mm: reduce the amount of work done when updating min_free_kbytes
Applying: mm-reduce-the-amount-of-work-done-when-updating-min_free_kbytes-checkpatch-fixes
Applying: mm: avoid livelock on !__GFP_FS allocations
Applying: mm: account reaped page cache on inode cache pruning
Applying: hugetlb: detect race upon page allocation failure during COW
Applying: hugetlb: clarify hugetlb_instantiation_mutex usage
Applying: mm/hugetlb.c: fix virtual address handling in hugetlb fault
Applying: mm-hugetlbc-fix-virtual-address-handling-in-hugetlb-fault-fix
Applying: kernel.h: add BUILD_BUG() macro
Applying: kernel.h: Add BUILD_BUG() macro.
Applying: hugetlb: replace BUG() with BUILD_BUG() for dummy definitions
Applying: mm: more intensive memory corruption debugging
Applying: mm-more-intensive-memory-corruption-debug-fix
Applying: PM/Hibernate: do not count debug pages as savable
Applying: slub: min order when debug_guardpage_minorder > 0
Applying: fadvise: only initiate writeback for specified range with FADV_DONTNEED
Applying: mm, debug: test for online nid when allocating on single node
Applying: vmscan: add task name to warn_scan_unevictable() messages
Applying: mm: exclude reserved pages from dirtyable memory
Applying: mm-exclude-reserved-pages-from-dirtyable-memory-fix
Applying: mm: writeback: cleanups in preparation for per-zone dirty limits
Applying: mm: try to distribute dirty pages fairly across zones
Applying: mm: filemap: pass __GFP_WRITE from grab_cache_page_write_begin()
Applying: Btrfs: pass __GFP_WRITE for buffered write page allocations
Applying: mm: compaction: push isolate search base of compact control one pfn ahead
Applying: mm,x86: remove debug_pagealloc_enabled
Applying: hpet: factor timer allocate from open
Applying: intel_idle: fix API misuse
Applying: intel_idle: disable auto_demotion for hotplugged CPUs
Applying: kernel.h: neaten panic prototype
Applying: include/linux/linkage.h: remove unused NORET_AND macro
Applying: treewide: remove useless NORET_TYPE macro and uses
Applying: treewide: convert uses of ATTRIB_NORETURN to __noreturn
Applying: treewide-convert-uses-of-attrib_noreturn-to-__noreturn-checkpatch-fixes
Applying: include/linux/linkage.h: remove unused ATTRIB_NORET macro
Applying: mm,slub,x86: decouple size of struct page from CONFIG_CMPXCHG_LOCAL
Applying: mm,x86,um: move CMPXCHG_LOCAL config option
Applying: mm,x86,um: move CMPXCHG_DOUBLE config option
Applying: audit: always follow va_copy() with va_end()
Applying: brlocks/lglocks: clean up code
Applying: brlocks-lglocks-clean-up-code-checkpatch-fixes
Applying: include/log2.h: fix rounddown_pow_of_two(1)
Applying: get_maintainers.pl: follow renames when looking up commit signers
Applying: backlight: remove ADX backlight device support
Applying: backlight: convert drivers/video/backlight/* to use module_platform_driver()
Applying: leds: convert led platform drivers to module_platform_driver
Applying: leds: convert led i2c drivers to module_i2c_driver
Applying: leds: convert leds-dac124s085 to module_spi_driver
Applying: drivers/leds/leds-lp5523.c: remove unneeded forward declaration
Applying: drivers/leds/leds-bd2802.c: use gpio_request_one()
Applying: drivers/leds/leds-netxbig.c: use gpio_request_one()
Applying: checkpatch: update signature "might be better as" warning
Applying: checkpatch: prefer __printf over __attribute__((format(printf,...)))
Applying: checkpatch: correctly track the end of preprocessor commands in context
Applying: checkpatch: fix up complex macros context format
Applying: checkpatch: check for common memset parameter issues against statments
Applying: checkpatch: improve memset and min/max with cast checking
Applying: checkpatch-improve-memset-and-min-max-with-cast-checking-fix
Applying: checkpatch: ## is not a valid modifier
Applying: checkpatch: optimise statement scanner when mid-statement
Applying: checkpatch: only apply kconfig help checks for options which prompt
Applying: checkpatch: fix EXPORT_SYMBOL handling following a function
Applying: checkpatch: complex macro should allow the empty do while loop
Applying: checkpatch: fix 'return is not a function' square bracket handling
Applying: checkpatch: fix complex macros handling of square brackets
Applying: checkpatch: ensure cast type is unique in the context parser
Applying: checkpatch: typeof may have more complex arguments
Applying: checkpatch: catch all occurances of type and cast spacing errors per line
Applying: checkpatch-catch-all-occurances-of-type-and-cast-spacing-errors-per-line-checkpatch-fixes
Applying: crc32: optimize inner loop
Applying: epoll: limit paths
Applying: fs: binfmt_elf: create Kconfig variable for PIE randomization
Applying: MIPS: randomize PIE load address
Applying: init/do_mounts.c: create /root if it does not exist
Applying: drivers/rtc/rtc-cmos.c: fix broken NVRAM bank 2 writing
Applying: drivers/rtc/rtc-mxc.c: fix setting time for MX1 SoC
Applying: drivers-rtc-rtc-mxcc-fix-setting-time-for-mx1-soc-fix
Applying: drivers/rtc/rtc-mxc.c: make alarm work
Applying: drivers-rtc-rtc-mxcc-make-alarm-work-fix
Applying: rtc/ab8500: don't disable IRQ:s when suspending
Applying: rtc/ab8500: set can_wake flag
Applying: drivers/rtc/rtc-ab8500.c: change msleep() to usleep_range()
Applying: rtc/ab8500: Add calibration attribute to AB8500 RTC
Applying: rtc-ab8500-add-calibration-attribute-to-ab8500-rtc-checkpatch-fixes
Applying: reiserfs: delete comments refering to the BKL
Applying: reiserfs: delay reiserfs lock until journal initialization
Applying: reiserfs: don't lock journal_init()
Applying: reiserfs: don't lock root inode searching
Applying: cgroups: add res_counter_write_u64() API
Applying: cgroups: new resource counter inheritance API
Applying: cgroups: add previous cgroup in can_attach_task/attach_task callbacks
Applying: cgroups: new cancel_attach_task() subsystem callback
Applying: cgroups: ability to stop res charge propagation on bounded ancestor
Applying: cgroups: add res counter common ancestor searching
Applying: res_counter: allow charge failure pointer to be null
Applying: cgroups: pull up res counter charge failure interpretation to caller
Applying: cgroups: allow subsystems to cancel a fork
Applying: cgroups: add a task counter subsystem
Applying: cgroups: ERR_PTR needs err.h
Applying: cgroup: Fix task counter common ancestor logic
Applying: cgroup-fix-task-counter-common-ancestor-logic-checkpatch-fixes
Applying: mm: memcg: consolidate hierarchy iteration primitives
Applying: mm: vmscan: distinguish global reclaim from global LRU scanning
Applying: mm: vmscan: distinguish between memcg triggering reclaim and memcg being scanned
Applying: mm-vmscan-distinguish-between-memcg-triggering-reclaim-and-memcg-being-scanned-checkpatch-fixes
Applying: mm: memcg: per-priority per-zone hierarchy scan generations
Applying: mm: move memcg hierarchy reclaim to generic reclaim code
Applying: mm: memcg: remove optimization of keeping the root_mem_cgroup LRU lists empty
Applying: mm: vmscan: convert global reclaim to per-memcg LRU lists
Applying: mm: collect LRU list heads into struct lruvec
Applying: mm: make per-memcg LRU lists exclusive
Applying: mm: memcg: remove unused node/section info from pc->flags
Applying: mm: memcg: remove unused node/section info from pc->flags fix
Applying: memcg: make mem_cgroup_split_huge_fixup() more efficient
Applying: memcg-make-mem_cgroup_split_huge_fixup-more-efficient-fix
Applying: mm: memcg: shorten preempt-disabled section around event checks
Applying: Documentation/cgroups/memory.txt: fix typo
Applying: memcg: fix pgpgin/pgpgout documentation
Applying: mm: oom_kill: remove memcg argument from oom_kill_task()
Applying: mm: unify remaining mem_cont, mem, etc. variable names to memcg
Applying: mm: memcg: clean up fault accounting
Applying: mm: memcg: lookup_page_cgroup (almost) never returns NULL
Applying: mm: page_cgroup: check page_cgroup arrays in lookup_page_cgroup() only when necessary
Applying: mm: memcg: remove unneeded checks from newpage_charge()
Applying: mm: memcg: remove unneeded checks from uncharge_page()
Applying: thp: improve the error code path
Applying: thp: remove unnecessary tlb flush for mprotect
Applying: thp: add tlb_remove_pmd_tlb_entry
Applying: thp: improve order in lru list for split huge page
Applying: procfs: make proc_get_link to use dentry instead of inode
Applying: procfs: introduce the /proc/<pid>/map_files/ directory
Applying: procfs-introduce-the-proc-pid-map_files-directory-checkpatch-fixes
Applying: procfs: parse mount options
Applying: procfs: add hidepid= and gid= mount options
Applying: workqueue: make alloc_workqueue() take printf fmt and args for name
Applying: workqueue-make-alloc_workqueue-take-printf-fmt-and-args-for-name-fix
Applying: cpumask: update setup_node_to_cpumask_map() comments
Applying: kexec: remove KMSG_DUMP_KEXEC
Applying: kdump: add missing RAM resource in crash_shrink_memory()
Applying: kdump: add udev events for memory online/offline
Applying: kdump: crashk_res init check for /sys/kernel/kexec_crash_size
Applying: kdump: fix crash_kexec()/smp_send_stop() race in panic()
Applying: ipc/mqueue: simplify reading msgqueue limit
Applying: ipc/sem.c: alternatives to preempt_disable()
Applying: sysctl: add the kernel.ns_last_pid control
Applying: user namespace: make signal.c respect user namespaces
Applying: __send_signal: pass q->info, not info, to userns_fixup_signal_uid (v2)
Applying: ipc/mqueue: lock() => unlock() typo
Applying: drivers/memstick: use kmemdup rather than duplicating its implementation
Applying: fs/direct-io.c: calculate fs_count correctly in get_more_blocks()
Applying: vfs: cache request_queue in struct block_device
Applying: dio: optimize cache misses in the submission path
Applying: dio-optimize-cache-misses-in-the-submission-path-v2-checkpatch-fixes
Applying: dio: using prefetch requires including prefetch.h
Applying: ramoops: fix use of rounddown_pow_of_two()
Applying: ramoops: update parameters only after successful init
Applying: unlzo: Fix input buffer free
Merging akpm (751ae2b unlzo: Fix input buffer free)
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* Re: linux-next: manual merge of the net-next tree with the tree
From: Stephen Rothwell @ 2011-12-05 4:34 UTC (permalink / raw)
To: David Miller, netdev
Cc: linux-next, linux-kernel, Wey-Yi Guy, John W. Linville,
Johannes Berg
In-Reply-To: <20111205123428.47213da24624d85aa84711f3@canb.auug.org.au>
[-- Attachment #1: Type: text/plain, Size: 541 bytes --]
On Mon, 5 Dec 2011 12:34:28 +1100 Stephen Rothwell <sfr@canb.auug.org.au> wrote:
>
> Today's linux-next merge of the net-next tree got a conflict in
> drivers/net/wireless/iwlwifi/iwl-agn.c between commits from the
wireless (sorry)
> tree and commit 7335613ae27a ("iwlwifi: move all mac80211 related
> functions to one place") from the net-next tree.
>
> I just used the net-next version (which may require some fixes).
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* linux-next: manual merge of the trivial tree with the wireless-next tree
From: Stephen Rothwell @ 2011-12-05 2:37 UTC (permalink / raw)
To: Jiri Kosina
Cc: linux-next, linux-kernel, Justin P. Mattock, Johannes Berg,
John W. Linville
[-- Attachment #1: Type: text/plain, Size: 519 bytes --]
Hi Jiri,
Today's linux-next merge of the trivial tree got a conflict in
net/mac80211/work.c between commit e76aadc57228 ("mac80211: revert
on-channel work optimisations") from the wireless-next tree and commit
42b2aa86c667 ("treewide: Fix typos in various parts of the kernel, and
fix some comments") from the trivial tree.
The former removed the comment that was fixed in the latter, so I did
that.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* linux-next: manual merge of the sound-asoc tree with the s5p tree
From: Stephen Rothwell @ 2011-12-05 2:01 UTC (permalink / raw)
To: Mark Brown, Liam Girdwood; +Cc: linux-next, linux-kernel, Kukjin Kim
[-- Attachment #1: Type: text/plain, Size: 935 bytes --]
Hi all,
Today's linux-next merge of the sound-asoc tree got a conflict in
arch/arm/mach-s3c64xx/mach-crag6410.c between commit c5c32c965dad ("ARM:
S3C64XX: Hook up Littlemill audio card on Cragganmore") from the s5p tree
and commit 6414261f0a2a ("ASoC: Rename Speyside WM8962 to Tobermory")
from the sound-asoc tree.
Just context changes. I fixed it up (see below) and can carry the fix as
necessary.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
diff --cc arch/arm/mach-s3c64xx/mach-crag6410.c
index 6ff76c0,55c0e75..0000000
--- a/arch/arm/mach-s3c64xx/mach-crag6410.c
+++ b/arch/arm/mach-s3c64xx/mach-crag6410.c
@@@ -346,8 -338,7 +346,8 @@@ static struct platform_device *crag6410
&crag6410_lcd_powerdev,
&crag6410_backlight_device,
&speyside_device,
- &speyside_wm8962_device,
+ &tobermory_device,
+ &littlemill_device,
&lowland_device,
&wallvdd_device,
};
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* linux-next: manual merge of the net-next tree with the tree
From: Stephen Rothwell @ 2011-12-05 1:34 UTC (permalink / raw)
To: David Miller, netdev
Cc: linux-next, linux-kernel, Wey-Yi Guy, John W. Linville,
Johannes Berg
[-- Attachment #1: Type: text/plain, Size: 435 bytes --]
Hi all,
Today's linux-next merge of the net-next tree got a conflict in
drivers/net/wireless/iwlwifi/iwl-agn.c between commits from the
tree and commit 7335613ae27a ("iwlwifi: move all mac80211 related
functions to one place") from the net-next tree.
I just used the net-next version (which may require some fixes).
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
http://www.canb.auug.org.au/~sfr/
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* linux-next: manual merge of the s5p tree with the arm tree
From: Stephen Rothwell @ 2011-12-05 0:01 UTC (permalink / raw)
To: Kukjin Kim; +Cc: linux-next, linux-kernel, Mark Brown, Jamie Iles, Russell King
[-- Attachment #1: Type: text/plain, Size: 887 bytes --]
Hi Kukjin,
Today's linux-next merge of the s5p tree got a conflict in
arch/arm/mach-s3c64xx/mach-crag6410.c between commit 774b51f8f826 ("ARM:
s3c64xx: convert to MULTI_IRQ_HANDLER") from the arm tree and commit
8504a3cb5cbc ("ARM: S3C64XX: Configure WM1250 EV1 GPIOs on Cragganmore")
from the s5p tree.
Just context changes. I fixed it up (see below) and can carry the fix as
necessary.
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
diff --cc arch/arm/mach-s3c64xx/mach-crag6410.c
index 988ac2e,b2381c1..0000000
--- a/arch/arm/mach-s3c64xx/mach-crag6410.c
+++ b/arch/arm/mach-s3c64xx/mach-crag6410.c
@@@ -37,7 -37,8 +37,9 @@@
#include <linux/mfd/wm831x/irq.h>
#include <linux/mfd/wm831x/gpio.h>
+ #include <sound/wm1250-ev1.h>
+
+#include <asm/hardware/vic.h>
#include <asm/mach/arch.h>
#include <asm/mach-types.h>
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* Re: Please add my tree to linux-next
From: Stephen Rothwell @ 2011-12-04 23:09 UTC (permalink / raw)
To: Cong Wang; +Cc: Andrew Morton, linux-next, LKML
In-Reply-To: <4ED8529E.5070608@redhat.com>
[-- Attachment #1: Type: text/plain, Size: 1968 bytes --]
Hi,
On Fri, 02 Dec 2011 12:22:54 +0800 Cong Wang <amwang@redhat.com> wrote:
>
> As Andrew Morton suggested, please add my tree which contains all
> of my patches for kmap_atomic() [1] to linux-next. Some of the
> individual patches already got ACK from subsystem maintainers.
> The tree is hosted on github:
>
> git://github.com/congwang/linux.git #kmap_atomic
I have added this tree to linux-next today.
Thanks for adding your subsystem tree as a participant of linux-next. As
you may know, this is not a judgment of your code. The purpose of
linux-next is for integration testing and to lower the impact of
conflicts between subsystems in the next merge window.
You will need to ensure that the patches/commits in your tree/series have
been:
* submitted under GPL v2 (or later) and include the Contributor's
Signed-off-by,
* posted to the relevant mailing list,
* reviewed by you (or another maintainer of your subsystem tree),
* successfully unit tested, and
* destined for the current or next Linux merge window.
Basically, this should be just what you would send to Linus (or ask him
to fetch). It is allowed to be rebased if you deem it necessary.
--
Cheers,
Stephen Rothwell
sfr@canb.auug.org.au
Legal Stuff:
By participating in linux-next, your subsystem tree contributions are
public and will be included in the linux-next trees. You may be sent
e-mail messages indicating errors or other issues when the
patches/commits from your subsystem tree are merged and tested in
linux-next. These messages may also be cross-posted to the linux-next
mailing list, the linux-kernel mailing list, etc. The linux-next tree
project and IBM (my employer) make no warranties regarding the linux-next
project, the testing procedures, the results, the e-mails, etc. If you
don't agree to these ground rules, let me know and I'll remove your tree
from participation in linux-next.
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* Re: [PATCH] ata: Don't use NO_IRQ in pata_of_platform driver
From: Geert Uytterhoeven @ 2011-12-03 18:56 UTC (permalink / raw)
To: Alan Cox
Cc: Dave Martin, Anton Vorontsov, Stephen Rothwell, Andrew Morton,
devicetree-discuss, LKML, linux-ide, Randy Dunlap, linux-next,
Ingo Molnar, Linus Torvalds, Jeff Garzik, linux-arch
In-Reply-To: <20111202232243.6af6f1e2@lxorguk.ukuu.org.uk>
On Sat, Dec 3, 2011 at 00:22, Alan Cox <alan@lxorguk.ukuu.org.uk> wrote:
>> This is now broken on ARM where, for good or bad, NO_IRQ currently is
>> used and is -1.
>
> Good.
>
> ARM developers have been told to change this for several years. The nice
> approach hasn't worked, the patient approach hasn't worked so now finally
> ARM is going to be dragged kicking and screaming into doing the work
> everyone else did several years ago.
>
> I have so little sympathy over this that you'll need a quantum physicist
> to measure it.
>
>> Half-removing NO_IRQ is going to be problematic, though...
>> I really don't care whether the "no irq" value is 0 or -1, but it is
>> abundantly clear that choosing different values to mean the same thing
>> on opposite sides of an interface does not work.
>
> You've had years to fix it. If I were you I'd delete NO_IRQ from your
> tree, type make and get it done. It's not even a big job to clean it out.
>
> At that point various other drivers will also start working properly on
> ARM because they use 0 for polled mode.
Not just ARM:
arch/arm/include/asm/irq.h:#ifndef
NO_IRQarch/arm/include/asm/irq.h:#define NO_IRQ ((unsigned
int)(-1))arch/microblaze/include/asm/irq.h:#define NO_IRQ
(-1)arch/mn10300/include/asm/irq.h:#define NO_IRQ
INT_MAXarch/openrisc/include/asm/irq.h:#define NO_IRQ
(-1)arch/parisc/include/asm/irq.h:#define NO_IRQ
(-1)arch/powerpc/include/asm/irq.h:#define NO_IRQ
(0)arch/powerpc/include/asm/machdep.h: /* Return an irq, or NO_IRQ
to indicate arch/powerpc/include/asm/parport.h: if (virq
== NO_IRQ)arch/powerpc/include/asm/qe_ic.h: if (cascade_irq !=
NO_IRQ)arch/powerpc/include/asm/qe_ic.h: if (cascade_irq !=
NO_IRQ)arch/powerpc/include/asm/qe_ic.h: if (cascade_irq !=
NO_IRQ)arch/powerpc/include/asm/qe_ic.h: if (cascade_irq !=
NO_IRQ)arch/powerpc/include/asm/qe_ic.h: if (cascade_irq ==
NO_IRQ)arch/powerpc/include/asm/qe_ic.h: if (cascade_irq !=
NO_IRQ)arch/sparc/include/asm/irq_32.h:#define NO_IRQ
0xffffffffarch/sparc/include/asm/irq_64.h:#define NO_IRQ
0xffffffff
And it's not just definitions of NO_IRQ. These are easy to find.
On some archs (notably ARM) zero still seems to be a valid IRQ number,
e.g. IRQ_LOCOMO_KEY and IRQ_DMA0C0.
Also, UML has TIMER_IRQ being zero.
A quick grep found many more IRQ definitions being zero, but
surprisingly the few
I looked into were definitions without users (e.g. SE7343_FPGA_IRQ_MRSHPC0,
ROUTE_VIA_IRQ0 aka IRQ_MB93493_VDC_ROUTE).
Perhaps request_irq() should just reject zero to find all of them?
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
^ permalink raw reply
* Re: [PATCH] ata: Don't use NO_IRQ in pata_of_platform driver
From: Alan Cox @ 2011-12-02 23:22 UTC (permalink / raw)
To: Dave Martin
Cc: Anton Vorontsov, Stephen Rothwell, Andrew Morton,
devicetree-discuss, LKML, linux-ide, Randy Dunlap, linux-next,
Ingo Molnar, Linus Torvalds, Jeff Garzik
In-Reply-To: <20111202191917.GB3037@localhost.localdomain>
> This is now broken on ARM where, for good or bad, NO_IRQ currently is
> used and is -1.
Good.
ARM developers have been told to change this for several years. The nice
approach hasn't worked, the patient approach hasn't worked so now finally
ARM is going to be dragged kicking and screaming into doing the work
everyone else did several years ago.
I have so little sympathy over this that you'll need a quantum physicist
to measure it.
> Half-removing NO_IRQ is going to be problematic, though...
> I really don't care whether the "no irq" value is 0 or -1, but it is
> abundantly clear that choosing different values to mean the same thing
> on opposite sides of an interface does not work.
You've had years to fix it. If I were you I'd delete NO_IRQ from your
tree, type make and get it done. It's not even a big job to clean it out.
At that point various other drivers will also start working properly on
ARM because they use 0 for polled mode.
Alan
^ permalink raw reply
* [PATCH v2] of/irq: Get rid of NO_IRQ usage
From: Anton Vorontsov @ 2011-12-02 23:18 UTC (permalink / raw)
To: Linus Torvalds
Cc: Dave Martin, Alan Cox, Stephen Rothwell, Andrew Morton,
devicetree-discuss, LKML, linux-ide, Randy Dunlap, linux-next,
Ingo Molnar, Jeff Garzik, Benjamin Herrenschmidt
In-Reply-To: <CA+55aFzUy2C26GbTqapEgh0wh5Z1wuH_-Kdm7yCdp6cnu46afQ@mail.gmail.com>
PPC32/64 defines NO_IRQ to zero, so no problems expected.
ARM defines NO_IRQ to -1, but OF code relies on IRQ domains support,
which returns correct ('0') value in 'no irq' case. So everything
should be fine.
Other arches might break if some of their OF drivers rely on NO_IRQ
being not 0. If so, the drivers must be fixed, finally.
Signed-off-by: Anton Vorontsov <anton.vorontsov@linaro.org>
---
On Fri, Dec 02, 2011 at 02:40:37PM -0800, Linus Torvalds wrote:
> On Fri, Dec 2, 2011 at 2:34 PM, Anton Vorontsov
> <anton.vorontsov@linaro.org> wrote:
> >
> > One option is to test this patch on a board that is now broken:
> >
> > http://lkml.org/lkml/2011/11/10/290
>
> That seems broken.
>
> Spot the trouble:
>
> + ret = irq_create_of_mapping(oirq.controller, oirq.specifier,
> + oirq.size);
> +no_irq:
> +#ifdef NO_IRQ
> +#if NO_IRQ != 0
> + if (ret == NO_IRQ)
> + pr_warn("Hit NO_IRQ case for your arch. Drivers might expect "
> + "NO_IRQ, but we return 0. If anything breaks, driver "
> + "have to be fixed.\n");
> +#endif
> +#endif
> + return ret;
>
> It claims "we return 0", but then doesn't return zero.. Hmm?
>
> Linus
Hehe, I never claimed that I tested the patch on any OF platform. :-D
But, the patch would work for ARM anyway. irq_create_of_mapping()
always return 0 in case of 'no irq'. So, in ARM case the problem was
in the hunk that you snipped:
if (of_irq_map_one(dev, index, &oirq))
- return NO_IRQ;
-
For the arches that don't use IRQ domains and have NO_IRQ != 0 (e.g.
microblaze), you spot the real trouble indeed. Thanks.
Here is the amended fix. I hope it works, and somebody could test it.
p.s.
Initially I proposed a very simple band-aid fix for 3.2, and wanted
the real fix postponed for 3.3 (since nowadays I don't have any OF
machines to test, but this will change soon).
I hope it's a good excuse. ;-)
drivers/of/irq.c | 32 ++++++++++++++++++++------------
1 files changed, 20 insertions(+), 12 deletions(-)
diff --git a/drivers/of/irq.c b/drivers/of/irq.c
index 791270b..97ee3bd 100644
--- a/drivers/of/irq.c
+++ b/drivers/of/irq.c
@@ -26,11 +26,6 @@
#include <linux/string.h>
#include <linux/slab.h>
-/* For archs that don't support NO_IRQ (such as x86), provide a dummy value */
-#ifndef NO_IRQ
-#define NO_IRQ 0
-#endif
-
/**
* irq_of_parse_and_map - Parse and map an interrupt into linux virq space
* @device: Device node of the device whose interrupt is to be mapped
@@ -42,12 +37,25 @@
unsigned int irq_of_parse_and_map(struct device_node *dev, int index)
{
struct of_irq oirq;
+ int ret = 0;
if (of_irq_map_one(dev, index, &oirq))
- return NO_IRQ;
-
- return irq_create_of_mapping(oirq.controller, oirq.specifier,
- oirq.size);
+ goto no_irq;
+
+ ret = irq_create_of_mapping(oirq.controller, oirq.specifier,
+ oirq.size);
+no_irq:
+#ifdef NO_IRQ
+#if NO_IRQ != 0
+ if (ret == NO_IRQ) {
+ pr_warn("Hit NO_IRQ case for your arch. Drivers might expect "
+ "NO_IRQ, but we return 0. If anything breaks, driver "
+ "have to be fixed.\n");
+ ret = 0;
+ }
+#endif
+#endif
+ return ret;
}
EXPORT_SYMBOL_GPL(irq_of_parse_and_map);
@@ -345,7 +353,7 @@ int of_irq_to_resource(struct device_node *dev, int index, struct resource *r)
/* Only dereference the resource if both the
* resource and the irq are valid. */
- if (r && irq != NO_IRQ) {
+ if (r && irq) {
r->start = r->end = irq;
r->flags = IORESOURCE_IRQ;
r->name = dev->full_name;
@@ -363,7 +371,7 @@ int of_irq_count(struct device_node *dev)
{
int nr = 0;
- while (of_irq_to_resource(dev, nr, NULL) != NO_IRQ)
+ while (of_irq_to_resource(dev, nr, NULL))
nr++;
return nr;
@@ -383,7 +391,7 @@ int of_irq_to_resource_table(struct device_node *dev, struct resource *res,
int i;
for (i = 0; i < nr_irqs; i++, res++)
- if (of_irq_to_resource(dev, i, res) == NO_IRQ)
+ if (!of_irq_to_resource(dev, i, res))
break;
return i;
--
1.7.5.3
^ permalink raw reply related
* Re: [PATCH] ata: Don't use NO_IRQ in pata_of_platform driver
From: Benjamin Herrenschmidt @ 2011-12-02 23:12 UTC (permalink / raw)
To: Linus Torvalds
Cc: Dave Martin, Anton Vorontsov, Alan Cox, Stephen Rothwell,
Andrew Morton, devicetree-discuss, LKML, linux-ide, Randy Dunlap,
linux-next, Ingo Molnar, Jeff Garzik, Pawel Moll,
linux-arm-kernel
In-Reply-To: <CA+55aFwekNWz+V4440f=2iu_BfOxSg0NjVogv4cZZDFbJBNoAQ@mail.gmail.com>
On Fri, 2011-12-02 at 11:28 -0800, Linus Torvalds wrote:
> On Fri, Dec 2, 2011 at 11:26 AM, Dave Martin <dave.martin@linaro.org> wrote:
> >
> > This is now broken on ARM where, for good or bad, NO_IRQ currently is
> > used and is -1.
> >
> > How do we resolve it? If we are ready to eliminate NO_IRQ from
> > drivers/of/irq.c (or indeed, all code that uses it) and just use 0 for
> > that case, we should surely just do it... but I'm not confident I can
> > judge on that.
>
> Just stop using NO_IRQ. First in drivers/of/irq.c, then in any drivers
> as you notice breakage.
Agreed. In fact the whole hack in drivers/of/irq.c was to accomodate ARM
which still uses -1, powerpc changed to 0 a long time ago.
Now that we have a generic remapper between HW and "linux" IRQ numbers,
there is no reason to stick to -1 even on ARM.
> Don't *change* NO_IRQ to zero (that whole #define is broken - leave it
> around as a marker of brokenness), just start removing it from all the
> ARM drivers that use the OF infrastructure. Which is presumably not
> all that many yet.
>
> So whenever you find breakage, the fix now is to just remove NO_IRQ
> tests, and replace them with "!irq".
Cheers,
Ben.
^ permalink raw reply
* Re: [PATCH] ata: Don't use NO_IRQ in pata_of_platform driver
From: Anton Vorontsov @ 2011-12-02 22:46 UTC (permalink / raw)
To: Dave Martin
Cc: Alan Cox, Stephen Rothwell, Andrew Morton, devicetree-discuss,
LKML, linux-ide, Randy Dunlap, linux-next, Ingo Molnar,
Linus Torvalds, Jeff Garzik, Pawel Moll
In-Reply-To: <20111202224018.GB7780@oksana.dev.rtsoft.ru>
On Sat, Dec 03, 2011 at 02:40:18AM +0400, Anton Vorontsov wrote:
> On Sat, Dec 03, 2011 at 02:34:02AM +0400, Anton Vorontsov wrote:
> > On Fri, Dec 02, 2011 at 07:19:17PM +0000, Dave Martin wrote:
> > [...]
> > > > > > Drivers should not use NO_IRQ; moreover, some architectures don't
> > > > > > have it nowadays. '0' is the 'no irq' case.
> > > > > >
> > > > > > Signed-off-by: Anton Vorontsov <cbouatmailru@gmail.com>
> > > > >
> > > > > Acked-by: Alan Cox <alan@linux.intel.com>
> > > >
> > > > In case if we don't want a "band-aid fix" for 3.2, here is the patch
> > > > that just does the proper fix (w/ a risk to break minor architectures).
> > >
> > > This is now broken on ARM where, for good or bad, NO_IRQ currently is
> > > used and is -1.
> > >
> > > How do we resolve it?
> >
> > One option is to test this patch on a board that is now broken:
> >
> > http://lkml.org/lkml/2011/11/10/290
>
> Oh, actually, reading my own patch:
>
> "ARM defines NO_IRQ to -1, but OF code relies on IRQ domains support,
> which returns correct ('0') value in 'no irq' case. So everything
> should be fine."
Ahh. Forget it, the remark was for the of/irq.c fix itself.
So, we need the http://lkml.org/lkml/2011/11/10/290 fix. Otherwise
the driver is indeed broken for ARM. Would be great if somebody could
test it.
Thanks,
--
Anton Vorontsov
Email: cbouatmailru@gmail.com
^ permalink raw reply
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox