summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* xfs: convert remaining direct references to m_peragDave Chinner2010-01-154-15/+42
| | | | | | | | | | Convert the remaining direct lookups of the per ag structures to use get/put accesses. Ensure that the loops across AGs and prior users of the interface balance gets and puts correctly. Signed-off-by: Dave Chinner <david@fromorbit.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Alex Elder <aelder@sgi.com>
* xfs: Convert filestreams code to use per-ag get/put routinesDave Chinner2010-01-152-10/+36
| | | | | | | | Use xfs_perag_get() and xfs_perag_put() in the filestreams code. Signed-off-by: Dave Chinner <david@fromorbit.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Alex Elder <aelder@sgi.com>
* xfs: Don't directly reference m_perag in allocation codeDave Chinner2010-01-152-38/+53
| | | | | | | | | | | | Start abstracting the perag references so that the indexing of the structures is not directly coded into all the places that uses the perag structures. This will allow us to separate the use of the perag structure and the way it is indexed and hence avoid the known deadlocks related to growing a busy filesystem. Signed-off-by: Dave Chinner <david@fromorbit.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Alex Elder <aelder@sgi.com>
* xfs: rename xfs_get_peragDave Chinner2010-01-154-21/+27
| | | | | | | | | | | | xfs_get_perag is really getting the perag that an inode belongs to based on it's inode number. Convert the use of this function to just get the perag from a provided ag number. Use this new function to obtain the per-ag structure when traversing the per AG inode trees for sync and reclaim. Signed-off-by: Dave Chinner <david@fromorbit.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Alex Elder <aelder@sgi.com>
* xfs: Don't wake xfsbufd when idleDave Chinner2010-01-151-5/+15
| | | | | | | | | | | | The xfsbufd wakes every xfsbufd_centisecs (once per second by default) for each filesystem even when the filesystem is idle. If the xfsbufd has nothing to do, put it into a long term sleep and only wake it up when there is work pending (i.e. dirty buffers to flush soon). This will make laptop power misers happy. Signed-off-by: Dave Chinner <david@fromorbit.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Alex Elder <aelder@sgi.com>
* xfs: Don't wake the aild once per secondDave Chinner2010-01-152-12/+14
| | | | | | | | | | | | Now that the AIL push algorithm is traversal safe, we don't need a watchdog function in the xfsaild to catch pushes that fail to make progress. Remove the watchdog timeout and make pushes purely driven by demand. This will remove the once-per-second wakeup that is seen when the filesystem is idle and make laptop power misers happy. Signed-off-by: Dave Chinner <david@fromorbit.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Alex Elder <aelder@sgi.com>
* xfs: Use list_heads for log recovery item listsDave Chinner2010-01-152-147/+81
| | | | | | | | Remove the roll-your-own linked list operations. Signed-off-by: Dave Chinner <david@fromorbit.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Alex Elder <aelder@sgi.com>
* xfs: make several more functions staticEric Sandeen2010-01-1510-17/+7
| | | | | | | | Just minor housekeeping, a lot more functions can be trivially made static; others could if we reordered things a bit... Signed-off-by: Eric Sandeen <sandeen@sandeen.net> Signed-off-by: Alex Elder <aelder@sgi.com>
* xfs: clean up inconsistent variable naming in xfs_swap_extentDave Chinner2010-01-152-19/+22
| | | | | | | | | | | | | | The swap extent ioctl passes in a target inode and a temporary inode which are clearly named in the ioctl structure. The code then assigns temp to target and vice versa, making it extremely difficult to work out which inode is which later in the code. Make this consistent throughout the code. Also make xfs_swap_extent static as there are no external users of the function. Signed-off-by: Dave Chinner <david@fromorbit.com> Signed-off-by: Alex Elder <aelder@sgi.com>
* xfs: add tracing to xfs_swap_extentsDave Chinner2010-01-152-0/+58
| | | | | | | | | | To be able to diagnose whether the swap extents function is detecting compatible inode data fork configurations for swapping extents, add tracing points to the code to allow us to see the format of the inode forks before and after the swap. Signed-off-by: Dave Chinner <david@fromorbit.com> Signed-off-by: Alex Elder <aelder@sgi.com>
* xfs: xfs_swap_extents needs to handle dynamic fork offsetsDave Chinner2010-01-151-16/+90
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When swapping extents, we can corrupt inodes by swapping data forks that are in incompatible formats. This is caused by the two indoes having different fork offsets due to the presence of an attribute fork on an attr2 filesystem. xfs_fsr tries to be smart about setting the fork offset, but the trick it plays only works on attr1 (old fixed format attribute fork) filesystems. Changing the way xfs_fsr sets up the attribute fork will prevent this situation from ever occurring, so in the kernel code we can get by with a preventative fix - check that the data fork in the defragmented inode is in a format valid for the inode it is being swapped into. This will lead to files that will silently and potentially repeatedly fail defragmentation, so issue a warning to the log when this particular failure occurs to let us know that xfs_fsr needs updating/fixing. To help identify how to improve xfs_fsr to avoid this issue, add trace points for the inodes being swapped so that we can determine why the swap was rejected and to confirm that the code is making the right decisions and modifications when swapping forks. A further complication is even when the swap is allowed to proceed when the fork offset is different between the two inodes then value for the maximum number of extents the data fork can hold can be wrong. Make sure these are also set correctly after the swap occurs. Signed-off-by: Dave Chinner <david@fromorbit.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Alex Elder <aelder@sgi.com>
* xfs: fix missing error check in xfs_rtfree_rangeDave Chinner2010-01-151-0/+2
| | | | | | | | | | | | | | | | When xfs_rtfind_forw() returns an error, the block is returned uninitialised. xfs_rtfree_range() is not checking the error return, so could be using an uninitialised block number for modifying bitmap summary info. The problem was found by gcc when compiling the *userspace* libxfs code - it is an copy of the kernel code with the exact same bug. gcc gives an uninitialised variable warning on the userspace code but not on the kernel code. You gotta love the consistency (Mmmm, slightly chewy today!). Signed-off-by: Dave Chinner <david@fromorbit.com> Signed-off-by: Alex Elder <aelder@sgi.com>
* xfs: fix stale inode flush avoidanceDave Chinner2010-01-151-6/+15
| | | | | | | | | | | When reclaiming stale inodes, we need to guarantee that inodes are unpinned before returning with a "clean" status. If we don't we can reclaim inodes that are pinned, leading to use after free in the transaction subsystem as transactions complete. Signed-off-by: Dave Chinner <david@fromorbit.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Alex Elder <aelder@sgi.com>
* xfs: Remove inode iolock held check during allocationDave Chinner2010-01-151-1/+0
| | | | | | | | | | | | | lockdep complains about a the lock not being initialised as we do an ASSERT based check that the lock is not held before we initialise it to catch inodes freed with the lock held. lockdep does this check for us in the lock initialisation code, so remove the ASSERT to stop the lockdep warning. Signed-off-by: Dave Chinner <david@fromorbit.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Alex Elder <aelder@sgi.com>
* xfs: reclaim all inodes by background tree walksDave Chinner2010-01-151-8/+6
| | | | | | | | | | | | | | | | | | | | | | | | We cannot do direct inode reclaim without taking the flush lock to ensure that we do not reclaim an inode under IO. We check the inode is clean before doing direct reclaim, but this is not good enough because the inode flush code marks the inode clean once it has copied the in-core dirty state to the backing buffer. It is the flush lock that determines whether the inode is still under IO, even though it is marked clean, and the inode is still required at IO completion so we can't reclaim it even though it is clean in core. Hence the requirement that we need to take the flush lock even on clean inodes because this guarantees that the inode writeback IO has completed and it is safe to reclaim the inode. With delayed write inode flushing, we coul dend up waiting a long time on the flush lock even for a clean inode. The background reclaim already handles this efficiently, so avoid all the problems by killing the direct reclaim path altogether. Signed-off-by: Dave Chinner <david@fromorbit.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Alex Elder <aelder@sgi.com>
* xfs: Avoid inodes in reclaim when flushing from inode cacheDave Chinner2010-01-151-13/+18
| | | | | | | | | | | The reclaim code will handle flushing of dirty inodes before reclaim occurs, so avoid them when determining whether an inode is a candidate for flushing to disk when walking the radix trees. This is based on a test patch from Christoph Hellwig. Signed-off-by: Dave Chinner <david@fromorbit.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Alex Elder <aelder@sgi.com>
* xfs: reclaim inodes under a write lockDave Chinner2010-01-153-87/+71
| | | | | | | | | | Make the inode tree reclaim walk exclusive to avoid races with concurrent sync walkers and lookups. This is a version of a patch posted by Christoph Hellwig that avoids all the code duplication. Signed-off-by: Dave Chinner <david@fromorbit.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Alex Elder <aelder@sgi.com>
* Linux 2.6.33-rc4v2.6.33-rc4Linus Torvalds2010-01-131-1/+1
|
* Merge git://git.infradead.org/battery-2.6Linus Torvalds2010-01-131-0/+2
|\ | | | | | | | | * git://git.infradead.org/battery-2.6: pmu_battery: Fix battery full reporting
| * pmu_battery: Fix battery full reportingThomas Champagne2009-12-181-0/+2
| | | | | | | | | | | | | | | | | | | | | | Prior to this patch, pmu_battery was unable to report battery full status. This patch fixes the issue by adding a proper handling code into pmu_bat_get_property(): if we're on AC and the battery isn't charging, then the battery is considered full. Signed-off-by: Thomas Champagne <lafeuil@gmail.com> Acked-By: David Woodhouse <David.Woodhouse@intel.com> Signed-off-by: Anton Vorontsov <cbouatmailru@gmail.com>
* | [SCSI] megaraid_sas: remove sysfs poll_mode_io world writeable permissionsBryn M. Reeves2010-01-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | /sys/bus/pci/drivers/megaraid_sas/poll_mode_io defaults to being world-writable, which seems bad (letting any user affect kernel driver behavior). This turns off group and user write permissions, so that on typical production systems only root can write to it. Signed-off-by: Bryn M. Reeves <bmr@redhat.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | Merge branch 'for-linus' of git://gitorious.org/linux-omap-dss2/linuxLinus Torvalds2010-01-1314-67/+309
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'for-linus' of git://gitorious.org/linux-omap-dss2/linux: OMAP: DSS2: OMAPFB: fix crash when panel driver was not loaded OMAP: DSS2: Reject scaling settings when they cannot be supported OMAP: DSS2: Make check-delay-loops consistent OMAP: DSS2: OMAPFB: fix omapfb_free_fbmem() video/omap: add __init/__exit macros to drivers/video/omap/lcd_htcherald.c OMAP: DSS2: Fix compile warning MAINTAINERS: Combine DSS2 and OMAPFB2 into one entry MAINTAINERS: change omapfb maintainer OMAP: OMAPFB: add dummy release function for omapdss OMAP: OMAPFB: fix clk_get for RFBI OMAP: DSS2: RFBI: convert to new kfifo API OMAP: DSS2: Fix crash when panel doesn't define enable_te() OMAP: DSS2: Collect interrupt statistics OMAP: DSS2: DSI: print debug DCS cmd in hex OMAP: DSS2: DSI: fix VC channels in send_short and send_null
| * | OMAP: DSS2: OMAPFB: fix crash when panel driver was not loadedTomi Valkeinen2010-01-121-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If the panel's probe had failed, omapfb would still go on, eventually crashing. A better fix would be to handle each display properly, and leaving just the failed display out. But that is a bigger change. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * | OMAP: DSS2: Reject scaling settings when they cannot be supportedVille Syrjälä2010-01-121-2/+5
| | | | | | | | | | | | | | | | | | | | | | | | If the scaling ratio is below 0.5 video output width can't be identical to the display width. Reject such settings. Signed-off-by: Ville Syrjälä <ville.syrjala@nokia.com> Acked-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * | OMAP: DSS2: Make check-delay-loops consistentTomi Valkeinen2010-01-112-10/+10
| | | | | | | | | | | | | | | | | | | | | Loops checking for certain condition were rather inconsistent. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com> Reported-by: Juha Leppanen <juha_motorsportcom@luukku.com>
| * | OMAP: DSS2: OMAPFB: fix omapfb_free_fbmem()Tomi Valkeinen2010-01-111-0/+1
| | | | | | | | | | | | | | | | | | | | | Fixes bug causing VRFB memory area to be released twice. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com> Reported-by: Eino-Ville Talvala <talvala@stanford.edu>
| * | video/omap: add __init/__exit macros to drivers/video/omap/lcd_htcherald.cPeter Huewe2010-01-111-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Trivial patch which adds the __init/__exit macros to the module_init/ module_exit functions of drivers/video/omap/lcd_htcherald.c Please have a look at the small patch and either pull it through your tree, or please ack' it so Jiri can pull it through the trivial tree. Patch against linux-next-tree, 22. Dez 08:38:18 CET 2009 but also present in linus tree. Signed-off-by: Peter Huewe <peterhuewe@gmx.de> Acked-by: Tony Lindgren <tony@atomide.com>
| * | OMAP: DSS2: Fix compile warningVaibhav Hiremath2010-01-111-0/+2
| | | | | | | | | | | | | | | Signed-off-by: Vaibhav Hiremath <hvaibhav@ti.com> Acked-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * | MAINTAINERS: Combine DSS2 and OMAPFB2 into one entryTomi Valkeinen2010-01-111-12/+3
| | | | | | | | | | | | | | | | | | There isn't really any reason to divide those. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * | MAINTAINERS: change omapfb maintainerTomi Valkeinen2010-01-111-1/+1
| | | | | | | | | | | | | | | Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com> Acked-by: Imre Deak <imre.deak@nokia.com>
| * | OMAP: OMAPFB: add dummy release function for omapdssTomi Valkeinen2010-01-111-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | This should fix: WARNING: at drivers/base/core.c:131 device_release+0x68/0x7c() Device 'omapdss' does not have a release() function, it is broken and must be fixed. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * | OMAP: OMAPFB: fix clk_get for RFBITomi Valkeinen2010-01-114-17/+25
| | | | | | | | | | | | | | | | | | | | | omapfb platform device was still used to get clocks inside rfbi.c Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com> Tested-by: Sergey Lapin <slapin@ossfans.org>
| * | OMAP: DSS2: RFBI: convert to new kfifo APITomi Valkeinen2010-01-111-15/+15
| | | | | | | | | | | | Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * | OMAP: DSS2: Fix crash when panel doesn't define enable_te()Tomi Valkeinen2010-01-081-5/+9
| | | | | | | | | | | | | | | | | | | | | DSI driver didn't check if the panel driver actually implements enable_te(). Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * | OMAP: DSS2: Collect interrupt statisticsTomi Valkeinen2010-01-085-0/+221
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Collect interrupt statistics, printable via debugfs: debugfs/omapdss/dispc_irq debugfs/omapdss/dsi_irq The counters are reset when printed. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * | OMAP: DSS2: DSI: print debug DCS cmd in hexTomi Valkeinen2010-01-081-1/+1
| | | | | | | | | | | | Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * | OMAP: DSS2: DSI: fix VC channels in send_short and send_nullTomi Valkeinen2010-01-081-2/+2
| | | | | | | | | | | | | | | | | | | | | - dsi_vc_send_short() needs to use dest_per for the peripheral id - dsi_vc_send_null() was always using channel id 0 Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
* | | lib: Introduce generic list_sort functionDave Chinner2010-01-135-182/+119
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are two copies of list_sort() in the tree already, one in the DRM code, another in ubifs. Now XFS needs this as well. Create a generic list_sort() function from the ubifs version and convert existing users to it so we don't end up with yet another copy in the tree. Signed-off-by: Dave Chinner <david@fromorbit.com> Acked-by: Dave Airlie <airlied@redhat.com> Acked-by: Artem Bityutskiy <dedekind@infradead.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | | remove my email address from checkpatch.Dave Jones2010-01-131-1/+1
| | | | | | | | | | | | | | | | | | | | | Maybe this will stop people emailing me about it. Signed-off-by: Dave Jones <davej@redhat.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
* | | Merge branch 'upstream-linus' of ↵Linus Torvalds2010-01-134-9/+36
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev: libata: retry link resume if necessary ata_piix: enable 32bit PIO on SATA piix sata_promise: don't classify overruns as HSM errors
| * | | libata: retry link resume if necessaryTejun Heo2010-01-122-7/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Interestingly, when SIDPR is used in ata_piix, writes to DET in SControl sometimes get ignored leading to detection failure. Update sata_link_resume() such that it reads back SControl after clearing DET and retry if it's not clear. Signed-off-by: Tejun Heo <tj@kernel.org> Reported-by: fengxiangjun <fengxiangjun@neusoft.com> Reported-by: Jim Faulkner <jfaulkne@ccs.neu.edu> Cc: stable@kernel.org Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
| * | | ata_piix: enable 32bit PIO on SATA piixTejun Heo2010-01-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 871af1210f13966ab911ed2166e4ab2ce775b99d enabled 32bit PIO for PATA piix but didn't for SATA. There's no reason not to use 32bit PIO on SATA piix. Enable it. Signed-off-by: Tejun Heo <tj@kernel.org> Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
| * | | sata_promise: don't classify overruns as HSM errorsMikael Pettersson2010-01-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When sata_promise encounters an overrun or underrun error it translates that to a libata AC_ERR_HSM, causing a hard reset. Since over/under-runs were thought to be rare and transient, this action seemed reasonable. Unfortunately it turns out that the controller throws overrun errors when e.g. hal polls a CD or DVD writer containing blank media, causing long sequences of hard resets and retries before EH finally gives up. This patch updates sata_promise to classify over/under-runs as AC_ERR_OTHER instead. This allows libata EH and upper layers to retry or fail the operation as they see fit without the disruption caused by repeated hard resets. This fixes a problem using a DVD-RAM drive with sata_promise, reported by Thomas Schorpp. I also tested it on a DVD-RW drive. Signed-off-by: Mikael Pettersson <mikpe@it.uu.se> Tested-by: thomas schorpp <thomas.schorpp@googlemail.com> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
* | | | Merge master.kernel.org:/home/rmk/linux-2.6-armLinus Torvalds2010-01-1330-56/+183
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * master.kernel.org:/home/rmk/linux-2.6-arm: ARM: Ensure ARMv6/7 mm files are built using appropriate assembler options ARM: Fix wrong dmb ARM: 5874/1: serial21285: fix disable_irq-from-interrupt-handler deadlock ARM: 5873/1: ARM: Fix the reset logic for ARM RealView boards ARM: 5872/1: ARM: include needed linux/cpu.h in asm/cpu.h ARM: 5871/1: arch/arm: Fix build failure for lpd7a404_defconfig caused by missing includes ARM: 5870/1: arch/arm: Fix build failure for defconfigs without CONFIG_ISA_DMA_API set ARM: 5868/1: ARM: fix "BUG: using smp_processor_id() in preemptible code" ARM: 5867/1: Update U300 defconfig ARM: 5866/1: arm ptrace: use unsigned types for kernel pt_regs [ARM] pxa: fix strange characters in zaurus gpio .desc ARM: add missing recvmmsg syscall number [ARM] pxa: fix compiler warnings of unused variable 'id' in cpu_is_pxa9*() [ARM] pxa: update pwm_backlight->notify() to include missed 'struct device *' [ARM] pxa: enable L2 if present in XSC3 [ARM] pxa: do not enable L2 after MMU is enabled
| * | | | ARM: Ensure ARMv6/7 mm files are built using appropriate assembler optionsRussell King2010-01-121-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A kernel with both ARMv6 and ARMv7 selected results in build errors. Fix this by specifying the proper architectures for these assembly files. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
| * | | | ARM: Fix wrong dmbRussell King2010-01-121-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The __kuser_cmpxchg code uses an ARMv6 dmb instruction, rather than one based upon the architecture being built for. Switch to using the macro provided for this purpose, which also eliminates the need for an ifdef. Acked-by: Nicolas Pitre <nico@fluxnic.net> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
| * | | | ARM: 5874/1: serial21285: fix disable_irq-from-interrupt-handler deadlockSimon Kagstrom2010-01-111-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The console hangs during bootup when disable_irq is called from the transmit interrupt handler (it will wait forever for it's "own" interrupt in synchronize_irq). Fix by using disable_irq_nosync() instead. Signed-off-by: Simon Kagstrom <simon.kagstrom@netinsight.net> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
| * | | | ARM: 5873/1: ARM: Fix the reset logic for ARM RealView boardsColin Tuckley2010-01-117-15/+57
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Extend the patch from Philby John to the other "RealView" boards. Rename the constants and offsets to reflect their actual functions. Cc: Philby John <pjohn@in.mvista.com> Signed-off-by: Colin Tuckley <colin.tuckley@arm.com> Acked-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
| * | | | ARM: 5872/1: ARM: include needed linux/cpu.h in asm/cpu.hSantosh Shilimkar2010-01-101-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The file arch/arm/include/asm/cpu.h needs to include 'linux/cpu.h' to meet its dependency. Otherwise when using "struct cpuinfo_arm" and including just 'asm/cpu.h' throws below error - arch/arm/include/asm/cpu.h:16: error: field 'cpu' has incomplete type To fix this otherway, one can also include both linux/cpu.h and asm/cpu.h but it shoudn't be that way. So this patch fixes this by including the linux/cpu.h in asm/cpu.h, so that including alone asm/cpu.h is enough. Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
| * | | | ARM: 5871/1: arch/arm: Fix build failure for lpd7a404_defconfig caused by ↵Peter Hüwe2010-01-101-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | missing includes This patch fixes a build failure [1] due to missing includes This should make the arm tree build again with lpd7a404_defconfig References: http://kisskb.ellerman.id.au/kisskb/buildresult/1983329/ Signed-off-by: Peter Huewe <peterhuewe@gmx.de> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>