openwrt/staging/blogic.git
15 years agomicroblaze: struct device - replace bus_id with dev_name()
Michal Simek [Tue, 14 Apr 2009 07:38:06 +0000 (09:38 +0200)]
microblaze: struct device - replace bus_id with dev_name()

Signed-off-by: Michal Simek <monstr@monstr.eu>
15 years agomicroblaze: Simplify copy_thread()
Michal Simek [Tue, 14 Apr 2009 07:18:19 +0000 (09:18 +0200)]
microblaze: Simplify copy_thread()

Removing nr parameter from copy_tread function
commit 6f2c55b843836d26528c56a0968689accaedbc67

Signed-off-by: Michal Simek <monstr@monstr.eu>
15 years agomicroblaze: Add TIMESTAMPING constants to socket.h
Michal Simek [Tue, 14 Apr 2009 07:16:01 +0000 (09:16 +0200)]
microblaze: Add TIMESTAMPING constants to socket.h

This changes was introduce with
commit: cb9eff097831007afb30d64373f29d99825d0068

net: new user space API for time stamping of incoming and outgoing packets

Signed-off-by: Michal Simek <monstr@monstr.eu>
15 years agomicroblaze: Add missing empty ftrace.h file
Michal Simek [Tue, 14 Apr 2009 06:37:30 +0000 (08:37 +0200)]
microblaze: Add missing empty ftrace.h file

Signed-off-by: Michal Simek <monstr@monstr.eu>
15 years agomicroblaze: Fix problem with removing zero length files
Michal Simek [Mon, 13 Apr 2009 18:51:22 +0000 (20:51 +0200)]
microblaze: Fix problem with removing zero length files

Adding one new line was recommended solution.
Test with make distclean

Tested-by: Jeff Garzik <jgarzik@redhat.com>
Signed-off-by: Michal Simek <monstr@monstr.eu>
15 years agoMerge branch 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6
Linus Torvalds [Mon, 13 Apr 2009 15:32:48 +0000 (08:32 -0700)]
Merge branch 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6

* 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6:
  i2c: Let new-style drivers implement attach_adapter
  i2c: Fix sparse warnings for I2C_BOARD_INFO()
  i2c-voodoo3: Deprecate in favor of tdfxfb
  i2c-algo-pca: Fix use of uninitialized variable in debug message

15 years agoadd some long-missing capabilities to fs_mask
Serge E. Hallyn [Mon, 13 Apr 2009 14:56:14 +0000 (09:56 -0500)]
add some long-missing capabilities to fs_mask

When POSIX capabilities were introduced during the 2.1 Linux
cycle, the fs mask, which represents the capabilities which having
fsuid==0 is supposed to grant, did not include CAP_MKNOD and
CAP_LINUX_IMMUTABLE.  However, before capabilities the privilege
to call these did in fact depend upon fsuid==0.

This patch introduces those capabilities into the fsmask,
restoring the old behavior.

See the thread starting at http://lkml.org/lkml/2009/3/11/157 for
reference.

Note that if this fix is deemed valid, then earlier kernel versions (2.4
and 2.2) ought to be fixed too.

Changelog:
[Mar 23] Actually delete old CAP_FS_SET definition...
[Mar 20] Updated against J. Bruce Fields's patch

Reported-by: Igor Zhbanov <izh1979@gmail.com>
Signed-off-by: Serge E. Hallyn <serue@us.ibm.com>
Cc: stable@kernel.org
Cc: J. Bruce Fields <bfields@citi.umich.edu>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agoMerge branch 'gm_20090410' of git://repo.or.cz/linux-2.6/trivial-mods
Linus Torvalds [Mon, 13 Apr 2009 15:23:46 +0000 (08:23 -0700)]
Merge branch 'gm_20090410' of git://repo.or.cz/linux-2.6/trivial-mods

* 'gm_20090410' of git://repo.or.cz/linux-2.6/trivial-mods:
  MAINTAINERS - Update MN10300 patterns
  MAINTAINERS - Update frv arch patterns
  scripts/get_maintainer.pl - Allow multiple files on command line
  MAINTAINERS - Update Freescale sound patterns
  MAINTAINERS - Add additional patterns
  MAINTAINERS - Add missing "/" to some pattern directories
  MAINTAINERS - Update DRIVER CORE patterns
  MAINTAINERS - Update M68K patterns
  MAINTAINERS - Coalesce sections "DVB" and "Video for Linux"
  MAINTAINERS - Remove cyblafb frame buffer no longer in tree
  MAINTAINERS - Remove x86/Voyager no longer in tree
  MAINTAINERS - Update FPU Emulator contact address and web page
  MAINTAINERS - i2c_tiny_usb T: should be W:
  MAINTAINERS - Add Linus Torvalds' git
  MAINTAINERS - standardize "T:       git urls"
  MAINTAINERS - Remove HP Fibre Channel HBA no longer in tree
  MAINTAINERS - Standardize style
  MAINTAINERS - Add file patterns
  Add scripts/get_maintainer.pl

Acked-by: Pavel Machek <pavel@ucw.cz>
Acked-by: Andrew Morton <akpm@linux-foundation.org>
15 years agoMerge branch 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Mon, 13 Apr 2009 15:22:43 +0000 (08:22 -0700)]
Merge branch 'core-fixes-for-linus' of git://git./linux/kernel/git/tip/linux-2.6-tip

* 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  percpu: unbreak alpha percpu
  mutex: have non-spinning mutexes on s390 by default

15 years agoMerge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds
Linus Torvalds [Mon, 13 Apr 2009 15:19:45 +0000 (08:19 -0700)]
Merge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds

* 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds:
  leds: just ignore invalid GPIOs in leds-gpio

15 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog
Linus Torvalds [Mon, 13 Apr 2009 15:18:30 +0000 (08:18 -0700)]
Merge git://git./linux/kernel/git/wim/linux-2.6-watchdog

* git://git.kernel.org/pub/scm/linux/kernel/git/wim/linux-2.6-watchdog:
  [WATCHDOG] omap_wdt.c: move probe function to .devinit.text
  [WATCHDOG] ks8695_wdt.c: move probe function to .devinit.text
  [WATCHDOG] at91rm9200_wdt.c: move probe function to .devinit.text
  [WATCHDOG] remove ARM26 sections
  [WATCHDOG] orion5x_wdt: Add shutdown callback, use watchdog ping function
  [WATCHDOG] i6300esb.c: Restructure initialization of the device
  [WATCHDOG] i6300esb.c: Fix the GETSTATUS and GETBOOTSTATUS ioctls.
  [WATCHDOG] i6300esb.c: Cleanup

15 years agoMerge branch 'for-linus' of git://git.monstr.eu/linux-2.6-microblaze
Linus Torvalds [Mon, 13 Apr 2009 15:17:52 +0000 (08:17 -0700)]
Merge branch 'for-linus' of git://git.monstr.eu/linux-2.6-microblaze

