platform/kernel/linux-3.10.git
17 years ago[TCP] MD5: Remove some more unnecessary casting.
Matthias M. Dellweg [Tue, 30 Oct 2007 03:55:27 +0000 (20:55 -0700)]
[TCP] MD5: Remove some more unnecessary casting.

while reviewing the tcp_md5-related code further i came across with
another two of these casts which you probably have missed. I don't
actually think that they impose a problem by now, but as you said we
should remove them.

Signed-off-by: Matthias M. Dellweg <2500@gmx.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[TCP] vegas: Fix a bug in disabling slow start by gamma parameter.
Xiaoliang (David) Wei [Tue, 30 Oct 2007 03:24:36 +0000 (20:24 -0700)]
[TCP] vegas: Fix a bug in disabling slow start by gamma parameter.

TCP Vegas implementation has a bug in the process of disabling
slow-start with gamma parameter. The bug may lead to extreme
unfairness in the presence of early packet loss. See details in:
http://www.cs.caltech.edu/~weixl/technical/ns2linux/known_linux/index.html#vegas

Switch the order of "if (tp->snd_cwnd <= tp->snd_ssthresh)" statement
and "if (diff > gamma)" statement to eliminate the problem.

Signed-off-by: Xiaoliang (David) Wei <davidwei79@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IPVS]: use proper timeout instead of fixed value
Andy Gospodarek [Mon, 29 Oct 2007 11:35:45 +0000 (04:35 -0700)]
[IPVS]: use proper timeout instead of fixed value

Instead of using the default timeout of 3 minutes, this uses the timeout
specific to the protocol used for the connection. The 3 minute timeout
seems somewhat arbitrary (though I know it is used other places in the
ipvs code) and when failing over it would be much nicer to use one of
the configured timeout values.

Signed-off-by: Andy Gospodarek <andy@greyhouse.net>
Acked-by: Simon Horman <horms@verge.net.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years ago[IPV6] NDISC: Fix setting base_reachable_time_ms variable.
YOSHIFUJI Hideaki [Mon, 29 Oct 2007 08:32:23 +0000 (01:32 -0700)]
[IPV6] NDISC: Fix setting base_reachable_time_ms variable.

This bug was introduced by the commit
d12af679bcf8995a237560bdf7a4d734f8df5dbb (sysctl: fix neighbour table
sysctls).

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
17 years agoMerge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux...
Linus Torvalds [Tue, 30 Oct 2007 04:46:09 +0000 (21:46 -0700)]
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: (26 commits)
  cpuidle: remove unused exports
  acpi: remove double mention of Support for ACPI option
  ACPI: use select POWER_SUPPLY for AC, BATTERY and SBS
  ACPI: Battery: Allow extract string from integer
  ACPI: battery: Support for non-spec name for LiIon technology
  ACPI: battery: register power_supply subdevice only when battery is present
  suspend: MAINTAINERS update
  ACPI: update MAINTAINERS
  fujitsu-laptop.c: remove dead code
  cpuidle: unexport tick_nohz_get_sleep_length
  ACPI: battery: Update battery information upon sysfs read.
  fujitsu-laptop: make 2 functions static
  ACPI: EC: fix use-after-free
  ACPI: battery: remove dead code
  ACPI: Fan: Drop force_power_state acpi_device option
  ACPI: Fan: fan device does not need own structure
  ACPI: power: don't cache power resource state
  ACPI: EC: Output changes to operational mode
  ACPI: EC: Add workaround for "optimized" controllers
  ACPI: EC: Don't re-enable GPE for each transaction.
  ...

17 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86
Linus Torvalds [Tue, 30 Oct 2007 04:44:20 +0000 (21:44 -0700)]
Merge git://git./linux/kernel/git/x86/linux-2.6-x86

* git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86:
  x86 boot: document for 32 bit boot protocol
  remove the dead X86_REMOTE_DEBUG option
  x86: merge EARLY_PRINTK options
  x86: mm/discontig_32.c: make code static
  x86: kernel/setup_32.c: unexport machine_id
  x86 gart: rename symbols only used for the GART implementation
  x86 gart: make some variables and functions static
  x86 gart: rename CONFIG_IOMMU to CONFIG_GART_IOMMU
  x86 gart: rename iommu.h to gart.h
  x86: additional CPUID strings; fix strings for AMD-ecx

17 years agosched: fix /proc/<PID>/stat stime/utime monotonicity, part 2
Balbir Singh [Mon, 29 Oct 2007 23:26:32 +0000 (00:26 +0100)]
sched: fix /proc/<PID>/stat stime/utime monotonicity, part 2

Extend Peter's patch to fix accounting issues, by keeping stime
monotonic too.

Signed-off-by: Balbir Singh <balbir@linux.vnet.ibm.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Tested-by: Frans Pop <elendil@planet.nl>
17 years agox86 boot: document for 32 bit boot protocol
Huang, Ying [Wed, 24 Oct 2007 02:18:49 +0000 (10:18 +0800)]
x86 boot: document for 32 bit boot protocol

This patch documents the 32-bit boot protocol of x86. It has been used
by Kexec and LinuxBIOS. This patch is based on the proposal of Peter
Anvin.

Signed-off-by: Huang Ying <ying.huang@intel.com>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agoremove the dead X86_REMOTE_DEBUG option
Adrian Bunk [Mon, 29 Oct 2007 12:49:16 +0000 (13:49 +0100)]
remove the dead X86_REMOTE_DEBUG option

This patch removes the dead X86_REMOTE_DEBUG option.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
17 years agox86: merge EARLY_PRINTK options
Adrian Bunk [Mon, 29 Oct 2007 12:49:36 +0000 (13:49 +0100)]
x86: merge EARLY_PRINTK options

This patch merges the x86_64 EARLY_PRINTK option into the i386 one.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
17 years agox86: mm/discontig_32.c: make code static
Adrian Bunk [Wed, 24 Oct 2007 16:24:47 +0000 (18:24 +0200)]
x86: mm/discontig_32.c: make code static

