10 years agobtsdio: free sk_buff with kfree_skb
Sergio Luis [Mon, 27 Oct 2008 06:08:48 +0000]
btsdio: free sk_buff with kfree_skb

free sk_buff with kfree_skb, instead of kree

Signed-off-by: Sergio Luis <sergio@larces.uece.br>
Signed-off-by: David S. Miller <davem@davemloft.net>

10 years agoPhonet: do not reply to indication reset packets
Remi Denis-Courmont [Mon, 27 Oct 2008 06:07:25 +0000]
Phonet: do not reply to indication reset packets

This fixes a potential error packet loop.

Signed-off-by: Remi Denis-Courmont <remi.denis-courmont@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

10 years agoPhonet: include generic link-layer header size in MAX_PHONET_HEADER
Remi Denis-Courmont [Mon, 27 Oct 2008 06:06:31 +0000]
Phonet: include generic link-layer header size in MAX_PHONET_HEADER

This fixes an OOPS in hard_header if a Phonet address is assigned to a
non-Phonet network interface.

Signed-off-by: Remi Denis-Courmont <remi.denis-courmont@nokia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

10 years agoMerge branch 'for-linus' of git://neil.brown.name/md
Linus Torvalds [Sun, 26 Oct 2008 23:42:18 +0000]
Merge branch 'for-linus' of git://neil.brown.name/md

* 'for-linus' of git://neil.brown.name/md:
  md: allow extended partitions on md devices.
  md: use sysfs_notify_dirent to notify changes to md/dev-xxx/state
  md: use sysfs_notify_dirent to notify changes to md/array_state

10 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
Linus Torvalds [Sun, 26 Oct 2008 23:40:59 +0000]
Merge branch 'for-linus' of git://git./linux/kernel/git/dtor/input

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
  Input: psmouse - add support for Elantech touchpads
  Input: i8042 - add Blue FB5601 to noloop exception table

10 years agoMerge branch 'for-linus' of git://git.o-hand.com/linux-mfd
Linus Torvalds [Sun, 26 Oct 2008 23:37:37 +0000]
Merge branch 'for-linus' of git://git.o-hand.com/linux-mfd

* 'for-linus' of git://git.o-hand.com/linux-mfd:
  mfd: Make WM8400 depend on I2C until SPI is submitted
  mfd: add missing Kconfig entry for da903x

10 years agoMerge branch 'for-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/dvrabel/uwb
Linus Torvalds [Sun, 26 Oct 2008 23:35:41 +0000]
Merge branch 'for-upstream' of git://git./linux/kernel/git/dvrabel/uwb

* 'for-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/dvrabel/uwb:
  uwb: build UWB before USB/WUSB

10 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid
Linus Torvalds [Sun, 26 Oct 2008 23:34:14 +0000]
Merge branch 'for-linus' of git://git./linux/kernel/git/jikos/hid

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid:
  HID: Add support for Sony Vaio VGX-TP1E
  HID: fix lock imbalance in hiddev
  HID: fix lock imbalance in hidraw
  HID: fix hidbus/appletouch device binding regression
  HID: add hid_type to general hid struct
  HID: quirk for OLED devices present in ASUS G50/G70/G71
  HID: Remove "default m" for Thrustmaster and Zeroplus
  HID: fix hidraw_exit section mismatch
  HID: add support for another Gyration remote control
  Revert "HID: Invert HWHEEL mappings for some Logitech mice"

10 years agodocbooks: fix fatal filename errors
Randy Dunlap [Sun, 26 Oct 2008 00:24:36 +0000]
docbooks: fix fatal filename errors

Fix docbook fatal errors (file location changed):

docproc: lin2628-rc1/include/asm-x86/io_32.h: No such file or directory
make[1]: *** [Documentation/DocBook/deviceiobook.xml] Error 1

docproc: lin2628-rc1/include/asm-x86/atomic_32.h: No such file or directory
make[1]: *** [Documentation/DocBook/kernel-api.xml] Error 1

docproc: lin2628-rc1/include/asm-x86/mca_dma.h: No such file or directory
make[1]: *** [Documentation/DocBook/mcabook.xml] Error 1

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

10 years agokernel-doc: allow more whitespace in macros
Randy Dunlap [Sun, 26 Oct 2008 00:06:43 +0000]
kernel-doc: allow more whitespace in macros

Allow macros that are annotated with kernel-doc to contain whitespace
between the '#' and "define".  It's valid and being used, so allow it.

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

10 years agoMerge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux...
Linus Torvalds [Sun, 26 Oct 2008 23:29:12 +0000]
Merge branch 'release' of git://git./linux/kernel/git/lenb/linux-acpi-2.6

* 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6:
  leds-hp-disk: fix build warning
  ACPI: Oops in ACPI with git latest
  ACPI suspend: build fix for ACPI_SLEEP=n && XEN_SAVE_RESTORE=y.
  toshiba_acpi: always call input_sync() after input_report_switch()
  ACPI: Always report a sync event after a lid state change
  ACPI: cpufreq, processor: fix compile error in drivers/acpi/processor_perflib.c
  i7300_idle: Fix compile warning CONFIG_I7300_IDLE_IOAT_CHANNEL not defined
  i7300_idle: Cleanup based review comments
  i7300_idle: Disable ioat channel only on platforms where ile driver can load

10 years agoLinux 2.6.28-rc2
Linus Torvalds [Sun, 26 Oct 2008 19:13:29 +0000]
Linux 2.6.28-rc2

.. fix all the worst problems in -rc1

10 years agom68k: Disable Amiga serial console support if modular
Geert Uytterhoeven [Sun, 26 Oct 2008 18:51:14 +0000]
m68k: Disable Amiga serial console support if modular

If CONFIG_AMIGA_BUILTIN_SERIAL=m, I get the following warnings:

| drivers/char/amiserial.c: At top level:
| drivers/char/amiserial.c:2138: warning: data definition has no type or storage class
| drivers/char/amiserial.c:2138: warning: type defaults to 'int' in declaration of 'console_initcall'
| drivers/char/amiserial.c:2138: warning: parameter names (without types) in function declaration
| drivers/char/amiserial.c:2134: warning: 'amiserial_console_init' defined but not used

because console_initcall() is not defined (nor really sensible) in the
modular case.

So disable serial console support if the driver is modular.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

10 years agoepoll: avoid double-inserts in case of EFAULT
Davide Libenzi [Fri, 17 Oct 2008 23:17:40 +0000]
epoll: avoid double-inserts in case of EFAULT

In commit f337b9c58332bdecde965b436e47ea4c94d30da0 ("epoll: drop
unnecessary test") Thomas found that there is an unnecessary (always
true) test in ep_send_events().  The callback never inserts into
->rdllink while the send loop is performed, and also does the
~EP_PRIVATE_BITS test.  Given we're holding the mutex during this time,
the conditions tested inside the loop are always true.

HOWEVER.

The test "!ep_is_linked(&epi->rdllink)" wasn't there because we insert
into ->rdllink, but because the send-events loop might terminate before
the whole list is scanned (-EFAULT).

In such cases, when the loop terminates early, and when a (leftover)
file received an event while we're performing the lockless loop, we need
such test to avoid to double insert the epoll items.  The list_splice()
done a few steps below, will correctly re-insert the ones that were left
on "txlist".

This should fix the kenrel.org bugzilla entry 11831.

