Thomas Gleixner [Sun, 27 Mar 2011 13:19:28 +0000 (15:19 +0200)]
MIPS: Convert the irq functions to the new names
Scripted with coccinelle.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Sun, 27 Mar 2011 13:11:13 +0000 (15:11 +0200)]
MIPS: alchemy: Use proper irq accessors
This really starts to be a sysiphean task.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Sun, 27 Mar 2011 14:04:30 +0000 (16:04 +0200)]
MIPS: Octeon: Simplify irq_cpu_on/offline irq chip functions
Make use of the IRQCHIP_ONOFFLINE_ENABLED flag and remove the
wrappers. Use irqd_irq_disabled() instead of desc->status, which will
go away.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Tested-by: David Daney <ddaney@caviumnetworks.com>
David Daney [Fri, 25 Mar 2011 19:38:51 +0000 (12:38 -0700)]
MIPS: Octeon: Rewrite interrupt handling code.
This includes conversion to new style irq_chip functions, and
correctly enabling/disabling per-CPU interrupts.
The hardware interrupt bit to irq number mapping is now done with a
flexible map, instead of by bit twiddling the irq number.
[ tglx: Adjusted to new irq_cpu_on/offline callbacks and
__irq_set_affinity_lock ]
Signed-off-by: David Daney <ddaney@caviumnetworks.com>
Cc: linux-mips@linux-mips.org
Cc: ralf@linux-mips.org
LKML-Reference: <
1301081931-11240-5-git-send-email-ddaney@caviumnetworks.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Sun, 27 Mar 2011 14:54:26 +0000 (16:54 +0200)]
MIPS: Fix syncfs syscall copy and paste failure
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Thu, 24 Mar 2011 13:55:52 +0000 (14:55 +0100)]
microblaze: Use generic show_interrupts()
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Thu, 24 Mar 2011 13:52:04 +0000 (14:52 +0100)]
microblaze: Convert to new irq function names
Namespace conversion scripted with coccinelle.
Also retrieve the irq type from irq_data in intc_enable_or_unmask()
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Mon, 28 Mar 2011 11:50:08 +0000 (13:50 +0200)]
ia64: Remove redundant declaration of irq_desc[]
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Fri, 25 Mar 2011 20:06:09 +0000 (21:06 +0100)]
ia64: Convert to the new irq_* function names
Scripted with coccinelle.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Fri, 25 Mar 2011 20:04:38 +0000 (21:04 +0100)]
ia64: Use generic show_interrupts()
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Fri, 25 Mar 2011 19:50:49 +0000 (20:50 +0100)]
ia64: Use irqd_irq_disabled() instead of desc->status access
Remove the last open coded access to irq_desc.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Fri, 25 Mar 2011 19:43:34 +0000 (20:43 +0100)]
ia64: sn: Use irqd_mark_affinity_set() helper
irq_desc->status is going to be restricted. Provide a helper to set
that information in irq_data, where it belongs.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Fri, 25 Mar 2011 19:36:55 +0000 (20:36 +0100)]
ia64: msi: Use irq_move_irq()
This replaces the old move_native_irq() function which is going away.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Fri, 25 Mar 2011 19:35:17 +0000 (20:35 +0100)]
ia64: sn: Use irq_move_irq()
This replaces the old move_native_irq() function which is going away.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Fri, 25 Mar 2011 19:30:53 +0000 (20:30 +0100)]
ia64: iosapic: Use new irq_move_* functions
The current functions are going away.
Also use the accessor for pending setaffinity in irq_data instead of
the open coded irq_desc access.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Fri, 25 Mar 2011 19:25:06 +0000 (20:25 +0100)]
ia64: iosapic: Remove redundant mask from ack()
The core code calls mask_ack() which calls irq_ack() and irq_mask()
for the case where an interrupt is disabled and marked pending. That
seems to be a leftover from the old __do_IRQ() mode.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Thu, 24 Mar 2011 15:44:38 +0000 (16:44 +0100)]
ia64: Use accessor functions all over the place
Use the proper accessor functions instead of open coded irq_desc access.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Fri, 25 Mar 2011 19:18:14 +0000 (20:18 +0100)]
ia64: xen: Use irq accessor functions
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Fri, 25 Mar 2011 19:16:05 +0000 (20:16 +0100)]
ia64: iosapic: Cleanup irq_desc access
Use irq_to_desc() and use accessors for setting chip and handler.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Fri, 25 Mar 2011 18:40:39 +0000 (19:40 +0100)]
ia64: sn: Drop unused function
Leftover from the irq chip conversion.
Reported-by: Tony Luck <tony.luck@intel.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Fri, 4 Feb 2011 19:31:21 +0000 (20:31 +0100)]
ia64: Convert iosapic to new irq_chip functions
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Fri, 4 Feb 2011 19:29:37 +0000 (20:29 +0100)]
ia64: Convert lsapic to new irq_chip functions
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Fri, 4 Feb 2011 19:18:43 +0000 (20:18 +0100)]
ia64: Convert msi to new irq_chip functions
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Fri, 4 Feb 2011 19:08:36 +0000 (20:08 +0100)]
ia64: Convert sn to new irq_chip functions
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Fri, 4 Feb 2011 19:02:09 +0000 (20:02 +0100)]
ia64: Convert msi_sn to new irq_chip functions
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Sat, 5 Feb 2011 19:23:29 +0000 (20:23 +0100)]
ia64: hp-sim: Cleanup direct access to irq_desc
Use accessor functions instead of open coded access.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Fri, 4 Feb 2011 19:12:06 +0000 (20:12 +0100)]
ia64: Convert hp-sim to new irq_chip functions
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Thu, 3 Feb 2011 00:46:48 +0000 (00:46 +0000)]
ia64: Remove stale irq_chip.end
irq_chip.end got obsolete with the removal of __do_IRQ().
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Tony Luck <tony.luck@intel.com>
LKML-Reference: <
20110203004210.
143127544@linutronix.de>
Thomas Gleixner [Fri, 25 Mar 2011 19:12:33 +0000 (20:12 +0100)]
ia64: Cleanup migrate_irqs()
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Fri, 25 Mar 2011 18:00:33 +0000 (19:00 +0100)]
ia64: Convert migrate_platform_irqs() to new irq chip functions
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Mon, 28 Mar 2011 11:50:50 +0000 (13:50 +0200)]
bfin: Use proper accessors in trace
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Thu, 24 Mar 2011 16:22:30 +0000 (17:22 +0100)]
bfin: Convert irq namespace
Convert to the new function names. Scripted with coccinelle.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Mike Frysinger <vapier@gentoo.org>
Cc: uclinux-dist-devel@blackfin.uclinux.org
Thomas Gleixner [Thu, 24 Mar 2011 16:21:01 +0000 (17:21 +0100)]
bfin: Final irq cleanup
Use the trigger type in irq_data and check level type instead of
looking at desc->handle_irq.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Mike Frysinger <vapier@gentoo.org>
Cc: uclinux-dist-devel@blackfin.uclinux.org
Thomas Gleixner [Fri, 25 Mar 2011 21:20:51 +0000 (22:20 +0100)]
alpha: Use generic show_interrupts()
The only subtle difference is that alpha uses ACTUAL_NR_IRQS and
prints the IRQF_DISABLED flag.
Change the generic implementation to deal with ACTUAL_NR_IRQS if
defined.
The IRQF_DISABLED printing is pointless, as we nowadays run all
interrupts with irqs disabled.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Fri, 25 Mar 2011 21:17:31 +0000 (22:17 +0100)]
alpha: Convert to new irq function names
Scripted with coccinelle.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Thu, 24 Mar 2011 12:35:09 +0000 (13:35 +0100)]
arm: Fold irq_set_chip/irq_set_handler
Use irq_set_chip_and_handler() instead. Converted with coccinelle.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Thu, 24 Mar 2011 12:29:39 +0000 (13:29 +0100)]
arm: Reorder irq_set_ function calls
Reorder
irq_set_chip()
irq_set_chip_data()
irq_set_handler()
to
irq_set_chip()
irq_set_handler()
irq_set_chip_data()
so the next patch can combine irq_set_chip() and irq_set_handler() to
irq_set_chip_and_handler().
Automated conversion with coccinelle.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Thu, 24 Mar 2011 12:25:22 +0000 (13:25 +0100)]
arm: Cleanup the irq namespace
Convert to the new function names. Automated with coccinelle.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Thu, 24 Mar 2011 11:02:11 +0000 (12:02 +0100)]
arm: Use generic show_interrupts()
Use the generic version and just keep the arch specific output.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Thu, 24 Mar 2011 11:33:40 +0000 (12:33 +0100)]
arm: dove: Use proper irq accessor functions
Remove the obsolete desc_handle_irq() helper.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Thu, 24 Mar 2011 11:48:54 +0000 (12:48 +0100)]
arm: gic: Use proper accessor functions
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Thu, 24 Mar 2011 11:48:18 +0000 (12:48 +0100)]
arm: at91: Cleanup irq chip
Avoid the whole lazy disable dance in the demux handler by providing a
irq_disable() callback.
Use the proper accessor functions and tidy up gpio_irq_handler()
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Thu, 24 Mar 2011 11:47:04 +0000 (12:47 +0100)]
arm: davinci: Cleanup irq chip code
Make use of the new functionality which ensures that irq_set_type is
called with the chip masked. Unmask is only done when the interrupt is
not disabled.
Retrieve the trigger type from irq_data in unmask
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Thu, 24 Mar 2011 11:45:56 +0000 (12:45 +0100)]
arm: ep93xx: Use proper irq accessor functions
No need to write the flow type. Core code does already.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Thu, 24 Mar 2011 11:44:54 +0000 (12:44 +0100)]
arm: gemini: Use proper irq accessor functions
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Thu, 24 Mar 2011 11:43:25 +0000 (12:43 +0100)]
arm: mxc: Use generic_handle_irq()
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Thu, 24 Mar 2011 11:42:50 +0000 (12:42 +0100)]
arm: vt8500: Use proper irq accessors
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Thu, 24 Mar 2011 11:41:27 +0000 (12:41 +0100)]
arm: msm: Use proper irq accessor functions
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Thu, 24 Mar 2011 11:40:15 +0000 (12:40 +0100)]
arm: plat-omap: Cleanup irq_desc access
1) Core code stores the flow type already
2) Flow type is accessible in irq_data
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Thu, 24 Mar 2011 11:38:50 +0000 (12:38 +0100)]
arm: nomadik: Use local irq state
Store the enabled mask in the local state, so there is no need to
fiddle in the irq descriptor.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Thu, 24 Mar 2011 11:38:17 +0000 (12:38 +0100)]
arm: stmp3xxx: Use generic_handle_irq()
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Thu, 24 Mar 2011 11:36:46 +0000 (12:36 +0100)]
arm: plat-samsung: Use proper irq accessor functions
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Thu, 24 Mar 2011 11:35:19 +0000 (12:35 +0100)]
arm: Cleanup irq_desc access
Use the proper wrappers and use the flow type in irq_data.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Thu, 24 Mar 2011 10:58:31 +0000 (11:58 +0100)]
arm: msm: Convert to new irq chip functions
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Mon, 7 Feb 2011 21:30:49 +0000 (22:30 +0100)]
arm: Use irq flag setter function
Use the proper accessor function instead of fiddling in the status
bits directly.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-arm-kernel@lists.infradead.org
Thomas Gleixner [Tue, 22 Mar 2011 16:11:09 +0000 (17:11 +0100)]
arm: Use genirq lockdep helper to set lock class
Remove the open coded access to irq_desc which will fail on sparse irq
and use the proper wrappers.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Wed, 9 Feb 2011 15:46:14 +0000 (16:46 +0100)]
arm: tegra: Remove unused bogus irq enable/disable magic
The core code handles thees already.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Colin Cross <ccross@android.com>
Cc: linux-tegra@vger.kernel.org
Cc: linux-arm-kernel@lists.infradead.org
Thomas Gleixner [Mon, 28 Mar 2011 08:54:40 +0000 (10:54 +0200)]
arm: h720x: Fix irq conversion fallout
The conversion missed, that one of the irq functions is called from
the init code. Split it out, so the irq number based call works.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Mon, 28 Mar 2011 11:12:20 +0000 (13:12 +0200)]
arm: nomadik: Remove non existing cpu id check
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Mon, 28 Mar 2011 10:11:46 +0000 (12:11 +0200)]
arm: ns9xxx: Remove non exisiting machine checks
The machine id cleanup missed to remove the checks for now removed
ids.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Mon, 28 Mar 2011 09:26:09 +0000 (11:26 +0200)]
arm: dove: Use correct GPIO_BASE and remove orion_gpio_init() leftover
commit
9eac6d0 (ARM: Remove dependency of plat-orion GPIO code on mach
directory includes) missed to convert one instance of
DOVE_GPIO_VIRT_BASE and left the orion_gpio_init() in mpp.c
Fix it up.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Mon, 28 Mar 2011 10:32:39 +0000 (12:32 +0200)]
arm: at91: at572d940hf: Fix SDRAMC define
That wants to be AT91_SDRAMC0
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Mon, 28 Mar 2011 09:25:40 +0000 (11:25 +0200)]
arm: footbridge: Make cksrc_dc21285_disable() void
This clocksource function needs to be void.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Sun, 27 Mar 2011 17:45:00 +0000 (19:45 +0200)]
arm: bios32: Remove non exisiting machine code
The id removal left this machine check in which breaks the build on
some platforms. Remove it.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Tue, 29 Mar 2011 09:36:05 +0000 (11:36 +0200)]
genirq: Fix harmless typo
The late night fixup missed to convert the data type from irq_desc to
irq_data, which results in a harmless but annoying warning.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Martin K. Petersen [Tue, 29 Mar 2011 00:09:12 +0000 (20:09 -0400)]
md: Fix integrity registration error when no devices are capable
We incorrectly returned -EINVAL when none of the devices in the array
had an integrity profile. This in turn prevented mdadm from starting
the metadevice. Fix this so we only return errors on mismatched
profiles and memory allocation failures.
Reported-by: Giacomo Catenazzi <cate@cateee.net>
Reported-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Linus Torvalds [Tue, 29 Mar 2011 00:51:27 +0000 (17:51 -0700)]
Merge branch 'for-linus' of git://git./linux/kernel/git/jmorris/security-testing-2.6
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6:
selinux: Fix regression for Xorg
Andres Salomon [Tue, 29 Mar 2011 00:22:30 +0000 (17:22 -0700)]
ARM: mx51_efika: fix build error due to new mfd changes
MFD changes in
4ec1b54c ('mfd: mfd_cell is now implicitly available to
mc13xxx drivers') changed the mc13xxx_platform_data struct layout.
At the time all users were changed, but this driver was introduced in
another tree at the same time. This updates the mc13xxx_platform_data
user, fixing a build error.
Signed-off-by: Andres Salomon <dilinger@queued.net>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Linus Torvalds [Tue, 29 Mar 2011 00:39:54 +0000 (17:39 -0700)]
Merge branches 'irq-cleanup-for-linus' and 'irq-fixes-for-linus' of git://git./linux/kernel/git/tip/linux-2.6-tip
* 'irq-cleanup-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
vlynq: Convert irq functions
* 'irq-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
genirq; Fix cleanup fallout
genirq: Fix typo and remove unused variable
genirq: Fix new kernel-doc warnings
genirq: Add setter for AFFINITY_SET in irq_data state
genirq: Provide setter inline for IRQD_IRQ_INPROGRESS
genirq: Remove handle_IRQ_event
arm: Ns9xxx: Remove private irq flow handler
powerpc: cell: Use the core flow handler
genirq: Provide edge_eoi flow handler
genirq: Move INPROGRESS, MASKED and DISABLED state flags to irq_data
genirq: Split irq_set_affinity() so it can be called with lock held.
genirq: Add chip flag for restricting cpu_on/offline calls
genirq: Add chip hooks for taking CPUs on/off line.
genirq: Add irq disabled flag to irq_data state
genirq: Reserve the irq when calling irq_set_chip()
Thomas Gleixner [Mon, 28 Mar 2011 19:59:37 +0000 (21:59 +0200)]
genirq; Fix cleanup fallout
I missed the CONFIG_GENERIC_PENDING_IRQ dependency in the affinity
related functions and the IRQ_LEVEL propagation into irq_data
state. Did not pop up on my main test platforms. :(
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Tested-by: David Daney <ddaney@caviumnetworks.com>
Stephen Smalley [Fri, 25 Mar 2011 14:13:43 +0000 (10:13 -0400)]
selinux: Fix regression for Xorg
Commit
6f5317e730505d5cbc851c435a2dfe3d5a21d343 introduced a bug in the
handling of userspace object classes that is causing breakage for Xorg
when XSELinux is enabled. Fix the bug by changing map_class() to return
SECCLASS_NULL when the class cannot be mapped to a kernel object class.
Reported-by: "Justin P. Mattock" <justinmattock@gmail.com>
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
Signed-off-by: James Morris <jmorris@namei.org>
Stephen Rothwell [Mon, 28 Mar 2011 23:24:29 +0000 (16:24 -0700)]
memstick: make enable_dma less generic in r592
Fixes this build error:
drivers/memstick/host/r592.c:26: error: 'enable_dma' redeclared as different kind of symbol
arch/powerpc/include/asm/dma.h:189: note: previous definition of 'enable_dma' was here
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Cc: Alex Dubov <oakad@yahoo.com>
Acked-by: Maxim Levitsky <maximlevitsky@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Linus Torvalds [Mon, 28 Mar 2011 22:51:02 +0000 (15:51 -0700)]
Merge branch 'for-linus' of git://oss.sgi.com/xfs/xfs
* 'for-linus' of git://oss.sgi.com/xfs/xfs:
xfs: stop using the page cache to back the buffer cache
xfs: register the inode cache shrinker before quotachecks
xfs: xfs_trans_read_buf() should return an error on failure
xfs: introduce inode cluster buffer trylocks for xfs_iflush
vmap: flush vmap aliases when mapping fails
xfs: preallocation transactions do not need to be synchronous
Fix up trivial conflicts in fs/xfs/linux-2.6/xfs_buf.c due to plug removal.
Roland Dreier [Mon, 28 Mar 2011 21:13:35 +0000 (14:13 -0700)]
Relax si_code check in rt_sigqueueinfo and rt_tgsigqueueinfo
Commit
da48524eb206 ("Prevent rt_sigqueueinfo and rt_tgsigqueueinfo
from spoofing the signal code") made the check on si_code too strict.
There are several legitimate places where glibc wants to queue a
negative si_code different from SI_QUEUE:
- This was first noticed with glibc's aio implementation, which wants
to queue a signal with si_code SI_ASYNCIO; the current kernel
causes glibc's tst-aio4 test to fail because rt_sigqueueinfo()
fails with EPERM.
- Further examination of the glibc source shows that getaddrinfo_a()
wants to use SI_ASYNCNL (which the kernel does not even define).
The timer_create() fallback code wants to queue signals with SI_TIMER.
As suggested by Oleg Nesterov <oleg@redhat.com>, loosen the check to
forbid only the problematic SI_TKILL case.
Reported-by: Klaus Dittrich <kladit@arcor.de>
Acked-by: Julien Tinnes <jln@google.com>
Cc: <stable@kernel.org>
Signed-off-by: Roland Dreier <roland@purestorage.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Linus Torvalds [Mon, 28 Mar 2011 22:44:06 +0000 (15:44 -0700)]
Merge branch 'for-linus' of git://www.jni.nu/cris
* 'for-linus' of git://www.jni.nu/cris:
Correct auto-restart of syscalls via restartblock
CRISv10: Fix return before mutex_unlock in pcf8563
Drop the CRISv32 version of pcf8563
Linus Torvalds [Mon, 28 Mar 2011 22:43:25 +0000 (15:43 -0700)]
Merge branch 'for-linus' of git://git./linux/kernel/git/ecryptfs/ecryptfs-2.6
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ecryptfs/ecryptfs-2.6:
eCryptfs: write lock requested keys
eCryptfs: move ecryptfs_find_auth_tok_for_sig() call before mutex_lock
eCryptfs: verify authentication tokens before their use
eCryptfs: modified size of keysig in the ecryptfs_key_sig structure
eCryptfs: removed num_global_auth_toks from ecryptfs_mount_crypt_stat
eCryptfs: ecryptfs_keyring_auth_tok_for_sig() bug fix
eCryptfs: Unlock page in write_begin error path
ecryptfs: modify write path to encrypt page in writepage
eCryptfs: Remove ECRYPTFS_NEW_FILE crypt stat flag
eCryptfs: Remove unnecessary grow_file() function
Linus Torvalds [Mon, 28 Mar 2011 22:31:05 +0000 (15:31 -0700)]
Merge branch 'for-linus-unmerged' of git://git./linux/kernel/git/mason/btrfs-unstable
* 'for-linus-unmerged' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable: (45 commits)
Btrfs: fix __btrfs_map_block on 32 bit machines
btrfs: fix possible deadlock by clearing __GFP_FS flag
btrfs: check link counter overflow in link(2)
btrfs: don't mess with i_nlink of unlocked inode in rename()
Btrfs: check return value of btrfs_alloc_path()
Btrfs: fix OOPS of empty filesystem after balance
Btrfs: fix memory leak of empty filesystem after balance
Btrfs: fix return value of setflags ioctl
Btrfs: fix uncheck memory allocations
btrfs: make inode ref log recovery faster
Btrfs: add btrfs_trim_fs() to handle FITRIM
Btrfs: adjust btrfs_discard_extent() return errors and trimmed bytes
Btrfs: make btrfs_map_block() return entire free extent for each device of RAID0/1/10/DUP
Btrfs: make update_reserved_bytes() public
btrfs: return EXDEV when linking from different subvolumes
Btrfs: Per file/directory controls for COW and compression
Btrfs: add datacow flag in inode flag
btrfs: use GFP_NOFS instead of GFP_KERNEL
Btrfs: check return value of read_tree_block()
btrfs: properly access unaligned checksum buffer
...
Fix up trivial conflicts in fs/btrfs/volumes.c due to plug removal in
the block layer.
Linus Torvalds [Mon, 28 Mar 2011 22:16:10 +0000 (15:16 -0700)]
Merge branch 'for_linus' of git://git./linux/kernel/git/mjg59/platform-drivers-x86
* 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mjg59/platform-drivers-x86: (81 commits)
xo15-ebook: Remove device.wakeup_count
ips: use interruptible waits in ips-monitor
acer-wmi: does not poll device status when WMI event is available
acer-wmi: does not set persistence state by rfkill_init_sw_state
platform-drivers: x86: fix common misspellings
acer-wmi: use pr_<level> for messages
asus-wmi: potential NULL dereference in show_call()
asus-wmi: signedness bug in read_brightness()
platform-driver-x86: samsung-laptop: make dmi_check_cb to return 1 instead of 0
platform-driver-x86: fix wrong merge for compal-laptop.c
msi-laptop: use pr_<level> for messages
Platform: add Samsung Laptop platform driver
acer-wmi: Fix WMI ID
acer-wmi: deactive mail led when power off
msi-laptop: send out touchpad on/off key
acer-wmi: set the touchpad toggle key code to KEY_TOUCHPAD_TOGGLE
platform-driver-x86: intel_mid_thermal: fix unterminated platform_device_id table
sony-laptop: potential null dereference
sony-laptop: handle allocation failures
sony-laptop: return negative on failure in sony_nc_add()
...
Linus Torvalds [Mon, 28 Mar 2011 22:14:45 +0000 (15:14 -0700)]
Merge branch 'for-torvalds' of git://git./linux/kernel/git/linusw/linux-stericsson
* 'for-torvalds' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-stericsson:
mach-ux500: configure board for the TPS61052 regulator v2
mach-ux500: provide ab8500 init vector
mach-ux500: board support for AB8500 GPIO driver
gpio: driver for 42 AB8500 GPIO pins
Linus Torvalds [Mon, 28 Mar 2011 22:08:48 +0000 (15:08 -0700)]
Merge branch 's5p-fixes-for-linus' of git://git./linux/kernel/git/kgene/linux-samsung
* 's5p-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
ARM: Suspend: Fix dependency of ARCH_SUSPEND_POSSIBLE
ARM: SAMSUNG: Fix CPU idmask
ARM: EXYNOS4: Fix addruart macro
ARM: EXYNOS4: Fix smsc9215 irq polarity on SMDKC210
ARM: EXYNOS4: Fix smsc9215 irq polarity on SMDKV310
ARM: EXYNOS4: Fix build warning on regarding SATA_AHCI_PLATFORM
ARM: S5PV210: Remove duplicated inclusion
ARM: S5PV210: Fix security engine interrupt names
ARM: S5P64X0: Fix iodesc array size for S5P6450
Linus Torvalds [Mon, 28 Mar 2011 20:07:49 +0000 (13:07 -0700)]
Merge git://git./linux/kernel/git/herbert/crypto-2.6
* git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
crypto: aesni-intel - fixed problem with packets that are not multiple of 64bytes
Linus Torvalds [Mon, 28 Mar 2011 20:06:32 +0000 (13:06 -0700)]
Merge branch 'for-linus' of git://gitserver.sunplusct.com/linux-2.6-score
* 'for-linus' of git://gitserver.sunplusct.com/linux-2.6-score:
score: Use generic show_interrupts()
score: Convert to new irq function names
score: lost a semicolon in asm/irqflags.h
score: Select GENERIC_HARDIRQS_NO_DEPRECATED
score: Convert irq_chip to new functions
Matthew Garrett [Mon, 28 Mar 2011 12:46:02 +0000 (12:46 +0000)]
acpi: Remove sysfs_create_link from video driver
The acpi video driver attempts to explicitly create a sysfs link between
the acpi device and the associated PCI device. However, we're now also
doing this from the backlight core, which means that we get a backtrace
caused by a duplicate file. Remove the code and leave it up to the
backlight core.
Reported-by: Jeff Chua <jeff.chua.linux@gmail.com>
Signed-off-by: Matthew Garrett <mjg@redhat.com>
Acked-by: Rafael J. Wysocki <rjw@sisk.pl>
Tested-by: Alessandro Suardi <alessandro.suardi@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Linus Torvalds [Mon, 28 Mar 2011 20:03:31 +0000 (13:03 -0700)]
Merge branch 'upstream-linus' of git://git./linux/kernel/git/jlbec/ocfs2
* 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2: (39 commits)
Treat writes as new when holes span across page boundaries
fs,ocfs2: Move o2net_get_func_run_time under CONFIG_OCFS2_FS_STATS.
ocfs2/dlm: Move kmalloc() outside the spinlock
ocfs2: Make the left masklogs compat.
ocfs2: Remove masklog ML_AIO.
ocfs2: Remove masklog ML_UPTODATE.
ocfs2: Remove masklog ML_BH_IO.
ocfs2: Remove masklog ML_JOURNAL.
ocfs2: Remove masklog ML_EXPORT.
ocfs2: Remove masklog ML_DCACHE.
ocfs2: Remove masklog ML_NAMEI.
ocfs2: Remove mlog(0) from fs/ocfs2/dir.c
ocfs2: remove NAMEI from symlink.c
ocfs2: Remove masklog ML_QUOTA.
ocfs2: Remove mlog(0) from quota_local.c.
ocfs2: Remove masklog ML_RESERVATIONS.
ocfs2: Remove masklog ML_XATTR.
ocfs2: Remove masklog ML_SUPER.
ocfs2: Remove mlog(0) from fs/ocfs2/heartbeat.c
ocfs2: Remove mlog(0) from fs/ocfs2/slot_map.c
...
Fix up trivial conflict in fs/ocfs2/super.c
Thomas Gleixner [Mon, 28 Mar 2011 18:28:56 +0000 (20:28 +0200)]
genirq: Fix typo and remove unused variable
Sigh, I'm overworked.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Randy Dunlap [Fri, 18 Mar 2011 16:33:56 +0000 (09:33 -0700)]
genirq: Fix new kernel-doc warnings
Fix new irq-related kernel-doc warnings in 2.6.38:
Warning(kernel/irq/manage.c:149): No description found for parameter 'mask'
Warning(kernel/irq/manage.c:149): Excess function parameter 'cpumask' description in 'irq_set_affinity'
Warning(include/linux/irq.h:161): No description found for parameter 'state_use_accessors'
Warning(include/linux/irq.h:161): Excess struct/union/enum/typedef member 'state_use_accessor' description in 'irq_data'
Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
LKML-Reference: <
20110318093356.
b939558d.randy.dunlap@oracle.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Fri, 25 Mar 2011 20:56:37 +0000 (21:56 +0100)]
vlynq: Convert irq functions
Convert to the new irq_chip functions and the new namespace.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Florian Fainelli <florian@openwrt.org>
LKML-Reference: <alpine.LFD.2.00.
1103252150180.31464@localhost6.localdomain6>
Goldwyn Rodrigues [Thu, 17 Feb 2011 15:44:40 +0000 (09:44 -0600)]
Treat writes as new when holes span across page boundaries
When a hole spans across page boundaries, the next write forces
a read of the block. This could end up reading existing garbage
data from the disk in ocfs2_map_page_blocks. This leads to
non-zero holes. In order to avoid this, mark the writes as new
when the holes span across page boundaries.
Signed-off-by: Goldwyn Rodrigues <rgoldwyn@suse.de>
Signed-off-by: jlbec <jlbec@evilplan.org>
Joel Becker [Mon, 28 Mar 2011 16:44:26 +0000 (09:44 -0700)]
Merge branch 'mlog_replace_for_39' of git://repo.or.cz/taoma-kernel into ocfs2-merge-window-fix
Rakib Mullick [Fri, 18 Mar 2011 11:01:08 +0000 (17:01 +0600)]
fs,ocfs2: Move o2net_get_func_run_time under CONFIG_OCFS2_FS_STATS.
When CONFIG_DEBUG_FS=y and CONFIG_OCFS2_FS_STATS=n, we get the
following warning:
fs/ocfs2/cluster/tcp.c:213:16: warning: ‘o2net_get_func_run_time’
defined but not used
Since o2net_get_func_run_time is only called from
o2net_update_recv_stats, so move it under CONFIG_OCFS2_FS_STATS.
Signed-off-by: Rakib Mullick <rakib.mullick@gmail.com>
Signed-off-by: jlbec <jlbec@evilplan.org>
Thomas Gleixner [Mon, 28 Mar 2011 15:11:13 +0000 (17:11 +0200)]
genirq: Add setter for AFFINITY_SET in irq_data state
Some archs want to prevent the default affinity being set on their
chips in the reqeust_irq() path.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Mon, 28 Mar 2011 14:41:14 +0000 (16:41 +0200)]
genirq: Provide setter inline for IRQD_IRQ_INPROGRESS
Special function for demultiplexing handlers which can be disabled via
disable_irq().
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Mon, 28 Mar 2011 14:27:31 +0000 (16:27 +0200)]
genirq: Remove handle_IRQ_event
Last user gone.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Wed, 2 Feb 2011 21:41:27 +0000 (21:41 +0000)]
arm: Ns9xxx: Remove private irq flow handler
handle_prio_irq is almost identical with handle_fasteoi_irq. The
subtle differences are
1) The handler checks for IRQ_DISABLED after the device handler has
been called. In case it's set it masks the interrupt.
2) When the handler sees IRQ_DISABLED on entry it masks the interupt
in the same way as handle_fastoei_irq, but does not set the
IRQ_PENDING flag.
3) Instead of gracefully handling a recursive interrupt it crashes the
kernel.
#1 is just relevant when a device handler calls disable_irq_nosync()
and it does not matter whether we mask the interrupt right away or
not. We handle lazy masking for disable_irq anyway, so there is no
real reason to have this extra mask in place.
#2 will prevent the resend of a pending interrupt, which can result in
lost interrupts for edge type interrupts. For level type interrupts
the resend is a noop in the generic code. According to the
datasheet all interrupts are level type, so marking them as such
will result in the exact same behaviour as the private
handle_prio_irq implementation.
#3 is just stupid. Crashing the kernel instead of handling a problem
gracefully is just wrong. With the current semantics- all handlers
run with interrupts disabled - this is even more wrong.
Rename ack to eoi, remove the unused mask_ack, switch to
handle_fasteoi_irq and remove the private function.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: Peter Zijlstra <peterz@infradead.org>
Acked-by: Uwe Kleine-Koenig <u.kleine-koenig@pengutronix.de>
Cc: linux-arm-kernel@lists.infradead.org
LKML-Reference: <
20110202212552.
299898447@linutronix.de>
Thomas Gleixner [Mon, 28 Mar 2011 14:23:12 +0000 (16:23 +0200)]
powerpc: cell: Use the core flow handler
The core handler is a full equivalent replacement.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Mon, 28 Mar 2011 14:13:24 +0000 (16:13 +0200)]
genirq: Provide edge_eoi flow handler
This is a replacment for the cell flow handler which is in the way of
cleanups. Must be selected to avoid general bloat.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Thomas Gleixner [Mon, 28 Mar 2011 12:10:52 +0000 (14:10 +0200)]
genirq: Move INPROGRESS, MASKED and DISABLED state flags to irq_data
We really need these flags for some of the interrupt chips. Move it
from internal state to irq_data and provide proper accessors.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: David Daney <ddaney@caviumnetworks.com>
Linus Torvalds [Mon, 28 Mar 2011 14:52:58 +0000 (07:52 -0700)]
Merge branch 'bugfixes' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6
* 'bugfixes' of git://git.linux-nfs.org/projects/trondmy/nfs-2.6:
NFS: Ensure that rpc_release_resources_task() can be called twice.
NFS: Don't leak RPC clients in NFSv4 secinfo negotiation
NFS: Fix a hang in the writeback path
Andres Salomon [Mon, 28 Mar 2011 04:26:03 +0000 (21:26 -0700)]
MFD: allow cs5535-mfd to build on X86 only
Stephen ran into the following build error:
drivers/mfd/cs5535-mfd.c:30:22: error: asm/olpc.h: No such file or directory
olpc.h exists only on x86 (and in the future, ARM). Rather than
wrapping the include in an #ifdef, just change cs5535-mfd to only build
on x86.
Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Andres Salomon <dilinger@queued.net>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Linus Torvalds [Mon, 28 Mar 2011 14:42:58 +0000 (07:42 -0700)]
drbd: fix up merge error
In commit
95a0f10cddbf ("drbd: store in-core bitmap little endian,
regardless of architecture") drbd had made the sane choice to use
little-endian bitmap functions everywhere. However, it used the
horrible old functions names from <asm-generic/bitops/le.h>, that were
never really meant to be exported.
In the meantime, things got cleaned up, and in commit
c4945b9ed472
("asm-generic: rename generic little-endian bitops functions") we
renamed the LE bitops to something sane, exactly so that they could be
used in random code without people gouging their eyes out when seeing
the crazy jumble of letters that were the old internal names.
As a result the drbd thing merged cleanly (commit
8d49a77568d1: "Merge
branch 'for-2.6.39/drivers' of git://git.kernel.dk/linux-2.6-block"),
since there was no data conflict - but the end result obviously doesn't
actually compile.
Reported-and-tested-by: Ingo Molnar <mingo@elte.hu>
Cc: Jens Axboe <jaxboe@fusionio.com>
Cc: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>