node0_bdata and paddr_to_nid() can become static.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agox86: kernel/setup_32.c: unexport machine_id
Adrian Bunk [Wed, 24 Oct 2007 16:25:06 +0000 (18:25 +0200)]
x86: kernel/setup_32.c: unexport machine_id

This patch removes the unused EXPORT_SYMBOL(machine_id).

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agox86 gart: rename symbols only used for the GART implementation
Joerg Roedel [Wed, 24 Oct 2007 10:49:50 +0000 (12:49 +0200)]
x86 gart: rename symbols only used for the GART implementation

This patch renames the 4 symbols iommu_hole_init(), iommu_aperture,
iommu_aperture_allowed, iommu_aperture_disabled. All these symbols are only
used for the GART implementation of IOMMUs.

It adds and additional gart_ prefix to them.

Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agox86 gart: make some variables and functions static
Joerg Roedel [Wed, 24 Oct 2007 10:49:49 +0000 (12:49 +0200)]
x86 gart: make some variables and functions static

This patch makes some functions and variables static in pci-gart_64.c which are
not used somewhere else.

Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Acked-by: Muli Ben-Yehuda <muli@il.ibm.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agox86 gart: rename CONFIG_IOMMU to CONFIG_GART_IOMMU
Joerg Roedel [Wed, 24 Oct 2007 10:49:48 +0000 (12:49 +0200)]
x86 gart: rename CONFIG_IOMMU to CONFIG_GART_IOMMU

This patch renames the IOMMU config option to GART_IOMMU because in fact it
means the GART and not general support for an IOMMU on x86.

Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Acked-by: Muli Ben-Yehuda <muli@il.ibm.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agox86 gart: rename iommu.h to gart.h
Joerg Roedel [Wed, 24 Oct 2007 10:49:47 +0000 (12:49 +0200)]
x86 gart: rename iommu.h to gart.h

This patch renames the include file asm-x86/iommu.h to asm-x86/gart.h to make
clear to which IOMMU implementation it belongs. The patch also adds "GART" to
the Kconfig line.

Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Acked-by: Muli Ben-Yehuda <muli@il.ibm.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
17 years agox86: additional CPUID strings; fix strings for AMD-ecx
H. Peter Anvin [Fri, 26 Oct 2007 21:09:09 +0000 (14:09 -0700)]
x86: additional CPUID strings; fix strings for AMD-ecx

Additional CPUID strings (sse4_1, sse4_2, sse5, skinit, wdt); fix the
positioning of the AMD ecx strings (cr8_legacy was duplicated under
two different names, so the alignment of all the other strings were
off by one.)

Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agoPull documentation into release branch
Len Brown [Mon, 29 Oct 2007 21:31:01 +0000 (17:31 -0400)]
Pull documentation into release branch

17 years agoPull cpuidle into release branch
Len Brown [Mon, 29 Oct 2007 21:30:55 +0000 (17:30 -0400)]
Pull cpuidle into release branch

17 years agoPull fujitsu into release branch
Len Brown [Mon, 29 Oct 2007 21:30:48 +0000 (17:30 -0400)]
Pull fujitsu into release branch

17 years agoPull alexey-fixes into release branch
Len Brown [Mon, 29 Oct 2007 21:30:21 +0000 (17:30 -0400)]
Pull alexey-fixes into release branch

17 years agocpuidle: remove unused exports
Adrian Bunk [Mon, 29 Oct 2007 12:49:13 +0000 (13:49 +0100)]
cpuidle: remove unused exports

This patch removes the following unused exports:
- cpuidle_devices
- cpuidle_register_governor
- cpuidle_unregister_governor

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Len Brown <len.brown@intel.com>
17 years agoacpi: remove double mention of Support for ACPI option
Frans Pop [Mon, 29 Oct 2007 21:20:38 +0000 (17:20 -0400)]
acpi: remove double mention of Support for ACPI option

Current description for CONFIG_ACPI includes the word "Support" twice.  One
effect of this is that in menuconfig the "--->" that indicates the presence
of sub-options will not show up unless you have a very wide console.

Signed-off-by: Frans Pop <elendil@planet.nl>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Len Brown <len.brown@intel.com>
17 years agoACPI: use select POWER_SUPPLY for AC, BATTERY and SBS
Alexey Starikovskiy [Mon, 29 Oct 2007 21:08:59 +0000 (17:08 -0400)]
ACPI: use select POWER_SUPPLY for AC, BATTERY and SBS

POWER_SUPPLY is needed for AC, battery, and SBS sysfs support.  Use
'select' instead of 'depends on', as it is will not be selected by anything
else, leading to confusion.

Signed-off-by: Alexey Starikovskiy <astarikovskiy@suse.de>
Tested-by: Frans Pop <elendil@planet.nl>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Len Brown <len.brown@intel.com>
17 years agoMerge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus
Linus Torvalds [Mon, 29 Oct 2007 21:06:55 +0000 (14:06 -0700)]
Merge branch 'upstream' of git://ftp.linux-mips.org/upstream-linus

* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: (34 commits)
  [MIPS] tb0219: Update copyright message.
  [MIPS] MT: Fix bug in multithreaded kernels.
  [MIPS] Alchemy: Remove CONFIG_TS_AU1X00_ADS7846 from defconfigs.
  Author: Ralf Baechle <ralf@linux-mips.org>
  [MIPS] sb1250: Enable GenBus IDE in defconfig.
  [MIPS] vmlinux.ld.S: correctly indent .data section
  [MIPS] c-r3k: Implement flush_cache_range()
  [MIPS] Store sign-extend register values for PTRACE_GETREGS
  [MIPS] Alchemy: Register platform devices
  [MIPS] Add len and addr validation for MAP_FIXED mappings.
  [MIPS] IRIX: Fix off-by-one error in signal compat code.
  [MIPS] time: Replace plat_timer_setup with modern APIs.
  [MIPS] time: Fix cut'n'paste bug in Sibyte clockevent driver.
  [MIPS] time: Make c0_compare_int_usable faster
  [MIPS] time: Fix cevt-r4k.c for 64-bit kernel
  [MIPS] Sibyte: Delete {sb1250,bcm1480}_steal_irq().
  [MIPS] txx9tmr clockevent/clocksource driver
  [MIPS] Add mips_hpt_frequency check to mips_clockevent_init().
  [MIPS] IP32: Fixes after interrupt renumbering.
  [MIPS] IP27: Fix slice logic to work for arbitrary number of slices.
  ...

