sfrench/cifs-2.6.git
13 years agoMerge branch 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik...
Linus Torvalds [Mon, 26 Feb 2007 22:58:03 +0000 (14:58 -0800)]
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: (51 commits)
  [libata] bump versions
  [libata] Trim trailing whitespace.
  [libata] sata_mv: Fix 50xx irq mask
  [libata] sata_mv: don't touch reserved bits in EDMA config register
  libata: Use new id_to_dma_mode function to tidy reporting in more drivers (minimally tested)
  pata_pcmcia: Fix oops in 2.6.21-rc1
  Add id_to_dma_mode function for printing DMA modes
  sata_promise: simplify port setup
  sata_promise: fix 20619 new EH merge error
  [libata] ACPI: remove needless ->qc_issue hook existence test
  sata_vsc: refactor vsc_sata_interrupt and hook up error handling
  sata_sil: ignore and clear spurious IRQs while executing commands by polling
  sata_mv: fix pci_enable_msi() error handling
  pata_amd: fix an obvious bug in cable detection
  [libata] ata_piix: remove duplicate PCI IDs
  sata_nv: complain on spurious completion notifiers
  libata: test major version in ata_id_is_sata()
  sata_nv: kill old private BMDMA helper functions
  libata: fix remaining ap->id
  ahci: consider SDB FIS containing spurious NCQ completions HSM violation (regenerated)
  ...

13 years agoRevert "[CPUFREQ] constify cpufreq_driver where possible."
Linus Torvalds [Mon, 26 Feb 2007 22:55:48 +0000 (14:55 -0800)]
Revert "[CPUFREQ] constify cpufreq_driver where possible."

This reverts commit aeeddc1435c37fa3fc844f31d39c185b08de4158, which was
half-baked and broken.  It just resulted in compile errors, since
cpufreq_register_driver() still changes the 'driver_data' by setting
bits in the flags field.  So claiming it is 'const' _really_ doesn't
work.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq
Linus Torvalds [Mon, 26 Feb 2007 22:17:50 +0000 (14:17 -0800)]
Merge /pub/scm/linux/kernel/git/davej/cpufreq

* master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq:
  [CPUFREQ] constify some data tables.
  [CPUFREQ] constify cpufreq_driver where possible.
  {rd,wr}msr_on_cpu SMP=n optimization
  [CPUFREQ] cpufreq_ondemand.c: don't use _WORK_NAR
  rdmsr_on_cpu, wrmsr_on_cpu
  [CPUFREQ] Revert default on deprecated config X86_SPEEDSTEP_CENTRINO_ACPI

13 years agoMerge master.kernel.org:/home/rmk/linux-2.6-arm
Linus Torvalds [Mon, 26 Feb 2007 21:19:17 +0000 (13:19 -0800)]
Merge master.kernel.org:/home/rmk/linux-2.6-arm

* master.kernel.org:/home/rmk/linux-2.6-arm:
  [ARM] CLPS7500 doesn't have IO ports
  [ARM] Fix more apm-emulation.h
  [ARM] 4234/1: Introduce get_irqnr_preamble and arch_ret_to_user for ns9xxx.
  [ARM] 4233/1: nand/s3c2410.c: warning fix
  [ARM] 4226/1: initial .data and .bss mappings of XIP kernel should be TEXT_OFFSET
  [ARM] 4224/2: allow XIP kernel to boot again
  [ARM] 4232/1: AT91: Generic GPIO bug
  [ARM] 4231/1: AT91: Merge and typo fixes.
  [ARM] 4229/1: S3C2410: Add MACH_QT2410 to s3c2410_defconfig
  [ARM] 4228/2: S3C24XX: update s3c2410_defconfig for 2.6.21-rc1

13 years agoMerge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband
Linus Torvalds [Mon, 26 Feb 2007 21:18:43 +0000 (13:18 -0800)]
Merge branch 'for-linus' of /linux/kernel/git/roland/infiniband

* 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/roland/infiniband:
  IPoIB: Correct debugging output when path record lookup fails
  RDMA/cxgb3: Stop the EP Timer on BAD CLOSE
  RDMA/cxgb3: cleanups
  RDMA/cma: Remove unused node_guid from cma_device structure
  IB/cm: Remove ca_guid from cm_device structure
  RDMA/cma: Request reversible paths only
  IB/core: Set hop limit in ib_init_ah_from_wc correctly
  IB/uverbs: Return correct error for invalid PD in register MR
  IPoIB: Remove unused local_rate tracking
  IPoIB/cm: Improve small message bandwidth
  IB/mthca: Make 2 functions static

13 years ago[ARM] CLPS7500 doesn't have IO ports
Russell King [Mon, 26 Feb 2007 21:07:30 +0000 (21:07 +0000)]
[ARM] CLPS7500 doesn't have IO ports

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years ago[ARM] Fix more apm-emulation.h
Russell King [Mon, 26 Feb 2007 21:04:29 +0000 (21:04 +0000)]
[ARM] Fix more apm-emulation.h

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years ago[PATCH] Fix oops in pata_pcmcia
Alan [Wed, 21 Feb 2007 16:41:23 +0000 (16:41 +0000)]
[PATCH] Fix oops in pata_pcmcia

The change to the devres layer re-orders the execution of cleanup
functions and in turn causes the pcmcia layer to oops as it zaps a
pointer now needed later on. We simply leave the pointer alone.

Signed-off-by: Alan Cox <alan@redhat.com>
Acked-by: Jeff Garzik <jeff@garzik.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years ago[PATCH] Make hvc_console.c compile on non-powerpc: Remove NO_IRQ
Rusty Russell [Fri, 23 Feb 2007 03:12:02 +0000 (14:12 +1100)]
[PATCH] Make hvc_console.c compile on non-powerpc: Remove NO_IRQ

Paulus preferred this over #defining NO_IRQ in the file, since that's
0 for powerpc anyway.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Acked-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoIPoIB: Correct debugging output when path record lookup fails
Roland Dreier [Mon, 26 Feb 2007 20:57:08 +0000 (12:57 -0800)]
IPoIB: Correct debugging output when path record lookup fails

If path_rec_completion() is passed a non-NULL path record pointer
along with an unsuccessful status value, the tracing code incorrectly
prints the (invalid) DLID from the path record rather than the more
interesting status code.  The actual logic of the function correctly
uses the path record only if the status indicates a successful lookup.

Signed-off-by: Roland Dreier <rolandd@cisco.com>
13 years ago[PATCH] Fix build-failure in drivers/video/s3fb.c
Ondrej Zajicek [Thu, 22 Feb 2007 16:00:41 +0000 (17:00 +0100)]
[PATCH] Fix build-failure in drivers/video/s3fb.c

