platform/adaptation/renesas_rcar/renesas_kernel.git
18 years agoMerge master.kernel.org:/home/rmk/linux-2.6-arm
Linus Torvalds [Tue, 8 Nov 2005 23:15:31 +0000 (15:15 -0800)]
Merge master.kernel.org:/home/rmk/linux-2.6-arm

18 years agoMerge with ARM SMP tree
Russell King [Tue, 8 Nov 2005 22:43:44 +0000 (22:43 +0000)]
Merge with ARM SMP tree

18 years ago[ARM] 3135/1: harden SA11x0 and PXA2xx timer init code
Nicolas Pitre [Tue, 8 Nov 2005 22:43:06 +0000 (22:43 +0000)]
[ARM] 3135/1: harden SA11x0 and PXA2xx timer init code

Patch from Nicolas Pitre

Make it completely deterministic and leave nothing to chance
(even if it had at worst 0.001% probability of failing).

Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3134/1: add missing EXPORT_SYMBOL for the ARM version of sha_transform
Nicolas Pitre [Tue, 8 Nov 2005 22:43:05 +0000 (22:43 +0000)]
[ARM] 3134/1: add missing EXPORT_SYMBOL for the ARM  version of sha_transform

Patch from Nicolas Pitre

Noticed by Woody Suwalski <woodys@xandros.com>.

Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3132/1: S3C2410 - reset on decompression error
Ben Dooks [Tue, 8 Nov 2005 22:43:05 +0000 (22:43 +0000)]
[ARM] 3132/1: S3C2410 - reset on decompression error

Patch from Ben Dooks

Force a watchdog reset if the system fails to
decompress properly.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[PATCH] fix de_thread() vs send_group_sigqueue() race
Oleg Nesterov [Mon, 7 Nov 2005 18:12:43 +0000 (21:12 +0300)]
[PATCH] fix de_thread() vs send_group_sigqueue() race

When non-leader thread does exec, de_thread calls release_task(leader) before
calling exit_itimers(). If local timer interrupt happens in between, it can
oops in send_group_sigqueue() while taking ->sighand->siglock == NULL.

However, we can't change send_group_sigqueue() to check p->signal != NULL,
because sys_timer_create() does get_task_struct() only in SIGEV_THREAD_ID
case. So it is possible that this task_struct was already freed and we can't
trust p->signal.

This patch changes de_thread() so that leader released after exit_itimers()
call.

Signed-off-by: Oleg Nesterov <oleg@tv-sign.ru>
Acked-by: Chris Wright <chrisw@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[ARM] 3124/1: Sharp SL-6000x: SharpSL PCMCIA Updates
Dirk Opfer [Tue, 8 Nov 2005 19:15:50 +0000 (19:15 +0000)]
[ARM] 3124/1: Sharp SL-6000x: SharpSL PCMCIA Updates

Patch from Dirk Opfer

This patch updates the tosa machine to use the new SharpSL PCMCIA layer introduced with Patch #3093/1

Depends on #3093/1

Signed-off-by: Dirk Opfer <Dirk@Opfer-Online.de>
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3093/1: SharpSL PCMCIA Updates for Cxx00 models
Richard Purdie [Tue, 8 Nov 2005 19:15:43 +0000 (19:15 +0000)]
[ARM] 3093/1: SharpSL PCMCIA Updates for Cxx00 models

Patch from Richard Purdie

The Sharp SL-Cxx00 models have a combined power control for the SD
and CF slot 0. This patch adds hooks to the scoop driver to allow
machines to provide a custom control function for this and such a
function is added for spitz/akita/borzoi.

It also moves the gpio init code into the machine files as this
is machine dependent and differs between some models. A couple of
warnings when compiling for collie are also fixed.

Signed-off-by: Richard Purdie
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3126/1: BAST: fix map_desc initialisation
Ben Dooks [Tue, 8 Nov 2005 19:15:31 +0000 (19:15 +0000)]
[ARM] 3126/1: BAST: fix map_desc initialisation

Patch from Ben Dooks

Fix the map_desc entries to use the new .pfn
initialiser for the Simtec BAST machine support.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3125/2: VR1000: Fix map_decs initialiser
Ben Dooks [Tue, 8 Nov 2005 19:15:30 +0000 (19:15 +0000)]
[ARM] 3125/2: VR1000: Fix map_decs initialiser

Patch from Ben Dooks

Fix the initialisation of the map_desc fields
in the Thorcom VR1000 machine support to use
the new .pfn initialiser.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] 3123/1: Sharp SL-6000x: Add IRDA, MMC, UDC and keyboard device
Dirk Opfer [Tue, 8 Nov 2005 19:15:30 +0000 (19:15 +0000)]
[ARM] 3123/1: Sharp SL-6000x: Add IRDA, MMC, UDC and keyboard device

Patch from Dirk Opfer

This patch adds MMC, IRDA and UDC support to the Sharp SL-6000x device. Also it adds a platform device for the keyboard driver.

Signed-off-by: Dirk Opfer
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM SMP] Add core ARM support for local timers
Russell King [Tue, 8 Nov 2005 19:08:05 +0000 (19:08 +0000)]
[ARM SMP] Add core ARM support for local timers