17 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched
Linus Torvalds [Mon, 29 Oct 2007 21:06:19 +0000 (14:06 -0700)]
Merge git://git./linux/kernel/git/mingo/linux-2.6-sched

* git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched:
  sched: fix style in kernel/sched.c
  sched: fix style of swap() macro in kernel/sched_fair.c
  sched: report CPU usage in CFS cgroup directories
  sched: move rcu_head to task_group struct
  sched: fix incorrect assumption that cpu 0 exists
  sched: keep utime/stime monotonic
  sched: make kernel/sched.c:account_guest_time() static

17 years agoRevert "x86_64: allocate sparsemem memmap above 4G"
Linus Torvalds [Mon, 29 Oct 2007 18:36:04 +0000 (11:36 -0700)]
Revert "x86_64: allocate sparsemem memmap above 4G"

This reverts commit 2e1c49db4c640b35df13889b86b9d62215ade4b6.

First off, testing in Fedora has shown it to cause boot failures,
bisected down by Martin Ebourne, and reported by Dave Jobes.  So the
commit will likely be reverted in the 2.6.23 stable kernels.

Secondly, in the 2.6.24 model, x86-64 has now grown support for
SPARSEMEM_VMEMMAP, which disables the relevant code anyway, so while the
bug is not visible any more, it's become invisible due to the code just
being irrelevant and no longer enabled on the only architecture that
this ever affected.

Reported-by: Dave Jones <davej@redhat.com>
Tested-by: Martin Ebourne <fedora@ebourne.me.uk>
Cc: Zou Nan hai <nanhai.zou@intel.com>
Cc: Suresh Siddha <suresh.b.siddha@intel.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Acked-by: Andy Whitcroft <apw@shadowen.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoACPI: Battery: Allow extract string from integer
Alexey Starikovskiy [Mon, 29 Oct 2007 20:29:40 +0000 (23:29 +0300)]
ACPI: Battery: Allow extract string from integer

Some machines return integer instead of expected string.

Signed-off-by: Alexey Starikovskiy <astarikovskiy@suse.de>
Tested-by: Andrey Borzenkov <arvidjaar@mail.ru>
Tested-by: Frans Pop <elendil@planet.nl>
Signed-off-by: Len Brown <len.brown@intel.com>
17 years agoACPI: battery: Support for non-spec name for LiIon technology
Alexey Starikovskiy [Sun, 28 Oct 2007 12:33:10 +0000 (15:33 +0300)]
ACPI: battery: Support for non-spec name for LiIon technology

Support Li-Ion as possible name for technology.

Signed-off-by: Alexey Starikovskiy <astarikovskiy@suse.de>
Signed-off-by: Len Brown <len.brown@intel.com>
17 years agoACPI: battery: register power_supply subdevice only when battery is present
Andrey Borzenkov [Sun, 28 Oct 2007 09:50:09 +0000 (12:50 +0300)]
ACPI: battery: register power_supply subdevice only when battery is present

Make sure no power_supply object is present unless we actualy detect
presence of battery. This fixes ghost batteries detected by HAL

Signed-off-by: Andrey Borzenkov <arvidjaar@mail.ru>
Signed-off-by: Alexey Starikovskiy <astarikovskiy@suse.de>
Signed-off-by: Len Brown <len.brown@intel.com>
17 years agosched: fix style in kernel/sched.c
Ingo Molnar [Mon, 29 Oct 2007 20:18:11 +0000 (21:18 +0100)]
sched: fix style in kernel/sched.c

fallout of recent commits: small coding style fixes.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agosched: fix style of swap() macro in kernel/sched_fair.c
Ingo Molnar [Mon, 29 Oct 2007 20:18:11 +0000 (21:18 +0100)]
sched: fix style of swap() macro in kernel/sched_fair.c

fix style of swap() macro in kernel/sched_fair.c.

( this macro should eventually move to a general header, as ext3 uses
  a similar construct too. )

Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agosched: report CPU usage in CFS cgroup directories
Paul Menage [Mon, 29 Oct 2007 20:18:11 +0000 (21:18 +0100)]
sched: report CPU usage in CFS cgroup directories

Adds a cpu.usage file to the CFS cgroup that reports CPU usage in
milliseconds for that cgroup's tasks

[ mingo@elte.hu: style cleanups. ]

Signed-off-by: Paul Menage <menage@google.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agosched: move rcu_head to task_group struct
Srivatsa Vaddagiri [Mon, 29 Oct 2007 20:18:11 +0000 (21:18 +0100)]
sched: move rcu_head to task_group struct

Peter Zijlstra noticed that the rcu_head object need not be present
in every cfs_rq of a group. Move it to the task_group structure
instead.

Signed-off-by: Srivatsa Vaddagiri <vatsa@linux.vnet.ibm.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agosched: fix incorrect assumption that cpu 0 exists
James Bottomley [Mon, 29 Oct 2007 20:18:11 +0000 (21:18 +0100)]
sched: fix incorrect assumption that cpu 0 exists

This patch:

commit 9b5b77512dce239fa168183fa71896712232e95a
Author: Srivatsa Vaddagiri <vatsa@linux.vnet.ibm.com>
Date:   Mon Oct 15 17:00:09 2007 +0200

    sched: clean up code under CONFIG_FAIR_GROUP_SCHED

Introduced an assumption of the existence of CPU0 via this line

cfs_rq = tg->cfs_rq[0];