Toralf Förster pointed out that drivers/video/s3fb.c would fail to compile:
> ...
>   CC      drivers/video/s3fb.o
> drivers/video/s3fb.c: In function `s3_pci_remove':
> drivers/video/s3fb.c:1003: warning: unused variable `par'
> drivers/video/s3fb.c: In function `s3fb_setup':
> drivers/video/s3fb.c:1141: error: `mtrr' undeclared (first use in this function)
> drivers/video/s3fb.c:1141: error: (Each undeclared identifier is reported only once
> drivers/video/s3fb.c:1141: error: for each function it appears in.)
> make[2]: *** [drivers/video/s3fb.o] Error 1
> make[1]: *** [drivers/video] Error 2
> make: *** [drivers] Error 2

Here is fix, it also fixes broken boot options.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years ago[PATCH] x86: add -freg-struct-return to CFLAGS
Ingo Molnar [Thu, 22 Feb 2007 08:38:22 +0000 (09:38 +0100)]
[PATCH] x86: add -freg-struct-return to CFLAGS

Jeremy Fitzhardinge suggested the use of -freg-struct-return, which does
structure-returns (such as when using pte_t) in registers instead of on
the stack.

that is indeed so, and this option reduced the kernel size a bit:

    text    data     bss     dec     hex filename
 4799506  543456 3760128 9103090  8ae6f2 vmlinux.before
 4798117  543456 3760128 9101701  8ae185 vmlinux.after

the resulting kernel booted fine on my testbox. Lets go for it.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years ago[PATCH] add MAINTAINERS entry for high-res timers, clockevents, dynticks
Ingo Molnar [Thu, 22 Feb 2007 08:09:34 +0000 (09:09 +0100)]
[PATCH] add MAINTAINERS entry for high-res timers, clockevents, dynticks

Thomas is the maintainer and primary author of the high-res timers,
clockevents and dynticks code.

Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/kyle/parisc-2.6
Linus Torvalds [Mon, 26 Feb 2007 20:48:06 +0000 (12:48 -0800)]
Merge /pub/scm/linux/kernel/git/kyle/parisc-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/kyle/parisc-2.6: (78 commits)
  [PARISC] Use symbolic last syscall in __NR_Linux_syscalls
  [PARISC] Add missing statfs64 and fstatfs64 syscalls
  Revert "[PARISC] Optimize TLB flush on SMP systems"
  [PARISC] Compat signal fixes for 64-bit parisc
  [PARISC] Reorder syscalls to match unistd.h
  Revert "[PATCH] make kernel/signal.c:kill_proc_info() static"
  [PARISC] fix sys_rt_sigqueueinfo
  [PARISC] fix section mismatch warnings in harmony sound driver
  [PARISC] do not export get_register/set_register
  [PARISC] add ENTRY()/ENDPROC() and simplify assembly of HP/UX emulation code
  [PARISC] convert to use CONFIG_64BIT instead of __LP64__
  [PARISC] use CONFIG_64BIT instead of __LP64__
  [PARISC] add ASM_EXCEPTIONTABLE_ENTRY() macro
  [PARISC] more ENTRY(), ENDPROC(), END() conversions
  [PARISC] fix ENTRY() and ENDPROC() for 64bit-parisc
  [PARISC] Fixes /proc/cpuinfo cache output on B160L
  [PARISC] implement standard ENTRY(), END() and ENDPROC()
  [PARISC] kill ENTRY_SYS_CPUS
  [PARISC] clean up debugging printks in smp.c
  [PARISC] factor syscall_restart code out of do_signal
  ...

Fix conflict in include/linux/sched.h due to kill_proc_info() being made
publicly available to PARISC again.

13 years ago[PATCH] CREDITS: update my email address
Mikael Pettersson [Sun, 25 Feb 2007 11:49:01 +0000 (12:49 +0100)]
[PATCH] CREDITS: update my email address

Update my email address in CREDITS to one that works.

Signed-off-by: Mikael Pettersson <mikpe@it.uu.se>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years ago[PATCH] drivers/mfd/sm501.c: Replace pci_module_init with pci_register_driver
Richard Knutsson [Sat, 24 Feb 2007 10:46:06 +0000 (11:46 +0100)]
[PATCH] drivers/mfd/sm501.c: Replace pci_module_init with pci_register_driver

Replace pci_module_init with pci_register_driver

Signed-off-by: Richard Knutson <ricknu-0@student.ltu.se>
Acked-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6
Linus Torvalds [Mon, 26 Feb 2007 20:23:08 +0000 (12:23 -0800)]
Merge /pub/scm/linux/kernel/git/davem/net-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6: (25 commits)
  [XFRM]: Fix oops in xfrm4_dst_destroy()
  [XFRM_TUNNEL]: Reload header pointer after pskb_may_pull/pskb_expand_head
  [IPV4]: Use random32() in net/ipv4/multipath
  [BRIDGE]: eliminate workqueue for carrier check
  [BRIDGE]: get rid of miscdevice include
  [IPV6]: Fix __ipv6_addr_type() export in correct place.
  [IPV4] devinet: Register inetdev earlier.
  [IPV6] ADDRCONF: Register inet6_dev earlier.
  [IPV6] ADDRCONF: Manage prefix route corresponding to address manually added.
  [IPV6] IP6TUNNEL: Use update_pmtu() of dst on xmit.
  [IPV6] ADDRCONF: Statically link __ipv6_addr_type() for sunrpc subsystem.
  [IPV4]: Correct links in net/ipv4/Kconfig
  [SCTP]: Strike the transport before updating rto.
  [SCTP]: Fix connection hang/slowdown with PR-SCTP
  [TCP]: Fix MD5 signature pool locking.
  [TG3]: TSO workaround fixes.
  [AF_PACKET]: Remove unnecessary casts.
  [IPV6]: Adjust inet6_exit() cleanup sequence against inet6_init()
  [IPSEC]: More fix is needed for __xfrm6_bundle_create().
  [IRDA] net/irda/: proper prototypes
  ...

13 years ago[XFRM]: Fix oops in xfrm4_dst_destroy()
Bernhard Walle [Mon, 26 Feb 2007 20:10:32 +0000 (12:10 -0800)]
[XFRM]: Fix oops in xfrm4_dst_destroy()

With 2.6.21-rc1, I get an oops when running 'ifdown eth0' and an IPsec
connection is active. If I shut down the connection before running 'ifdown
eth0', then there's no problem.  The critical operation of this script is to
kill dhcpd.

The problem is probably caused by commit with git identifier
4337226228e1cfc1d70ee975789c6bd070fb597c (Linus tree) "[IPSEC]: IPv4 over IPv6
IPsec tunnel".

This patch fixes that oops. I don't know the network code of the Linux
kernel in deep, so if that fix is wrong, please change it. But please
fix the oops. :)

Signed-off-by: Bernhard Walle <bwalle@suse.de>
Acked-by: Patrick McHardy <kaber@trash.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years agoMerge branch 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jmorris/selin...
Linus Torvalds [Mon, 26 Feb 2007 20:06:43 +0000 (12:06 -0800)]
Merge branch 'for-linus' of /linux/kernel/git/jmorris/selinux-2.6