Add infrastructure for supporting per-cpu local timers to update
the profiling information and update system time accounting.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Tue, 8 Nov 2005 18:23:00 +0000 (10:23 -0800)]
Merge /pub/scm/linux/kernel/git/davem/sparc-2.6

18 years ago[SPARC64] mm: update get_user_insn comment
Hugh Dickins [Tue, 8 Nov 2005 18:00:55 +0000 (10:00 -0800)]
[SPARC64] mm: update get_user_insn comment

Update comment on get_user_insn to the more general "pte lock", which may
or may not be the page_table_lock.  Note vmtruncate handled like kswapd.

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SPARC]: Missing compat_ioctl hookup in openprom driver.
David S. Miller [Tue, 8 Nov 2005 18:00:13 +0000 (10:00 -0800)]
[SPARC]: Missing compat_ioctl hookup in openprom driver.

Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[Bluetooth]: Remove the usage of /proc completely
Marcel Holtmann [Tue, 8 Nov 2005 17:57:38 +0000 (09:57 -0800)]
[Bluetooth]: Remove the usage of /proc completely

This patch removes all relics of the /proc usage from the Bluetooth
subsystem core and its upper layers. All the previous information are
now available via /sys/class/bluetooth through appropriate functions.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[Bluetooth]: Add endian annotations to the core
Marcel Holtmann [Tue, 8 Nov 2005 17:57:21 +0000 (09:57 -0800)]
[Bluetooth]: Add endian annotations to the core

This patch adds the endian annotations to the Bluetooth core.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[Bluetooth]: Add another ignore parameter to the HCI USB driver
Marcel Holtmann [Tue, 8 Nov 2005 17:57:05 +0000 (09:57 -0800)]
[Bluetooth]: Add another ignore parameter to the HCI USB driver

This patchs adds the module parameter ignore_dga to the HCI USB driver
which makes it possible to prevent this driver from being loaded by
some buggy Digianswer devices.

Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[IPV4]: Fix ip_queue_xmit identity increment for TSO packets
Herbert Xu [Tue, 8 Nov 2005 17:41:56 +0000 (09:41 -0800)]
[IPV4]: Fix ip_queue_xmit identity increment for TSO packets

When ip_queue_xmit calls ip_select_ident_more for IP identity selection
it gives it the wrong packet count for TSO packets.  The ip_select_*
functions expect one less than the number of packets, so we need to
subtract one for TSO packets.

This bug was diagnosed and fixed by Tom Young.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[NET]: kfree cleanup
Jesper Juhl [Tue, 8 Nov 2005 17:41:34 +0000 (09:41 -0800)]
[NET]: kfree cleanup

From: Jesper Juhl <jesper.juhl@gmail.com>

This is the net/ part of the big kfree cleanup patch.

Remove pointless checks for NULL prior to calling kfree() in net/.

Signed-off-by: Jesper Juhl <jesper.juhl@gmail.com>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Arnaldo Carvalho de Melo <acme@conectiva.com.br>
Acked-by: Marcel Holtmann <marcel@holtmann.org>
Acked-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
18 years ago[IRDA] donauboe: locking fix
Andrew Morton [Tue, 8 Nov 2005 17:41:13 +0000 (09:41 -0800)]
[IRDA] donauboe: locking fix

From: Andrew Morton <akpm@osdl.org>

Two missing unlocks, as noted by Ted Unangst <tedu@coverity.com>

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[PPP]: add PPP MPPE encryption module
Matt Domsch [Tue, 8 Nov 2005 17:40:47 +0000 (09:40 -0800)]
[PPP]: add PPP MPPE encryption module

From: Matt Domsch <Matt_Domsch@dell.com>

The patch below implements the Microsoft Point-to-Point Encryption method
as a PPP compressor/decompressor.  This is necessary for Linux clients and
servers to interoperate with Microsoft Point-to-Point Tunneling Protocol
(PPTP) servers (either Microsoft PPTP servers or the poptop project) which
use MPPE to encrypt data when creating a VPN.

This patch differs from the kernel_ppp_mppe DKMS pacakge at
pptpclient.sourceforge.net by utilizing the kernel crypto routines rather
than providing its own SHA1 and arcfour implementations.

Minor changes to ppp_generic.c try to prevent a link from disabling
compression (in our case, the encryption) after it has started using
compression (encryption).

Feedback to <pptpclient-devel@lists.sourceforge.net> please.

Signed-off-by: Matt Domsch <Matt_Domsch@dell.com>
Cc: James Cameron <james.cameron@hp.com>
Cc: "David S. Miller" <davem@davemloft.net>
Signed-off-by: Brice Goglin <Brice.Goglin@ens-lyon.org>
Acked-by: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[PPP]: handle misaligned accesses
Philippe De Muyter [Tue, 8 Nov 2005 17:40:26 +0000 (09:40 -0800)]
[PPP]: handle misaligned accesses

From: "Philippe De Muyter" <phdm@macqel.be>

This patch avoids ppp-generated kernel crashes on machines where unaligned
accesses are forbidden (ie: m68000), by fixing ppp alignment setting for
reused skb's.