If you have no CPU0, that will be NULL.  The fix seems to be just to
take whatever cfs_rq queue comes out of the for_each_possible_cpu()
loop, since they're all equally good for the destruction operation.

Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agosched: keep utime/stime monotonic
Peter Zijlstra [Mon, 29 Oct 2007 20:18:11 +0000 (21:18 +0100)]
sched: keep utime/stime monotonic

keep utime/stime monotonic.

cpustats use utime/stime as a ratio against sum_exec_runtime, as a
consequence it can happen - when the ratio changes faster than time
accumulates - that either can be appear to go backwards.

Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years agosched: make kernel/sched.c:account_guest_time() static
Adrian Bunk [Mon, 29 Oct 2007 20:18:10 +0000 (21:18 +0100)]
sched: make kernel/sched.c:account_guest_time() static

account_guest_time() can become static.

Signed-off-by: Adrian Bunk <bunk@kernel.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
17 years ago[MIPS] tb0219: Update copyright message.
Ralf Baechle [Mon, 29 Oct 2007 19:35:37 +0000 (19:35 +0000)]
[MIPS] tb0219: Update copyright message.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] MT: Fix bug in multithreaded kernels.
Ralf Baechle [Mon, 8 Oct 2007 15:38:37 +0000 (16:38 +0100)]
[MIPS] MT: Fix bug in multithreaded kernels.

When GDB writes a breakpoint into address area of inferior process the
kernel needs to invalidate the modified memory in the inferior which
is done by calling flush_cache_page which in turns calls
r4k_flush_cache_page and local_r4k_flush_cache_page for VSMP or SMTC
kernel via r4k_on_each_cpu().

As the VSMP and SMTC SMP kernels for 34K are running on a single shared
caches it is possible to get away without interprocessor function calls.
This optimization is implemented in r4k_on_each_cpu, so
local_r4k_flush_cache_page is only ever called on the local CPU.

This is where the following code in local_r4k_flush_cache_page() strikes:

        /*
         * If ownes no valid ASID yet, cannot possibly have gotten
         * this page into the cache.
         */
        if (cpu_context(smp_processor_id(), mm) == 0)
                return;

On VSMP and SMTC had a function of cpu_context() for each CPU(TC).

So in case another CPU than the CPU executing local_r4k_cache_flush_page
has not accessed the mm but one of the other CPUs has there may be data
to be flushed in the cache yet local_r4k_cache_flush_page will falsely
return leaving the I-cache inconsistent for the breakpoint.

While the issue was discovered with GDB it also exists in
local_r4k_flush_cache_range() and local_r4k_flush_cache().

Fixed by introducing a new function has_valid_asid which on MT kernels
returns true if a mm is active on any processor in the system.

This is relativly expensive since for memory acccesses in that loop
cache misses have to be assumed but it seems the most viable solution
for 2.6.23 and older -stable kernels.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Alchemy: Remove CONFIG_TS_AU1X00_ADS7846 from defconfigs.
Ralf Baechle [Mon, 29 Oct 2007 19:35:37 +0000 (19:35 +0000)]
[MIPS] Alchemy: Remove CONFIG_TS_AU1X00_ADS7846 from defconfigs.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years agoAuthor: Ralf Baechle <ralf@linux-mips.org>
Ralf Baechle [Tue, 9 Oct 2007 14:15:21 +0000 (15:15 +0100)]
Author: Ralf Baechle <ralf@linux-mips.org>

[MIPS] MSP71xx: Fix bitrot.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] sb1250: Enable GenBus IDE in defconfig.
Maciej W. Rozycki [Fri, 12 Oct 2007 15:46:56 +0000 (16:46 +0100)]
[MIPS] sb1250: Enable GenBus IDE in defconfig.

Enable the onboard GenBus IDE interface in the default configuration.

Signed-off-by: Maciej W. Rozycki <macro@linux-mips.org>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] vmlinux.ld.S: correctly indent .data section
Franck Bui-Huu [Thu, 18 Oct 2007 21:12:32 +0000 (23:12 +0200)]
[MIPS] vmlinux.ld.S: correctly indent .data section

Signed-off-by: Franck Bui-Huu <fbuihuu@gmail.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] c-r3k: Implement flush_cache_range()
Maciej W. Rozycki [Wed, 17 Oct 2007 10:51:39 +0000 (11:51 +0100)]
[MIPS] c-r3k: Implement flush_cache_range()

Contrary to the belief of some, the R3000 and related processors did have
caches, both a data and an instruction cache.  Here is an implementation
of r3k_flush_cache_page(), which is the processor-specific back-end for
flush_cache_range(), done according to the spec in
Documentation/cachetlb.txt.

While at it, remove an unused local function: get_phys_page(), do some
trivial formatting fixes and modernise debugging facilities.

Signed-off-by: Maciej W. Rozycki <macro@linux-mips.org>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Store sign-extend register values for PTRACE_GETREGS
Atsushi Nemoto [Thu, 25 Oct 2007 15:53:02 +0000 (00:53 +0900)]
[MIPS] Store sign-extend register values for PTRACE_GETREGS

A comment on ptrace_getregs() states "Registers are sign extended to
fill the available space." but it is not true.  Fix code to match the
comment.  Also fix casts on each caller to get rid of some warnings.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Alchemy: Register platform devices
Florian Fainelli [Tue, 23 Oct 2007 16:55:55 +0000 (18:55 +0200)]
[MIPS] Alchemy: Register platform devices

This patch separates the platform devices registration for the MTX-1
specific devices: GPIO leds and watchdog.

[Minor fixup and formatting change -- Ralf]

Signed-off-by: Florian Fainelli <florian.fainelli@telecomint.eu>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Add len and addr validation for MAP_FIXED mappings.
David Daney [Sun, 28 Oct 2007 06:10:20 +0000 (23:10 -0700)]
[MIPS] Add len and addr validation for MAP_FIXED mappings.

Mmap with MAP_FIXED was not validating the addr and len parameters.  This
leads to the failure of GCC's gcc.c-torture/execute/loop-2[fg].c testcases
when using the o32 ABI on a 64 bit kernel.