Signed-off-by: Davide Libenzi <davidel@xmailserver.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

10 years agoselect: deal with math overflow from borderline valid userland data
Arjan van de Ven [Sat, 25 Oct 2008 19:41:41 +0000]
select: deal with math overflow from borderline valid userland data

Some userland apps seem to pass in a "0" for the seconds, and several
seconds worth of usecs to select().  The old kernels accepted this just
fine, so the new kernels must too.

However, due to the upscaling of the microseconds to nanoseconds we had
some cases where we got math overflow, and depending on the GCC version
(due to inlining decisions) that actually resulted in an -EINVAL return.

This patch fixes this by adding the excess microseconds to the seconds
field.

Also with thanks to Marcin Slusarz for spotting some implementation bugs
in the diagnostics patches.

Reported-by: Carlos R. Mafra <crmafra2@gmail.com>
Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

10 years agowireless: fix regression caused by regulatory config option
Arjan van de Ven [Sun, 26 Oct 2008 17:25:30 +0000]
wireless: fix regression caused by regulatory config option

The default for the regulatory compatibility option is wrong;
if you picked the default you ended up with a non-functional wifi
system (at least I did on Fedora 9 with iwl4965).
I don't think even the October 2008 releases of the various distros
has the new userland so clearly the default is wrong, and also
we can't just go about deleting this in 2.6.29...

Change the default to "y" and also adjust the config text a little to
reflect this.

This patch fixes regression #11859

With thanks to Johannes Berg for the diagnostics

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

10 years agocgroup: remove unused variable
Stephen Rothwell [Tue, 21 Oct 2008 05:11:20 +0000]
cgroup: remove unused variable

/scratch/sfr/next/kernel/cgroup.c: In function 'cgroup_tasks_start':
/scratch/sfr/next/kernel/cgroup.c:2107: warning: unused variable 'i'

Introduced in commit cc31edceee04a7b87f2be48f9489ebb72d264844 "cgroups:
convert tasks file to use a seq_file with shared pid array".

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

10 years agoMerge branch 'hwmon-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6
Linus Torvalds [Sun, 26 Oct 2008 16:36:19 +0000]
Merge branch 'hwmon-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6

* 'hwmon-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6:
  hwmon: (abituguru3) enable DMI probing feature on AW9D-MAX
  hwmon: (abituguru3) Cosmetic whitespace fixes
  hwmon: (adt7473) Fix voltage conversion routines
  hwmon: (lm90) Add support for the LM99 16 degree offset
  hwmon: (lm90) Fix handling of hysteresis value
  hwmon-vid: Add support for AMD family 10h CPUs
  hwmon: (w83781d) Fix linking when built-in

10 years agor8169: revert "read MAC address from EEPROM on init"
Francois Romieu [Sun, 26 Oct 2008 16:02:49 +0000]
r8169: revert "read MAC address from EEPROM on init"

This reverts commit 7bf6bf4803df1adc927f585168d2135fb019c698.

The code has both a short existence and an increasing track of failures
despite some work to amend it for -rc1.  It is not just a matter of
reading the eeprom: sometimes the eeprom is read correctly, then the mac
address is not written correctly back into the mac registers.

Some chipsets seem to work reliably but it is not clear at this point if
the code can simply be made to work on a per-chipset basis and post -rc1
is not the place where I want to experiment these things.

Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

10 years agoarm ide breakage
Al Viro [Sun, 26 Oct 2008 05:40:26 +0000]
arm ide breakage

a) semicolon before the function body is a bad idea
b) it's const struct foo, not struct const foo
c) incidentally, it's ecard_remove_driver(), not ecard_unregister_driver()
d) compiling is occasionally useful.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

10 years agofix allmodconfig breakage
Al Viro [Sun, 26 Oct 2008 05:12:34 +0000]
fix allmodconfig breakage

If you use KCONFIG_ALLCONFIG (even with empty file) you get broken
allmodconfig/allyesconfig; CONFIG_MODULES gets turned off, with obvious
massive fallout.

Breakage had been introduced when conf_set_all_new_symbols() got used
for allmodconfig et.al.

What happens is that sym_calc_value(modules_sym) done in
conf_read_simple() sets SYMBOL_VALID on both modules_sym and MODULES.
When we get to conf_set_all_new_symbols(), we set sym->def[S_DEF_USER]
on everything, but it has no effect on sym->curr for the symbols that
already have SYMBOL_VALID - these are stuck.

Solution: use sym_clear_all_valid() in there.  Note that it makes
reevaluation of modules_sym redundant - sym_clear_all_valid() will do
that itself.