* 'for-linus' of git://git.monstr.eu/linux-2.6-microblaze: (60 commits)
  microblaze_v8: Add MAINTAINERS fragment
  microblaze_v8: Uartlite for Microblaze
  microblaze_v8: Makefiles for Microblaze cpu
  microblaze_v8: Kconfig patches
  microblaze_v8: Interrupt handling and timer support
  microblaze_v8: syscalls.h
  microblaze_v8: pci headers
  microblaze_v8: Kbuild file
  microblaze_v8: string.h thread_info.h
  microblaze_v8: unistd.h
  microblaze_v8: fcntl.h sockios.h ucontext.h
  microblaze_v8: pool.h socket.h
  microblaze_v8: device.h param.h topology.h
  microblaze_v8: headers files entry.h current.h mman.h registers.h sembuf.h
  microblaze_v8: namei.h
  microblaze_v8: gpio.h, serial.h
  microblaze_v8: headers simple files - empty or redirect to asm-generic
  microblaze_v8: sigcontext.h siginfo.h
  microblaze_v8: termbits.h termios.h
  microblaze_v8: stats headers
  ...

15 years agoi2c: Let new-style drivers implement attach_adapter
Jean Delvare [Mon, 13 Apr 2009 15:02:14 +0000 (17:02 +0200)]
i2c: Let new-style drivers implement attach_adapter

While it isn't the way the standard device binding model works, it is
OK for new-style drivers to implement attach_adapter. It may help
convert the renaming legacy drivers to new style drivers faster.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: David Brownell <dbrownell@users.sourceforge.net>
15 years agoi2c: Fix sparse warnings for I2C_BOARD_INFO()
Ben Hutchings [Mon, 13 Apr 2009 15:02:14 +0000 (17:02 +0200)]
i2c: Fix sparse warnings for I2C_BOARD_INFO()

Since the first argument to I2C_BOARD_INFO() must be a string constant,
there is no need to parenthesise it, and adding parentheses results in
an invalid initialiser for char[].  gcc obviously accepts this syntax as
an extension, but sparse complains, e.g.:

drivers/net/sfc/boards.c:173:2: warning: array initialized from parenthesized string constant

Therefore, remove the parentheses.

Signed-off-by: Ben Hutchings <bhutchings@solarflare.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
15 years agoi2c-voodoo3: Deprecate in favor of tdfxfb
Jean Delvare [Mon, 13 Apr 2009 15:02:13 +0000 (17:02 +0200)]
i2c-voodoo3: Deprecate in favor of tdfxfb

Support for I2C/DDC was recently added to the tdfxfb driver, which
means that the i2c-voodoo3 driver can be deprecated.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Krzysztof Helt <krzysztof.h1@wp.pl>
15 years agoi2c-algo-pca: Fix use of uninitialized variable in debug message
Jean Delvare [Mon, 13 Apr 2009 15:02:13 +0000 (17:02 +0200)]
i2c-algo-pca: Fix use of uninitialized variable in debug message

A recent change broke debugging of pca_xfer(), fix it.

Reported-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Acked-by: Wolfram Sang <w.sang@pengutronix.de>
15 years agoRevert "ACPI battery: fix async boot oops"
Linus Torvalds [Sat, 11 Apr 2009 19:45:20 +0000 (12:45 -0700)]
Revert "ACPI battery: fix async boot oops"