These testcases try to mmap 65536 bytes at 0x7fff8000 and then access all
the memory.  In 2.6.18 and 2.6.23.1 (and likely other versions as well)
the kernel maps the requested memory, but since half of it is above
0x80000000 a SIGBUS is generated when it is accessed.

This patch moves the len validation above the MAP_FIXED processing so that
it is always validated.  It also adds validation to the addr parameter for
MAP_FIXED mappings.

Signed-off-by: David Daney <ddaney@avtrex.com>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] IRIX: Fix off-by-one error in signal compat code.
Ralf Baechle [Mon, 29 Oct 2007 15:00:37 +0000 (15:00 +0000)]
[MIPS] IRIX: Fix off-by-one error in signal compat code.

Based on original patch by Roel Kluin <12o3l@tiscali.nl>.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] time: Replace plat_timer_setup with modern APIs.
Ralf Baechle [Mon, 29 Oct 2007 14:23:43 +0000 (14:23 +0000)]
[MIPS] time: Replace plat_timer_setup with modern APIs.

plat_timer_setup is no longer getting called.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] time: Fix cut'n'paste bug in Sibyte clockevent driver.
Ralf Baechle [Mon, 29 Oct 2007 11:36:24 +0000 (11:36 +0000)]
[MIPS] time: Fix cut'n'paste bug in Sibyte clockevent driver.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] time: Make c0_compare_int_usable faster
Atsushi Nemoto [Tue, 23 Oct 2007 12:55:42 +0000 (21:55 +0900)]
[MIPS] time: Make c0_compare_int_usable faster

Try increasingly longer time periods starting of at 0x10 cycles.  This
should be fast on hardware and work nicely with emulators.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] time: Fix cevt-r4k.c for 64-bit kernel
Atsushi Nemoto [Tue, 23 Oct 2007 12:51:19 +0000 (21:51 +0900)]
[MIPS] time: Fix cevt-r4k.c for 64-bit kernel

The expression "(long)(read_c0_count() - cnt)" can never be a negative
value on 64-bit kernel.  Cast to "int" before comparison.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Sibyte: Delete {sb1250,bcm1480}_steal_irq().
Ralf Baechle [Sun, 28 Oct 2007 23:02:46 +0000 (23:02 +0000)]
[MIPS] Sibyte: Delete {sb1250,bcm1480}_steal_irq().

They break the timer interrupt initialization and only seem to be a kludge
for initialization happening in the wrong order.  Further testing done by
Thiemo confirms the suspicion that the other invocations also seem to have
useless.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] txx9tmr clockevent/clocksource driver
Atsushi Nemoto [Wed, 24 Oct 2007 16:34:09 +0000 (01:34 +0900)]
[MIPS] txx9tmr clockevent/clocksource driver

Convert jmr3927_clock_event_device to more generic
txx9tmr_clock_event_device which supports one-shot mode.  The
txx9tmr_clock_event_device can be used for TX49 too if the cp0 timer
interrupt was not available.

Convert jmr3927_hpt_read to txx9_clocksource driver which does not
depends jiffies anymore.  The txx9_clocksource itself can be used for
TX49, but normally TX49 uses higher precision clocksource_mips.

Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Add mips_hpt_frequency check to mips_clockevent_init().
Yoichi Yuasa [Fri, 26 Oct 2007 13:27:05 +0000 (22:27 +0900)]
[MIPS] Add mips_hpt_frequency check to mips_clockevent_init().

Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] IP32: Fixes after interrupt renumbering.
Ralf Baechle [Sun, 28 Oct 2007 18:46:39 +0000 (18:46 +0000)]
[MIPS] IP32: Fixes after interrupt renumbering.

And general untangling.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] IP27: Fix slice logic to work for arbitrary number of slices.
Ralf Baechle [Sun, 28 Oct 2007 23:02:37 +0000 (23:02 +0000)]
[MIPS] IP27: Fix slice logic to work for arbitrary number of slices.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] SNI: Convert a20r timer to clockevent device.
Ralf Baechle [Fri, 26 Oct 2007 13:36:10 +0000 (14:36 +0100)]
[MIPS] SNI: Convert a20r timer to clockevent device.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] time: Merge eXcite plat_timer_setup into plat_time_init.
Ralf Baechle [Fri, 26 Oct 2007 12:52:41 +0000 (13:52 +0100)]
[MIPS] time: Merge eXcite plat_timer_setup into plat_time_init.

Fixme: At the time of this writing cevt-r4k.c doesn't yet know about how
to handle the alternate timer interrupt of the RM9000.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] time: Merge lasat plat_timer_setup into plat_time_init.
Ralf Baechle [Fri, 26 Oct 2007 12:43:32 +0000 (13:43 +0100)]
[MIPS] time: Merge lasat plat_timer_setup into plat_time_init.

Since the cp0 compare interrupt handler isn't initialized by the time
plat_time_init is called don't set IE_IRQ5 anymore, cevt-r4k.c will do
that a little later itself.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] time: Remove wrppmc's definition of plat_timer_setup.
Ralf Baechle [Fri, 26 Oct 2007 12:36:15 +0000 (13:36 +0100)]
[MIPS] time: Remove wrppmc's definition of plat_timer_setup.

The only thing it used to do is now done by cevt-r4k.c.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] time: Cause platform definitions of plat_timer_setup to cause error.
Ralf Baechle [Fri, 26 Oct 2007 12:24:06 +0000 (13:24 +0100)]
[MIPS] time: Cause platform definitions of plat_timer_setup to cause error.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] time: Remove declaration of plat_timer_setup, there is no caller.
Ralf Baechle [Fri, 26 Oct 2007 12:23:02 +0000 (13:23 +0100)]
[MIPS] time: Remove declaration of plat_timer_setup, there is no caller.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Alchemy: Convert from plat_timer_setup to plat_time_init.
Ralf Baechle [Fri, 26 Oct 2007 11:58:02 +0000 (12:58 +0100)]
[MIPS] Alchemy: Convert from plat_timer_setup to plat_time_init.