* 'for-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jmorris/selinux-2.6:
  Always initialize scontext and scontext_len
  Reassign printk levels in selinux kernel code

13 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Mon, 26 Feb 2007 20:06:08 +0000 (12:06 -0800)]
Merge /pub/scm/linux/kernel/git/davem/sparc-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:
  [SPARC] uctrl: Check request_irq() return value.
  [SPARC64]: Update defconfig.
  [SPARC64] bbc_i2c: Fix kenvctrld eating %100 cpu.
  [SPARC64]: Fix arch_teardown_msi_irq().
  [SPARC64]: virt_irq_free only needed when CONFIG_PCI_MSI
  [SPARC]: Remove the broken SUN_AURORA driver.

13 years agoMerge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds
Linus Torvalds [Mon, 26 Feb 2007 19:45:50 +0000 (11:45 -0800)]
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: Add support for Cobalt Server front LED
  leds: Add IPAQ h1940 LEDs support

13 years agoMerge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/shaggy...
Linus Torvalds [Mon, 26 Feb 2007 19:44:51 +0000 (11:44 -0800)]
Merge branch 'for-linus' of git://git./linux/kernel/git/shaggy/jfs-2.6

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/shaggy/jfs-2.6:
  JFS: Get rid of "may be used uninitialized" warnings

13 years agoAlways initialize scontext and scontext_len
Stephen Smalley [Mon, 26 Feb 2007 17:02:34 +0000 (12:02 -0500)]
Always initialize scontext and scontext_len

Always initialize *scontext and *scontext_len in security_sid_to_context.

(via http://lkml.org/lkml/2007/2/23/135)

Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
Signed-off-by: James Morris <jmorris@namei.org>
13 years agoReassign printk levels in selinux kernel code
Eric Paris [Thu, 22 Feb 2007 23:11:31 +0000 (18:11 -0500)]
Reassign printk levels in selinux kernel code

Below is a patch which demotes many printk lines to KERN_DEBUG from
KERN_INFO.  It should help stop the spamming of logs with messages in
which users are not interested nor is there any action that users should
take.  It also promotes some KERN_INFO to KERN_ERR such as when there
are improper attempts to register/unregister security modules.

A similar patch was discussed a while back on list:
http://marc.theaimsgroup.com/?t=116656343500003&r=1&w=2
This patch addresses almost all of the issues raised.  I believe the
only advice not taken was in the demoting of messages related to
undefined permissions and classes.

Signed-off-by: Eric Paris <eparis@redhat.com>
Acked-by: Stephen Smalley <sds@tycho.nsa.gov>
 security/selinux/hooks.c       |   20 ++++++++++----------
 security/selinux/ss/avtab.c    |    2 +-
 security/selinux/ss/policydb.c |    6 +++---
 security/selinux/ss/sidtab.c   |    2 +-
 4 files changed, 15 insertions(+), 15 deletions(-)
Signed-off-by: James Morris <jmorris@namei.org>
13 years ago[XFRM_TUNNEL]: Reload header pointer after pskb_may_pull/pskb_expand_head
Arnaldo Carvalho de Melo [Sun, 25 Feb 2007 02:12:42 +0000 (18:12 -0800)]
[XFRM_TUNNEL]: Reload header pointer after pskb_may_pull/pskb_expand_head

           Please consider applying, this was found on your latest
net-2.6 tree while playing around with that ip_hdr() + turn
skb->nh/h/mac pointers  as offsets on 64 bits idea :-)

Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years ago[IPV4]: Use random32() in net/ipv4/multipath
Joe Perches [Thu, 22 Feb 2007 09:26:32 +0000 (01:26 -0800)]
[IPV4]: Use random32() in net/ipv4/multipath

Removed local random number generator function

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years ago[BRIDGE]: eliminate workqueue for carrier check
Stephen Hemminger [Thu, 22 Feb 2007 09:10:18 +0000 (01:10 -0800)]
[BRIDGE]: eliminate workqueue for carrier check

Having a work queue for checking carrier leads to lots of race issues.
Simpler to just get the cost when data structure is created and
update on change.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years ago[BRIDGE]: get rid of miscdevice include
Stephen Hemminger [Thu, 22 Feb 2007 09:07:53 +0000 (01:07 -0800)]
[BRIDGE]: get rid of miscdevice include

The bridge hasn't used miscdevice for a long long time.

Signed-off-by: Stephen Hemminger <shemminger@linux-foundation.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years ago[IPV6]: Fix __ipv6_addr_type() export in correct place.
David S. Miller [Thu, 22 Feb 2007 07:26:56 +0000 (23:26 -0800)]
[IPV6]: Fix __ipv6_addr_type() export in correct place.

It needs to be in net/ipv6/addrconf_core.c

Signed-off-by: David S. Miller <davem@davemloft.net>
13 years ago[IPV4] devinet: Register inetdev earlier.
Herbert Xu [Wed, 21 Feb 2007 16:53:47 +0000 (01:53 +0900)]
[IPV4] devinet: Register inetdev earlier.

This patch allocates inetdev at registration for all devices
in line with IPv6.  This allows sysctl configuration on the
devices to occur before they're brought up or addresses are
added.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
13 years ago[IPV6] ADDRCONF: Register inet6_dev earlier.
YOSHIFUJI Hideaki [Wed, 14 Feb 2007 17:07:27 +0000 (02:07 +0900)]
[IPV6] ADDRCONF: Register inet6_dev earlier.

Allocate inet6_dev earlier to allow users to set up per-interface variables.

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
13 years ago[IPV6] ADDRCONF: Manage prefix route corresponding to address manually added.
YOSHIFUJI Hideaki [Wed, 7 Feb 2007 11:36:26 +0000 (20:36 +0900)]
[IPV6] ADDRCONF: Manage prefix route corresponding to address manually added.

It is more natural to manage prefix routes corresponding to address which is
being added manually.

With help from Masafumi Aramoto <aramoto@linux-ipv6.org>.

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
13 years ago[IPV6] IP6TUNNEL: Use update_pmtu() of dst on xmit.
Yasuyuki Kozakai [Sat, 9 Sep 2006 18:59:17 +0000 (03:59 +0900)]
[IPV6] IP6TUNNEL: Use update_pmtu() of dst on xmit.

Signed-off-by: Yasuyuki Kozakai <yasuyuki.kozakai@toshiba.co.jp>
Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
13 years ago[IPV6] ADDRCONF: Statically link __ipv6_addr_type() for sunrpc subsystem.
YOSHIFUJI Hideaki [Wed, 21 Feb 2007 17:25:42 +0000 (02:25 +0900)]
[IPV6] ADDRCONF: Statically link __ipv6_addr_type() for sunrpc subsystem.