Signed-off-by: Philippe De Muyter <phdm@macqel.be>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Paul Mackerras <paulus@samba.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[IPVS]: fix connection leak if expire_nodest_conn=1
Julian Anastasov [Tue, 8 Nov 2005 17:40:05 +0000 (09:40 -0800)]
[IPVS]: fix connection leak if expire_nodest_conn=1

There was a fix in 2.6.13 that changed the behaviour of
ip_vs_conn_expire_now function not to put reference to connection,
its callers should hold write lock or connection refcnt. But we
forgot to convert one caller, when the real server for connection
is unavailable caller should put the connection reference. It
happens only when sysctl var expire_nodest_conn is set to 1 and
such connections never expire. Thanks to Roberto Nibali who found
the problem and tested a 2.4.32-rc2 patch, which is equal to this
2.6 version. Patch for 2.4 is already sent to Marcelo.

Signed-off-by: Julian Anastasov <ja@ssi.bg>
Signed-off-by: Roberto Nibali <ratz@drugphish.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[NET]: sk_add_backlog convert from macro to inline
Stephen Hemminger [Tue, 8 Nov 2005 17:39:42 +0000 (09:39 -0800)]
[NET]: sk_add_backlog convert from macro to inline

There is no reason for sk_add_backlog to be a macro. It can
just be an inline function and get type checking.

Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[PKT_SCHED]: Correctly handle empty ematch trees
Thomas Graf [Tue, 8 Nov 2005 17:39:17 +0000 (09:39 -0800)]
[PKT_SCHED]: Correctly handle empty ematch trees

Fixes an invalid memory reference when the basic classifier
is used without any ematches but just actions.

Signed-off-by: Thomas Graf <tgraf@suug.ch>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[CONNECTOR]: Fix documentation test module.
Carlo Comin [Tue, 8 Nov 2005 17:38:56 +0000 (09:38 -0800)]
[CONNECTOR]: Fix documentation test module.

Patch from Carlo Comin <vl4d spine-group.org>

Signed-off-by: Evgeniy Polyakov <johnpol@2ka.mipt.ru>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[IPV6]: RFC3484 compliant source address selection
YOSHIFUJI Hideaki [Tue, 8 Nov 2005 17:38:30 +0000 (09:38 -0800)]
[IPV6]: RFC3484 compliant source address selection

Choose more appropriate source address; e.g.
 - outgoing interface
 - non-deprecated
 - scope
 - matching label

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[IPV6]: Make ipv6_addr_type() more generic so that we can use it for source address...
YOSHIFUJI Hideaki [Tue, 8 Nov 2005 17:38:12 +0000 (09:38 -0800)]
[IPV6]: Make ipv6_addr_type() more generic so that we can use it for source address selection.

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[IPV6]: Put addr_diff() into common header for future use.
YOSHIFUJI Hideaki [Tue, 8 Nov 2005 17:37:56 +0000 (09:37 -0800)]
[IPV6]: Put addr_diff() into common header for future use.

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[ARM] Declare asm entry points in asm/smp.h
Russell King [Tue, 8 Nov 2005 15:35:23 +0000 (15:35 +0000)]
[ARM] Declare asm entry points in asm/smp.h

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM] More sparse fixes
Russell King [Tue, 8 Nov 2005 14:44:15 +0000 (14:44 +0000)]
[ARM] More sparse fixes

arch/arm/kernel/irq.c:998:26: warning: Using plain integer as NULL pointer
arch/arm/kernel/smp.c:145:25: warning: Using plain integer as NULL pointer
arch/arm/kernel/smp.c:362:5: warning: symbol 'smp_call_function_on_cpu' was not declared. Should it be static?
drivers/video/amba-clcd.c:521:12: warning: symbol 'amba_clcdfb_init' was not declared. Should it be static?

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM SMP] Fix some sparse warnings in SMP code
Russell King [Tue, 8 Nov 2005 10:44:46 +0000 (10:44 +0000)]
[ARM SMP] Fix some sparse warnings in SMP code

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years ago[ARM SMP] Add missing SMP timer handling for realview
Russell King [Tue, 8 Nov 2005 10:40:10 +0000 (10:40 +0000)]
[ARM SMP] Add missing SMP timer handling for realview

Until we have local timer support, we need to broadcast the
timer interrupt to the other CPUs.  Also, add the missing
smp_send_timer() prototype to asm/smp.h

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
18 years agoMerge git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc-merge
Linus Torvalds [Tue, 8 Nov 2005 04:23:46 +0000 (20:23 -0800)]
Merge git://git./linux/kernel/git/paulus/powerpc-merge

18 years agoMerge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6
Linus Torvalds [Tue, 8 Nov 2005 02:42:23 +0000 (18:42 -0800)]
Merge /pub/scm/linux/kernel/git/davem/sparc-2.6

18 years agoMerge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6
Linus Torvalds [Tue, 8 Nov 2005 02:41:53 +0000 (18:41 -0800)]
Merge branch 'release' of git://git./linux/kernel/git/aegl/linux-2.6

18 years ago[PATCH] Complete description of shared subtrees.
Ram Pai [Mon, 7 Nov 2005 22:31:49 +0000 (17:31 -0500)]
[PATCH] Complete description of shared subtrees.

Signed-off-by: Ram Pai <linuxram@us.ibm.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] unbindable mounts
Ram Pai [Mon, 7 Nov 2005 22:21:20 +0000 (17:21 -0500)]
[PATCH] unbindable mounts