The old plat_timer_setup hook is no longer getting called so the Alchemy
time initialization was getting skipped.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] vpe: Use p_paddr instead of p_vaddr loader.
Ralf Baechle [Wed, 24 Oct 2007 14:54:32 +0000 (15:54 +0100)]
[MIPS] vpe: Use p_paddr instead of p_vaddr loader.

This subtle difference makes ELF overlays work.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Cleanup random difference between the lmo and kernel.org tree.
Ralf Baechle [Mon, 29 Oct 2007 19:35:33 +0000 (19:35 +0000)]
[MIPS] Cleanup random difference between the lmo and  tree.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] time: set clock before clockevent_delta2ns() in GT641xx.
Yoichi Yuasa [Tue, 23 Oct 2007 09:22:50 +0000 (18:22 +0900)]
[MIPS] time: set clock before clockevent_delta2ns() in GT641xx.

clockevent_delta2ns() use the shift and mult value, so
clockevent_set_clock() should be called first.
Pointed out by Atsushi Nemoto.

Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] time: Use non-interrupt locks in GT641xx clockevent driver
Yoichi Yuasa [Tue, 23 Oct 2007 09:19:13 +0000 (18:19 +0900)]
[MIPS] time: Use non-interrupt locks in GT641xx clockevent driver

set_next_event() and set_mode() are always called with interrupt disabled.
irqsave and irqrestore are not necessary for spinlock.
Pointed out by Atsushi Nemoto.

Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Alchemy: micro-optimizatize time code.
Ralf Baechle [Tue, 23 Oct 2007 02:04:19 +0000 (03:04 +0100)]
[MIPS] Alchemy: micro-optimizatize time code.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] Alchemy: Nuke homebrew setup_irq(), it's broken and unnecessary.
Ralf Baechle [Tue, 23 Oct 2007 01:59:55 +0000 (02:59 +0100)]
[MIPS] Alchemy: Nuke homebrew setup_irq(), it's broken and unnecessary.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years ago[MIPS] SMTC: Allow control over TC assignment to vpe0.
Kevin D. Kissell [Wed, 21 Mar 2007 12:28:37 +0000 (13:28 +0100)]
[MIPS] SMTC: Allow control over TC assignment to vpe0.

Modify the SMTC initialization code to allow boot-time specification not
only of how many VPEs and TCs to use, but also how many TCs out of the
allowed pool are to be bound to VPE 0.  The new boot option is "vpe0tcs=N",
where N is an integer.  Using it in combination with the existing options
allows arbitrary assignments across the 2 VPEs of a 34K.  e.g. "maxtcs=3
 vpe0tcs=1" forces VPE0 to have 1 TC, while VPE1 has 2, and "maxtcs=4
vpe0tcs=3" forces VPE0 to have 3 TCs, while VPE1 gets 1.  If no vpe0tcs
option is specified, the traditional algorithm of evenly dividing TCs
between available VPEs, with the odd "slop" going to VPE0, is retained.

The reason for doing this is to allow a finer balancing of TCs which can
handle I/O interrupts on Malta (those on VPE 0) and those which cannot.

Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
17 years agoMerge branch 'alpm' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev
Linus Torvalds [Mon, 29 Oct 2007 19:12:34 +0000 (12:12 -0700)]
Merge branch 'alpm' of /linux/kernel/git/jgarzik/libata-dev

* 'alpm' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev:
  [libata] AHCI: add hw link power management support
  [libata] Link power management infrastructure

17 years agoMerge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Mon, 29 Oct 2007 19:11:54 +0000 (12:11 -0700)]
Merge branch 'upstream-linus' of /linux/kernel/git/jgarzik/libata-dev

* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/libata-dev:
  [libata] AHCI: fix newly introduced host-reset bug
  [libata] sata_nv: fix SWNCQ enabling
  libata: add MAXTOR 7V300F0/VA111900 to NCQ blacklist
  libata: no need to speed down if already at PIO0
  libata: relocate forcing PIO0 on reset
  pata_ns87415: define SUPERIO_IDE_MAX_RETRIES
  [libata] Address some checkpatch-spotted issues
  [libata] fix 'if(' and similar areas that lack whitespace
  libata: implement ata_wait_after_reset()
  libata: track SLEEP state and issue SRST to wake it up
  libata: relocate and fix post-command processing

17 years agoMerge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Mon, 29 Oct 2007 19:11:24 +0000 (12:11 -0700)]
Merge branch 'upstream-linus' of /linux/kernel/git/jgarzik/netdev-2.6

* 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6: (22 commits)
  Fix ethernet multicast for ucc_geth.
  netdrvr/pcmcia: use IRQ_TYPE_DYNAMIC_SHARING flag for irq.Attributes.
  FEC - fast ethernet controller for mpc52xx
  ehea: add kexec support
  e1000e: Remove legacy jumbo frame receive code
  e1000e: Re-enable SECRC - crc stripping
  e1000e: Fix PBA calculation for jumbo frame packets
  e1000e: Fix jumbo frame receive code.
  drivers/net/irda/au1k_ir: fix obvious irq handler bugs
  ipg: Kconfig whitepaces/tab damages
  ipg: missing Kconfig dependency
  r8169: remove poll_locked logic
  r8169: napi config
  [PATCH] iwl3945: fix direct scan problem
  [PATCH] iwl3945: cancel scan on rxon command
  [PATCH] iwl4965: fix scan problem
  [PATCH] iwl4965: fix driver hang related to hardware scan
  [PATCH] iwlwifi: fix sending probe request in iwl 4965
  [PATCH] rtl8187: Allow multicast frames
  [PATCH] b43/b43legacy: jiffies_round -> jiffies_round_relative
  ...

17 years agoMerge branch 'warnings-upstream' of master.kernel.org:/pub/scm/linux/kernel/git/jgarz...
Linus Torvalds [Mon, 29 Oct 2007 19:10:49 +0000 (12:10 -0700)]
Merge branch 'warnings-upstream' of /linux/kernel/git/jgarzik/misc-2.6