Link __ipv6_addr_type() statically for sunrpc code even if IPv6 is
built as module.

Signed-off-by: YOSHIFUJI Hidaki <yoshfuji@linux-ipv6.org>
13 years ago[IPV4]: Correct links in net/ipv4/Kconfig
Baruch Even [Thu, 22 Feb 2007 03:32:37 +0000 (19:32 -0800)]
[IPV4]: Correct links in net/ipv4/Kconfig

Correct dead/indirect links in net/ipv4/Kconfig

Signed-off-by: Baruch Even <baruch@ev-en.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years ago[SCTP]: Strike the transport before updating rto.
Vlad Yasevich [Wed, 21 Feb 2007 10:06:19 +0000 (02:06 -0800)]
[SCTP]: Strike the transport before updating rto.

Once we reach a point where we exceed the max.path.retrans, strike the
transport before updating the rto.  This will force transport switch at
the right time, instead of 1 retransmit too late.

Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
Signed-off-by: Sridhar Samudrala <sri@us.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years ago[SCTP]: Fix connection hang/slowdown with PR-SCTP
Vlad Yasevich [Wed, 21 Feb 2007 10:06:04 +0000 (02:06 -0800)]
[SCTP]: Fix connection hang/slowdown with PR-SCTP

The problem that this patch corrects happens when all of the following
conditions are satisfisfied:
 1.  PR-SCTP is used and the timeout on the chunks is set below RTO.Max.
 2.  One of the paths on a multihomed associations is brought down.

In this scenario, data will expire within the rto of the initial
transmission and will never be retransmitted.  However this data still
fills the send buffer and is counted against the association as outstanding
data.  This causes any new data not to be sent and retransmission to not
happen.

The fix is to discount the abandoned data from the outstanding count and
peers rwnd estimation.  This allows new data to be sent and a retransmission
timer restarted.  Even though this new data will most likely expire within
the rto, the timer still counts as a strike against the transport and forces
the FORWARD-TSN chunk to be retransmitted as well.

Signed-off-by: Vlad Yasevich <vladislav.yasevich@hp.com>
Signed-off-by: Sridhar Samudrala <sri@us.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years ago[TCP]: Fix MD5 signature pool locking.
David S. Miller [Wed, 21 Feb 2007 07:51:47 +0000 (23:51 -0800)]
[TCP]: Fix MD5 signature pool locking.

The locking calls assumed that these code paths were only
invoked in software interrupt context, but that isn't true.

Therefore we need to use spin_{lock,unlock}_bh() throughout.

Signed-off-by: David S. Miller <davem@davemloft.net>
13 years ago[TG3]: TSO workaround fixes.
Michael Chan [Wed, 21 Feb 2007 07:25:40 +0000 (23:25 -0800)]
[TG3]: TSO workaround fixes.

1.  Add race condition check after netif_stop_queue().  tg3_tx() runs
    without netif_tx_lock and can race with tg3_start_xmit_dma_bug() ->
    tg3_tso_bug().

2.  Firmware TSO in 5703/5704/5705 also have the same TSO limitation,
    i.e. they cannot handle TSO headers bigger than 80 bytes.  Rename
    TG3_FL2_HW_TSO_1_BUG to TG3_FL2_TSO_BUG and set this flag on
    these chips as well.

3.  Update version to 3.74.

Signed-off-by: Michael Chan <mchan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years ago[AF_PACKET]: Remove unnecessary casts.
Jason Lunz [Wed, 21 Feb 2007 07:19:54 +0000 (23:19 -0800)]
[AF_PACKET]: Remove unnecessary casts.

packet_lookup_frame() always returns tpacket_hdr*, so there's no reason
to return char* and require casting by callers.

Also, remove a cast of void*.

Signed-off-by: Jason Lunz <lunz@falooley.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years ago[IPV6]: Adjust inet6_exit() cleanup sequence against inet6_init()
Joe Jin [Tue, 20 Feb 2007 09:30:15 +0000 (01:30 -0800)]
[IPV6]: Adjust inet6_exit() cleanup sequence against inet6_init()

This patch for adjust inet6_exit() to inverse sequence to inet6_init().

At ipv6_init, it first create proc_root/net/dev_snmp6 entry by call
ipv6_misc_proc_init(), then call addrconf_init() to create the corresponding
device entry at this directory, but at inet6_exit, ipv6_misc_proc_exit()
called first, then call addrconf_init().

Signed-off-by: Joe Jin <joe.jin@oracle.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years ago[IPSEC]: More fix is needed for __xfrm6_bundle_create().
Noriaki TAKAMIYA [Tue, 20 Feb 2007 09:08:41 +0000 (01:08 -0800)]
[IPSEC]: More fix is needed for __xfrm6_bundle_create().

Fixed to set fl_tunnel.fl6_src correctly in xfrm6_bundle_create().

Signed-off-by: Noriaki TAKAMIYA <takamiya@po.ntts.co.jp>
Acked-by: Masahide NAKAMURA <nakam@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years ago[IRDA] net/irda/: proper prototypes
Adrian Bunk [Tue, 20 Feb 2007 09:06:40 +0000 (01:06 -0800)]
[IRDA] net/irda/: proper prototypes

This patch adds proper prototypes for some functions in
include/net/irda/irda.h

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years ago[Bluetooth] Make use of MODULE_FIRMWARE
Marcel Holtmann [Sat, 17 Feb 2007 22:59:02 +0000 (23:59 +0100)]
[Bluetooth] Make use of MODULE_FIRMWARE

Some Bluetooth drivers need one or more binary firmware images. Export
these image names via the MODULE_FIRMWARE tag.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
13 years ago[Bluetooth] Make use of device_move() for RFCOMM TTY devices
Marcel Holtmann [Sat, 17 Feb 2007 22:58:57 +0000 (23:58 +0100)]
[Bluetooth] Make use of device_move() for RFCOMM TTY devices

In the case of bound RFCOMM TTY devices the parent is not available
before its usage. So when opening a RFCOMM TTY device, move it to
the corresponding ACL device as a child. When closing the device,
move it back to the virtual device tree.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
13 years ago[Bluetooth] Add open and close callbacks for HID device
Marcel Holtmann [Sat, 17 Feb 2007 22:58:53 +0000 (23:58 +0100)]
[Bluetooth] Add open and close callbacks for HID device

The open and close callbacks for the HID device are not optional, but
for the Bluetooth HID report mode support it is enough to add empty
dummy callbacks.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
13 years ago[Bluetooth] Add support for using the HID subsystem
Marcel Holtmann [Sat, 17 Feb 2007 22:58:49 +0000 (23:58 +0100)]
[Bluetooth] Add support for using the HID subsystem

This patch extends the current Bluetooth HID support to use the new
HID subsystem and adds full report mode support.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
13 years ago[Bluetooth] Fix wrong put_user() from HIDP compat ioctl patch
Marcel Holtmann [Sat, 17 Feb 2007 22:58:44 +0000 (23:58 +0100)]
[Bluetooth] Fix wrong put_user() from HIDP compat ioctl patch