An unbindable mount does not forward or receive propagation.  Also
unbindable mount disallows bind mounts.  The semantics is as follows.

Bind semantics:
  It is invalid to bind mount an unbindable mount.

Move semantics:
  It is invalid to move an unbindable mount under shared mount.

Clone-namespace semantics:
  If a mount is unbindable in the parent namespace, the corresponding
  cloned mount in the child namespace becomes unbindable too.  Note:
  there is subtle difference, unbindable mounts cannot be bind mounted
  but can be cloned during clone-namespace.

Signed-off-by: Ram Pai <linuxram@us.ibm.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] handling of slave mounts
Ram Pai [Mon, 7 Nov 2005 22:21:01 +0000 (17:21 -0500)]
[PATCH] handling of slave mounts

This makes bind, rbind, move, clone namespace and umount operations
aware of the semantics of slave mount (see Documentation/sharedsubtree.txt
in the last patch of the series for detailed description).

Signed-off-by: Ram Pai <linuxram@us.ibm.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] introduce slave mounts
Ram Pai [Mon, 7 Nov 2005 22:20:48 +0000 (17:20 -0500)]
[PATCH] introduce slave mounts

A slave mount always has a master mount from which it receives
mount/umount events.  Unlike shared mount the event propagation does not
flow from the slave mount to the master.

Signed-off-by: Ram Pai <linuxram@us.ibm.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] shared mounts handling: umount
Ram Pai [Mon, 7 Nov 2005 22:20:17 +0000 (17:20 -0500)]
[PATCH] shared mounts handling: umount

An unmount of a mount creates a umount event on the parent.  If the
parent is a shared mount, it gets propagated to all mounts in the peer
group.

Signed-off-by: Ram Pai <linuxram@us.ibm.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] shared mounts handling: move
Ram Pai [Mon, 7 Nov 2005 22:20:03 +0000 (17:20 -0500)]
[PATCH] shared mounts handling: move

Implement handling of mount --move in presense of shared mounts (see
Documentation/sharedsubtree.txt in the end of patch series for detailed
description).

Signed-off-by: Ram Pai <linuxram@us.ibm.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] shared mount handling: bind and rbind
Ram Pai [Mon, 7 Nov 2005 22:19:50 +0000 (17:19 -0500)]
[PATCH] shared mount handling: bind and rbind

Implement handling of MS_BIND in presense of shared mounts (see
Documentation/sharedsubtree.txt in the end of patch series for detailed
description).

Signed-off-by: Ram Pai <linuxram@us.ibm.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] introduce shared mounts
Ram Pai [Mon, 7 Nov 2005 22:19:33 +0000 (17:19 -0500)]
[PATCH] introduce shared mounts

This creates shared mounts.  A shared mount when bind-mounted to some
mountpoint, propagates mount/umount events to each other.  All the
shared mounts that propagate events to each other belong to the same
peer-group.

Signed-off-by: Ram Pai <linuxram@us.ibm.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] beginning of the shared-subtree proper
Ram Pai [Mon, 7 Nov 2005 22:19:07 +0000 (17:19 -0500)]
[PATCH] beginning of the shared-subtree proper

A private mount does not forward or receive propagation.  This patch
provides user the ability to convert any mount to private.

Signed-off-by: Ram Pai <linuxram@us.ibm.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] making namespace_sem global
Ram Pai [Mon, 7 Nov 2005 22:17:51 +0000 (17:17 -0500)]
[PATCH] making namespace_sem global

This removes the per-namespace semaphore in favor of a global semaphore.
This can have an effect on namespace scalability.

Signed-off-by: Miklos Szeredi <miklos@szeredi.hu>
Signed-off-by: Ram Pai <linuxram@us.ibm.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] mount expiry fixes
Ram Pai [Mon, 7 Nov 2005 22:17:22 +0000 (17:17 -0500)]
[PATCH] mount expiry fixes

 - clean up the ugliness in may_umount_tree()

 - fix a bug in do_loopback().  after cloning a tree, do_loopback()
   unlinks only the topmost mount of the cloned tree, leaving behind the
   children mounts on their corresponding expiry list.

Signed-off-by: Ram Pai <linuxram@us.ibm.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] umount_tree() locking change
Ram Pai [Mon, 7 Nov 2005 22:17:04 +0000 (17:17 -0500)]
[PATCH] umount_tree() locking change

umount is done under the protection of the namespace semaphore.  This
can lead to intresting deadlocks when the last reference to a mount is
released, if filesystem code is in sufficiently nasty state.

This collects all the to-be-released-mounts and releases them after
releasing the namespace semaphore.  That both reduces the time we are
holding namespace semaphore and gets the things more robust.

Idea proposed by Al Viro.

Signed-off-by: Ram Pai <linuxram@us.ibm.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] sanitize the interface of graft_tree().
Ram Pai [Mon, 7 Nov 2005 22:16:29 +0000 (17:16 -0500)]
[PATCH] sanitize the interface of graft_tree().

Old semantics: graft_tree() grabs a reference on the vfsmount before
returning success.

New one: graft_tree() leaves that to caller.