* 'warnings-upstream' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/misc-2.6:
  [ISDN] capidrv: address two longstanding warnings

17 years ago[libata] AHCI: add hw link power management support
Kristen Carlson Accardi [Thu, 25 Oct 2007 05:33:26 +0000 (01:33 -0400)]
[libata] AHCI: add hw link power management support

This patch will set the correct bits to turn on Aggressive
Link Power Management (ALPM) for the ahci driver.  This
will cause the controller and disk to negotiate a lower
power state for the link when there is no activity (see
the AHCI 1.x spec for details).  This feature is mutually
exclusive with Hot Plug, so when ALPM is enabled, Hot Plug
is disabled.  ALPM will be enabled by default, but it is
settable via the scsi host syfs interface.  Possible
settings for this feature are:

Setting         Effect
----------------------------------------------------------
min_power       ALPM is enabled, and link set to enter
                lowest power state (SLUMBER) when idle
                Hot plug not allowed.

max_performance ALPM is disabled, Hot Plug is allowed

medium_power    ALPM is enabled, and link set to enter
                second lowest power state (PARTIAL) when
                idle.  Hot plug not allowed.

Signed-off-by: Kristen Carlson Accardi <kristen.c.accardi@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years ago[libata] Link power management infrastructure
Kristen Carlson Accardi [Thu, 25 Oct 2007 04:58:59 +0000 (00:58 -0400)]
[libata] Link power management infrastructure

Device Initiated Power Management, which is defined
in SATA 2.5 can be enabled for disks which support it.
This patch enables DIPM when the user sets the link
power management policy to "min_power".

Additionally, libata drivers can define a function
(enable_pm) that will perform hardware specific actions to
enable whatever power management policy the user set up
for Host Initiated Power management (HIPM).
This power management policy will be activated after all
disks have been enumerated and intialized.  Drivers should
also define disable_pm, which will turn off link power
management, but not change link power management policy.

Documentation/scsi/link_power_management_policy.txt has additional
information.

Signed-off-by: Kristen Carlson Accardi <kristen.c.accardi@intel.com>
Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agoNOMMU: mm/nommu.c needs linux/module.h
David Howells [Mon, 29 Oct 2007 13:15:39 +0000 (13:15 +0000)]
NOMMU: mm/nommu.c needs linux/module.h

mm/nommu.c needs to #include linux/module.h for it to understand EXPORT_*()
macros.

Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoMerge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block
Linus Torvalds [Mon, 29 Oct 2007 14:49:28 +0000 (07:49 -0700)]
Merge branch 'for-linus' of git://git.kernel.dk/linux-2.6-block

* 'for-linus' of git://git.kernel.dk/linux-2.6-block:
  compat_ioctl: fix block device compat ioctl regression
  [BLOCK] Fix bad sharing of tag busy list on queues with shared tag maps
  Fix a build error when BLOCK=n
  block: use lock bitops for the tag map.
  cciss: update copyright notices
  cfq_get_queue: fix possible NULL pointer access
  blk_sync_queue() should cancel request_queue->unplug_work
  cfq_exit_queue() should cancel cfq_data->unplug_work
  block layer: remove a unused argument of drive_stat_acct()

17 years agoMerge branch 'sg' of git://git.kernel.dk/linux-2.6-block
Linus Torvalds [Mon, 29 Oct 2007 14:49:10 +0000 (07:49 -0700)]
Merge branch 'sg' of git://git.kernel.dk/linux-2.6-block

* 'sg' of git://git.kernel.dk/linux-2.6-block:
  Correction of "Update drivers to use sg helpers" patch for IMXMMC driver
  sg_init_table() should use unsigned loop index variable
  sg_last() should use unsigned loop index variable
  Initialise scatter/gather list in sg driver
  Initialise scatter/gather list in ata_sg_setup
  x86: fix pci-gart failure handling
  SG: s390-scsi: missing size parameter in zfcp_address_to_sg()
  SG: clear termination bit in sg_chain()

17 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/tglx/linux-2.6-hrt
Linus Torvalds [Mon, 29 Oct 2007 14:47:05 +0000 (07:47 -0700)]
Merge git://git./linux/kernel/git/tglx/linux-2.6-hrt

* git://git.kernel.org/pub/scm/linux/kernel/git/tglx/linux-2.6-hrt:
  Quieten hrtimer printk: "Switched to high resolution mode .."
  timer_list: Fix printk format strings
  clockevents: unexport tick_nohz_get_sleep_length

17 years ago[libata] AHCI: fix newly introduced host-reset bug
Jeff Garzik [Mon, 29 Oct 2007 14:43:55 +0000 (10:43 -0400)]
[libata] AHCI: fix newly introduced host-reset bug

The recent fix to host reset introduced a problem, whereby AHCI-enable
bit would be cleared upon reset, if it was not asserted prior to reset.

Unconditionally enable AHCI-enable bit.

Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agodeal with resource allocation bugs in arcmsr
Al Viro [Mon, 29 Oct 2007 05:08:38 +0000 (05:08 +0000)]
deal with resource allocation bugs in arcmsr

a) for type B we should _not_ iounmap() acb->pmu; it's not ioremapped.
b) for type B we should iounmap() two regions we _do_ ioremap.
c) if ioremap() fails, we need to bail out (and clean up).

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agofix abuses of ptrdiff_t
Al Viro [Mon, 29 Oct 2007 05:11:28 +0000 (05:11 +0000)]
fix abuses of ptrdiff_t

Use of ptrdiff_t in places like

-                       if (!access_ok(VERIFY_WRITE, u_tmp->rx_buf, u_tmp->len))
+                       if (!access_ok(VERIFY_WRITE, (u8 __user *)
+                                               (ptrdiff_t) u_tmp->rx_buf,
+                                               u_tmp->len))

is wrong; for one thing, it's a bad C (it's what uintptr_t is for; in general
we are not even promised that ptrdiff_t is large enough to hold a pointer,
just enough to hold a difference between two pointers within the same object).
For another, it confuses the fsck out of sparse.