The compat ioctl patch copied the parser version field into the
report descriptor size field by mistake.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
13 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/tick-2.6
Linus Torvalds [Mon, 26 Feb 2007 19:42:10 +0000 (11:42 -0800)]
Merge /pub/scm/linux/kernel/git/davem/tick-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/tick-2.6:
  [TICK] tick-common: Fix one-shot handling in tick_handle_periodic().
  [TIME] tick-sched: Add missing asm/irq_regs.h include.

13 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6
Linus Torvalds [Mon, 26 Feb 2007 19:41:30 +0000 (11:41 -0800)]
Merge /pub/scm/linux/kernel/git/gregkh/driver-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/driver-2.6:
  Revert "Driver core: let request_module() send a /sys/modules/kmod/-uevent"
  Driver core: fix error by cleanup up symlinks properly
  make kernel/kmod.c:kmod_mk static
  power management: fix struct layout and docs
  power management: no valid states w/o pm_ops
  Driver core: more fallout from class_device changes for pcmcia
  sysfs: move struct sysfs_dirent to private header
  driver core: refcounting fix
  Driver core: remove class_device_rename

13 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6
Linus Torvalds [Mon, 26 Feb 2007 19:41:08 +0000 (11:41 -0800)]
Merge /pub/scm/linux/kernel/git/gregkh/usb-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/usb-2.6:
  USB: export autosuspend delay in sysfs
  sysfs: allow attributes to be added to groups
  USB: make autosuspend delay a module parameter
  USB: minor cleanups for sysfs.c
  USB: add a blacklist for devices that can't handle some things we throw at them.
  USB: refactor usb device matching and create usb_device_match
  USB: Wacom driver updates
  gadgetfs: Fixed bug in ep_aio_read_retry.
  USB: Use USB defines in usbmouse.c and usbkbd.c
  USB: add rationale on why usb descriptor structures have to be packed
  USB: ftdi_sio: Adding VID and PID for Tellstick
  UHCI: Eliminate asynchronous skeleton Queue Headers
  UHCI: Add macros for computing DMA values
  USB: Davicom DM9601 usbnet driver
  USB: asix.c - Add JVC-PRX1 ids
  usbmon: Remove erroneous __exit
  USB: add driver for iowarrior devices.
  USB: option: add a bunch of new device ids
  USB: option: remove duplicate device id table

13 years agoMerge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus
Linus Torvalds [Mon, 26 Feb 2007 19:40:46 +0000 (11:40 -0800)]
Merge branch 'upstream' of git://ftp.linux-mips.org/upstream-linus

* 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus:
  [MIPS] Fix port 0 mac address for mips mv6434x platforms
  [SERIAL] serial_txx9 driver update
  Revert "[PATCH] Generic ioremap_page_range: mips conversion"
  [MIPS] Cobalt: Rename "Colo" MTD partition to "firmware".
  [MIPS] SMP: Get smp_tune_scheduling to do something useful.
  [MIPS] Add basic SMARTMIPS ASE support

13 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davej/agpgart
Linus Torvalds [Mon, 26 Feb 2007 19:39:49 +0000 (11:39 -0800)]
Merge /pub/scm/linux/kernel/git/davej/agpgart

* master.kernel.org:/pub/scm/linux/kernel/git/davej/agpgart:
  [AGPGART] Further constification.
  [AGPGART] Fix modular agpgart ia64 allmodconfig

13 years ago[SPARC] uctrl: Check request_irq() return value.
David S. Miller [Mon, 26 Feb 2007 17:46:54 +0000 (09:46 -0800)]
[SPARC] uctrl: Check request_irq() return value.

Based upon a patch by Monakhov Dmitriy.

Signed-off-by: David S. Miller <davem@davemloft.net>
13 years ago[SPARC64]: Update defconfig.
David S. Miller [Mon, 26 Feb 2007 18:45:43 +0000 (10:45 -0800)]
[SPARC64]: Update defconfig.

Signed-off-by: David S. Miller <davem@davemloft.net>
13 years ago[SPARC64] bbc_i2c: Fix kenvctrld eating %100 cpu.
David S. Miller [Mon, 26 Feb 2007 18:11:35 +0000 (10:11 -0800)]
[SPARC64] bbc_i2c: Fix kenvctrld eating %100 cpu.

Based almost entirely upon a patch by Joerg Friedrich

Signed-off-by: David S. Miller <davem@davemloft.net>
13 years ago[SPARC64]: Fix arch_teardown_msi_irq().
David S. Miller [Mon, 26 Feb 2007 17:40:34 +0000 (09:40 -0800)]
[SPARC64]: Fix arch_teardown_msi_irq().

Need to use get_irq_msi() not get_irq_data().

Signed-off-by: David S. Miller <davem@davemloft.net>
13 years ago[SPARC64]: virt_irq_free only needed when CONFIG_PCI_MSI
David S. Miller [Tue, 20 Feb 2007 09:26:48 +0000 (01:26 -0800)]
[SPARC64]: virt_irq_free only needed when CONFIG_PCI_MSI

Noticed by Meelis Roos.

Signed-off-by: David S. Miller <davem@davemloft.net>
13 years ago[SPARC]: Remove the broken SUN_AURORA driver.
Adrian Bunk [Tue, 20 Feb 2007 09:03:48 +0000 (01:03 -0800)]
[SPARC]: Remove the broken SUN_AURORA driver.

The SUN_AURORA driver:
- has been marked as BROKEN for more than two years and
- is still marked as BROKEN.

Drivers that had been marked as BROKEN for such a long time seem to be
unlikely to be revived in the forseeable future.

But if anyone wants to ever revive this driver, the code is still
present in the older kernel releases.

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years ago[TICK] tick-common: Fix one-shot handling in tick_handle_periodic().
David S. Miller [Sun, 25 Feb 2007 06:11:42 +0000 (22:11 -0800)]
[TICK] tick-common: Fix one-shot handling in tick_handle_periodic().

When clockevents_program_event() is given an expire time in the
past, it does not update dev->next_event, so this looping code
would loop forever once the first in-the-past expiration time
was used.

Keep advancing "next" locally to fix this bug.

Acked-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years ago[TIME] tick-sched: Add missing asm/irq_regs.h include.
David S. Miller [Sun, 25 Feb 2007 06:10:13 +0000 (22:10 -0800)]
[TIME] tick-sched: Add missing asm/irq_regs.h include.

Acked-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
13 years ago[PATCH] genirq: Mask irqs when migrating them.
Eric W. Biederman [Fri, 23 Feb 2007 11:46:20 +0000 (04:46 -0700)]
[PATCH] genirq: Mask irqs when migrating them.