All the callers of graft_tree() immediately dropped that reference
anyway.  Changing the interface takes care of this unnecessary overhead.

Idea proposed by Al Viro.

Signed-off-by: Ram Pai <linuxram@us.ibm.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] lindent fs/namespace.c
Ram Pai [Mon, 7 Nov 2005 22:16:09 +0000 (17:16 -0500)]
[PATCH] lindent fs/namespace.c

Signed-off-by: Ram Pai <linuxram@us.ibm.com>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] make /proc/mounts pollable
Al Viro [Mon, 7 Nov 2005 22:15:49 +0000 (17:15 -0500)]
[PATCH] make /proc/mounts pollable

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] allow callers of seq_open do allocation themselves
Al Viro [Mon, 7 Nov 2005 22:15:34 +0000 (17:15 -0500)]
[PATCH] allow callers of seq_open do allocation themselves

Allow caller of seq_open() to kmalloc() seq_file + whatever else they
want and set ->private_data to it.  seq_open() will then abstain from
doing allocation itself.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] cleanups and bug fix in do_loopback()
Al Viro [Mon, 7 Nov 2005 22:15:04 +0000 (17:15 -0500)]
[PATCH] cleanups and bug fix in do_loopback()

 - check_mnt() on the source of binding should've been unconditional
   from the very beginning.  My fault - as far I could've trace it,
   that's an old thinko made back in 2001.  Kudos to Miklos for spotting
   it...

   Fixed.

 - code cleaned up.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] saner handling of auto_acct_off() and DQUOT_OFF() in umount
Al Viro [Mon, 7 Nov 2005 22:13:39 +0000 (17:13 -0500)]
[PATCH] saner handling of auto_acct_off() and DQUOT_OFF() in umount

The way we currently deal with quota and process accounting that might
keep vfsmount busy at umount time is inherently broken; we try to turn
them off just in case (not quite correctly, at that) and

  a) pray umount doesn't fail (otherwise they'll stay turned off)
  b) pray nobody doesn anything funny just as we turn quota off

Moreover, LSM provides hooks for doing the same sort of broken logics.

The proper way to deal with that is to introduce the second kind of
reference to vfsmount.  Semantics:

 - when the last normal reference is dropped, all special ones are
   converted to normal ones and if there had been any, cleanup is done.
 - normal reference can be cloned into a special one
 - special reference can be converted to normal one; that's a no-op if
   we'd already passed the point of no return (i.e.  mntput() had
   converted special references to normal and started cleanup).

The way it works: e.g. starting process accounting converts the vfsmount
reference pinned by the opened file into special one and turns it back
to normal when it gets shut down; acct_auto_close() is done when no
normal references are left.  That way it does *not* obstruct umount(2)
and it silently gets turned off when the last normal reference to
vfsmount is gone.  Which is exactly what we want...

The same should be done by LSM module that holds some internal
references to vfsmount and wants to shut them down on umount - it should
make them special and security_sb_umount_close() will be called exactly
when the last normal reference to vfsmount is gone.

quota handling is even simpler - we don't use normal file IO anymore, so
there's no need to hold vfsmounts at all.  DQUOT_OFF() is done from
deactivate_super(), where it really belongs.

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
18 years ago[PATCH] ppc64: Fix the lazy icache/dcache code for non-RAM pages
Benjamin Herrenschmidt [Tue, 8 Nov 2005 00:21:05 +0000 (11:21 +1100)]
[PATCH] ppc64: Fix the lazy icache/dcache code for non-RAM pages

For some stupid reason I can't explain (brown paper bag is at hand), I
removed the check pfn_valid() in the code that does the icache/dcache
coherency on POWER4 and later. That causes us to eventually try to
access non existing struct page when hashing in IO pages.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years agopowerpc: merge ide.h
Stephen Rothwell [Tue, 8 Nov 2005 01:20:34 +0000 (12:20 +1100)]
powerpc: merge ide.h

This is very simple with it being almost all ppc32 with just a couple
of common defines.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years agopowermac: Use a spinlock in swim3.c (floppy driver) instead of cli
Paul Mackerras [Tue, 8 Nov 2005 01:15:36 +0000 (12:15 +1100)]
powermac: Use a spinlock in swim3.c (floppy driver) instead of cli

Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years agomacintosh: Always export pmu_[un]register_sleep_notifier if CONFIG_PM set
Paul Mackerras [Tue, 8 Nov 2005 01:14:50 +0000 (12:14 +1100)]
macintosh: Always export pmu_[un]register_sleep_notifier if CONFIG_PM set

This fixes a build error when building the pmac sound driver as a
module for 64-bit powermacs.

Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years agopowerpc: Fix typo in pmac_cpufreq_resume
Paul Mackerras [Tue, 8 Nov 2005 01:13:38 +0000 (12:13 +1100)]
powerpc: Fix typo in pmac_cpufreq_resume

Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] Memory Add Fixes for ppc64
Mike Kravetz [Mon, 7 Nov 2005 21:48:59 +0000 (13:48 -0800)]
[PATCH] Memory Add Fixes for ppc64

On Tue, Nov 08, 2005 at 08:12:56AM +1100, Benjamin Herrenschmidt wrote:
> Yes, the MAX_ORDER should be different indeed. But can Kconfig do that ?
> That is have the default value be different based on a Kconfig option ?
> I don't see that ... We may have to do things differently here...

