summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2012-05-19sh: Move sh4a dma header from cpu-sh4 to cpu-sh4a.Paul Mundt
cpu-sh4a headers take priority over cpu-sh4 ones by virtue of the build system, there's no need to try and mingle sh4a stuff in cpu-sh4. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh64: Fix up vmalloc fault range check.Paul Mundt
With the previous attempt reverted this switches to conditionalizing the end address. Nominally VMALLOC_END, but extended for P3_ADDR_MAX in the store queue case. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18Revert "sh: Ensure fixmap and store queue space can co-exist."Paul Mundt
This reverts commit 20e7c297efeca0861adcca073a0d283da659834b. With store queues enabled the area above P4SEG has special properties from the MMU's point of view, which was causing fixmap failure. We'll have to do something else to satisfy the vmalloc range check. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18serial: sh-sci: Fix for port types without BRI interrupts.Paul Mundt
In doing the evt2irq() + muxed vector conversion for various port types it became apparent that some of the legacy port types will presently error out due to the irq requesting logic attempting to acquire the non-existent BRI IRQ. This adds some sanity checks to the request/free path to ensure that non-existence of a source in itself is not an error. This should restore functionality for legacy PORT_SCI ports. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18Merge branch 'sh/evt2irq-migration' into sh-latestPaul Mundt
Conflicts: arch/sh/kernel/cpu/sh3/setup-sh770x.c arch/sh/kernel/cpu/sh3/setup-sh7710.c arch/sh/kernel/cpu/sh3/setup-sh7720.c arch/sh/kernel/cpu/sh4/setup-sh7750.c arch/sh/kernel/cpu/sh4a/setup-sh7343.c arch/sh/kernel/cpu/sh4a/setup-sh7366.c arch/sh/kernel/cpu/sh4a/setup-sh7722.c arch/sh/kernel/cpu/sh4a/setup-sh7723.c arch/sh/kernel/cpu/sh4a/setup-sh7724.c arch/sh/kernel/cpu/sh4a/setup-sh7757.c arch/sh/kernel/cpu/sh4a/setup-sh7763.c arch/sh/kernel/cpu/sh4a/setup-sh7770.c arch/sh/kernel/cpu/sh4a/setup-sh7785.c arch/sh/kernel/cpu/sh4a/setup-sh7786.c Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: legacy PCI evt2irq migration.Paul Mundt
This converts over the legacy PCI IRQs to evt2irq() backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: cpu dma evt2irq migration.Paul Mundt
This migrates the cpu-family relative DMA IRQ definitions over to evt2irq() backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: sh7763rdp evt2irq migration.Paul Mundt
Migrate sh7763rdp to evt2irq backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: sdk7780 evt2irq migration.Paul Mundt
Migrate sdk7780 to evt2irq backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: migor evt2irq migration.Paul Mundt
Migrate migor to evt2irq backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: landisk evt2irq migration.Paul Mundt
Migrate landisk to evt2irq backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: kfr2r09 evt2irq migration.Paul Mundt
Migrate kfr2r09 to evt2irq backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: ecovec24 evt2irq migration.Paul Mundt
Migrate ecovec24 to evt2irq backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: ap325rxa evt2irq migration.Paul Mundt
Migrate ap325rxa to evt2irq backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: urquell evt2irq migration.Paul Mundt
Migrate urquell to evt2irq backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: sh7785lcr evt2irq migration.Paul Mundt
Migrate sh7785lcr to evt2irq backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: hp6xx evt2irq migration.Paul Mundt
Migrate hp6xx to evt2irq backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: mach-se evt2irq migration.Paul Mundt
Migrate Solution Engine boards to evt2irq backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: sh7757lcr evt2irq migration.Paul Mundt
Migrate sh7757lcr to evt2irq() backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: magicpanelr2 evt2irq migration.Paul Mundt
Migrate magicpanelr2 to evt2irq() backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: espt evt2irq migration.Paul Mundt
Migrate espt to evt2irq() backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: edosk7760 evt2irq migration.Paul Mundt
Migrate edosk7760 to evt2irq() backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: edosk7705 evt2irq migration.Paul Mundt
Migrate edosk7705 to evt2irq() backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: sh7720 evt2irq migration.Paul Mundt
Migrate SH7720 to evt2irq() backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: sh7710/sh7712 evt2irq migration.Paul Mundt
Migrate SH7710/SH7712 to evt2irq() backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: sh7706/sh7707/sh7709/sh7709 evt2irq migration.Paul Mundt
Migrate SH770x to evt2irq() backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: sh7705 evt2irq migration.Paul Mundt
Migrate SH7705 to evt2irq() backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: sh7760 evt2irq migration.Paul Mundt
Migrate SH7760 to evt2irq() backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: sh7750 evt2irq migration.Paul Mundt
Migrate SH7750 to evt2irq() backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: sh4-202 evt2irq migration.Paul Mundt
Migrate SH4-202 to evt2irq() backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: sh-x3 evt2irq migration.Paul Mundt
Migrate SH-X3 to evt2irq() backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: sh7785 evt2irq migration.Paul Mundt
Migrate SH7785 to evt2irq() backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: sh7780 evt2irq migration.Paul Mundt
Migrate SH7780 to evt2irq() backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: sh7770 evt2irq migration.Paul Mundt
Migrate SH7770 to evt2irq() backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: sh7763 evt2irq migration.Paul Mundt
Migrate SH7763 to evt2irq() backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: sh7757 evt2irq migration.Paul Mundt
Migrate SH7757 to evt2irq() backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: sh7724 evt2irq migration.Paul Mundt
Migrate SH7724 to evt2irq() backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: sh7723 evt2irq migration.Paul Mundt
Migrate SH7723 to evt2irq() backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: sh7722 evt2irq migration.Paul Mundt
Migrate SH7722 to evt2irq() backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: sh7366 evt2irq migration.Paul Mundt
Migrate SH7366 to evt2irq() backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: sh7343 evt2irq migration.Paul Mundt
Migrate SH7343 to evt2irq() backed hwirq lookups. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-18sh: sh7786 evt2irq migration.Paul Mundt
This migrates SH7786 to evt2irq() backed hwirq lookup rather than using an open-coded calculation. This will make it possible to reposition the vector base at a later point in time. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2012-05-17Merge branch 'fixes' of git://git.linaro.org/people/rmk/linux-armLinus Torvalds
Pull ARM fixes from Russell King: "Small set of fixes again." * 'fixes' of git://git.linaro.org/people/rmk/linux-arm: ARM: 7419/1: vfp: fix VFP flushing regression on sigreturn path ARM: 7418/1: LPAE: fix access flag setup in mem_type_table ARM: prevent VM_GROWSDOWN mmaps extending below FIRST_USER_ADDRESS ARM: 7417/1: vfp: ensure preemption is disabled when enabling VFP access
2012-05-17Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/netLinus Torvalds
Pull two networking fixes from David S. Miller: 1) Thanks to Willy Tarreau and Eric Dumazet, we've unlocked a bug that's been present in do_tcp_sendpages() since that function was written in 2002. When we block to wait for memory we have to unconditionally try and push out pending TCP data, otherwise we can block for an unreasonably long amount of time. 2) Fix deadlock in e1000, fixes kernel bugzilla 43132 From Tushar Dave. * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: e1000: Prevent reset task killing itself. tcp: do_tcp_sendpages() must try to push data out on oom conditions
2012-05-17ACPI / PCI / PM: Fix device PM regression related to D3hot/D3coldRafael J. Wysocki
Commit 1cc0c998fdf2 ("ACPI: Fix D3hot v D3cold confusion") introduced a bug in __acpi_bus_set_power() and changed the behavior of acpi_pci_set_power_state() in such a way that it generally doesn't work as expected if PCI_D3hot is passed to it as the second argument. First off, if ACPI_STATE_D3 (equal to ACPI_STATE_D3_COLD) is passed to __acpi_bus_set_power() and the explicit_set flag is set for the D3cold state, the function will try to execute AML method called "_PS4", which doesn't exist. Fix this by adding a check to ensure that the name of the AML method to execute for transitions to ACPI_STATE_D3_COLD is correct in __acpi_bus_set_power(). Also make sure that the explicit_set flag for ACPI_STATE_D3_COLD will be set if _PS3 is present and modify acpi_power_transition() to avoid accessing power resources for ACPI_STATE_D3_COLD, because they don't exist. Second, if PCI_D3hot is passed to acpi_pci_set_power_state() as the target state, the function will request a transition to ACPI_STATE_D3_HOT instead of ACPI_STATE_D3. However, ACPI_STATE_D3_HOT is now only marked as supported if the _PR3 AML method is defined for the given device, which is rare. This causes problems to happen on systems where devices were successfully put into ACPI D3 by pci_set_power_state(PCI_D3hot) which doesn't work now. In particular, some unused graphics adapters are not turned off as a result. To fix this issue restore the old behavior of acpi_pci_set_power_state(), which is to request a transition to ACPI_STATE_D3 (equal to ACPI_STATE_D3_COLD) if either PCI_D3hot or PCI_D3cold is passed to it as the argument. This approach is not ideal, because generally power should not be removed from devices if PCI_D3hot is the target power state, but since this behavior is relied on, we have no choice but to restore it at the moment and spend more time on designing a better solution in the future. References: https://bugzilla.kernel.org/show_bug.cgi?id=43228 Reported-by: rocko <rockorequin@hotmail.com> Reported-by: Cristian Rodríguez <crrodriguez@opensuse.org> Reported-and-tested-by: Peter <lekensteyn@gmail.com> Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2012-05-17e1000: Prevent reset task killing itself.Tushar Dave
Killing reset task while adapter is resetting causes deadlock. Only kill reset task if adapter is not resetting. Ref bug #43132 on bugzilla.kernel.org CC: stable@vger.kernel.org Signed-off-by: Tushar Dave <tushar.n.dave@intel.com> Tested-by: Aaron Brown <aaron.f.brown@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2012-05-17tcp: do_tcp_sendpages() must try to push data out on oom conditionsWilly Tarreau
Since recent changes on TCP splicing (starting with commits 2f533844 "tcp: allow splice() to build full TSO packets" and 35f9c09f "tcp: tcp_sendpages() should call tcp_push() once"), I started seeing massive stalls when forwarding traffic between two sockets using splice() when pipe buffers were larger than socket buffers. Latest changes (net: netdev_alloc_skb() use build_skb()) made the problem even more apparent. The reason seems to be that if do_tcp_sendpages() fails on out of memory condition without being able to send at least one byte, tcp_push() is not called and the buffers cannot be flushed. After applying the attached patch, I cannot reproduce the stalls at all and the data rate it perfectly stable and steady under any condition which previously caused the problem to be permanent. The issue seems to have been there since before the kernel migrated to git, which makes me think that the stalls I occasionally experienced with tux during stress-tests years ago were probably related to the same issue. This issue was first encountered on 3.0.31 and 3.2.17, so please backport to -stable. Signed-off-by: Willy Tarreau <w@1wt.eu> Acked-by: Eric Dumazet <edumazet@google.com> Cc: <stable@vger.kernel.org>
2012-05-17Merge branch '3.4-urgent' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending Pull two more target-core updates from Nicholas Bellinger: "The first patch addresses a SPC-2 reservations RELEASE bug in a special (iscsi specific) multi-ISID setup case that was allowing the same initiator to be able to incorrect release it's own reservation on a different SCSI path with enforce_pr_isid=1 operation. This bug was caught by Bernhard Kohl. The second patch is to address a bug with FILEIO backends where the incorrect number of blocks for READ_CAPACITY was being reported after an underlying device-mapper block_device size change. This patch uses now i_size_read() in fd_get_blocks() for FILEIO backends with an underlying block_device, instead of trying to determine this value at setup time during fd_create_virtdevice(). (hch CC'ed) Both are CC'ed to stable." * '3.4-urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending: target: Fix bug in handling of FILEIO + block_device resize ops target: Fix SPC-2 RELEASE bug for multi-session iSCSI client setups
2012-05-17target: Fix bug in handling of FILEIO + block_device resize opsNicholas Bellinger
This patch fixes a bug in the handling of FILEIO w/ underlying block_device resize operations where the original fd_dev->fd_dev_size was incorrectly being used in fd_get_blocks() for READ_CAPACITY response payloads. This patch avoids using fd_dev->fd_dev_size for FILEIO devices with an underlying block_device, and instead changes fd_get_blocks() to get the sector count directly from i_size_read() as recommended by hch. Reported-by: Christoph Hellwig <hch@lst.de> Cc: <stable@vger.kernel.org> Signed-off-by: Nicholas Bellinger <nab@linux-iscsi.org>
2012-05-17Merge branch 'fixes' of git://git.infradead.org/users/vkoul/slave-dmaLinus Torvalds
Pull slave-dmaengine fixes fromVinod Koul: "fixes of cylic dma usages in slave dma drivers" * 'fixes' of git://git.infradead.org/users/vkoul/slave-dma: dmaengine: fix cyclic dma usage dmaengine: pl330: dont complete descriptor for cyclic dma