move_native_irqs tries to do the right thing when migrating irqs
by disabling them.  However disabling them is a software logical
thing, not a hardware thing.  This has always been a little flaky
and after Ingo's latest round of changes it is guaranteed to not
mask the apic.

So this patch fixes move_native_irq to directly call the mask and
unmask chip methods to guarantee that we mask the irq when we
are migrating it.  We must do this as it is required by
all code that call into the path.

Since we don't know the masked status when IRQ_DISABLED is
set so we will not be able to restore it.   The patch makes the code
just give up and trying again the next time this routing is called.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Acked-by: Suresh Siddha <suresh.b.siddha@intel.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years ago[PATCH] x86_64 irq: Safely cleanup an irq after moving it.
Eric W. Biederman [Fri, 23 Feb 2007 11:40:58 +0000 (04:40 -0700)]
[PATCH] x86_64 irq: Safely cleanup an irq after moving it.

The problem:  After moving an interrupt when is it safe to teardown
the data structures for receiving the interrupt at the old location?

With a normal pci device it is possible to issue a read to a device
to flush all posted writes.  This does not work for the oldest ioapics
because they are on a 3-wire apic bus which is a completely different
data path.  For some more modern ioapics when everything is using
front side bus delivery you can flush interrupts by simply issuing a
read to the ioapic.  For other modern ioapics emperical testing has
shown that this does not work.

So it appears the only reliable way to know the last of the irqs from an
ioapic have been received from before the ioapic was reprogrammed is to
received the first irq from the ioapic from after it was reprogrammed.

Once we know the last irq message has been received from an ioapic
into a local apic we then need to know that irq message has been
processed through the local apics.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years ago[PATCH] x86_64 irq: Add constants for the reserved IRQ vectors.
Eric W. Biederman [Fri, 23 Feb 2007 11:38:26 +0000 (04:38 -0700)]
[PATCH] x86_64 irq: Add constants for the reserved IRQ vectors.

For the ISA irqs we reserve 16 vectors.  This patch adds constants for
those vectors and modifies the code to use them.  Making the code a
little clearer and making it possible to move these vectors in the future.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years ago[PATCH] x86_64 irq: Remove unnecessary irq 0 setup.
Eric W. Biederman [Fri, 23 Feb 2007 11:36:25 +0000 (04:36 -0700)]
[PATCH] x86_64 irq: Remove unnecessary irq 0 setup.

The code in io_apic.c and in i8259.c currently hardcode the same
vector for the timer interrupt so there is no reason for a special
assignment for the timer as the setup for the i8259 already takes care
of this.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years ago[PATCH] x86_64 irq: Simplify assign_irq_vector's arguments.
Eric W. Biederman [Fri, 23 Feb 2007 11:35:05 +0000 (04:35 -0700)]
[PATCH] x86_64 irq: Simplify assign_irq_vector's arguments.

Currently assign_irq_vector works mostly by side effect and returns
the results of it's changes to the caller.  Which makes for a lot of
arguments to pass/return and confusion as to what to do if you need
the status but you aren't calling assign_irq_vector.

This patch stops returning values from assign_irq_vector that can be
retrieved just as easily by examining irq_cfg, and modifies the
callers to retrive those values from irq_cfg when they need them.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years ago[PATCH] x86_64 irq: Begin consolidating per_irq data in structures.
Eric W. Biederman [Fri, 23 Feb 2007 11:32:47 +0000 (04:32 -0700)]
[PATCH] x86_64 irq: Begin consolidating per_irq data in structures.

Currently the io_apic.c has several parallel arrays for different
kinds of data that can be know about an irq.  The parallel arrays
make the code harder to maintain and make it difficult to remove
the static limits on the number of the number of irqs.

This patch pushes irq_data and irq_vector into a irq_cfg array and
updates the code to use it.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years ago[PATCH] x86_64 irq: Use NR_IRQS not NR_IRQ_VECTORS
Eric W. Biederman [Fri, 23 Feb 2007 11:26:53 +0000 (04:26 -0700)]
[PATCH] x86_64 irq: Use NR_IRQS not NR_IRQ_VECTORS

NR_IRQ_VECTORS is currently a compatiblity define set to NR_IRQs.
This patch updates the users of NR_IRQ_VECTORS to use NR_IRQs instead
so that NR_IRQ_VECTORS can be removed.

There is still shared code with arch/i386 that uses NR_IRQ_VECTORS
so we can't remove the #define just yet :(

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years ago[PATCH] x86_64 irq: In __DO_ACTION perform the FINAL action for every entry.
Eric W. Biederman [Fri, 23 Feb 2007 11:23:52 +0000 (04:23 -0700)]
[PATCH] x86_64 irq: In __DO_ACTION perform the FINAL action for every entry.

If we have an irq that comes from multiple io_apic pins the FINAL action
(which is io_apic_sync or nothing) needs to be called for every entry or
else if the two pins come from different io_apics we may not wait until
after the action happens on the io_apic.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years ago[PATCH] x86_64 irq: Simplfiy the set_affinity logic.
Eric W. Biederman [Fri, 23 Feb 2007 11:20:59 +0000 (04:20 -0700)]
[PATCH] x86_64 irq: Simplfiy the set_affinity logic.

For some reason the code has been picking TARGET_CPUS when asked to
set the affinity to an empty set of cpus.  That is just silly it's
extra work.  Instead if there are no cpus to set the affinity to we
should just give up immediately.  That is simpler and a little more
intuitive.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years ago[PATCH] x86_64 irq: Refactor setup_IO_APIC_irq
Eric W. Biederman [Fri, 23 Feb 2007 11:19:08 +0000 (04:19 -0700)]
[PATCH] x86_64 irq: Refactor setup_IO_APIC_irq

Currently we have two routines that do practically the same thing
setup_IO_APIC_irq and io_apic_set_pci_routing.  This patch makes
setup_IO_APIC_irq the common factor of these two previous routines.
For setup_IO_APIC_irq all that was needed was to pass the trigger
and polarity to make the code a proper subset of io_apic_set_pci_routing.

Hopefully consolidating these two routines will improve maintenance
there were several differences that simply appear to be one routine
or the other getting it wrong.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years ago[PATCH] x86_64 irq: Remove the unused vector parameter from ioapic_register_intr
Eric W. Biederman [Fri, 23 Feb 2007 11:16:31 +0000 (04:16 -0700)]
[PATCH] x86_64 irq: Remove the unused vector parameter from ioapic_register_intr

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years ago[PATCH] x86_64 irq: Kill declaration of removed array, interrupt
Eric W. Biederman [Fri, 23 Feb 2007 11:15:15 +0000 (04:15 -0700)]
[PATCH] x86_64 irq: Kill declaration of removed array, interrupt

It's dead Jim.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years ago[PATCH] irq: Remove set_native_irq_info
Eric W. Biederman [Fri, 23 Feb 2007 11:13:55 +0000 (04:13 -0700)]
[PATCH] irq: Remove set_native_irq_info