This seems to be done in other parts of the Kconfig file.  Using those
as an example, this should keep the MAX_ORDER block size at 16MB.

Signed-off-by: Mike Kravetz <kravetz@us.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] ppc64: remove some direct xmon calls
Anton Blanchard [Mon, 7 Nov 2005 08:05:31 +0000 (19:05 +1100)]
[PATCH] ppc64: remove some direct xmon calls

Even though we can enable and disable xmon at runtime now, there are a
few places in the merge tree that call xmon and xmon_printf directly.

In the case below we call die() which will call xmon if it is enabled.

Also remove an unnecessary include of xmon.h in smp.c.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] ppc64: fix oprofile sample bit handling
Anton Blanchard [Mon, 7 Nov 2005 07:43:56 +0000 (18:43 +1100)]
[PATCH] ppc64: fix oprofile sample bit handling

Oprofile was hardwiring the MMCRA sample bit to 1 but on newer cpus
(eg POWER5) we want to vary it based on the group being sampled.

Add a temporary workaround until people update their oprofile userspace.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] ppc64: fix Memory: summary line
Anton Blanchard [Mon, 7 Nov 2005 06:43:07 +0000 (17:43 +1100)]
[PATCH] ppc64: fix Memory: summary line

On ppc64 we end up with a negative value for the data size in the memory
boot message:

Memory: 2035560k/2097152k available (5792k kernel code, 89564k reserved,
18014398509481632k data, 870k bss, 352k init)

It turns out the section ordering of the linker script is different on
ppc32 and ppc64, so just count data as _edata - _sdata which should work
on both.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] ppc: Fix PowerBook HD led on ARCH=powerpc
Benjamin Herrenschmidt [Mon, 7 Nov 2005 05:57:33 +0000 (16:57 +1100)]
[PATCH] ppc: Fix PowerBook HD led on ARCH=powerpc

The PowerBook HD led code uses obsoletes device-tree accessors which do
not work anymore for getting the root of the tree.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] ppc: Fix ARCH=ppc build with xmon
Benjamin Herrenschmidt [Mon, 7 Nov 2005 05:43:44 +0000 (16:43 +1100)]
[PATCH] ppc: Fix ARCH=ppc build with xmon

xmon() prototype is inconsistent between ARCH=ppc and ARCH=powerpc,
thus causing ARCH=ppc build breakage.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] ppc: fix a bunch of warnings
Benjamin Herrenschmidt [Mon, 7 Nov 2005 05:41:59 +0000 (16:41 +1100)]
[PATCH] ppc: fix a bunch of warnings

Building a PowerMac kernel with ARCH=powerpc causes a bunch of warnings,
this fixes some of them

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] ppc64: Thermal control for SMU based machines
Benjamin Herrenschmidt [Mon, 7 Nov 2005 05:08:17 +0000 (16:08 +1100)]
[PATCH] ppc64: Thermal control for SMU based machines

This adds a new thermal control framework for PowerMac, along with the
implementation for PowerMac8,1, PowerMac8,2 (iMac G5 rev 1 and 2), and
PowerMac9,1 (latest single CPU desktop). In the future, I expect to move
the older G5 thermal control to the new framework as well.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] ppc64: More U3 device-tree fixes
Benjamin Herrenschmidt [Mon, 7 Nov 2005 03:36:21 +0000 (14:36 +1100)]
[PATCH] ppc64: More U3 device-tree fixes

Some more U3 revisions have the missing "interrupts" property in U3,
this adds them to the fixup code in prom_init.c

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] ppc64: Update g5_defconfig for ARCH=powerpc
Benjamin Herrenschmidt [Mon, 7 Nov 2005 03:32:28 +0000 (14:32 +1100)]
[PATCH] ppc64: Update g5_defconfig for ARCH=powerpc

This patch updates g5_defconfig for ARCH=powerpc in order to add the SMU
support & thermal drivers to it, the pmac sound driver (works on some
G5s) and replaces rivafb with nvidiafb which works better for the cards
found in G5 based machines.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] ppc64: SMU partition recovery
Benjamin Herrenschmidt [Mon, 7 Nov 2005 03:29:02 +0000 (14:29 +1100)]
[PATCH] ppc64: SMU partition recovery

This patch adds the ability to the SMU driver to recover missing
calibration partitions from the SMU chip itself. It also adds some
dynamic mecanism to /proc/device-tree so that new properties are visible
to userland.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] ppc64: SMU based macs cpufreq support
Benjamin Herrenschmidt [Mon, 7 Nov 2005 03:27:33 +0000 (14:27 +1100)]
[PATCH] ppc64: SMU based macs cpufreq support

CPU freq support using 970FX powertune facility for iMac G5 and SMU
based single CPU desktop.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years ago[PATCH] powerpc: Fix ppc32 initrd
David Woodhouse [Wed, 2 Nov 2005 22:34:20 +0000 (22:34 +0000)]
[PATCH] powerpc: Fix ppc32 initrd