[ Fixes http://bugzilla.kernel.org/show_bug.cgi?id=11512, says Alexey ]

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Cc: Sam Ravnborg <sam@ravnborg.org>
Cc: Roman Zippel <zippel@linux-m68k.org>
Cc: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

10 years agohwmon: (abituguru3) enable DMI probing feature on AW9D-MAX
Alistair John Strachan [Sun, 26 Oct 2008 16:04:40 +0000]
hwmon: (abituguru3) enable DMI probing feature on AW9D-MAX

Switch the AW9D-MAX over from port probing to the preferred DMI
probe method.

Signed-off-by: Alistair John Strachan <alistair@devzero.co.uk>
Tested-by: Justin Piszcz <jpiszcz@lucidpixels.com>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>

10 years agohwmon: (abituguru3) Cosmetic whitespace fixes
Alistair John Strachan [Sun, 26 Oct 2008 16:04:40 +0000]
hwmon: (abituguru3) Cosmetic whitespace fixes

As the probable result of zealous copy/pasting, many supported boards
contain sensor names with trailing whitespace. Though this is not a
huge problem, it is inconsistent with other sensor names, and with
other similar hwmon drivers.

Additionally, the DMI nag message added in 2.6.27 was missing a
space between two sentence fragments -- might as well clean that up
too.

Doesn't alter any kernel text, just data.

Signed-off-by: Alistair John Strachan <alistair@devzero.co.uk>
Reported-by: Justin Piszcz <jpiszcz@lucidpixels.com>
Acked-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>

10 years agohwmon: (adt7473) Fix voltage conversion routines
Jean Delvare [Sun, 26 Oct 2008 16:04:40 +0000]
hwmon: (adt7473) Fix voltage conversion routines

Fix voltage conversion routines. Based on an earlier patch from
Paulius Zaleckas.

According to the datasheet voltage is scaled with resistors and
value 192 is nominal voltage. 0 is 0V.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Paulius Zaleckas <paulius.zaleckas@teltonika.lt>
Cc: Darrick J. Wong <djwong@us.ibm.com>

10 years agohwmon: (lm90) Add support for the LM99 16 degree offset
Jean Delvare [Sun, 26 Oct 2008 16:04:39 +0000]
hwmon: (lm90) Add support for the LM99 16 degree offset

The LM99 differs from the LM86, LM89 and LM90 in that it reports
remote temperatures (temp2) 16 degrees lower than they really are. So
far we have been cheating and handled this in userspace but it really
should be handled by the driver directly.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Matthew Garrett <mjg59@srcf.ucam.org>

10 years agohwmon: (lm90) Fix handling of hysteresis value
Jean Delvare [Sun, 26 Oct 2008 16:04:39 +0000]
hwmon: (lm90) Fix handling of hysteresis value

There are several problems in the way the hysteresis value is handled
by the lm90 driver:

* In show_temphyst(), specific handling of the MAX6646 is missing, so
  the hysteresis is reported incorrectly if the critical temperature
  is over 127 degrees C.
* In set_temphyst(), the new hysteresis register value is written to
  the chip but data->temp_hyst isn't updated accordingly, so there is
  a short period of time (up to 2 seconds) where the old hystereris
  value will be returned while the new one is already active.
* In set_temphyst(), the critical temperature which is used as a base
  to compute the value of the hysteresis register lacks
  device-specific handling. As a result, the value of the hysteresis
  register might be incorrect for the ADT7461 and MAX6646 chips.

Fix these 3 bugs.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Ben Hutchings <bhutchings@solarflare.com>
Cc: Nate Case <ncase@xes-inc.com>

10 years agohwmon-vid: Add support for AMD family 10h CPUs
Jean Delvare [Sun, 26 Oct 2008 16:04:39 +0000]
hwmon-vid: Add support for AMD family 10h CPUs

The AMD family 10h CPUs use the same VID decoding table as the family
0Fh CPUs.

Signed-off-by: Jean Delvare <khali@linux-fr.org>
Cc: Rudolf Marek <r.marek@assembler.cz>

10 years agohwmon: (w83781d) Fix linking when built-in
Geert Uytterhoeven [Sun, 26 Oct 2008 16:04:38 +0000]
hwmon: (w83781d) Fix linking when built-in

When w83781d is built-in, the final links fails with the following vague error
message:

`.exit.text' referenced in section `.init.text' of drivers/built-in.o: defined
in discarded section `.exit.text' of drivers/built-in.o

w83781d_isa_unregister() cannot be marked __exit, as it's also called from
sensors_w83781d_init(), which is marked __init.

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: Wolfgang Grandegger <wg@grandegger.com>
Signed-off-by: Jean Delvare <khali@linux-fr.org>

10 years agofirewire: fw-sbp2: fix races
Jay Fenlason [Fri, 24 Oct 2008 19:26:20 +0000]
firewire: fw-sbp2: fix races

1: There is a small race between queue_delayed_work() and its
   corresponding kref_get().  Do the kref_get first, and _put it again
   if the queue_delayed_work() failed, so there is no chance of the
   kref going to zero while the work is scheduled.
2: An SBP2_LOGOUT_REQUEST could be sent out with a login_id full of
   garbage.  Initialize it to an invalid value so we can tell if we
   ever got a valid login_id.
3: The node ID and generation may have changed but the new values may
   not yet have been recorded in lu and tgt when the final logout is
   attempted.  Use the latest values from the device in
   sbp2_release_target().

Signed-off-by: Jay Fenlason <fenlason@redhat.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>

10 years agofirewire: fw-sbp2: delay first login to avoid retries
Stefan Richter [Tue, 21 Oct 2008 22:28:36 +0000]
firewire: fw-sbp2: delay first login to avoid retries

This optimizes firewire-sbp2's device probe for the case that the local
node and the SBP-2 node were discovered at the same time.  In this case,
fw-core's bus management work and fw-sbp2's login and SCSI probe work
are scheduled in parallel (in the globally shared workqueue and in
fw-sbp2's workqueue, respectively).  The bus reset from fw-core may then
disturb and extremely delay the login and SCSI probe because the latter
fails with several command timeouts and retries and has to be retried
from scratch.

We avoid this particular situation of sbp2_login() and fw_card_bm_work()
running in parallel by delaying the first sbp2_login() a little bit.

This is meant to be a short-term fix for
https://bugzilla.redhat.com/show_bug.cgi?id=466679.  In the long run,
the SCSI probe, i.e. fw-sbp2's call of __scsi_add_device(), should be
parallelized with sbp2_reconnect().

Problem reported and fix tested and confirmed by Alex Kanavin.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>

10 years agofirewire: fw-ohci: initialization failure path fixes
Stefan Richter [Sun, 26 Oct 2008 08:50:31 +0000]
firewire: fw-ohci: initialization failure path fixes

Fix leaks when pci_probe fails.  Simplify error log strings.

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>

10 years agofirewire: fw-ohci: don't leak dma memory on module removal
Jay Fenlason [Wed, 22 Oct 2008 19:59:42 +0000]
firewire: fw-ohci: don't leak dma memory on module removal

The transmit and receive context dma memory was not being freed on
module removal.  Neither was the config rom memory.  Fix that.

The ab->next assignment is pure paranoia.

Signed-off-by: Jay Fenlason <fenlason@redhat.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>

10 years agofirewire: fix struct fw_node memory leak
Jay Fenlason [Thu, 16 Oct 2008 22:00:15 +0000]
firewire: fix struct fw_node memory leak

With the bus_resets patch applied, it is easy to see this memory leak
by repeatedly resetting the firewire bus while running slabtop in
another window.  Just watch kmalloc-32 grow and grow...

Signed-off-by: Jay Fenlason <fenlason@redhat.com>
Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>

10 years agofirewire: Survive more than 256 bus resets
Jay Fenlason [Thu, 16 Oct 2008 19:51:59 +0000]
firewire: Survive more than 256 bus resets

The "color" is used during the topology building after a bus reset,
hovever in "struct fw_node"s it is stored in a u8, but in struct fw_card
it is stored in an int.  When the value wraps in one struct, but not
the other, disaster strikes.

Signed-off-by: Jay Fenlason <fenlason@redhat.com>

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

Signed-off-by: Stefan Richter <stefanr@s5r6.in-berlin.de>

10 years agoMerge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4
Linus Torvalds [Sun, 26 Oct 2008 02:57:30 +0000]
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: Fix duplicate entries returned from getdents() system call
  ext3: Fix duplicate entries returned from getdents() system call

10 years agoRevert "Call init_workqueues before pre smp initcalls."
Linus Torvalds [Sun, 26 Oct 2008 02:53:38 +0000]
Revert "Call init_workqueues before pre smp initcalls."

This reverts commit a802dd0eb5fc97a50cf1abb1f788a8f6cc5db635 by moving
the call to init_workqueues() back where it belongs - after SMP has been
initialized.

It also moves stop_machine_init() - which needs workqueues - to a later
phase using a core_initcall() instead of early_initcall().  That should
satisfy all ordering requirements, and was apparently the reason why
init_workqueues() was moved to be too early.

Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

10 years agoext4: Fix duplicate entries returned from getdents() system call
Theodore Ts'o [Sat, 25 Oct 2008 15:39:08 +0000]
ext4: Fix duplicate entries returned from getdents() system call

Fix a regression caused by commit d0156417, "ext4: fix ext4_dx_readdir
hash collision handling", where deleting files in a large directory
(requiring more than one getdents system call), results in some
filenames being returned twice.  This was caused by a failure to
update info->curr_hash and info->curr_minor_hash, so that if the
directory had gotten modified since the last getdents() system call
(as would be the case if the user is running "rm -r" or "git clean"),
a directory entry would get returned twice to the userspace.

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>

This patch fixes the bug reported by Markus Trippelsdorf at:
http://bugzilla.kernel.org/show_bug.cgi?id=11844

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Tested-by: Markus Trippelsdorf <markus@trippelsdorf.de>

10 years agoext3: Fix duplicate entries returned from getdents() system call
Theodore Ts'o [Sat, 25 Oct 2008 15:38:37 +0000]
ext3: Fix duplicate entries returned from getdents() system call

Fix a regression caused by commit 6a897cf4, "ext3: fix ext3_dx_readdir
hash collision handling", where deleting files in a large directory
(requiring more than one getdents system call), results in some
filenames being returned twice.  This was caused by a failure to
update info->curr_hash and info->curr_minor_hash, so that if the
directory had gotten modified since the last getdents() system call
(as would be the case if the user is running "rm -r" or "git clean"),
a directory entry would get returned twice to the userspace.

This patch fixes the bug reported by Markus Trippelsdorf at:
http://bugzilla.kernel.org/show_bug.cgi?id=11844

Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Tested-by: Markus Trippelsdorf <markus@trippelsdorf.de>

10 years agoMerge branch 'i7300_idle' into release
Len Brown [Sat, 25 Oct 2008 08:07:44 +0000]
Merge branch 'i7300_idle' into release

10 years agoleds-hp-disk: fix build warning
Len Brown [Sat, 25 Oct 2008 07:52:16 +0000]
leds-hp-disk: fix build warning

drivers/leds/leds-hp-disk.c:59: warning: passing argument 4 of ‘acpi_evaluate_integer’ from incompatible pointer type

Signed-off-by: Len Brown <len.brown@intel.com>

10 years agoACPI: Oops in ACPI with git latest
Rafael J. Wysocki [Fri, 24 Oct 2008 19:50:31 +0000]
ACPI: Oops in ACPI with git latest

ACPI Warning (nseval-0168): Insufficient arguments - method [_OSC] needs 5, found 4 [20080926]
ACPI Warning (nspredef-0252): \_SB_.PCI0._OSC: Parameter count mismatch - ASL declared 5, expected 4 [20080926]
ACPI Error (nspredef-0163): \_SB_.PCI0._OSC: Missing expected return value [20080926]
BUG: unable to handle kernel NULL pointer dereference at 00000000
IP: [<c0237671>] acpi_run_osc+0xa1/0x170

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Tested-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Signed-off-by: Len Brown <len.brown@intel.com>

10 years agoACPI suspend: build fix for ACPI_SLEEP=n && XEN_SAVE_RESTORE=y.
Rafael J. Wysocki [Thu, 23 Oct 2008 19:46:43 +0000]
ACPI suspend: build fix for ACPI_SLEEP=n && XEN_SAVE_RESTORE=y.

Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: Len Brown <len.brown@intel.com>

10 years agotoshiba_acpi: always call input_sync() after input_report_switch()
Len Brown [Fri, 24 Oct 2008 19:39:47 +0000]
toshiba_acpi: always call input_sync() after input_report_switch()

Signed-off-by: Len Brown <len.brown@intel.com>

10 years agoACPI: Always report a sync event after a lid state change
Guillem Jover [Thu, 23 Oct 2008 21:28:33 +0000]
ACPI: Always report a sync event after a lid state change

Currently not always an EV_SYN event is reported to userland
after the EV_SW SW_LID event has been sent. This is easy to verify
by using “input-events” from input-utils and just closing and opening
the lid.

Signed-off-by: Guillem Jover <guillem.jover@nokia.com>
Signed-off-by: Len Brown <len.brown@intel.com>

10 years agoACPI: cpufreq, processor: fix compile error in drivers/acpi/processor_perflib.c
Miao Xie [Fri, 24 Oct 2008 09:22:04 +0000]
ACPI: cpufreq, processor: fix compile error in drivers/acpi/processor_perflib.c

When trying to build 2.6.28-rc1 on ia64, make aborts with:

CC drivers/acpi/processor_perflib.o
  drivers/acpi/processor_perflib.c:41:28: error: asm/cpufeature.h: No such file or directory
  drivers/acpi/processor_perflib.c: In function ‘acpi_processor_get_performance_info’:
  drivers/acpi/processor_perflib.c:364: error: implicit declaration of function ‘boot_cpu_has’
  drivers/acpi/processor_perflib.c:364: error: ‘X86_FEATURE_EST’ undeclared (first use in this function)
  drivers/acpi/processor_perflib.c:364: error: (Each undeclared identifier is reported only once
  drivers/acpi/processor_perflib.c:364: error: for each function it appears in.)
  make[2]: *** [drivers/acpi/processor_perflib.o] Error 1
  make[1]: *** [drivers/acpi] Error 2
  make: *** [drivers] Error 2

this patch fix it.

Signed-off-by: Miao Xie <miaox@cn.fujitsu.com>
Acked-by: Thomas Renninger <trenn@suse.de>
Signed-off-by: Len Brown <len.brown@intel.com>

10 years agoi7300_idle: Fix compile warning CONFIG_I7300_IDLE_IOAT_CHANNEL not defined
Venki Pallipadi [Thu, 23 Oct 2008 22:39:06 +0000]
i7300_idle: Fix compile warning CONFIG_I7300_IDLE_IOAT_CHANNEL not defined

When I7300_idle driver is not configured, there is a compile time
warning about IDLE_IOAT_CHANNEL not defined. Fix it.

Reported-by: Suresh Siddha <suresh.b.siddha@intel.com>
Reported-by: Arjan van de Ven <arjan@linux.intel.com>
Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>

10 years agoi7300_idle: Cleanup based review comments
Venki Pallipadi [Wed, 22 Oct 2008 23:51:03 +0000]
i7300_idle: Cleanup based review comments

Cleanup of i7300 idle driver based on review comments from Randy Dunlap,
Andi Kleen and Len Brown.

Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>

10 years agoi7300_idle: Disable ioat channel only on platforms where ile driver can load
Venki Pallipadi [Wed, 22 Oct 2008 23:34:52 +0000]
i7300_idle: Disable ioat channel only on platforms where ile driver can load

Based on input from Andi Kleen:
share the platform detection code with ioat_dma and disable the channel in
dma engine only for specific platforms.

Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Signed-off-by: Len Brown <len.brown@intel.com>

10 years agomfd: Make WM8400 depend on I2C until SPI is submitted
Mark Brown [Fri, 24 Oct 2008 15:16:11 +0000]
mfd: Make WM8400 depend on I2C until SPI is submitted

Otherwise we could build in WM8400 but not I2C.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Samuel Ortiz <sameo@openedhand.com>

10 years agomfd: add missing Kconfig entry for da903x
Samuel Ortiz [Fri, 24 Oct 2008 15:10:05 +0000]
mfd: add missing Kconfig entry for da903x

This one was accidentally left out during the rc1 mfd merge.

Signed-off-by: Samuel Ortiz <sameo@openedhand.com>

10 years agouwb: build UWB before USB/WUSB
David Vrabel [Fri, 24 Oct 2008 15:46:22 +0000]
uwb: build UWB before USB/WUSB

The WHCI-HCD driver in drivers/usb/host/ depends on the umc driver in
drivers/uwb/.

Signed-off-by: David Vrabel <david.vrabel@csr.com>

10 years agolibata: fix bug with non-ncq devices
Jens Axboe [Fri, 24 Oct 2008 07:22:42 +0000]
libata: fix bug with non-ncq devices

The recent commit 2fca5ccf97d2c28bcfce44f5b07d85e74e3cd18e ("libata:
switch to using block layer tagging support") to enable support for
block layer tagging in libata was broken for non-NCQ devices

The block layer initializes the tag field to -1 to detect invalid uses
of a tag, and if the libata devices does NOT support NCQ, we just used
that field to index the internal command list.  So we need to check for
-1 first and only use the tag field if it's valid.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Reported-by: Alexander Beregalov <a.beregalov@gmail.com>
Tested-by: Paul Mundt <lethal@linux-sh.org>
Tested-by: Dave Young <hidave.darkstar@gmail.com>
Tested-by: Rafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

10 years agoftrace: warning in kernel/trace/ftrace.c
Ingo Molnar [Fri, 24 Oct 2008 10:47:10 +0000]
ftrace: warning in kernel/trace/ftrace.c

this warning:

  kernel/trace/ftrace.c:189: warning: ‘frozen_record_count’ defined but not used

triggers because frozen_record_count is only used in the KCONFIG_MARKERS
case. Move the variable it there.

Alas, this frozen-record facility seems to have little use. The
frozen_record_count variable is not used by anything, nor the flags.

So this section might need a bit of dead-code-removal care as well.

Signed-off-by: Ingo Molnar <mingo@elte.hu>

10 years agosched: virtual time buddy preemption
Peter Zijlstra [Fri, 24 Oct 2008 09:06:16 +0000]
sched: virtual time buddy preemption

Since we moved wakeup preemption back to virtual time, it makes sense to move
the buddy stuff back as well. The purpose of the buddy scheduling is to allow
a quickly scheduling pair of tasks to run away from the group as far as a
regular busy task would be allowed under wakeup preemption.

This has the advantage that the pair can ping-pong for a while, enjoying
cache-hotness. Without buddy scheduling other tasks would interleave destroying
the cache.

Also, it saves a word in cfs_rq.

Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Acked-by: Mike Galbraith <efault@gmx.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>

10 years agosched: re-instate vruntime based wakeup preemption
Peter Zijlstra [Fri, 24 Oct 2008 09:06:15 +0000]
sched: re-instate vruntime based wakeup preemption

The advantage is that vruntime based wakeup preemption has a better
conceptual model. Here wakeup_gran = 0 means: preempt when 'fair'.
Therefore wakeup_gran is the granularity of unfairness we allow in order
to make progress.

Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Acked-by: Mike Galbraith <efault@gmx.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>

10 years agosched: weaken sync hint
Mike Galbraith [Fri, 24 Oct 2008 09:06:14 +0000]
sched: weaken sync hint

Mysql+oltp and pgsql+oltp peaks are still shifted right. The below puts
the peaks back to 1 client/server pair per core.

Use the avg_overlap information to weaken the sync hint.

Signed-off-by: Mike Galbraith <efault@gmx.de>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Ingo Molnar <mingo@elte.hu>

10 years agosched: more accurate min_vruntime accounting
Peter Zijlstra [Fri, 24 Oct 2008 09:06:13 +0000]
sched: more accurate min_vruntime accounting

Mike noticed the current min_vruntime tracking can go wrong and skip the
current task. If the only remaining task in the tree is a nice 19 task
with huge vruntime, new tasks will be inserted too far to the right too,
causing some interactibity issues.

min_vruntime can only change due to the leftmost entry disappearing
(dequeue_entity()), or by the leftmost entry being incremented past the
next entry, which elects a new leftmost (__update_curr())

Due to the current entry not being part of the actual tree, we have to
compare the leftmost tree entry with the current entry, and take the
leftmost of these two.

So create a update_min_vruntime() function that takes computes the
leftmost vruntime in the system (either tree of current) and increases
the cfs_rq->min_vruntime if the computed value is larger than the
previously found min_vruntime. And call this from the two sites we've
identified that can change min_vruntime.

Reported-by: Mike Galbraith <efault@gmx.de>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Acked-by: Mike Galbraith <efault@gmx.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>

10 years agosched: fix a find_busiest_group buglet
Peter Zijlstra [Fri, 24 Oct 2008 09:06:12 +0000]
sched: fix a find_busiest_group buglet

In one of the group load balancer patches:

commit 408ed066b11cf9ee4536573b4269ee3613bd735e
Author: Peter Zijlstra <a.p.zijlstra@chello.nl>
Date:   Fri Jun 27 13:41:28 2008 +0200
Subject: sched: hierarchical load vs find_busiest_group

The following change:

-               if (max_load - this_load + SCHED_LOAD_SCALE_FUZZ >=
+               if (max_load - this_load + 2*busiest_load_per_task >=
                                        busiest_load_per_task * imbn) {

made the condition always true, because imbn is [1,2].
Therefore, remove the 2*, and give the it a fair chance.

Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Acked-by: Mike Galbraith <efault@gmx.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>

10 years agoMerge commit 'v2.6.28-rc1' into sched/urgent
Ingo Molnar [Fri, 24 Oct 2008 10:48:46 +0000]
Merge commit 'v2.6.28-rc1' into sched/urgent

10 years agoLinux 2.6.28-rc1
Linus Torvalds [Fri, 24 Oct 2008 03:06:52 +0000]
Linux 2.6.28-rc1

10 years agoFix PCI hotplug printk format
Randy Dunlap [Fri, 24 Oct 2008 01:14:55 +0000]
Fix PCI hotplug printk format

Fix printk format warning:

  drivers/pci/hotplug/acpiphp_ibm.c:207: warning: format '%08lx' expects type 'long unsigned int', but argument 3 has type 'long long unsigned int'

Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

10 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes...
Linus Torvalds [Fri, 24 Oct 2008 02:31:34 +0000]
Merge branch 'for-linus' of git://git./linux/kernel/git/jbarnes/pci-2.6

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6:
  PCI: remove unused resource assignment in pci_read_bridge_bases()
  PCI hotplug: shpchp: message refinement
  PCI hotplug: shpchp: replace printk with dev_printk
  PCI: add routines for debugging and handling lost interrupts
  PCI hotplug: pciehp: message refinement
  PCI: fix ARI code to be compatible with mixed ARI/non-ARI systems
  PCI hotplug: cpqphp: fix kernel NULL pointer dereference

10 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Fri, 24 Oct 2008 02:19:54 +0000]
Merge git://git./linux/kernel/git/davem/net-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (29 commits)
  tcp: Restore ordering of TCP options for the sake of inter-operability
  net: Fix disjunct computation of netdev features
  sctp: Fix to handle SHUTDOWN in SHUTDOWN_RECEIVED state
  sctp: Fix to handle SHUTDOWN in SHUTDOWN-PENDING state
  sctp: Add check for the TSN field of the SHUTDOWN chunk
  sctp: Drop ICMP packet too big message with MTU larger than current PMTU
  p54: enable 2.4/5GHz spectrum by eeprom bits.
  orinoco: reduce stack usage in firmware download path
  ath5k: fix suspend-related oops on rmmod
  [netdrvr] fec_mpc52xx: Implement polling, to make netconsole work.
  qlge: Fix MSI/legacy single interrupt bug.
  smc911x: Make the driver safer on SMP
  smc911x: Add IRQ polarity configuration
  smc911x: Allow Kconfig dependency on ARM
  sis190: add identifier for Atheros AR8021 PHY
  8139x: reduce message severity on driver overlap
  igb: add IGB_DCA instead of selecting INTEL_IOATDMA
  igb: fix tx data corruption with transition to L0s on 82575
  ehea: Fix memory hotplug support
  netdev: DM9000: remove BLACKFIN hacking in DM9000 netdev driver
  ...

10 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Fri, 24 Oct 2008 02:19:14 +0000]
Merge git://git./linux/kernel/git/davem/sparc-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
  math-emu: Fix thinko in _FP_DIV
  math-emu: Fix signalling of underflow and inexact while packing result.
  sparc: Add checkstack support
  sparc: correct section of current_pc()
  sparc: correct section of apc_no_idle
  sparc64: Fix race in arch/sparc64/kernel/trampoline.S

10 years agoPCI: remove unused resource assignment in pci_read_bridge_bases()
Zhao, Yu [Mon, 13 Oct 2008 13:02:27 +0000]
PCI: remove unused resource assignment in pci_read_bridge_bases()

This cleanup removes the resource assignment in pci_read_bridge_bases()
since it has taken care by pci_alloc_child_bus() when allocating the bus:

        /* Set up default resource pointers and names.. */
        for (i = 0; i < PCI_BRIDGE_RES_NUM; i++) {
                child->resource[i] = &bridge->resource[PCI_BRIDGE_RESOURCES+i];
                child->resource[i]->name = child->name;
        }

Signed-off-by: Yu Zhao <yu.zhao@intel.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>

10 years agoPCI hotplug: shpchp: message refinement
Taku Izumi [Thu, 23 Oct 2008 02:54:39 +0000]
PCI hotplug: shpchp: message refinement

This patch refines messages in shpchp module.  The main changes are as
follows:

 - remove the trailing "."
 - remove __func__ as much as possible
 - capitalize the first letter of messages
 - show PCI device address including its domain

Signed-off-by: Taku Izumi <izumi.taku@jp.fujitsu.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>

10 years agoPCI hotplug: shpchp: replace printk with dev_printk
Taku Izumi [Thu, 23 Oct 2008 02:52:12 +0000]
PCI hotplug: shpchp: replace printk with dev_printk

This patch replaces printks within shpchp module with dev_printks.

Signed-off-by: Taku Izumi <izumi.taku@jp.fujitsu.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>

10 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6
Linus Torvalds [Thu, 23 Oct 2008 23:08:11 +0000]
Merge git://git./linux/kernel/git/bart/ide-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6:
  ide: drivers/ide/generic.c -> drivers/ide/ide-pci-generic.c
  ide-disk: set non-rotational queue flag for SSD and CF devices
  ide-cd: add TEAC CD-224E to the NO_AUTOCLOSE list
  ide: Add tx4938ide driver (v2)
  TXx9: Add TX4938 ATA support (v3)
  ide: Add tx4939ide driver (v6)
  ide: two more pci_ioremap_bar() conversions
  pci: use pci_ioremap_bar() in drivers/ide
  sgiioc4: use ide_host_add() (take 2)
  sgiioc4: fix error cleanup path (take 2)

10 years agoMerge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds
Linus Torvalds [Thu, 23 Oct 2008 23:07:32 +0000]
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/acpi: Fix merge fallout from acpi_driver_data change
  leds: Simplify logic in leds-ams-delta
  leds: Fix trigger registration race
  leds: Fix leds-class.c comment
  leds: Add driver for HP harddisk protection LEDs
  leds: leds-pca955x - Mark pca955x_led_set() static
  leds: Remove uneeded leds-cm-x270 driver
  leds: Remove uneeded strlen calls
  leds: Add leds-wrap default-trigger
  leds: Make default trigger fields const
  leds: Add backlight LED trigger
  leds: da903x: Add support for LEDs found on DA9030/DA9034

10 years agoMerge branch 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm
Linus Torvalds [Thu, 23 Oct 2008 23:06:49 +0000]
Merge branch 'for-linus' of /home/rmk/linux-2.6-arm

* 'for-linus' of master.kernel.org:/home/rmk/linux-2.6-arm:
  [ARM] pxa: corgi backlight driver should not select ssp drivers
  [ARM] 5321/1: Kirkwood: fix typo in Makefile
  [ARM] 5320/1: fix assembly constraints in implementation of do_div()
  [ARM] 5318/1: Swap the PRRR and NMRR values in proc-v7.S
  [ARM] 5316/1: AT91: oops (regression) fix on gpio irq
  [ARM] msm: vreg interface to msm7k pmic
  [ARM] msm: dma: various basic dma improvements and bugfixes
  [ARM] msm: clock: provide clk_*() api support for
  [ARM] msm: clean up iomap and devices
  [ARM] msm: add proc_comm support, necessary for clock and power control
  [ARM] msm: rename ARCH_MSM7X00A to ARCH_MSM
  [ARM] pxa/spitz: fix unbalance parenthesis in header file spitz.h
  [ARM] pxa: update {corgi,spitz}_defconfig to favor SPI-based drivers
  [ARM] pxa: fix the corgi_ssp.c dependency issue in {corgi,spitz}_defconfig
  Revert "[ARM] pxa/corgi: remove now unused corgi_ssp.c and corgi_lcd.c"

10 years agoMerge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-backlight
Linus Torvalds [Thu, 23 Oct 2008 23:05:59 +0000]
Merge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-backlight

* 'for-linus' of git://git.o-hand.com/linux-rpurdie-backlight:
  backlight: Add driver for Tabletkiosk Sahara TouchIT-213 Tablet PC
  backlight: da903x: Add backlight driver for DA9030/DA9034
  tosa: add support for bl/lcd driver
  backlight: add support for Sharp SL-6000 LCD and backlight drivers

10 years agolibata: switch to using block layer tagging support
Jens Axboe [Wed, 22 Oct 2008 07:34:49 +0000]
libata: switch to using block layer tagging support

libata currently has a pretty dumb ATA_MAX_QUEUE loop for finding
a free tag to use. Instead of fixing that up, convert libata to
using block layer tagging - gets rid of code in libata, and is also
much faster.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Acked-by: Tejun Heo <tj@kernel.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

10 years agoPCI: add routines for debugging and handling lost interrupts
James Bottomley [Sun, 3 Aug 2008 18:02:12 +0000]
PCI: add routines for debugging and handling lost interrupts

We're getting a lot of storage drivers blamed for interrupt misrouting
issues.  This patch provides a standard way of reporting the problem
... and, if possible, correcting it.

Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>

10 years agoPCI hotplug: pciehp: message refinement
Taku Izumi [Thu, 23 Oct 2008 02:47:32 +0000]
PCI hotplug: pciehp: message refinement

This patch refines messages in pciehp module.  The main changes are as
follows:

 - remove the trailing "."
 - remove __func__ as much as possible
 - capitalize the first letter of messages
 - show PCI device address including its domain

Signed-off-by: Taku Izumi <izumi.taku@jp.fujitsu.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>

10 years agoPCI: fix ARI code to be compatible with mixed ARI/non-ARI systems
Zhao, Yu [Thu, 23 Oct 2008 05:15:39 +0000]
PCI: fix ARI code to be compatible with mixed ARI/non-ARI systems

The original ARI support code has a compatibility problem with non-ARI
devices.  If a device doesn't support ARI, turning on ARI forwarding on
its upper level bridge will cause undefined behavior.

This fix turns on ARI forwarding only when the subordinate devices
support it.

Tested-by: Suresh Siddha <suresh.b.siddha@intel.com>
Signed-off-by: Yu Zhao <yu.zhao@intel.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>

10 years agoPCI hotplug: cpqphp: fix kernel NULL pointer dereference
Kenji Kaneshige [Fri, 17 Oct 2008 00:23:51 +0000]
PCI hotplug: cpqphp: fix kernel NULL pointer dereference

The following patch fixes the regression in 2.6.27 that causes kernel
NULL pointer dereference at cpqphp driver probe time.  This patch should
be backported to the .27 stable series.

Seems to have been introduced by
f46753c5e354b857b20ab8e0fe7b2579831dc369.

The root cause of this problem seems that cpqphp driver calls
pci_hp_register() wrongly. In current implementation, cpqphp driver
passes 'ctrl->pci_dev->subordinate' as a second parameter for
pci_hp_register(). But because hotplug slots and it's hotplug controller
(exists as a pci funcion) are on the same bus, it should be
'ctrl->pci_dev->bus' instead.

Cc: <stable@kernel.org>
Tested-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>

10 years agoleds/acpi: Fix merge fallout from acpi_driver_data change
Stephen Rothwell [Thu, 23 Oct 2008 21:35:19 +0000]
leds/acpi: Fix merge fallout from acpi_driver_data change

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>

10 years agoide: drivers/ide/generic.c -> drivers/ide/ide-pci-generic.c
Bartlomiej Zolnierkiewicz [Thu, 23 Oct 2008 21:24:20 +0000]
ide: drivers/ide/generic.c -> drivers/ide/ide-pci-generic.c

Suggested-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>

10 years agoide-disk: set non-rotational queue flag for SSD and CF devices
Bartlomiej Zolnierkiewicz [Thu, 23 Oct 2008 21:22:09 +0000]
ide-disk: set non-rotational queue flag for SSD and CF devices

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>

10 years agoide-cd: add TEAC CD-224E to the NO_AUTOCLOSE list
Márton Németh [Thu, 23 Oct 2008 21:22:09 +0000]
ide-cd: add TEAC CD-224E to the NO_AUTOCLOSE list

The "TEAC CD-ROM CD-224E" cannot close its tray, so add it to the NO_AUTOCLOSE
list. This will correct the "Can close tray" field of /proc/sys/dev/cdrom/info.

Signed-off-by: Márton Németh <nm127@freemail.hu>
Acked-by: Borislav Petkov <petkovbb@gmail.com>
[bart: minor fixups to patch description]
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>

10 years agoide: Add tx4938ide driver (v2)
Atsushi Nemoto [Thu, 23 Oct 2008 21:22:08 +0000]
ide: Add tx4938ide driver (v2)

This is the driver for the Toshiba TX4938 SoC EBUS controller ATA mode.
It has custom set_pio_mode and some hacks for big endian.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Cc: ralf@linux-mips.org
Cc: sshtylyov@ru.mvista.com
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>

10 years agoTXx9: Add TX4938 ATA support (v3)
Atsushi Nemoto [Thu, 23 Oct 2008 21:22:08 +0000]
TXx9: Add TX4938 ATA support (v3)

Add a helper routine to register tx4938ide driver and use it on
RBTX4938 board.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Acked-by: Ralf Baechle <ralf@linux-mips.org>
Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>

10 years agoide: Add tx4939ide driver (v6)
Atsushi Nemoto [Thu, 23 Oct 2008 21:22:07 +0000]
ide: Add tx4939ide driver (v6)

This is the driver for the Toshiba TX4939 SoC ATA controller.

This controller has standard ATA taskfile registers and DMA
command/status registers, but the register layout is swapped on big
endian.  There are some other endian issue and some special registers
which requires many custom dma_ops/tp_ops routines and build_dmatable.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Cc: ralf@linux-mips.org
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>

10 years agoide: two more pci_ioremap_bar() conversions
Arjan van de Ven [Thu, 23 Oct 2008 21:22:07 +0000]
ide: two more pci_ioremap_bar() conversions

based on suggestion from Sergei Shtylyov, there are two more places
where using pci_ioremap_bar() makes sense.

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>

10 years agopci: use pci_ioremap_bar() in drivers/ide
Arjan van de Ven [Thu, 23 Oct 2008 21:22:07 +0000]
pci: use pci_ioremap_bar() in drivers/ide

Use the newly introduced pci_ioremap_bar() function in drivers/ide.
pci_ioremap_bar() just takes a pci device and a bar number, with the goal
of making it really hard to get wrong, while also having a central place
to stick sanity checks.

Signed-off-by: Arjan van de Ven <arjan@linux.intel.com>
Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>

10 years agosgiioc4: use ide_host_add() (take 2)
Sergei Shtylyov [Thu, 23 Oct 2008 21:22:06 +0000]
sgiioc4: use ide_host_add() (take 2)

Convert the driver to use ide_host_add() -- this seems to be a straightforward
change which I'm not sure why hasn't been done yet...

While doing this at last, get rid of:

- useless local copy of the 'sgiioc4_port_info' variable;

- unnecessary 'goto' and label...

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Cc: jeremy@sgi.com
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>

10 years agosgiioc4: fix error cleanup path (take 2)
Sergei Shtylyov [Thu, 23 Oct 2008 21:22:06 +0000]
sgiioc4: fix error cleanup path (take 2)

The driver "forgot" to call iounmap() iff request_mem_region() call failed in
sgiioc4_ide_setup_pci_device()...

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>
Cc: jeremy@sgi.com
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>

10 years ago[ARM] pxa: corgi backlight driver should not select ssp drivers
Russell King [Thu, 23 Oct 2008 21:06:53 +0000]
[ARM] pxa: corgi backlight driver should not select ssp drivers

Resolves build errors with eseries and magician defconfigs (which
make use of the corgi backlight driver.)

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>

10 years agotcp: Restore ordering of TCP options for the sake of inter-operability
Ilpo Järvinen [Thu, 23 Oct 2008 21:06:35 +0000]
tcp: Restore ordering of TCP options for the sake of inter-operability

This is not our bug! Sadly some devices cannot cope with the change
of TCP option ordering which was a result of the recent rewrite of
the option code (not that there was some particular reason steming
from the rewrite for the reordering) though any ordering of TCP
options is perfectly legal. Thus we restore the original ordering
to allow interoperability with/through such broken devices and add
some warning about this trap. Since the reordering just happened
without any particular reason, this change shouldn't cost us
anything.

There are already couple of known failure reports (within close
proximity of the last release), so the problem might be more
wide-spread than a single device. And other reports which may
be due to the same problem though the symptoms were less obvious.
Analysis of one of the case revealed (with very high probability)
that sack capability cannot be negotiated as the first option
(SYN never got a response).

Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi>
Reported-by: Aldo Maggi <sentiniate@tiscali.it>
Tested-by: Aldo Maggi <sentiniate@tiscali.it>
Signed-off-by: David S. Miller <davem@davemloft.net>

10 years agoMerge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux...
Linus Torvalds [Thu, 23 Oct 2008 20:02:48 +0000]
Merge branch 'release' of git://git./linux/kernel/git/lenb/linux-acpi-2.6

* 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux-acpi-2.6:
  staging: pcc_acpi: delete obsolete driver

10 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6
Linus Torvalds [Thu, 23 Oct 2008 20:02:03 +0000]
Merge git://git./linux/kernel/git/jejb/scsi-misc-2.6

* git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (21 commits)
  [SCSI] sd: fix computation of the full size of the device
  [SCSI] lib: string_get_size(): don't hang on zero; no decimals on exact
  [SCSI] sun3x_esp: Convert && to ||
  [SCSI] sd: remove command-size switching code
  [SCSI] 3w-9xxx: remove unnecessary local_irq_save/restore for scsi sg copy API
  [SCSI] 3w-xxxx: remove unnecessary local_irq_save/restore for scsi sg copy API
  [SCSI] fix netlink kernel-doc
  [SCSI] sd: Fix handling of NO_SENSE check condition
  [SCSI] export busy state via q->lld_busy_fn()
  [SCSI] refactor sdev/starget/shost busy checking
  [SCSI] mptfusion: Increase scsi-timeouts, similariy to the LSI 4.x driver.
  [SCSI] aic7xxx: Take the LED out of diagnostic mode on PM resume
  [SCSI] aic79xx: user visible misuse wrong SI units (not disk size!)
  [SCSI] ipr: use memory_read_from_buffer()
  [SCSI] aic79xx: fix shadowed variables
  [SCSI] aic79xx: fix shadowed variables, add statics
  [SCSI] aic7xxx: update *_shipped files
  [SCSI] aic7xxx: update .reg files
  [SCSI] aic7xxx: introduce "dont_generate_debug_code" keyword in aicasm parser
  [SCSI] scsi_dh: Initialize path state to be passive when path is not owned
  ...

10 years agox86: restore the old swiotlb alloc_coherent behavior
FUJITA Tomonori [Thu, 23 Oct 2008 14:14:29 +0000]
x86: restore the old swiotlb alloc_coherent behavior

This restores the old swiotlb alloc_coherent behavior (before the
alloc_coherent rewrite):

  http://lkml.org/lkml/2008/8/12/200

The old alloc_coherent avoids GFP_DMA allocation first and if the
allocated address is not fit for the device's coherent_dma_mask, then
dma_alloc_coherent does GFP_DMA allocation. If it fails,
alloc_coherent calls swiotlb_alloc_coherent (in short, we rarely used
swiotlb_alloc_coherent).

After the alloc_coherent rewrite, dma_alloc_coherent
(include/asm-x86/dma-mapping.h) directly calls swiotlb_alloc_coherent.
It means that we possibly can't handle a device having dma_masks >
24bit < 32bits since swiotlb_alloc_coherent doesn't have the above
GFP_DMA retry mechanism.

This patch fixes x86's swiotlb alloc_coherent to use the GFP_DMA retry
mechanism, which dma_generic_alloc_coherent() provides now
(pci-nommu.c and GART IOMMU driver also use
dma_generic_alloc_coherent).

Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Signed-off-by: Ingo Molnar <mingo@elte.hu>

10 years agox86: use GFP_DMA for 24bit coherent_dma_mask
FUJITA Tomonori [Thu, 23 Oct 2008 11:46:55 +0000]
x86: use GFP_DMA for 24bit coherent_dma_mask

dma_alloc_coherent (include/asm-x86/dma-mapping.h) avoids GFP_DMA
allocation first and if the allocated address is not fit for the
device's coherent_dma_mask, then dma_alloc_coherent does GFP_DMA
allocation. This is because dma_alloc_coherent avoids precious GFP_DMA
zone if possible. This is also how the old dma_alloc_coherent
(arch/x86/kernel/pci-dma.c) works.

However, if the coherent_dma_mask of a device is 24bit, there is no
point to go into the above GFP_DMA retry mechanism. We had better use
GFP_DMA in the first place.

Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Tested-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>

10 years agoswiotlb: remove panic for alloc_coherent failure
FUJITA Tomonori [Thu, 23 Oct 2008 09:42:03 +0000]
swiotlb: remove panic for alloc_coherent failure

swiotlb_alloc_coherent calls panic() when allocated swiotlb pages is
not fit for a device's dma mask. However, alloc_coherent failure is
not a disaster at all. AFAIK, none of other x86 and IA64 IOMMU
implementations don't crash in case of alloc_coherent failure.

There are some drivers that don't check alloc_coherent failure but not
many (about ten and I've already started to fix some of
them). alloc_coherent returns NULL in case of failure so it's likely
that these guilty drivers crash immediately. So swiotlb doesn't need
to call panic() just for them.

Reported-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Tested-by: Takashi Iwai <tiwai@suse.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>

10 years agoxen: compilation fix of drivers/xen/events.c on IA64
Isaku Yamahata [Wed, 15 Oct 2008 00:50:44 +0000]
xen: compilation fix of drivers/xen/events.c on IA64

use set_xen_guest_handle() instead of direct assigning.

> linux-2.6/drivers/xen/events.c: In function 'xen_poll_irq':
> linux-2.6/drivers/xen/events.c:757: error: incompatible types in assignment
> make[4]: *** [drivers/xen/events.o] Error 1

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Cc: Isaku Yamahata <yamahata@valinux.co.jp>
Signed-off-by: Ingo Molnar <mingo@elte.hu>

10 years agoxen: portability clean up and some minor clean up for xencomm.c
Isaku Yamahata [Wed, 15 Oct 2008 00:50:41 +0000]
xen: portability clean up and some minor clean up for xencomm.c

clean up of xencomm.c. is_phys_contiguous() is arch dependent
function that depends on how virtual memory are laid out.
So split out the function into arch specific code.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Cc: Isaku Yamahata <yamahata@valinux.co.jp>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Cc: "Luck, Tony" <tony.luck@intel.com>

10 years agoxen: don't reload cr3 on suspend
Jeremy Fitzhardinge [Wed, 15 Oct 2008 00:50:40 +0000]
xen: don't reload cr3 on suspend

It isn't necessary, and it makes the code needlessly non-portable.

Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Cc: Isaku Yamahata <yamahata@valinux.co.jp>
Signed-off-by: Ingo Molnar <mingo@elte.hu>

10 years agokernel/resource: fix reserve_region_with_split() section mismatch
Paul Mundt [Wed, 22 Oct 2008 10:31:11 +0000]
kernel/resource: fix reserve_region_with_split() section mismatch

Impact: cleanup, small kernel text size reduction, no functionality changed

reserve_region_with_split() calls in to __reserve_region_with_split(),
which is an __init function. The only caller of reserve_region_with_split()
is an __init function, so make it __init too.

Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>

10 years agoprintk: remove unused code from kernel/printk.c
roel kluin [Tue, 21 Oct 2008 23:49:09 +0000]
printk: remove unused code from kernel/printk.c

both log_buf_copy() and log_buf_len are unused.

Signed-off-by: Ingo Molnar <mingo@elte.hu>

10 years agoMerge branch 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git...
Linus Torvalds [Thu, 23 Oct 2008 19:38:39 +0000]
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: fix section mismatch warning - apic_x2apic_phys
  x86: fix section mismatch warning - apic_x2apic_cluster
  x86: fix section mismatch warning - apic_x2apic_uv_x
  x86: fix section mismatch warning - apic_physflat
  x86: fix section mismatch warning - apic_flat
  x86: memtest fix use of reserve_early()
  x86 syscall.h: fix argument order
  x86/tlb_uv: remove strange mc146818rtc include
  x86: remove redundant KERN_DEBUG on pr_debug
  x86: do_boot_cpu - check if we have ESR register
  x86: MAINTAINERS change for AMD microcode patch loader
  x86/proc: fix /proc/cpuinfo cpu offline bug
  x86: call dmi-quirks for HP Laptops after early-quirks are executed
  x86, kexec: fix hang on i386 when panic occurs while console_sem is held
  MCE: Don't run 32bit machine checks with interrupts on
  x86: SB600: skip IRQ0 override if it is not routed to INT2 of IOAPIC
  x86: make variables static