This patch replaces all instances of "set_native_irq_info(irq, mask)"
with "irq_desc[irq].affinity = mask".  The latter form is clearer
uses fewer abstractions, and makes access to this field uniform
accross different architectures.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years ago[PATCH] x86_64 irq: Simplfy __assign_irq_vector
Eric W. Biederman [Fri, 23 Feb 2007 11:11:56 +0000 (04:11 -0700)]
[PATCH] x86_64 irq: Simplfy __assign_irq_vector

By precomputing old_mask I remove an extra if statement, remove an
indentation level and make the code slightly easier to read.

Signed-off-by: Eric W. Biederman <ebiederm@xmission.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years agoRevert "[PATCH] i386: add idle notifier"
Linus Torvalds [Mon, 26 Feb 2007 17:21:46 +0000 (09:21 -0800)]
Revert "[PATCH] i386: add idle notifier"

This reverts commit 2ff2d3d74705d34ab71b21f54634fcf50d57bdd5.

Uwe Bugla reports that he cannot mount a floppy drive any more, and Jiri
Slaby bisected it down to this commit.

Benjamin LaHaise also points out that this is a big hot-path, and that
interrupt delivery while idle is very common and should not go through
all these expensive gyrations.

Fix up conflicts in arch/i386/kernel/apic.c and arch/i386/kernel/irq.c
due to other unrelated irq changes.

Cc: Stephane Eranian <eranian@hpl.hp.com>
Cc: Andi Kleen <ak@suse.de>
Cc: Andrew Morton <akpm@osdl.org>
Cc: Uwe Bugla <uwe.bugla@gmx.de>
Cc: Jiri Slaby <jirislaby@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
13 years ago[libata] bump versions
Jeff Garzik [Mon, 26 Feb 2007 11:04:24 +0000 (06:04 -0500)]
[libata] bump versions

Bump versions based on changes submitted during 2.6.21 merge window.

Signed-off-by: Jeff Garzik <jeff@garzik.org>
13 years ago[libata] Trim trailing whitespace.
Jeff Garzik [Mon, 26 Feb 2007 10:51:33 +0000 (05:51 -0500)]
[libata] Trim trailing whitespace.

No code changes.

Signed-off-by: Jeff Garzik <jeff@garzik.org>
13 years ago[libata] sata_mv: Fix 50xx irq mask
Jeff Garzik [Sun, 25 Feb 2007 09:19:45 +0000 (04:19 -0500)]
[libata] sata_mv: Fix 50xx irq mask

IRQ mask bits assumed a 60xx or newer generation chip, which is very
wrong for the 50xx series.  Luckily both generations shared the per-port
interrupt mask bits, leaving only the "misc chip features" bits to be
completely mismatched.

Fix 50xx by ensuring we only program bits that exist.

Signed-off-by: Jeff Garzik <jeff@garzik.org>
13 years ago[libata] sata_mv: don't touch reserved bits in EDMA config register
Jeff Garzik [Sun, 25 Feb 2007 07:53:41 +0000 (02:53 -0500)]
[libata] sata_mv: don't touch reserved bits in EDMA config register

The code in mv_edma_cfg() reflected its 60xx origins, by doing things
[slightly] incorrectly on the older 50xx and newer 6042/7042 chips.

Clean up the EDMA configuration setup such that, each chip family
carefully initializes its own EDMA setup.