OK, the Fedora ppc32 and ppc64 kernels should both be arch/powerpc by
tomorrow. They're booting on G5, POWER5, and my powerbook. I'll test
pmac SMP and Pegasos later -- but pmac smp is known broken in arch/ppc
anyway, and I'll live with a potential Pegasos regression for now; it
wasn't supported officially in FC4 either.

I needed to fix ppc32 initrd -- we were never setting initrd_start.

Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Paul Mackerras <paulus@samba.org>
18 years agoMerge ../linux-2.6
Paul Mackerras [Tue, 8 Nov 2005 00:14:20 +0000 (11:14 +1100)]
Merge ../linux-2.6

18 years ago[SPARC64]: Kill some unnecessary includes from ioctl32.c
David S. Miller [Mon, 7 Nov 2005 22:13:46 +0000 (14:13 -0800)]
[SPARC64]: Kill some unnecessary includes from ioctl32.c

Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SPARC64]: remove drm compat ioctl handling
Christoph Hellwig [Mon, 7 Nov 2005 22:13:27 +0000 (14:13 -0800)]
[SPARC64]: remove drm compat ioctl handling

drivers/drm/ now implements proper ->compat_ioctl methods, so this isn't
needed anymore.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SPARC] cpwatchdog: implement ->compat_ioctl
Christoph Hellwig [Mon, 7 Nov 2005 22:13:14 +0000 (14:13 -0800)]
[SPARC] cpwatchdog: implement ->compat_ioctl

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SPARC] display7seg: implement ->unlocked_ioctl and ->compat_ioctl
Christoph Hellwig [Mon, 7 Nov 2005 22:13:01 +0000 (14:13 -0800)]
[SPARC] display7seg: implement ->unlocked_ioctl and ->compat_ioctl

all ioctls are 32bit compat clean, so the driver can use ->compat_ioctl
and ->unlocked_ioctl easily.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SPARC] openprom: implement ->compat_ioctl
Christoph Hellwig [Mon, 7 Nov 2005 22:12:47 +0000 (14:12 -0800)]
[SPARC] openprom: implement ->compat_ioctl

implement a compat_ioctl handle in the driver instead of having table
entries in sparc64 ioctl32.c (I plan to get rid of the arch ioctl32.c
file eventually)

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SPARC] envctrl: implement ->unlocked_ioctl and ->compat_ioctl
Christoph Hellwig [Mon, 7 Nov 2005 22:12:34 +0000 (14:12 -0800)]
[SPARC] envctrl: implement ->unlocked_ioctl and ->compat_ioctl

all the ioctls in the driver are 32bit compat clean and don't need BKL,
so we can switch it to ->unlocked_ioctl and ->compat_ioctl trivially.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SPARC]: Kill remaining kbio.h references.
Christoph Hellwig [Mon, 7 Nov 2005 22:12:21 +0000 (14:12 -0800)]
[SPARC]: Kill remaining kbio.h references.

Would you mind applying the following patch that kills those two + the
m68k and Documentation/ references?

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SPARC64] mm: simpler tlb_flush_mmu
Hugh Dickins [Mon, 7 Nov 2005 22:12:08 +0000 (14:12 -0800)]
[SPARC64] mm: simpler tlb_flush_mmu

Minor simplification to the sparc64 tlb_flush_mmu: tlb_remove_page
set need_flush only after handling the tlb_fast_mode case, then
tlb_flush_mmu need not consider whether it's tlb_fast_mode.

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SPARC64]: remove duplicated compat ioctl entries
Christoph Hellwig [Mon, 7 Nov 2005 22:11:49 +0000 (14:11 -0800)]
[SPARC64]: remove duplicated compat ioctl entries

all these are handled by fs/compat_ioctls.c already.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SPARC]: remove vuid_event.h
Christoph Hellwig [Mon, 7 Nov 2005 22:11:38 +0000 (14:11 -0800)]
[SPARC]: remove vuid_event.h

I don't know if we ever implemented this, but the only user in any 2.6
tree are the compat ioctls.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SPARC]: remove kbio.h
Christoph Hellwig [Mon, 7 Nov 2005 22:11:25 +0000 (14:11 -0800)]
[SPARC]: remove kbio.h

The old keyboard driver is gone in 2.6, so the only user left are the
compat ioctls.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SPARC]: remove audioio.h
Christoph Hellwig [Mon, 7 Nov 2005 22:11:14 +0000 (14:11 -0800)]
[SPARC]: remove audioio.h

The old sound drivers are gone in 2.6, so the only user left are the
compat ioctls.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SPARC64]: remove alloc_user_space()
Christoph Hellwig [Mon, 7 Nov 2005 22:11:02 +0000 (14:11 -0800)]
[SPARC64]: remove alloc_user_space()

this inline routine in arch/sparc64/kernel/ioctl32.c is completely
unused and superceeded by compat_alloc_user_space()

Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SPARC]: remove duplicate TIOCPKT_ definitions
Stephen Rothwell [Mon, 7 Nov 2005 22:10:42 +0000 (14:10 -0800)]
[SPARC]: remove duplicate TIOCPKT_ definitions

The TIOCPKT_ macros are defined by all other architectures in asm/ioctls.h
and so does sparc and sparc64, so reomve the duplicates in asm/termios.h.

Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SUNSU]: Do not mark sunsu_console_setup() __init
David S. Miller [Mon, 7 Nov 2005 22:10:21 +0000 (14:10 -0800)]
[SUNSU]: Do not mark sunsu_console_setup() __init