This reverts commit 5d38258ec026921a7b266f4047ebeaa75db358e5, since the
underlying problem got fixed properly in the previous commit ("async:
Fix module loading async-work regression").

Cc: Arkadiusz Miskiewicz <a.miskiewicz@gmail.com>
Cc: Vegard Nossum <vegard.nossum@gmail.com>
Cc: Len Brown <len.brown@intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agoasync: Fix module loading async-work regression
Linus Torvalds [Fri, 10 Apr 2009 19:17:41 +0000 (12:17 -0700)]
async: Fix module loading async-work regression

Several drivers use asynchronous work to do device discovery, and we
synchronize with them in the compiled-in case before we actually try to
mount root filesystems etc.

However, when compiled as modules, that synchronization is missing - the
module loading completes, but the driver hasn't actually finished
probing for devices, and that means that any user mode that expects to
use the devices after the 'insmod' is now potentially broken.

We already saw one case of a similar issue in the ACPI battery code,
where the kernel itself expected the module to be all done, and unmapped
the init memory - but the async device discovery was still running.
That got hacked around by just removing the "__init" (see commit
5d38258ec026921a7b266f4047ebeaa75db358e5 "ACPI battery: fix async boot
oops"), but the real fix is to just make the module loading wait for all
async work to be completed.

It will slow down module loading, but since common devices should be
built in anyway, and since the bug is really annoying and hard to handle
from user space (and caused several S3 resume regressions), the simple
fix to wait is the right one.

This fixes at least

http://bugzilla.kernel.org/show_bug.cgi?id=13063

but probably a few other bugzilla entries too (12936, for example), and
is confirmed to fix Rafael's storage driver breakage after resume bug
report (no bugzilla entry).

We should also be able to now revert that ACPI battery fix.

Reported-and-tested-by: Rafael J. Wysocki <rjw@suse.com>
Tested-by: Heinz Diehl <htd@fancy-poultry.org>
Acked-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agoRemove stale include/asm-mn10300/.gitignore file
Linus Torvalds [Fri, 10 Apr 2009 21:07:51 +0000 (14:07 -0700)]
Remove stale include/asm-mn10300/.gitignore file

Requested-by: Sam Ravnborg <sam@ravnborg.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agoMAINTAINERS - Update MN10300 patterns
Joe Perches [Fri, 10 Apr 2009 19:35:13 +0000 (12:35 -0700)]
MAINTAINERS - Update MN10300 patterns

Signed-off-by: Joe Perches <joe@perches.com>
15 years agoMAINTAINERS - Update frv arch patterns
Joe Perches [Fri, 10 Apr 2009 19:32:11 +0000 (12:32 -0700)]
MAINTAINERS - Update frv arch patterns

Signed-off-by: Joe Perches <joe@perches.com>
15 years agoscripts/get_maintainer.pl - Allow multiple files on command line
Joe Perches [Fri, 10 Apr 2009 19:28:57 +0000 (12:28 -0700)]
scripts/get_maintainer.pl - Allow multiple files on command line

Improve handling of "by:" signoffs
Sorting and frequency checks are done by name/email, not
by "by:" tag.

Signed-off-by: Joe Perches <joe@perches.com>
15 years agoMAINTAINERS - Update Freescale sound patterns
Joe Perches [Thu, 9 Apr 2009 17:39:22 +0000 (10:39 -0700)]
MAINTAINERS - Update Freescale sound patterns

Signed-off-by: Joe Perches <joe@perches.com>
15 years agoMAINTAINERS - Add additional patterns
Joe Perches [Thu, 9 Apr 2009 09:42:01 +0000 (02:42 -0700)]
MAINTAINERS - Add additional patterns

for sections:

FINTEK F75375S HARDWARE MONITOR
PCA9532 LED DRIVER
S390 ZCRYPT DRIVER
SERIAL ATA (SATA) SUBSYSTEM
TMIO MMC DRIVER

Signed-off-by: Joe Perches <joe@perches.com>
15 years agoMAINTAINERS - Add missing "/" to some pattern directories
Joe Perches [Thu, 9 Apr 2009 03:20:27 +0000 (20:20 -0700)]
MAINTAINERS - Add missing "/" to some pattern directories

Signed-off-by: Joe Perches <joe@perches.com>
15 years agoMAINTAINERS - Update DRIVER CORE patterns
Joe Perches [Wed, 8 Apr 2009 17:04:18 +0000 (10:04 -0700)]
MAINTAINERS - Update DRIVER CORE patterns

Signed-off-by: Joe Perches <joe@perches.com>
15 years agoMAINTAINERS - Update M68K patterns
Joe Perches [Wed, 8 Apr 2009 15:39:56 +0000 (08:39 -0700)]
MAINTAINERS - Update M68K patterns

Signed-off-by: Joe Perches <joe@perches.com>
15 years agoMAINTAINERS - Coalesce sections "DVB" and "Video for Linux"
Joe Perches [Wed, 8 Apr 2009 15:34:04 +0000 (08:34 -0700)]
MAINTAINERS - Coalesce sections "DVB" and "Video for Linux"

Creating new section MEDIA INPUT INFRASTRUCTURE

Signed-off-by: Joe Perches <joe@perches.com>
15 years agoMAINTAINERS - Remove cyblafb frame buffer no longer in tree
Joe Perches [Wed, 8 Apr 2009 04:15:03 +0000 (21:15 -0700)]
MAINTAINERS - Remove cyblafb frame buffer no longer in tree

Signed-off-by: Joe Perches <joe@perches.com>
15 years agoMAINTAINERS - Remove x86/Voyager no longer in tree
Joe Perches [Wed, 8 Apr 2009 04:13:49 +0000 (21:13 -0700)]
MAINTAINERS - Remove x86/Voyager no longer in tree

Signed-off-by: Joe Perches <joe@perches.com>
15 years agoMAINTAINERS - Update FPU Emulator contact address and web page
Joe Perches [Wed, 8 Apr 2009 04:12:18 +0000 (21:12 -0700)]
MAINTAINERS - Update FPU Emulator contact address and web page

Signed-off-by: Joe Perches <joe@perches.com>
15 years agoMAINTAINERS - i2c_tiny_usb T: should be W:
Joe Perches [Wed, 8 Apr 2009 04:10:58 +0000 (21:10 -0700)]
MAINTAINERS - i2c_tiny_usb T: should be W:

Signed-off-by: Joe Perches <joe@perches.com>
15 years agoMAINTAINERS - Add Linus Torvalds' git
Joe Perches [Wed, 8 Apr 2009 04:09:58 +0000 (21:09 -0700)]
MAINTAINERS - Add Linus Torvalds' git

Signed-off-by: Joe Perches <joe@perches.com>
15 years agoMAINTAINERS - standardize "T: git urls"
Joe Perches [Wed, 8 Apr 2009 04:08:10 +0000 (21:08 -0700)]
MAINTAINERS - standardize "T:       git urls"

Various forms of "T:        git" entries exist:
git kernel.org:/
git kernel.org/
git://git.kernel.org/
Standardize on "T:  git git://git.kernel.org/<foo>" where appropriate
Fix a few bad git path entries

Signed-off-by: Joe Perches <joe@perches.com>
15 years agoMAINTAINERS - Remove HP Fibre Channel HBA no longer in tree
Joe Perches [Wed, 8 Apr 2009 04:00:22 +0000 (21:00 -0700)]
MAINTAINERS - Remove HP Fibre Channel HBA no longer in tree

Signed-off-by: Joe Perches <joe@perches.com>
15 years agoMAINTAINERS - Standardize style
Joe Perches [Wed, 8 Apr 2009 03:59:01 +0000 (20:59 -0700)]
MAINTAINERS - Standardize style

Use one email address per line
Remove file patterns from section names
Use tab after :

Signed-off-by: Joe Perches <joe@perches.com>
15 years agoMAINTAINERS - Add file patterns
Joe Perches [Wed, 8 Apr 2009 03:44:32 +0000 (20:44 -0700)]
MAINTAINERS - Add file patterns

Better description of file pattern tag "F:"
Add file exclusion tag "X:"
Add patterns to sections

Signed-off-by: Joe Perches <joe@perches.com>
15 years agoAdd scripts/get_maintainer.pl
Joe Perches [Wed, 8 Apr 2009 03:40:12 +0000 (20:40 -0700)]
Add scripts/get_maintainer.pl

A script to parse file pattern information in MAINTAINERS
and return selected information about a file or patch

usage: scripts/get_maintainer.pl [options] patchfile
       scripts/get_maintainer.pl [options] -f file
version: 0.14

MAINTAINERS field selection options:
  --email => print email address(es) if any
    --git => include git "*-by:" signers in commit count order
    --git-chief-penguins => include (Linus Torvalds)
    --git-min-signatures => number of signatures required (default: 1)
    --git-max-maintainers => maximum maintainers to add (default: 5)
    --git-since => git history to use (default: 1-year-ago)
    --m => include maintainer(s) if any
    --n => include name 'Full Name <addr@domain.tld>'
    --l => include list(s) if any
    --s => include subscriber only list(s) if any
  --scm => print SCM tree(s) if any
  --status => print status if any
  --subsystem => print subsystem name if any
  --web => print website(s) if any

Output type options:
  --separator [, ] => separator for multiple entries on 1 line
  --multiline => print 1 entry per line

Default options:
  [--email --git --m --n --l --multiline]

Other options:
  --version => show version
  --help => show this help information

Signed-off-by: Joe Perches <joe@perches.com>
Acked-by: Pavel Machek <pavel@ucw.cz>
15 years agopercpu: unbreak alpha percpu
Tejun Heo [Fri, 10 Apr 2009 19:02:40 +0000 (12:02 -0700)]
percpu: unbreak alpha percpu

For the time being, move the generic percpu_*() accessors to
linux/percpu.h.

asm-generic/percpu.h is meant to carry generic stuff for low level
stuff - declarations, definitions and pointer offset calculation
and so on but not for generic interface.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
15 years agoMerge git://git.infradead.org/~dwmw2/firmware-2.6
Linus Torvalds [Fri, 10 Apr 2009 19:01:22 +0000 (12:01 -0700)]
Merge git://git.infradead.org/~dwmw2/firmware-2.6

* git://git.infradead.org/~dwmw2/firmware-2.6:
  qla1280: Fix off-by-some error in firmware loading.
  Add README.AddingFirmware file. Basically telling people not to.
  firmware: Remove newly-added slicoss and sxg firmware images
  firmware/WHENCE: Add missing origin information for Ambassador atmsar11.fw
  ALSA: wavefront - Always use request_firmware()
  Remove fdump tool for av7110 firmware
  firmware: convert av7110 driver to request_firmware()
  Partially revert "V4L/DVB (9533): cx88: Add support for TurboSight TBS8910 DVB-S PCI card"
  Revert "fix modules_install via NFS"

Add-add conflicts in firmware/WHENCE fixed manually

15 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-2.6-mn10300
Linus Torvalds [Fri, 10 Apr 2009 17:01:49 +0000 (10:01 -0700)]
Merge git://git./linux/kernel/git/dhowells/linux-2.6-mn10300

* git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-2.6-mn10300:
  Separate out the proc- and unit-specific header directories from the general
  Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/.

15 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-2.6-frv
Linus Torvalds [Fri, 10 Apr 2009 14:47:13 +0000 (07:47 -0700)]
Merge git://git./linux/kernel/git/dhowells/linux-2.6-frv

* git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-2.6-frv:
  FRV: Move to arch/frv/include/asm/
  FRV: Fix indentation errors to keep git-am happy when moving arch header files

15 years agoSeparate out the proc- and unit-specific header directories from the general
David Howells [Fri, 10 Apr 2009 13:33:48 +0000 (14:33 +0100)]
Separate out the proc- and unit-specific header directories from the general
MN10300 arch headers and place them instead in the same directories as contain
the .c files for the processor and unit implementations.

This permits the symlinks include/asm/proc and include/asm/unit to be
dispensed with.  This does, however, require that #include <asm/proc/xxx.h> be
converted to #include <proc/xxx.h> and similarly for asm/unit -> unit.

Signed-off-by: David Howells <dhowells@redhat.com>
15 years agoMove arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/.
David Howells [Fri, 10 Apr 2009 13:19:03 +0000 (14:19 +0100)]
Move arch headers from include/asm-mn10300/ to arch/mn10300/include/asm/.

Signed-off-by: David Howells <dhowells@redhat.com>
15 years agoFRV: Move to arch/frv/include/asm/
David Howells [Fri, 10 Apr 2009 00:48:06 +0000 (01:48 +0100)]
FRV: Move to arch/frv/include/asm/

Move arch headers from include/asm-frv/ to arch/frv/include/asm/.

Signed-off-by: David Howells <dhowells@redhat.com>
15 years agoFRV: Fix indentation errors to keep git-am happy when moving arch header files
David Howells [Fri, 10 Apr 2009 00:48:01 +0000 (01:48 +0100)]
FRV: Fix indentation errors to keep git-am happy when moving arch header files

Fix indentation errors to keep git-am happy when moving arch header files.

Signed-off-by: David Howells <dhowells@redhat.com>
15 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6
Linus Torvalds [Thu, 9 Apr 2009 23:43:30 +0000 (16:43 -0700)]
Merge git://git./linux/kernel/git/bart/ide-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: (27 commits)
  xsysace: Fix dereferencing of cf_id after hd_driveid removal
  at91_ide: turn on PIO 6 support
  at91_ide: remove unused ide_mm_{outb,inb}
  ide-cd: reverse NOT_READY sense key logic
  ide: refactor tf_read() method
  ide: refactor tf_load() method
  ide: call write_devctl() method from tf_read() method
  ide: move common code out of tf_load() method
  ide: simplify 'struct ide_taskfile'
  ide: replace IDE_TFLAG_* flags by IDE_VALID_*
  ide-cd: fix intendation in cdrom_decode_status()
  ide-cd: unify handling of fs and pc requests in cdrom_decode_status()
  ide-cd: convert cdrom_decode_status() to use switch statements
  ide-cd: update debugging support
  ide-cd: respect REQ_QUIET for fs requests in cdrom_decode_status()
  ide: remove unused #include <linux/version.h>
  tx4939ide: Fix tx4939ide_{in,out}put_data_swap argument
  tx493[89]ide: Remove big endian version of tx493[89]ide_tf_{load,read}
  ide-cd: carve out an ide_cd_breathe()-helper for fs write requests
  ide-cd: move status checking into the IRQ handler
  ...

15 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland...
Linus Torvalds [Thu, 9 Apr 2009 23:42:26 +0000 (16:42 -0700)]
Merge branch 'for-linus' of git://git./linux/kernel/git/roland/infiniband

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:
  RDMA/nes: Add support for new SFP+ PHY
  RDMA/nes: Add wide_ppm_offset parm for switch compatibility
  RDMA/nes: Fix SFP+ PHY initialization
  RDMA/nes: Fix nes_nic_cm_xmit() error handling
  RDMA/nes: Fix error handling issues
  RDMA/nes: Fix incorrect casts on 32-bit architectures
  IPoIB: Document newish features
  RDMA/cma: Create cm id even when IB port is down
  RDMA/cma: Use rate from IPoIB broadcast when joining IPoIB multicast groups
  IPoIB: Avoid free_netdev() BUG when destroying a child interface
  mlx4_core: Don't leak mailbox for SET_PORT on Ethernet ports
  RDMA/cxgb3: Release dependent resources only when endpoint memory is freed.
  RDMA/cxgb3: Handle EEH events
  IB/mlx4: Use pgprot_writecombine() for BlueFlame pages

15 years agoMerge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4
Linus Torvalds [Thu, 9 Apr 2009 23:42:05 +0000 (16:42 -0700)]
Merge branch 'for_linus' of git://git./linux/kernel/git/tytso/ext4

* 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:
  ext4: check block device size on mount
  ext4: Fix off-by-one-error in ext4_valid_extent_idx()
  ext4: Fix big-endian problem in __ext4_check_blockref()

15 years agox86: fix set_fixmap to use phys_addr_t
Masami Hiramatsu [Thu, 9 Apr 2009 17:55:33 +0000 (10:55 -0700)]
x86: fix set_fixmap to use phys_addr_t

Use phys_addr_t for receiving a physical address argument instead of
unsigned long.  This allows fixmap to handle pages higher than 4GB on
x86-32.

Signed-off-by: Masami Hiramatsu <mhiramat@redhat.com>
Cc: Ingo Molnar <mingo@elte.hu>
Acked-by: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agoMN10300: Kill MN10300's own profiling Kconfig
David Howells [Thu, 9 Apr 2009 17:41:23 +0000 (18:41 +0100)]
MN10300: Kill MN10300's own profiling Kconfig

Kill MN10300's own profiling Kconfig as this is superfluous given that the
profiling options have moved to init/Kconfig and arch/Kconfig.  Not only is
this now superfluous, but the dependencies are not correct.

Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agoFRV: Use <asm-generic/pgtable.h> in NOMMU mode
David Howells [Thu, 9 Apr 2009 16:32:55 +0000 (17:32 +0100)]
FRV: Use <asm-generic/pgtable.h> in NOMMU mode

asm-frv/pgtable.h could just #include <asm-generic/pgtable.h> in NOMMU mode
rather than #defining macros for lazy MMU and CPU stuff.

Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agokeys: Handle there being no fallback destination keyring for request_key()
David Howells [Thu, 9 Apr 2009 16:14:05 +0000 (17:14 +0100)]
keys: Handle there being no fallback destination keyring for request_key()

When request_key() is called, without there being any standard process
keyrings on which to fall back if a destination keyring is not specified, an
oops is liable to occur when construct_alloc_key() calls down_write() on
dest_keyring's semaphore.

Due to function inlining this may be seen as an oops in down_write() as called
from request_key_and_link().

This situation crops up during boot, where request_key() is called from within
the kernel (such as in CIFS mounts) where nobody is actually logged in, and so
PAM has not had a chance to create a session keyring and user keyrings to act
as the fallback.

To fix this, make construct_alloc_key() not attempt to cache a key if there is
no fallback key if no destination keyring is given specifically.

Signed-off-by: David Howells <dhowells@redhat.com>
Tested-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agoafs: BUG to BUG_ON changes
Stoyan Gaydarov [Thu, 9 Apr 2009 16:10:28 +0000 (17:10 +0100)]
afs: BUG to BUG_ON changes

Signed-off-by: Stoyan Gaydarov <stoyboyker@gmail.com>
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agoMerge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git...
Linus Torvalds [Thu, 9 Apr 2009 17:38:23 +0000 (10:38 -0700)]
Merge branch 'x86-fixes-for-linus' of git://git./linux/kernel/git/tip/linux-2.6-tip

* 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  x86: cpu_debug remove execute permission
  x86: smarten /proc/interrupts output for new counters
  x86: DMI match for the Dell DXP061 as it needs BIOS reboot
  x86: make 64 bit to use default_inquire_remote_apic
  x86, setup: un-resequence mode setting for VGA 80x34 and 80x60 modes
  x86, intel-iommu: fix X2APIC && !ACPI build failure

15 years agoMerge branch 'tracing-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Thu, 9 Apr 2009 17:37:46 +0000 (10:37 -0700)]
Merge branch 'tracing-fixes-for-linus' of git://git./linux/kernel/git/tip/linux-2.6-tip

* 'tracing-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  tracing: consolidate documents
  blktrace: pass the right pointer to kfree()
  tracing/syscalls: use a dedicated file header
  tracing: append a comma to INIT_FTRACE_GRAPH

15 years agoMerge branch 'sched-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel...
Linus Torvalds [Thu, 9 Apr 2009 17:37:28 +0000 (10:37 -0700)]
Merge branch 'sched-fixes-for-linus' of git://git./linux/kernel/git/tip/linux-2.6-tip

* 'sched-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  sched: do not count frozen tasks toward load
  sched: refresh MAINTAINERS entry
  sched: Print sched_group::__cpu_power in sched_domain_debug
  cpuacct: add per-cgroup utime/stime statistics
  posixtimers, sched: Fix posix clock monotonicity
  sched_rt: don't allocate cpumask in fastpath
  cpuacct: make cpuacct hierarchy walk in cpuacct_charge() safe when rcupreempt is used -v2

15 years agoMerge branches 'core-fixes-for-linus', 'irq-fixes-for-linus' and 'timers-fixes-for...
Linus Torvalds [Thu, 9 Apr 2009 17:35:30 +0000 (10:35 -0700)]
Merge branches 'core-fixes-for-linus', 'irq-fixes-for-linus' and 'timers-fixes-for-linus' of git://git./linux/kernel/git/tip/linux-2.6-tip

* 'core-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  printk: fix wrong format string iter for printk
  futex: comment requeue key reference semantics

* 'irq-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  irq: fix cpumask memory leak on offstack cpumask kernels

* 'timers-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
  posix-timers: fix RLIMIT_CPU && setitimer(CPUCLOCK_PROF)
  posix-timers: fix RLIMIT_CPU && fork()
  timers: add missing kernel-doc

15 years agoMN10300: Convert obsolete no_irq_type to no_irq_chip
Thomas Gleixner [Thu, 9 Apr 2009 17:18:47 +0000 (18:18 +0100)]
MN10300: Convert obsolete no_irq_type to no_irq_chip

Convert the last remaining users to no_irq_chip.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agomutex: have non-spinning mutexes on s390 by default
Heiko Carstens [Thu, 9 Apr 2009 16:48:34 +0000 (18:48 +0200)]
mutex: have non-spinning mutexes on s390 by default

Impact: performance regression fix for s390

The adaptive spinning mutexes will not always do what one would expect on
virtualized architectures like s390. Especially the cpu_relax() loop in
mutex_spin_on_owner might hurt if the mutex holding cpu has been scheduled
away by the hypervisor.

We would end up in a cpu_relax() loop when there is no chance that the
state of the mutex changes until the target cpu has been scheduled again by
the hypervisor.

For that reason we should change the default behaviour to no-spin on s390.

We do have an instruction which allows to yield the current cpu in favour of
a different target cpu. Also we have an instruction which allows us to figure
out if the target cpu is physically backed.

However we need to do some performance tests until we can come up with
a solution that will do the right thing on s390.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Cc: Christian Borntraeger <borntraeger@de.ibm.com>
LKML-Reference: <20090409184834.7a0df7b2@osiris.boeblingen.de.ibm.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
15 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm
Linus Torvalds [Thu, 9 Apr 2009 15:01:21 +0000 (08:01 -0700)]
Merge git://git./linux/kernel/git/agk/linux-2.6-dm

* git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm:
  dm kcopyd: fix callback race
  dm kcopyd: prepare for callback race fix
  dm: implement basic barrier support
  dm: remove dm_request loop
  dm: rework queueing and suspension
  dm: simplify dm_request loop
  dm: split DMF_BLOCK_IO flag into two
  dm: rearrange dm_wq_work
  dm: remove limited barrier support
  dm: add integrity support

15 years agomodule: try_then_request_module must wait
Herbert Xu [Thu, 9 Apr 2009 02:35:47 +0000 (10:35 +0800)]
module: try_then_request_module must wait

Since the whole point of try_then_request_module is to retry
the operation after a module has been loaded, we must wait for
the module to fully load.

Otherwise all sort of things start breaking, e.g., you won't
be able to read your encrypted disks on the first attempt.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Tested-by: Maciej Rutecki <maciej.rutecki@gmail.com>
Tested-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agoMerge branch 'master' of /pub/scm/linux/kernel/git/torvalds/linux-2.6
Wim Van Sebroeck [Thu, 9 Apr 2009 05:51:57 +0000 (05:51 +0000)]
Merge branch 'master' of /linux/kernel/git/torvalds/linux-2.6

15 years agosched: do not count frozen tasks toward load
Nathan Lynch [Thu, 9 Apr 2009 00:45:12 +0000 (19:45 -0500)]
sched: do not count frozen tasks toward load

Freezing tasks via the cgroup freezer causes the load average to climb
because the freezer's current implementation puts frozen tasks in
uninterruptible sleep (D state).

Some applications which perform job-scheduling functions consult the
load average when making decisions.  If a cgroup is frozen, the load
average does not provide a useful measure of the system's utilization
to such applications.  This is especially inconvenient if the job
scheduler employs the cgroup freezer as a mechanism for preempting low
priority jobs.  Contrast this with using SIGSTOP for the same purpose:
the stopped tasks do not count toward system load.

Change task_contributes_to_load() to return false if the task is
frozen.  This results in /proc/loadavg behavior that better meets
users' expectations.

Signed-off-by: Nathan Lynch <ntl@pobox.com>
Acked-by: Andrew Morton <akpm@linux-foundation.org>
Acked-by: Nigel Cunningham <nigel@tuxonice.net>
Tested-by: Nigel Cunningham <nigel@tuxonice.net>
Cc: <stable@kernel.org>
Cc: containers@lists.linux-foundation.org
Cc: linux-pm@lists.linux-foundation.org
Cc: Matt Helsley <matthltc@us.ibm.com>
LKML-Reference: <20090408194512.47a99b95@manatee.lan>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
15 years agotracing: consolidate documents
Li Zefan [Thu, 9 Apr 2009 03:40:27 +0000 (11:40 +0800)]
tracing: consolidate documents

Move kmemtrace.txt, tracepoints.txt, ftrace.txt and mmiotrace.txt to
the new trace/ directory.

I didnt find any references to those documents in both source
files and documents, so no extra work needs to be done.

Signed-off-by: Li Zefan <lizf@cn.fujitsu.com>
Acked-by: Pekka Paalanen <pq@iki.fi>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
LKML-Reference: <49DD6E2B.6090200@cn.fujitsu.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
15 years agox86: cpu_debug remove execute permission
Jaswinder Singh Rajput [Wed, 8 Apr 2009 17:19:46 +0000 (22:49 +0530)]
x86: cpu_debug remove execute permission

It seems by mistake these files got execute permissions so removing it.

Signed-off-by: Jaswinder Singh Rajput <jaswinderrajput@gmail.com>
LKML-Reference: <1239211186.9037.2.camel@ht.satnam>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
15 years agoblktrace: pass the right pointer to kfree()
Li Zefan [Thu, 9 Apr 2009 03:19:40 +0000 (11:19 +0800)]
blktrace: pass the right pointer to kfree()

Impact: fix kfree crash with non-standard act_mask string

If passing a string with leading white spaces to strstrip(),
the returned ptr != the original ptr.

This bug was introduced by me.

Signed-off-by: Li Zefan <lizf@cn.fujitsu.com>
Cc: Jens Axboe <jens.axboe@oracle.com>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
LKML-Reference: <49DD694C.8020902@cn.fujitsu.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
15 years agotracing/syscalls: use a dedicated file header
Frederic Weisbecker [Wed, 8 Apr 2009 18:40:59 +0000 (20:40 +0200)]
tracing/syscalls: use a dedicated file header

Impact: fix build warnings and possibe compat misbehavior on IA64

Building a kernel on ia64 might trigger these ugly build warnings:

CC      arch/ia64/ia32/sys_ia32.o
In file included from arch/ia64/ia32/sys_ia32.c:55:
arch/ia64/ia32/ia32priv.h:290:1: warning: "elf_check_arch" redefined
In file included from include/linux/elf.h:7,
                 from include/linux/module.h:14,
                 from include/linux/ftrace.h:8,
                 from include/linux/syscalls.h:68,
                 from arch/ia64/ia32/sys_ia32.c:18:
arch/ia64/include/asm/elf.h:19:1: warning: this is the location of the previous definition
[...]

sys_ia32.c includes linux/syscalls.h which in turn includes linux/ftrace.h
to import the syscalls tracing prototypes.

But including ftrace.h can pull too much things for a low level file,
especially on ia64 where the ia32 private headers conflict with higher
level headers.

Now we isolate the syscall tracing headers in their own lightweight file.

Reported-by: Tony Luck <tony.luck@intel.com>
Tested-by: Tony Luck <tony.luck@intel.com>
Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com>
Acked-by: Tony Luck <tony.luck@intel.com>
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Jason Baron <jbaron@redhat.com>
Cc: "Frank Ch. Eigler" <fche@redhat.com>
Cc: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Cc: Lai Jiangshan <laijs@cn.fujitsu.com>
Cc: Jiaying Zhang <jiayingz@google.com>
Cc: Michael Rubin <mrubin@google.com>
Cc: Martin Bligh <mbligh@google.com>
Cc: Michael Davidson <md@google.com>
LKML-Reference: <20090408184058.GB6017@nowhere>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
15 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus
Linus Torvalds [Thu, 9 Apr 2009 01:00:55 +0000 (18:00 -0700)]
Merge git://git./linux/kernel/git/rusty/linux-2.6-for-linus

* git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:
  work_on_cpu(): rewrite it to create a kernel thread on demand
  kthread: move sched-realeted initialization from kthreadd context
  kthread: Don't looking for a task in create_kthread() #2

15 years agoMerge git://git.infradead.org/battery-2.6
Linus Torvalds [Thu, 9 Apr 2009 00:45:02 +0000 (17:45 -0700)]
Merge git://git.infradead.org/battery-2.6

* git://git.infradead.org/battery-2.6:
  pda_power: Add optional OTG transceiver and voltage regulator support
  pcf50633_charger: Remove unused mbc_set_status function
  pcf50633_charger: Enable periodic charging restart

15 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris...
Linus Torvalds [Thu, 9 Apr 2009 00:44:28 +0000 (17:44 -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:
  cap_prctl: don't set error to 0 at 'no_change'

15 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Thu, 9 Apr 2009 00:43:58 +0000 (17:43 -0700)]
Merge git://git./linux/kernel/git/davem/net-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
  igb: remove sysfs entry that was used to set the number of vfs
  igbvf: add new driver to support 82576 virtual functions
  drivers/net/eql.c: Fix a dev leakage.
  niu: Fix unused variable warning.
  r6040: set MODULE_VERSION
  bnx2: Don't use reserved names
  FEC driver: add missing #endif
  niu: Fix error handling
  mv643xx_eth: don't reset the rx coal timer on interface up
  smsc911x: correct debugging message on mii read timeout
  ethoc: fix library build errors
  netfilter: ctnetlink: fix regression in expectation handling
  netfilter: fix selection of "LED" target in netfilter
  netfilter: ip6tables regression fix

15 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Thu, 9 Apr 2009 00:43:39 +0000 (17:43 -0700)]
Merge git://git./linux/kernel/git/davem/sparc-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
  sparc: Hook up sys_preadv and sys_pwritev
  sparc64: add_node_ranges() must be __init
  serial: sunsu: sunsu_kbd_ms_init needs to be __devinit
  sparc: Fix section mismatch warnings in cs4231 sound driver.
  sparc64: Fix section mismatch warnings in PCI controller drivers.
  sparc64: Fix section mismatch warnings in power driver.
  sparc64: get_cells() can't be marked __init

15 years agoMerge branch 'ext3-latency-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git...
Linus Torvalds [Thu, 9 Apr 2009 00:42:32 +0000 (17:42 -0700)]
Merge branch 'ext3-latency-fixes' of git://git./linux/kernel/git/tytso/ext4

* 'ext3-latency-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:
  ext3: Try to avoid starting a transaction in writepage for data=writepage
  block_write_full_page: switch synchronous writes to use WRITE_SYNC_PLUG

15 years agowork_on_cpu(): rewrite it to create a kernel thread on demand
Andrew Morton [Thu, 9 Apr 2009 15:50:37 +0000 (09:50 -0600)]
work_on_cpu(): rewrite it to create a kernel thread on demand

Impact: circular locking bugfix

The various implemetnations and proposed implemetnations of work_on_cpu()
are vulnerable to various deadlocks because they all used queues of some
form.

Unrelated pieces of kernel code thus gained dependencies wherein if one
work_on_cpu() caller holds a lock which some other work_on_cpu() callback
also takes, the kernel could rarely deadlock.

Fix this by creating a short-lived kernel thread for each work_on_cpu()
invokation.

This is not terribly fast, but the only current caller of work_on_cpu() is
pci_call_probe().

It would be nice to find some other way of doing the node-local
allocations in the PCI probe code so that we can zap work_on_cpu()
altogether.  The code there is rather nasty.  I can't think of anything
simple at this time...

Cc: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
15 years agokthread: move sched-realeted initialization from kthreadd context
Oleg Nesterov [Thu, 9 Apr 2009 15:50:36 +0000 (09:50 -0600)]
kthread: move sched-realeted initialization from kthreadd context

kthreadd is the single thread which implements ths "create" request, move
sched_setscheduler/etc from create_kthread() to kthread_create() to
improve the scalability.

We should be careful with sched_setscheduler(), use _nochek helper.

Signed-off-by: Oleg Nesterov <oleg@redhat.com>
Cc: Christoph Hellwig <hch@lst.de>
Cc: "Eric W. Biederman" <ebiederm@xmission.com>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Pavel Emelyanov <xemul@openvz.org>
Cc: Vitaliy Gusev <vgusev@openvz.org
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
15 years agokthread: Don't looking for a task in create_kthread() #2
Vitaliy Gusev [Thu, 9 Apr 2009 15:50:35 +0000 (09:50 -0600)]
kthread: Don't looking for a task in create_kthread() #2

Remove the unnecessary find_task_by_pid_ns(). kthread() can just
use "current" to get the same result.

Signed-off-by: Vitaliy Gusev <vgusev@openvz.org>
Acked-by: Oleg Nesterov <oleg@redhat.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
15 years agodm kcopyd: fix callback race
Mikulas Patocka [Wed, 8 Apr 2009 23:27:17 +0000 (00:27 +0100)]
dm kcopyd: fix callback race

If the thread calling dm_kcopyd_copy is delayed due to scheduling inside
split_job/segment_complete and the subjobs complete before the loop in
split_job completes, the kcopyd callback could be invoked from the
thread that called dm_kcopyd_copy instead of the kcopyd workqueue.

dm_kcopyd_copy -> split_job -> segment_complete -> job->fn()

Snapshots depend on the fact that callbacks are called from the singlethreaded
kcopyd workqueue and expect that there is no racing between individual
callbacks. The racing between callbacks can lead to corruption of exception
store and it can also mean that exception store callbacks are called twice
for the same exception - a likely reason for crashes reported inside
pending_complete() / remove_exception().

This patch fixes two problems:

1. job->fn being called from the thread that submitted the job (see above).

- Fix: hand over the completion callback to the kcopyd thread.

2. job->fn(read_err, write_err, job->context); in segment_complete
reports the error of the last subjob, not the union of all errors.

- Fix: pass job->write_err to the callback to report all error bits
  (it is done already in run_complete_job)

Cc: stable@kernel.org
Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
15 years agodm kcopyd: prepare for callback race fix
Mikulas Patocka [Wed, 8 Apr 2009 23:27:16 +0000 (00:27 +0100)]
dm kcopyd: prepare for callback race fix

Use a variable in segment_complete() to point to the dm_kcopyd_client
struct and only release job->pages in run_complete_job() if any are
defined.  These changes are needed by the next patch.

Cc: stable@kernel.org
Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
15 years agodm: implement basic barrier support
Mikulas Patocka [Wed, 8 Apr 2009 23:27:16 +0000 (00:27 +0100)]
dm: implement basic barrier support

Barriers are submitted to a worker thread that issues them in-order.

The thread is modified so that when it sees a barrier request it waits
for all pending IO before the request then submits the barrier and
waits for it.  (We must wait, otherwise it could be intermixed with
following requests.)

Errors from the barrier request are recorded in a per-device barrier_error
variable. There may be only one barrier request in progress at once.

For now, the barrier request is converted to a non-barrier request when
sending it to the underlying device.

This patch guarantees correct barrier behavior if the underlying device
doesn't perform write-back caching. The same requirement existed before
barriers were supported in dm.

Bottom layer barrier support (sending barriers by target drivers) and
handling devices with write-back caches will be done in further patches.

Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
15 years agodm: remove dm_request loop
Mikulas Patocka [Wed, 8 Apr 2009 23:27:15 +0000 (00:27 +0100)]
dm: remove dm_request loop

Remove queue_io return value and a loop in dm_request.

IO may be submitted to a worker thread with queue_io().  queue_io() sets
DMF_QUEUE_IO_TO_THREAD so that all further IO is queued for the thread. When
the thread finishes its work, it clears DMF_QUEUE_IO_TO_THREAD and from this
point on, requests are submitted from dm_request again. This will be used
for processing barriers.

Remove the loop in dm_request. queue_io() can submit I/Os to the worker thread
even if DMF_QUEUE_IO_TO_THREAD was not set.

Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
15 years agodm: rework queueing and suspension
Mikulas Patocka [Wed, 8 Apr 2009 23:27:15 +0000 (00:27 +0100)]
dm: rework queueing and suspension

Rework shutting down on suspend and document the associated rules.

Drop write lock in __split_and_process_bio to allow more processing
concurrency.

Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
15 years agodm: simplify dm_request loop
Alasdair G Kergon [Wed, 8 Apr 2009 23:27:14 +0000 (00:27 +0100)]
dm: simplify dm_request loop

Refactor the code in dm_request().

Require the new DMF_BLOCK_FOR_SUSPEND flag on readahead bios we will
discard so we don't drop such bios while processing a barrier.

Signed-off-by: Alasdair G Kergon <agk@redhat.com>
15 years agodm: split DMF_BLOCK_IO flag into two
Alasdair G Kergon [Wed, 8 Apr 2009 23:27:14 +0000 (00:27 +0100)]
dm: split DMF_BLOCK_IO flag into two

Split the DMF_BLOCK_IO flag into two.

DMF_BLOCK_IO_FOR_SUSPEND is set when I/O must be blocked while suspending a
device.  DMF_QUEUE_IO_TO_THREAD is set when I/O must be queued to a
worker thread for later processing.

Signed-off-by: Alasdair G Kergon <agk@redhat.com>
15 years agodm: rearrange dm_wq_work
Alasdair G Kergon [Wed, 8 Apr 2009 23:27:13 +0000 (00:27 +0100)]
dm: rearrange dm_wq_work

Refactor dm_wq_work() to make later patch more readable.

Signed-off-by: Alasdair G Kergon <agk@redhat.com>
15 years agodm: remove limited barrier support
Mikulas Patocka [Wed, 8 Apr 2009 23:27:13 +0000 (00:27 +0100)]
dm: remove limited barrier support

Prepare for full barrier implementation: first remove the restricted support.

Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
15 years agodm: add integrity support
Martin K. Petersen [Wed, 8 Apr 2009 23:27:12 +0000 (00:27 +0100)]
dm: add integrity support

This patch provides support for data integrity passthrough in the device
mapper.

 - If one or more component devices support integrity an integrity
   profile is preallocated for the DM device.

 - If all component devices have compatible profiles the DM device is
   flagged as capable.

 - Handle integrity metadata when splitting and cloning bios.

Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
15 years agocap_prctl: don't set error to 0 at 'no_change'
Serge E. Hallyn [Wed, 8 Apr 2009 21:55:58 +0000 (16:55 -0500)]
cap_prctl: don't set error to 0 at 'no_change'

One-liner: capsh --print is broken without this patch.

In certain cases, cap_prctl returns error > 0 for success.  However,
the 'no_change' label was always setting error to 0.  As a result,
for example, 'prctl(CAP_BSET_READ, N)' would always return 0.
It should return 1 if a process has N in its bounding set (as
by default it does).

I'm keeping the no_change label even though it's now functionally
the same as 'error'.

Signed-off-by: Serge Hallyn <serue@us.ibm.com>
Acked-by: David Howells <dhowells@redhat.com>
Signed-off-by: James Morris <jmorris@namei.org>
15 years agoigb: remove sysfs entry that was used to set the number of vfs
Alexander Duyck [Tue, 7 Apr 2009 14:37:52 +0000 (14:37 +0000)]
igb: remove sysfs entry that was used to set the number of vfs

This patch removes the sysfs entry num_vfs which was added to support
enabling pci virtual functions for 82576.

To prevent VFs from loading automatically a module parameter "max_vfs" was
added so that the number of VFs per PF can be limited.  This is especially
useful when 4 or more 82576 ports are on the system because otherwise to
load all VFs would result in 8 interface per physical port.

Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agoigbvf: add new driver to support 82576 virtual functions
Alexander Duyck [Tue, 7 Apr 2009 14:37:34 +0000 (14:37 +0000)]
igbvf: add new driver to support 82576 virtual functions

This adds an igbvf driver to handle virtual functions provided by the
igb driver when SR-IOV has been enabled.  A virtual function is a
lightweight pci-e function that supports a single queue and shares
resources with the 82576 physical function contained within the igb
driver.

To spawn virtual functions from the igb driver all that is needed is to
enable CONFIG_PCI_IOV and have an 82576 Ethernet adapter on a system that
supports SR-IOV in the BIOS.  The virtual functions will appear after the
interface is loaded.

Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agodrivers/net/eql.c: Fix a dev leakage.
Yang Hongyang [Wed, 8 Apr 2009 22:56:33 +0000 (15:56 -0700)]
drivers/net/eql.c: Fix a dev leakage.

After dev_get_by_name(), we should follow a dev_put().

Signed-off-by: Yang Hongyang <yanghy@cn.fujitsu.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agoniu: Fix unused variable warning.
David S. Miller [Wed, 8 Apr 2009 22:52:16 +0000 (15:52 -0700)]
niu: Fix unused variable warning.

Don't strain gcc's tiny mind.

Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agor6040: set MODULE_VERSION
Florian Fainelli [Wed, 8 Apr 2009 22:50:43 +0000 (15:50 -0700)]
r6040: set MODULE_VERSION

This patch sets MODULE_VERSION in order to help users track
changes to this module.

Signed-off-by: Florian Fainelli <florian@openwrt.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agobnx2: Don't use reserved names
Bastian Blank [Wed, 8 Apr 2009 22:50:07 +0000 (15:50 -0700)]
bnx2: Don't use reserved names

The mips identifier is reserved by gcc on mips plattforms. Don't use it
in the code.

Signed-off-by: Bastian Blank <waldi@debian.org>
Tested-by: Martin Michlmayr <tbm@cyrius.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agoFEC driver: add missing #endif
Sascha Hauer [Wed, 8 Apr 2009 22:44:45 +0000 (15:44 -0700)]
FEC driver: add missing #endif

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agoniu: Fix error handling
Dan Carpenter [Wed, 8 Apr 2009 22:44:04 +0000 (15:44 -0700)]
niu: Fix error handling

platform_device_register_simple() returns ERR_PTR(), not NULL, if an error
occurs.

Found by smatch (http://repo.or.cz/w/smatch.git).  Compile tested.

Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agomv643xx_eth: don't reset the rx coal timer on interface up
Lennert Buytenhek [Wed, 8 Apr 2009 22:42:46 +0000 (15:42 -0700)]
mv643xx_eth: don't reset the rx coal timer on interface up

Move SDMA configuration from interface up to port probe, to prevent
overwriting the receive coalescing timer value on interface up.

Signed-off-by: Lennert Buytenhek <buytenh@marvell.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agosmsc911x: correct debugging message on mii read timeout
Steve Glendinning [Wed, 8 Apr 2009 22:42:15 +0000 (15:42 -0700)]
smsc911x: correct debugging message on mii read timeout

the warning printed when a mii READ times out currently says "Timed out
waiting for MII write to finish".  This patch corrects this.

Signed-off-by: Steve Glendinning <steve.glendinning@smsc.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agoethoc: fix library build errors
Randy Dunlap [Wed, 8 Apr 2009 22:41:25 +0000 (15:41 -0700)]
ethoc: fix library build errors

ethoc indirectly uses crc32_le() and bitrev32(), so select
those library functions to be built.

drivers/built-in.o: In function `ethoc_set_multicast_list':
ethoc.c:(.text+0x6226f): undefined reference to `crc32_le'
ethoc.c:(.text+0x62276): undefined reference to `bitrev32'

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
15 years agoMerge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6
Linus Torvalds [Wed, 8 Apr 2009 22:36:42 +0000 (15:36 -0700)]
Merge branch 'release' of git://git./linux/kernel/git/aegl/linux-2.6

* 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:
  [IA64] wire up preadv/pwritev system calls