Signed-off-by: Jeff Garzik <jeff@garzik.org>
13 years agolibata: Use new id_to_dma_mode function to tidy reporting in more drivers (minimally...
Alan [Tue, 20 Feb 2007 18:15:03 +0000 (18:15 +0000)]
libata: Use new id_to_dma_mode function to tidy reporting in more drivers (minimally tested)

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
13 years agopata_pcmcia: Fix oops in 2.6.21-rc1
Alan [Wed, 21 Feb 2007 16:41:23 +0000 (16:41 +0000)]
pata_pcmcia: Fix oops in 2.6.21-rc1

Manuel Lass reports:
> This bug is also present in 2.6.21-rc1, and this patch
> indeed fixes it.

The change to the devres layer re-orders the execution of cleanup
functions and in turn causes the pcmcia layer to oops as it zaps a
pointer now needed later on. We simply leave the pointer alone.

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
13 years agoAdd id_to_dma_mode function for printing DMA modes
Alan [Tue, 20 Feb 2007 18:01:59 +0000 (18:01 +0000)]
Add id_to_dma_mode function for printing DMA modes

Also export dev_disable as this is needed by drivers doing slave decode
filtering, which will follow shortly

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
13 years agosata_promise: simplify port setup
Mikael Pettersson [Sun, 25 Feb 2007 16:51:15 +0000 (17:51 +0100)]
sata_promise: simplify port setup

Each place in pdc_ata_init_one() that initialises a SATA
port first calls pdc_ata_setup_port(), and then manually
assigns the port's ->scr_addr. Simplify the code by extending
pdc_ata_setup_port() to also handle scr_addr initialisation;
for PATA ports we pass NULL as scr_addr.

The initialisation of the PATA-only 20619 redundantly set
up scr_addr for the ports. Remove this.

Tested on 20619, 20575, and 20775 chips.

Signed-off-by: Mikael Pettersson <mikpe@it.uu.se>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
13 years agosata_promise: fix 20619 new EH merge error
Mikael Pettersson [Sun, 25 Feb 2007 11:44:39 +0000 (12:44 +0100)]
sata_promise: fix 20619 new EH merge error

When I merged my 20619 new EH conversion with #libata-upstream
I had to manually resolve a conflict, and inadvertently lost
pdc_pata_ops' ->post_internal_cmd binding. Corrected by this patch.

Signed-off-by: Mikael Pettersson <mikpe@it.uu.se>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
13 years ago[ARM] 4234/1: Introduce get_irqnr_preamble and arch_ret_to_user for ns9xxx.
Uwe Kleine-König [Fri, 23 Feb 2007 19:20:47 +0000 (20:20 +0100)]
[ARM] 4234/1: Introduce get_irqnr_preamble and arch_ret_to_user for ns9xxx.

This is a follow up for f80dff9da07d81da16e3b842118d47b9febf9c01 which
didn't include adaption for the new ns9xxx machine support.

Signed-off-by: Uwe Kleine-König <ukleinek@informatik.uni-freiburg.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years ago[ARM] 4233/1: nand/s3c2410.c: warning fix
Arnaud Patard [Fri, 23 Feb 2007 00:00:09 +0000 (01:00 +0100)]
[ARM] 4233/1: nand/s3c2410.c: warning fix

Noticed while building a s3c2410 kernel :
drivers/mtd/nand/s3c2410.c: In function 's3c2440_nand_calculate_ecc':
drivers/mtd/nand/s3c2410.c:476: warning: format '%06x' expects type 'unsigned int', but argument 3 has type 'long unsigned int'

This patch fixes it.

Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years ago[ARM] 4226/1: initial .data and .bss mappings of XIP kernel should be TEXT_OFFSET
Nicolas Pitre [Wed, 21 Feb 2007 14:32:28 +0000 (15:32 +0100)]
[ARM] 4226/1: initial .data and .bss mappings of XIP kernel should be TEXT_OFFSET
 aware

Since TEXT_OFFSET is meant to determine RAM location for kernel use,
itshould affect .data and .bss initial mapping in the XIP case.
Otherwise a XIP kernel would crash if TEXT_OFFSET gets somewhat larger
than 2MB.

Corresponding code is also moved up a bit to be near the similar .text
mapping code making the whole a bit more straight forward to understand.

Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years ago[ARM] 4224/2: allow XIP kernel to boot again
Nicolas Pitre [Thu, 22 Feb 2007 15:18:09 +0000 (16:18 +0100)]
[ARM] 4224/2: allow XIP kernel to boot again

Since commit 2552fc27ff79b10b9678d92bcaef21df38bb7bb6 XIP kernels failed
to boot because (_end - PAGE_OFFSET - 1) is much smaller than the size
of the kernel text and data in the XIP case, causing the kernel not to
be entirely mapped.

Even in the non-XIP case, the use of (_end - PAGE_OFFSET - 1) is wrong
because it produces a too large value if TEXT_OFFSET is larger than 1MB.

Finally the original code was performing one loop too many.

Let's break the loop when the section pointer has passed the last byte
of the kernel instead.

Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years ago[libata] ACPI: remove needless ->qc_issue hook existence test
Jeff Garzik [Sun, 25 Feb 2007 02:05:01 +0000 (21:05 -0500)]
[libata] ACPI: remove needless ->qc_issue hook existence test

All drivers must implement this hook, otherwise ATA commands would go
nowhere (and a lot of other oopsen would appear as well).

Signed-off-by: Jeff Garzik <jeff@garzik.org>
13 years agosata_vsc: refactor vsc_sata_interrupt and hook up error handling
Dan Williams [Fri, 23 Feb 2007 23:36:43 +0000 (16:36 -0700)]
sata_vsc: refactor vsc_sata_interrupt and hook up error handling

Separate sata_vsc interrupt handling into a normal (per-port) path and an
error path with the addition of vsc_port_intr and vsc_error_intr
respectively.  The error path handles interrupt based
hotplug events which requires the definition of vsc_freeze and vsc_thaw.

Note: vsc_port_intr has a workaround for unexpected interrupts that occur
during polled commands.  This fixes a regression between 2.6.19 and 2.6.20.

Changes in take2:
* removed definition of invalid fis bit
* let standard ata-error-handling handle the serror register
* clear all unhandled interrupts
* revert changes to vsc_intr_mask_update (vsc_thaw enables all interrupts)
* use unlikely() for the pci-abort and not-our-interrupt cases in vsc_sata_interrupt

Changes in take3:
* Unify the "add" + "hook-up" patches into this single patch

[htejun@gmail.com: clean up comments and suggestions]
Cc: Jeremy Higdon <jeremy@sgi.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
13 years agosata_sil: ignore and clear spurious IRQs while executing commands by polling
Tejun Heo [Sat, 24 Feb 2007 13:30:36 +0000 (22:30 +0900)]
sata_sil: ignore and clear spurious IRQs while executing commands by polling

sata_sil used to trigger HSM error if IRQ occurs during polling
command.  This didn't matter because polling wasn't used in sata_sil.
However, as of 2.6.20, all IDENTIFYs are performed by polling and
device detection sometimes fails due to spurious IRQ.  This patch
makes sata_sil ignore and clear spurious IRQ while executing commands
by polling.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
13 years agosata_mv: fix pci_enable_msi() error handling
Tejun Heo [Sat, 24 Feb 2007 06:12:31 +0000 (15:12 +0900)]
sata_mv: fix pci_enable_msi() error handling

intx should be turned on when pci_enable_msi() fails not when it
succeeds.  Fix it.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
13 years agopata_amd: fix an obvious bug in cable detection
Tejun Heo [Mon, 5 Feb 2007 08:01:28 +0000 (17:01 +0900)]
pata_amd: fix an obvious bug in cable detection

80c test mask is at bits 18 and 19 of EIDE Controller Configuration
not 22 and 23.  Fix it.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
13 years agoUSB: export autosuspend delay in sysfs
Alan Stern [Tue, 20 Feb 2007 20:03:32 +0000 (15:03 -0500)]
USB: export autosuspend delay in sysfs

This patch (as861) adds sysfs attributes to expose the autosuspend
delay value for each USB device.  If the user changes the delay from 0
(no autosuspend) to a positive value, an autosuspend is attempted.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agosysfs: allow attributes to be added to groups
Alan Stern [Tue, 20 Feb 2007 20:02:44 +0000 (15:02 -0500)]
sysfs: allow attributes to be added to groups

This patch (as860) adds two new sysfs routines:
sysfs_add_file_to_group() and sysfs_remove_file_from_group().
A later patch adds code that uses the new routines.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Cc: Maneesh Soni <maneesh@in.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agoUSB: make autosuspend delay a module parameter
Alan Stern [Tue, 20 Feb 2007 20:00:53 +0000 (15:00 -0500)]
USB: make autosuspend delay a module parameter

This patch (as859) makes the default USB autosuspend delay a module
parameter of usbcore.  By setting the delay value at boot time, users
will be able to prevent the system from autosuspending devices which
for some reason can't handle it.

The patch also stores the autosuspend delay as a per-device value.  A
later patch will allow the user to change the value, tailoring the
delay for each individual device.  A delay value of 0 will prevent
autosuspend.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agoUSB: minor cleanups for sysfs.c
Alan Stern [Tue, 20 Feb 2007 19:59:59 +0000 (14:59 -0500)]
USB: minor cleanups for sysfs.c

This patch (as858) makes some minor cleanups to sysfs.c in usbcore.
Unnecessary tests are removed and a few temp variables are added.

Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agoUSB: add a blacklist for devices that can't handle some things we throw at them.
Oliver Neukum [Fri, 26 Jan 2007 13:26:21 +0000 (14:26 +0100)]
USB: add a blacklist for devices that can't handle some things we throw at them.

This adds a blacklist to the USB core to handle some autosuspend and
string issues that devices have.

Originally written by Oliver, but hacked up a lot by Greg.

Signed-off-by: Oliver Neukum <oneukum@suse.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
13 years agoUSB: refactor usb device matching and create usb_device_match
Greg Kroah-Hartman [Fri, 26 Jan 2007 13:26:21 +0000 (14:26 +0100)]
USB: refactor usb device matching and create usb_device_match

This is needed for the quirk match code.

Cc: Oliver Neukum <oliver@neukum.name>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>