Sets off buildcheck warnings.

Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SPARC64]: Kill off dummy_tick_ops.
David S. Miller [Mon, 7 Nov 2005 22:10:10 +0000 (14:10 -0800)]
[SPARC64]: Kill off dummy_tick_ops.

It only serves to generate false-positive buildcheck warnings.
Just set it initially to tick_operations which uses the v9
%tick register which every sparc64 processor has.

Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SPARC64] mm: Do not flush TLB mm in tlb_finish_mmu()
David S. Miller [Mon, 7 Nov 2005 22:09:58 +0000 (14:09 -0800)]
[SPARC64] mm: Do not flush TLB mm in tlb_finish_mmu()

It isn't needed any longer, as noted by Hugh Dickins.

We still need the flush routines, due to the one remaining
call site in hugetlb_prefault_arch_hook().  That can be
eliminated at some later point, however.

Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SPARC]: Remove bogus register programming in cg6 driver.
David S. Miller [Mon, 7 Nov 2005 22:09:44 +0000 (14:09 -0800)]
[SPARC]: Remove bogus register programming in cg6 driver.

Don't write garbage into the overlay plane.

Noted by Bob Breuer.

Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SPARC]: More abstractions and cleanups of dma handling in cs4231.
Georg Chini [Mon, 7 Nov 2005 22:09:19 +0000 (14:09 -0800)]
[SPARC]: More abstractions and cleanups of dma handling in cs4231.

From: Georg Chini <georg.chini@triaton-webhosting.com>

Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SPARC64] mm: context switch ptlock
Hugh Dickins [Mon, 7 Nov 2005 22:09:01 +0000 (14:09 -0800)]
[SPARC64] mm: context switch ptlock

sparc64 is unique among architectures in taking the page_table_lock in
its context switch (well, cris does too, but erroneously, and it's not
yet SMP anyway).

This seems to be a private affair between switch_mm and activate_mm,
using page_table_lock as a per-mm lock, without any relation to its uses
elsewhere.  That's fine, but comment it as such; and unlock sooner in
switch_mm, more like in activate_mm (preemption is disabled here).

There is a block of "if (0)"ed code in smp_flush_tlb_pending which would
have liked to rely on the page_table_lock, in switch_mm and elsewhere;
but its comment explains how dup_mmap's flush_tlb_mm defeated it.  And
though that could have been changed at any time over the past few years,
now the chance vanishes as we push the page_table_lock downwards, and
perhaps split it per page table page.  Just delete that block of code.

Which leaves the mysterious spin_unlock_wait(&oldmm->page_table_lock)
in kernel/fork.c copy_mm.  Textual analysis (supported by Nick Piggin)
suggests that the comment was written by DaveM, and that it relates to
the defeated approach in the sparc64 smp_flush_tlb_pending.  Just delete
this block too.

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SPARC64] mm: don't re-evaluate *ptep
Hugh Dickins [Mon, 7 Nov 2005 22:08:46 +0000 (14:08 -0800)]
[SPARC64] mm: don't re-evaluate *ptep

sparc64 prom_callback and new_setup_frame32 each operates on a user page
table without holding lock, and no doubt they've good reason.  But I'd
feel more confident if they were to do a "pte = *ptep" and then operate
on pte, rather than re-evaluating *ptep.

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SPARC]: Make SBUS dma code similar to EBUS
Georg Chini [Mon, 7 Nov 2005 22:08:25 +0000 (14:08 -0800)]
[SPARC]: Make SBUS dma code similar to EBUS

From: Georg Chini <georg.chini@triaton-webhosting.com>

Introduce some sbus_dma routines similar to the
ebus_dma stuff to make the code look nearly the same
for both cases.

Thanks to Christopher for testing.

Signed-off-by: David S. Miller <davem@davemloft.net>
18 years ago[SPARC]: Add sun4m LED driver.
Lars Kotthoff [Mon, 7 Nov 2005 22:08:04 +0000 (14:08 -0800)]
[SPARC]: Add sun4m LED driver.

This is a forward port of a 2.4.x sun4m LED driver written by Lars
Kotthoff.

Signed-off-by: Lars Kotthoff <metalhead@metalhead.ws>
Signed-off-by: David S. Miller <davem@davemloft.net>
18 years agoMerge master.kernel.org:/home/rmk/linux-2.6-mmc
Linus Torvalds [Mon, 7 Nov 2005 21:32:52 +0000 (13:32 -0800)]
Merge master.kernel.org:/home/rmk/linux-2.6-mmc

18 years agoMerge master.kernel.org:/home/rmk/linux-2.6-arm
Linus Torvalds [Mon, 7 Nov 2005 21:32:21 +0000 (13:32 -0800)]
Merge master.kernel.org:/home/rmk/linux-2.6-arm

18 years ago[ARM] Allow SMP if Realview MPcore is selected
Russell King [Mon, 7 Nov 2005 21:30:21 +0000 (21:30 +0000)]
[ARM] Allow SMP if Realview MPcore is selected

This patch puts into place the final piece of the puzzle for SMP
support on ARM.

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