Use unsigned long or uintptr_t instead.  There are several places misusing
ptrdiff_t; fixed.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agofix reentrancy bug in arcmsr_get_iop_{r,w}qbuffer()
Al Viro [Mon, 29 Oct 2007 05:08:58 +0000 (05:08 +0000)]
fix reentrancy bug in arcmsr_get_iop_{r,w}qbuffer()

doh...

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoarcmsr: endianness bug
Al Viro [Mon, 29 Oct 2007 05:08:48 +0000 (05:08 +0000)]
arcmsr: endianness bug

initializing a field in data shared with the card with
cpu_to_le32(something) | 0x100000 is broken - the field is, indeed,
little-endian and we need cpu_to_le32() on both parts.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agotrivial annotations in arcmsr
Al Viro [Mon, 29 Oct 2007 05:08:28 +0000 (05:08 +0000)]
trivial annotations in arcmsr

driver still has serious portability problems

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoSCTP endianness annotations regression
Al Viro [Mon, 29 Oct 2007 05:03:23 +0000 (05:03 +0000)]
SCTP endianness annotations regression

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Acked-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agointel-iommu fixes
Al Viro [Mon, 29 Oct 2007 04:51:16 +0000 (04:51 +0000)]
intel-iommu fixes

 - off by one in dmar_get_fault_reason() (maximal index in array is
   ARRAY_SIZE()-1, not ARRAY_SIZE())
 - NULL noise removal
 - __iomem annotation fix

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agomisc uml annotation and section fixes
Al Viro [Mon, 29 Oct 2007 04:36:10 +0000 (04:36 +0000)]
misc uml annotation and section fixes

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agomissing atomic_read_long() in slub.c
Al Viro [Mon, 29 Oct 2007 04:42:55 +0000 (04:42 +0000)]
missing atomic_read_long() in slub.c

nr_slabs is atomic_long_t, not atomic_t

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agoSUNRPC endianness annotations
Al Viro [Mon, 29 Oct 2007 04:37:58 +0000 (04:37 +0000)]
SUNRPC endianness annotations

rpcrdma stuff lacks endianness annotations for on-the-wire data.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Acked-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agomore x86 merge fallout (uml, again)
Al Viro [Mon, 29 Oct 2007 04:34:31 +0000 (04:34 +0000)]
more x86 merge fallout (uml, again)

arch/i386/{Kconfig,Makefile}.cpu got moved

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years agox86 merge fallout: uml
Al Viro [Mon, 29 Oct 2007 04:31:16 +0000 (04:31 +0000)]
x86 merge fallout: uml

Don't undef __i386__/__x86_64__ in uml anymore, make sure that (few) places
that required adjusting the ifdefs got those.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
17 years ago[libata] sata_nv: fix SWNCQ enabling
Jeff Garzik [Mon, 29 Oct 2007 10:49:24 +0000 (06:49 -0400)]
[libata] sata_nv: fix SWNCQ enabling

Adapted from patches by Kuan Lou @ NVIDIA and Bartlomiej Zolnierkiewicz.

Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
17 years agocompat_ioctl: fix block device compat ioctl regression
Philip Langdale [Sat, 27 Oct 2007 11:34:10 +0000 (13:34 +0200)]
compat_ioctl: fix block device compat ioctl regression

The conversion of handlers to compat_blkdev_ioctl accidentally
disabled handling of most ioctl numbers on block devices because
of a typo. Fix the one line to enable it all again.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jens Axboe <axboe@carl.home.kernel.dk>
17 years ago[BLOCK] Fix bad sharing of tag busy list on queues with shared tag maps
Jens Axboe [Thu, 25 Oct 2007 08:14:47 +0000 (10:14 +0200)]
[BLOCK] Fix bad sharing of tag busy list on queues with shared tag maps

For the locking to work, only the tag map and tag bit map may be shared
(incidentally, I was just explaining this to Nick yesterday, but I
apparently didn't review the code well enough myself). But we also share
the busy list!  The busy_list must be queue private, or we need a
block_queue_tag covering lock as well.

So we have to move the busy_list to the queue. This'll work fine, and
it'll actually also fix a problem with blk_queue_invalidate_tags() which
will invalidate tags across all shared queues. This is a bit confusing,
the low level driver should call it for each queue seperately since
otherwise you cannot kill tags on just a single queue for eg a hard
drive that stops responding. Since the function has no callers
currently, it's not an issue.

Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
17 years agoFix a build error when BLOCK=n
Emil Medve [Wed, 24 Oct 2007 12:18:32 +0000 (14:18 +0200)]
Fix a build error when BLOCK=n

mm/filemap.c: In function '__filemap_fdatawrite_range':
mm/filemap.c:200: error: implicit declaration of function
'mapping_cap_writeback_dirty'

This happens when we don't use/have any block devices and a NFS root
filesystem is used.

mapping_cap_writeback_dirty() is defined in linux/backing-dev.h which
used to be provided in mm/filemap.c by linux/blkdev.h until commit
f5ff8422bbdd59f8c1f699df248e1b7a11073027 (Fix warnings with
!CONFIG_BLOCK).

Signed-off-by: Emil Medve <Emilian.Medve@Freescale.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
17 years agoblock: use lock bitops for the tag map.
Nick Piggin [Wed, 24 Oct 2007 08:54:38 +0000 (10:54 +0200)]
block: use lock bitops for the tag map.

The block queue tag map can use lock bitops.

Signed-off-by: Nick Piggin <npiggin@suse.de>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
17 years agocciss: update copyright notices
Mike Miller [Wed, 24 Oct 2007 08:30:34 +0000 (10:30 +0200)]
cciss: update copyright notices

This patch updates the copyright information for the cciss driver. It
includes extending the year to 2007 (how timely) and some minor corrections
deemed necessary by HP legal and the Open Source Review Board. Please
consider this patch for inclusion.

Signed-off-by: Mike Miller <mike.miller@hp.com>
--------------------------------------------------------------------------------
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>