]> git.hungrycats.org Git - linux/log
linux
22 years agoLinux v2.5.35 v2.5.35
Linus Torvalds [Sun, 15 Sep 2002 10:45:09 +0000 (03:45 -0700)]
Linux v2.5.35

22 years agoMerge bk://ppc.bkbits.net/for-linus-ppc
Linus Torvalds [Sun, 15 Sep 2002 10:03:03 +0000 (03:03 -0700)]
Merge bk://ppc.bkbits.net/for-linus-ppc
into home.transmeta.com:/home/torvalds/v2.5/linux

22 years agoPPC32: define rwlock_is_locked().
Paul Mackerras [Mon, 16 Sep 2002 19:12:42 +0000 (05:12 +1000)]
PPC32: define rwlock_is_locked().

22 years agoPPC32: remove unused IDE functions from include/asm-ppc/ide.h.
Paul Mackerras [Mon, 16 Sep 2002 19:11:39 +0000 (05:11 +1000)]
PPC32: remove unused IDE functions from include/asm-ppc/ide.h.

This gets rid of ide_request/free_irq, ide_get/release_lock,
ide_check/request/release_region etc.

22 years agoPPC32: define kmap_atomic_to_page
Paul Mackerras [Mon, 16 Sep 2002 19:03:00 +0000 (05:03 +1000)]
PPC32: define kmap_atomic_to_page

22 years agoPPC32: remove the ppc32-specific ide_fix_driveid.
Paul Mackerras [Mon, 16 Sep 2002 19:01:02 +0000 (05:01 +1000)]
PPC32: remove the ppc32-specific ide_fix_driveid.
There is a perfectly good one in drivers/ide/ide-iops.c now.

22 years agoPPC32: allocate syscall #s for alloc/free_hugepages and exit_group
Paul Mackerras [Mon, 16 Sep 2002 18:58:44 +0000 (04:58 +1000)]
PPC32: allocate syscall #s for alloc/free_hugepages and exit_group
and add exit_group to the syscall table.

22 years agoPPC32: define atomic_add_negative
Paul Mackerras [Mon, 16 Sep 2002 18:54:10 +0000 (04:54 +1000)]
PPC32: define atomic_add_negative

22 years agoPPC32: convert xtime usage from timeval to timespec
Paul Mackerras [Mon, 16 Sep 2002 18:53:35 +0000 (04:53 +1000)]
PPC32: convert xtime usage from timeval to timespec

22 years agoPPC32: add argument to INIT_SIGNALS use in arch/ppc/kernel/process.c
Paul Mackerras [Mon, 16 Sep 2002 18:50:06 +0000 (04:50 +1000)]
PPC32: add argument to INIT_SIGNALS use in arch/ppc/kernel/process.c

22 years agoPPC32: extra argument for pcibios_enable_resources/device
Paul Mackerras [Mon, 16 Sep 2002 18:42:58 +0000 (04:42 +1000)]
PPC32: extra argument for pcibios_enable_resources/device

22 years agoMerge samba.org:/home/paulus/kernel/linux-2.5
Paul Mackerras [Mon, 16 Sep 2002 18:24:27 +0000 (04:24 +1000)]
Merge samba.org:/home/paulus/kernel/linux-2.5
into samba.org:/home/paulus/kernel/for-linus-ppc

22 years ago[PATCH] thread exec fix, BK-curr
Ingo Molnar [Sun, 15 Sep 2002 10:01:47 +0000 (03:01 -0700)]
[PATCH] thread exec fix, BK-curr

The broadcast SIGKILL kept pending in the new thread as well, and killed
it prematurely ...

22 years agoUse CLONE_KERNEL for the common kernel thread flags.
Linus Torvalds [Sun, 15 Sep 2002 04:35:42 +0000 (21:35 -0700)]
Use CLONE_KERNEL for the common kernel thread flags.

22 years ago[PATCH] thread-exec-2.5.34-B1, BK-curr
Ingo Molnar [Sun, 15 Sep 2002 04:20:59 +0000 (21:20 -0700)]
[PATCH] thread-exec-2.5.34-B1, BK-curr

This implements one of the last missing POSIX threading details - exec()
semantics.  Previous kernels had code that tried to handle it, but that
code had a number of disadvantages:

 - it only worked if the exec()-ing thread was the thread group leader,
   creating an assymetry. This does not work if the thread group leader
   has exited already.

 - it was racy: it sent a SIGKILL to every thread in the group but did not
   wait for them to actually process the SIGKILL. It did a yield() but
   that is not enough. All 'other' threads have to finish processing
   before we can continue with the exec().

This adds the same logic, but extended with the following enhancements:

 - works from non-leader threads just as much as the thread group leader.

 - waits for all other threads to exit before continuing with the exec().

 - reuses the PID of the group.

It would perhaps be a more generic approach to add a new syscall,
sys_ungroup() - which would do largely what de_thread() does in this
patch.

But it's not really needed now - posix_spawn() is currently implemented
via starting a non-CLONE_THREAD helper thread that does a sys_exec().
There's no API currently that needs a direct exec() from a thread - but
it could be created (such as pthread_exec_np()).  It would have the
advantage of not having to go through a helper thread, but the
difference is minimal.

22 years ago[PATCH] exit-fix-2.5.34-C0, BK-curr
Ingo Molnar [Sun, 15 Sep 2002 04:20:54 +0000 (21:20 -0700)]
[PATCH] exit-fix-2.5.34-C0, BK-curr

This fixes one more exit-time resource accounting issue - and it's also
a speedup and a thread-tree (to-be thread-aware pstree) visual
improvement.

In the current code we reparent detached threads to the init thread.
This worked but was not very nice in ps output: threads showed up as
being related to init.  There was also a resource-accounting issue, upon
exit they update their parent's (ie.  init's) rusage fields -
effectively losing these statistics.  Eg.  'time' under-reports CPU
usage if the threaded app is Ctrl-C-ed prematurely.

The solution is to reparent threads to the group leader - this is now
very easy since we have p->group_leader cached and it's also valid all
the time.  It's also somewhat faster for applications that use
CLONE_THREAD but do not use the CLONE_DETACHED feature.

22 years ago[PATCH] wait4-fix-2.5.34-B2, BK-curr
Ingo Molnar [Sun, 15 Sep 2002 04:20:49 +0000 (21:20 -0700)]
[PATCH] wait4-fix-2.5.34-B2, BK-curr

This fixes a number of bugs that broke ptrace:

 - wait4 must not inhibit TASK_STOPPED processes even for thread group
   leaders.

 - do_notify_parent() should not delay the notification of parents if
   the thread in question is ptraced.

strace now works as expected for CLONE_THREAD applications as well.

22 years ago[PATCH] exit-thread-2.5.34-A0, BK-curr
Ingo Molnar [Sun, 15 Sep 2002 04:20:45 +0000 (21:20 -0700)]
[PATCH] exit-thread-2.5.34-A0, BK-curr

This optimizes sys_exit_group() to only take the siglock if it's a true
thread group.  Boots & works fine.

22 years ago[PATCH] detached-fix-2.5.34-A0, BK-curr
Ingo Molnar [Sun, 15 Sep 2002 04:20:40 +0000 (21:20 -0700)]
[PATCH] detached-fix-2.5.34-A0, BK-curr

This fixes three resource accounting related bugs introduced by detached
threads:

 - the 'child CPU usage' fields were updated in wait4 until now - this was
   slightly buggy for a number of reasons, eg. if the exit_code writout
   faults then it's possible to trigger this code multiple times.

 - those threads that do not go through wait4 were not properly accounted.

 - sched_exit() was incorrectly assuming that current == parent. In the
   detached case p->parent is the real parent.

with this patch applied things like 'time' work again for new-style
threaded apps.

22 years ago[PATCH] clone-fix-2.5.34-A0, BK-curr
Ingo Molnar [Sun, 15 Sep 2002 04:20:35 +0000 (21:20 -0700)]
[PATCH] clone-fix-2.5.34-A0, BK-curr

This fixes a clone-flags bug noticed by Roland McGrath.  The current
CLONE_DETACHED & CLONE_THREAD forcing code did things in the wrong
order, which makes it possible to force an oops the following way:

        main () { syscall(120, 0x00400000); }

instead of changing the order of CLONE_SIGHAND and CLONE_THREAD flag
forcing (which would fix the bug), the proper approach is to fail with
-EINVAL if invalid combinations of clone flags are detected.  This
change does not affect existing applications.

22 years ago[PATCH] wait4-fix-2.5.34-A0, BK-curr
Ingo Molnar [Sun, 15 Sep 2002 04:20:31 +0000 (21:20 -0700)]
[PATCH] wait4-fix-2.5.34-A0, BK-curr

the attached patch (against BK-curr) fixes a sys_wait4() bug noticed by
Ulrich Drepper. The kernel would not block properly if there are eligible
children delayed due to the new delayed thread-group-leader logic. The
solution is to introduce a new type of 'eligible child' type - and skip
over delayed children but set the wait4 flag nevertheless.

The libpthreads testcase that failed due to it now it works fine.

22 years agoMerge samba.org:/home/paulus/kernel/linux-2.5
Paul Mackerras [Sun, 15 Sep 2002 04:12:41 +0000 (14:12 +1000)]
Merge samba.org:/home/paulus/kernel/linux-2.5
into samba.org:/home/paulus/kernel/for-linus-ppc

22 years agoMerge samba.org:/home/paulus/kernel/linux-2.5
Paul Mackerras [Sat, 14 Sep 2002 19:16:55 +0000 (05:16 +1000)]
Merge samba.org:/home/paulus/kernel/linux-2.5
into samba.org:/home/paulus/kernel/for-linus-ppc

22 years agoMake sure MTRR setting is atomic on SMP, since
Linus Torvalds [Sat, 14 Sep 2002 04:07:23 +0000 (21:07 -0700)]
Make sure MTRR setting is atomic on SMP, since
 - HT CPU's can share the MTRR state between cores
 - the code uses static variables that are shared

22 years agoMerge master.kernel.org:/home/acme/BK/llc-2.5
Linus Torvalds [Sat, 14 Sep 2002 02:42:34 +0000 (19:42 -0700)]
Merge master.kernel.org:/home/acme/BK/llc-2.5
into home.transmeta.com:/home/torvalds/v2.5/linux

22 years ago[PATCH] hide-threads-2.5.34-C1
Ingo Molnar [Sat, 14 Sep 2002 02:35:26 +0000 (19:35 -0700)]
[PATCH] hide-threads-2.5.34-C1

I fixed up the 'remove thread group inferiors from the tasklist' patch. I
think i managed to find a reasonably good construct to iterate over all
threads:

do_each_thread(g, p) {
...
} while_each_thread(g, p);

the only caveat with this is that the construct suggests a single-loop -
while it's two loops internally - and 'break' will not work. I added a
comment to sched.h that warns about this, but perhaps it would help more
to have naming that suggests two loops:

for_each_process_do_each_thread(g, p) {
...
} while_each_thread(g, p);

but this looks a bit too long. I dont know. We might as well use it all
unrolled and no helper macros - although with the above construct it's
pretty straightforward to iterate over all threads in the system.

22 years ago[PATCH] 2.5.34-bk fcntl lockup
Petr Vandrovec [Sat, 14 Sep 2002 02:33:50 +0000 (19:33 -0700)]
[PATCH] 2.5.34-bk fcntl lockup

This fixes endless loop without schedule which happens as soon as smbd
invokes fcntl64(7, F_SETLK64, ...).  fcntl_setlk64 gets cmd F_SETLK64,
not F_SETLK tested in the loop;

Maybe return value from posix_lock_file should be changed to -EINPROGRESS
or -EJUKEBOX instead of testing passed cmd in callers, but this oneliner
works too. If you preffer changing posix_lock_file return value to clearly
distinugish between -EAGAIN and lock request queued, I'll do that.

22 years ago[PATCH] signal failures in nightly LTP test
Ingo Molnar [Sat, 14 Sep 2002 02:33:45 +0000 (19:33 -0700)]
[PATCH] signal failures in nightly LTP test

On 13 Sep 2002, Paul Larson wrote:
>
> The nightly LTP test against the 2.5 kernel bk tree last night turned up
> some test failures we don't normally see.  These failures did not show
> up in the run from the previous night.

[...]
> I found what was breaking this, looks like it was this change from your
> shared thread signals patch:
> - if (sig < 1 || sig > _NSIG ||
> -     (act && (sig == SIGKILL || sig == SIGSTOP)))
> + if (sig < 1 || sig > _NSIG || (act && sig_kernel_only(sig)))

This fixes this bug and a number of others in the same class - the
signal behavior bitmasks should never be consulted before making sure
that the signal is in the word range.

22 years ago[PATCH] thread exit deadlock bug
Ingo Molnar [Sat, 14 Sep 2002 02:33:41 +0000 (19:33 -0700)]
[PATCH] thread exit deadlock bug

This fixes the Mozilla SMP lockup in the exit path.

22 years ago[PATCH] PATCH - cset 1.497.59.25 breaks MD autodetect
Neil Brown [Sat, 14 Sep 2002 02:33:37 +0000 (19:33 -0700)]
[PATCH] PATCH - cset 1.497.59.25 breaks MD autodetect

The partition changes shifted a lot of indexes down one, but this one
shouldn't have been shifted...

22 years agoMerge au1.ibm.com:/home/paulus/kernel/linux-2.5
Paul Mackerras [Sat, 14 Sep 2002 01:46:31 +0000 (11:46 +1000)]
Merge au1.ibm.com:/home/paulus/kernel/linux-2.5
into au1.ibm.com:/home/paulus/kernel/for-linus-ppc

22 years ago[LLC] remove all tmr ev structs & fix psnap and p8022 wrt ui sending
Arnaldo Carvalho de Melo [Sat, 14 Sep 2002 01:25:14 +0000 (22:25 -0300)]
[LLC] remove all tmr ev structs & fix psnap and p8022 wrt ui sending

. No need for the timer_running member on llc_timer,
  we only need it in one place, and timer_pending is
  equivalent. One more procom OS generalisation killed.
. Move the skb->protocol assignment in llc_build_and_send_pkt
  routines and llc_ui_send_data to the caller, this is the common
  practice in Linux networking code (think netif_rx) and required
  to keep the request functions in psnap and p8022 simple.
. Remove the rpt_status (report status) ev members, not
  used at all, not even in the original procom code.
. Convert psnap and p8022 request functions to use
  llc_ui_build_and_send_ui_pkt, removing all the prim cruft.

22 years ago[PATCH] Use a sync iocb for generic_file_read
Andrew Morton [Fri, 13 Sep 2002 12:57:07 +0000 (05:57 -0700)]
[PATCH] Use a sync iocb for generic_file_read

This adds support for synchronous iocbs and converts generic_file_read
to use a sync iocb to call into generic_file_aio_read.

The tests I've run with lmbench on a piii-866 showed no difference in
file re-read speed when forced to use a completion path via aio_complete
and an -EIOCBQUEUED return from generic_file_aio_read -- people with
slower machines might want to test this to see if we can tune it any
better.  Also, a bug fix to correct a missing call into the aio code
from the fork code is present.  This patch sets things up for making
generic_file_aio_read actually asynchronous.

22 years ago[PATCH] readv/writev speedup
Andrew Morton [Fri, 13 Sep 2002 12:57:02 +0000 (05:57 -0700)]
[PATCH] readv/writev speedup

This is Janet Morgan's patch which converts the readv/writev code
to submit all segments for IO before waiting on them, rather than
submitting each segment separately.

This is a critical performance fix for O_DIRECT reads and writes.
Prior to this change, O_DIRECT vectored IO was forced to wait for
completion against each segment of the iovec rather than submitting all
segments and waiting on the lot.  ie: for ten segments, this code will
be ten times faster.

There will also be moderate improvements for buffered IO - smaller code
paths, plus writev() only takes i_sem once.

The patch ended up quite large unfortunately - turned out that the only
sane way to implement this without duplicating significant amounts of
code (the generic_file_write() bounds checking, all the O_DIRECT
handling, etc) was to redo generic_file_read() and generic_file_write()
to take an iovec/nr_segs pair rather than `buf, count'.

New exported functions generic_file_readv() and generic_file_writev()
have been added:

ssize_t generic_file_readv(struct file *filp, const struct iovec *iov,
                          unsigned long nr_segs, loff_t *ppos);
ssize_t generic_file_writev(struct file *file, const struct iovec *iov,
                          unsigned long nr_segs, loff_t * ppos);

If a driver does not use these in their file_operations then they will
continue to use the old readv/writev code, which sits in a loop calling
calls fops->read() or fops->write().

ext2, ext3, JFS and the blockdev driver are currently using this
capability.

Some coding cleanups were made in fs/read_write.c.  Mainly:

- pass "READ" or "WRITE" around to indicate the diretion of the
  operation, rather than the (confusing, inverted)
  VERIFY_READ/VERIFY_WRITE.

- Use the identifier `nr_segs' everywhere to indicate the iovec
  length rather than `count', which is often used to indicate the
  number of bytes in the syscall.  It was confusing the heck out of me.

- Some cleanups to the raw driver.

- Some additional generality in fs/direct_io.c: the core `struct dio'
  used to be a "populate-and-go" thing.  Janet has broken that up so
  you can initialise a struct dio once, then loop around feeding it
  more file segments, then wait on completion against everything.

- In a couple of places we needed to handle the situation where we
  knew, a-priori, that the user was going to get a short read or write.
  File size limit exceeded, read past i_size, etc.  We handled that by
  shortening the iovec in-place with iov_shorten().  Which is not
  particularly pretty, but neither were the alternatives.

22 years ago[PATCH] NMI watchdog SMP fix
Ingo Molnar [Fri, 13 Sep 2002 12:28:16 +0000 (05:28 -0700)]
[PATCH] NMI watchdog SMP fix

This makes NMIs work - otherwise they go to CPU 0 only and any hard
lockup on the other CPUs will not be detected by the nmi_watchdog.

22 years agoMerge master.kernel.org:/home/davem/BK/net-2.5
Linus Torvalds [Fri, 13 Sep 2002 11:10:14 +0000 (04:10 -0700)]
Merge master.kernel.org:/home/davem/BK/net-2.5
into home.transmeta.com:/home/torvalds/v2.5/linux

22 years agoMerge master.kernel.org:/home/davem/BK/sparc-2.5
Linus Torvalds [Fri, 13 Sep 2002 11:05:50 +0000 (04:05 -0700)]
Merge master.kernel.org:/home/davem/BK/sparc-2.5
into home.transmeta.com:/home/torvalds/v2.5/linux

22 years ago[LLC]: Fix build bustage.
David S. Miller [Fri, 13 Sep 2002 09:19:00 +0000 (02:19 -0700)]
[LLC]: Fix build bustage.

22 years agoinclude/asm-sparc/hardirq.h: Fix comment.
Skip Ford [Fri, 13 Sep 2002 08:50:03 +0000 (01:50 -0700)]
include/asm-sparc/hardirq.h: Fix comment.

22 years agonet/ipv4/ip_options.c: IPOPT_END padding needs to increment optptr.
Jeff DeFouw [Fri, 13 Sep 2002 08:47:55 +0000 (01:47 -0700)]
net/ipv4/ip_options.c: IPOPT_END padding needs to increment optptr.

22 years agoMerge nuts.ninka.net:/home/davem/src/BK/llc-2.5
David S. Miller [Fri, 13 Sep 2002 08:46:25 +0000 (01:46 -0700)]
Merge nuts.ninka.net:/home/davem/src/BK/llc-2.5
into nuts.ninka.net:/home/davem/src/BK/net-2.5

22 years ago[SPARC]: Add sys_exit_group syscall entries.
David S. Miller [Fri, 13 Sep 2002 08:45:06 +0000 (01:45 -0700)]
[SPARC]: Add sys_exit_group syscall entries.

22 years agoMerge master.kernel.org:/home/acme/BK/llc-2.5
David S. Miller [Fri, 13 Sep 2002 08:41:06 +0000 (01:41 -0700)]
Merge master.kernel.org:/home/acme/BK/llc-2.5
into nuts.ninka.net:/home/davem/src/BK/llc-2.5

22 years ago[SPARC]: Add kmap_atomic_to_page.
David S. Miller [Fri, 13 Sep 2002 08:36:21 +0000 (01:36 -0700)]
[SPARC]: Add kmap_atomic_to_page.

22 years ago[SPARC]: Add irqs_disabled.
David S. Miller [Fri, 13 Sep 2002 08:35:52 +0000 (01:35 -0700)]
[SPARC]: Add irqs_disabled.

22 years ago[SPARC]: Update for tv_nsec in xtime.
David S. Miller [Fri, 13 Sep 2002 08:35:11 +0000 (01:35 -0700)]
[SPARC]: Update for tv_nsec in xtime.

22 years ago[SPARC]: Add is_atomic.
David S. Miller [Fri, 13 Sep 2002 07:56:50 +0000 (00:56 -0700)]
[SPARC]: Add is_atomic.

22 years ago[SPARC]: Add rwlock_is_locked.
David S. Miller [Fri, 13 Sep 2002 07:55:28 +0000 (00:55 -0700)]
[SPARC]: Add rwlock_is_locked.

22 years agoarch/sparc/kernel/check_asm.sh: Handle output from newer versions of GCC.
David S. Miller [Fri, 13 Sep 2002 07:52:17 +0000 (00:52 -0700)]
arch/sparc/kernel/check_asm.sh: Handle output from newer versions of GCC.

22 years ago[LLC] kill sap->req()
Arnaldo Carvalho de Melo [Fri, 13 Sep 2002 07:48:47 +0000 (04:48 -0300)]
[LLC] kill sap->req()

Intermediate patch for the PF_LLC SOCK_DGRAM prim clean-up, now
PF_LLC is prims in the sending side, now to hack the core to
not use prims to send to PF_LLC.

This also fixes a skb leak on llc_sap_state_process.

22 years agoMerge nuts.ninka.net:/home/davem/src/BK/zaitcev-2.5
David S. Miller [Fri, 13 Sep 2002 07:47:42 +0000 (00:47 -0700)]
Merge nuts.ninka.net:/home/davem/src/BK/zaitcev-2.5
into nuts.ninka.net:/home/davem/src/BK/sparc-2.5

22 years agoarch/sparc64/defconfig: Update.
David S. Miller [Fri, 13 Sep 2002 07:46:43 +0000 (00:46 -0700)]
arch/sparc64/defconfig: Update.

22 years ago[SPARC64]: Add rwlock_is_locked and in_atomic.
David S. Miller [Fri, 13 Sep 2002 07:45:37 +0000 (00:45 -0700)]
[SPARC64]: Add rwlock_is_locked and in_atomic.

22 years ago[SPARC]: Update ide headers. WARNING: this is known broken, fixes coming from Jens...
David S. Miller [Fri, 13 Sep 2002 07:45:06 +0000 (00:45 -0700)]
[SPARC]: Update ide headers.  WARNING: this is known broken, fixes coming from Jens Axboe.
- Jens needs to seperate out the IN/OUT macros to seperate what accesses
are to the IDE_DATA register and the rest.  On big-endian platforms
the IDE_DATA register should be accessed in big-endian for it to all
work out correctly or at least be compatible with the behavior existing
before the IDE platform macro interface changes in 2.5.x

22 years ago[SPARC64]: Delete do_gettimeofday asm.
David S. Miller [Fri, 13 Sep 2002 07:42:56 +0000 (00:42 -0700)]
[SPARC64]: Delete do_gettimeofday asm.

22 years ago[SPARC64]: timespecs now have tv_nsec in place of tv_usec.
David S. Miller [Fri, 13 Sep 2002 07:42:30 +0000 (00:42 -0700)]
[SPARC64]: timespecs now have tv_nsec in place of tv_usec.

22 years ago[SPARC]: pcibios_enable_device has new mask argument.
David S. Miller [Fri, 13 Sep 2002 07:41:37 +0000 (00:41 -0700)]
[SPARC]: pcibios_enable_device has new mask argument.

22 years ago[SPARC]: Catchup with signal infrastructure changes.
David S. Miller [Fri, 13 Sep 2002 07:41:02 +0000 (00:41 -0700)]
[SPARC]: Catchup with signal infrastructure changes.

22 years agokernel/signal.c: Not all systems have SIGSTKFLT.
David S. Miller [Fri, 13 Sep 2002 07:38:44 +0000 (00:38 -0700)]
kernel/signal.c: Not all systems have SIGSTKFLT.

22 years ago[TIGON3]: GRC_MISC_CFG_BOARD_ID_5704CIOBE is wrong...
David S. Miller [Fri, 13 Sep 2002 06:35:51 +0000 (23:35 -0700)]
[TIGON3]: GRC_MISC_CFG_BOARD_ID_5704CIOBE is wrong...

22 years ago[PATCH] sys_exit() threading improvements, BK-curr
Ingo Molnar [Fri, 13 Sep 2002 04:36:11 +0000 (21:36 -0700)]
[PATCH] sys_exit() threading improvements, BK-curr

This implements the 'keep the initial thread around until every thread
in the group exits' concept in a different, less intrusive way, along
your suggestions.  There is no exit_done completion handling anymore,
freeing of the task is still done by wait4().  This has the following
side-effect: detached threads/processes can only be started within a
thread group, not in a standalone way.

(This also fixes the bugs introduced by the ->exit_done code, which made
it possible for a zombie task to be reactivated.)

I've introduced the p->group_leader pointer, which can/will be used for
other purposes in the future as well - since from now on the thread
group leader is always existent.  Right now it's used to notify the
parent of the thread group leader from the last non-leader thread that
exits [if the thread group leader is a zombie already].

22 years ago[PATCH] ptrace-fix-2.5.34-A2, BK-curr
Ingo Molnar [Fri, 13 Sep 2002 04:36:00 +0000 (21:36 -0700)]
[PATCH] ptrace-fix-2.5.34-A2, BK-curr

I distilled the attached fix-patch from Daniel's bigger patch - it
includes all fixes for all currently known ptrace related breakages,
which include things like bad behavior (crash) if the tracer process
dies unexpectedly.

22 years agoMerge bk://linux-input.bkbits.net/linux-input
Linus Torvalds [Fri, 13 Sep 2002 03:29:09 +0000 (20:29 -0700)]
Merge bk://linux-input.bkbits.net/linux-input
into home.transmeta.com:/home/torvalds/v2.5/linux

22 years agoMerge suse.cz:/home/vojtech/bk/linus into suse.cz:/home/vojtech/bk/input
Vojtech Pavlik [Fri, 13 Sep 2002 12:57:53 +0000 (14:57 +0200)]
Merge suse.cz:/home/vojtech/bk/linus into suse.cz:/home/vojtech/bk/input

22 years agoMerge http://ppc.bkbits.net/for-linus-ppc64
Linus Torvalds [Fri, 13 Sep 2002 03:21:33 +0000 (20:21 -0700)]
Merge http://ppc.bkbits.net/for-linus-ppc64
into home.transmeta.com:/home/torvalds/v2.5/linux

22 years agoMerge samba.org:/scratch/anton/linux-2.5
Anton Blanchard [Sat, 14 Sep 2002 09:00:31 +0000 (19:00 +1000)]
Merge samba.org:/scratch/anton/linux-2.5
into samba.org:/scratch/anton/linux-2.5_ppc64drivers

22 years agoppc64: UP compile fixes
Anton Blanchard [Sat, 14 Sep 2002 08:50:15 +0000 (18:50 +1000)]
ppc64: UP compile fixes

22 years agoMerge samba.org:/scratch/anton/linux-2.5
Anton Blanchard [Sat, 14 Sep 2002 07:33:02 +0000 (17:33 +1000)]
Merge samba.org:/scratch/anton/linux-2.5
into samba.org:/scratch/anton/linux-2.5_ppc64_new

22 years agoppc64: updates from Rochester
Anton Blanchard [Sat, 14 Sep 2002 07:29:11 +0000 (17:29 +1000)]
ppc64: updates from Rochester

22 years agoppc64: new pci config methods, from Todd Inglett
Anton Blanchard [Sat, 14 Sep 2002 07:27:30 +0000 (17:27 +1000)]
ppc64: new pci config methods, from Todd Inglett

22 years agoppc64: Allocate RTAS above OF, from Peter Bergner
Anton Blanchard [Sat, 14 Sep 2002 07:24:41 +0000 (17:24 +1000)]
ppc64: Allocate RTAS above OF, from Peter Bergner

22 years agoppc64: EEH update from Todd Inglett
Anton Blanchard [Sat, 14 Sep 2002 07:22:21 +0000 (17:22 +1000)]
ppc64: EEH update from Todd Inglett

22 years agoppc64: updates from Rochester
Anton Blanchard [Sat, 14 Sep 2002 07:21:25 +0000 (17:21 +1000)]
ppc64: updates from Rochester

22 years agoppc64: add in_atomic
Anton Blanchard [Sat, 14 Sep 2002 06:39:42 +0000 (16:39 +1000)]
ppc64: add in_atomic

22 years agoppc64: DISCONTIGMEM updates, rework to be like x86 version
Anton Blanchard [Sat, 14 Sep 2002 06:36:33 +0000 (16:36 +1000)]
ppc64: DISCONTIGMEM updates, rework to be like x86 version

22 years agoppc64: xtime.tv_nsec fixes
Anton Blanchard [Sat, 14 Sep 2002 06:13:20 +0000 (16:13 +1000)]
ppc64: xtime.tv_nsec fixes

22 years agoMerge suse.cz:/home/vojtech/bk/linus into suse.cz:/home/vojtech/bk/input
Vojtech Pavlik [Fri, 13 Sep 2002 01:21:24 +0000 (03:21 +0200)]
Merge suse.cz:/home/vojtech/bk/linus into suse.cz:/home/vojtech/bk/input

22 years agoI needed this small patch if i8042.c is built as a module. Franz.
Franz Sirl [Fri, 13 Sep 2002 01:16:06 +0000 (03:16 +0200)]
I needed this small patch if i8042.c is built as a module. Franz.
Exporting kbd_pt_regs in keyboard.c.

22 years agoMerge samba.org:/scratch/anton/linux-2.5
Anton Blanchard [Thu, 12 Sep 2002 20:33:51 +0000 (06:33 +1000)]
Merge samba.org:/scratch/anton/linux-2.5
into samba.org:/scratch/anton/linux-2.5_ppc64_new

22 years ago[TIGON3]: Add 5704 support.
David S. Miller [Thu, 12 Sep 2002 19:39:03 +0000 (12:39 -0700)]
[TIGON3]: Add 5704 support.

22 years ago[LLC] save sockaddr_llc info in connection packets
Arnaldo Carvalho de Melo [Thu, 12 Sep 2002 19:08:36 +0000 (16:08 -0300)]
[LLC] save sockaddr_llc info in connection packets

Also only unassign the sock from the sap if the socket
is not zapped, because autobind can fail, leaving it
unassigned...

Noticed with llcping/llcpingd from Jay, that I'm using
now to test PF_LLC SOCK_DGRAM (xid, test, ui).

Also add more debugging calls, disabled by default in
mainline.

22 years agoMerge nuts.ninka.net:/home/davem/src/BK/network-2.5
David S. Miller [Thu, 12 Sep 2002 15:59:17 +0000 (08:59 -0700)]
Merge nuts.ninka.net:/home/davem/src/BK/network-2.5
into nuts.ninka.net:/home/davem/src/BK/net-2.5

22 years ago[TIGON3]: Use spin_lock_irqsave in tg3_interrupt, fixes SMP hang.
David S. Miller [Thu, 12 Sep 2002 13:37:06 +0000 (06:37 -0700)]
[TIGON3]: Use spin_lock_irqsave in tg3_interrupt, fixes SMP hang.

22 years ago[LLC] remove unsupported flowcontrol prim bits
Arnaldo Carvalho de Melo [Thu, 12 Sep 2002 12:44:01 +0000 (09:44 -0300)]
[LLC] remove unsupported flowcontrol prim bits

22 years ago[NAPI]: Set SCHED before dev->open, clear if fails. Restore netif_running check...
David S. Miller [Thu, 12 Sep 2002 12:11:23 +0000 (05:11 -0700)]
[NAPI]: Set SCHED before dev->open, clear if fails.  Restore netif_running check to netif_rx_schedule_prep.

22 years agoChange "D: Drivers=" to "H: Handlers=" in /proc/bus/input/devices.
Brad Hards [Thu, 12 Sep 2002 11:44:57 +0000 (13:44 +0200)]
Change "D: Drivers=" to "H: Handlers=" in /proc/bus/input/devices.

22 years agoMerge
Vojtech Pavlik [Thu, 12 Sep 2002 11:19:53 +0000 (13:19 +0200)]
Merge

22 years agoThe following patch shaves a six bytes from the loaded size
Adam J. Richter [Thu, 12 Sep 2002 11:05:03 +0000 (13:05 +0200)]
The following patch shaves a six bytes from the loaded size
of pcspkr.o and another 90 elsewhere in the .o file.

22 years ago[LLC] add missing kfree_skb in llc_conn_state_process
Arnaldo Carvalho de Melo [Thu, 12 Sep 2002 10:54:19 +0000 (07:54 -0300)]
[LLC] add missing kfree_skb in llc_conn_state_process

This one fixes a skb leak in disconnection notification.

22 years ago[LLC] llc_send_disc & LLC_DISC_PRIM bites the dust
Arnaldo Carvalho de Melo [Thu, 12 Sep 2002 10:33:05 +0000 (07:33 -0300)]
[LLC] llc_send_disc & LLC_DISC_PRIM bites the dust

22 years agoFew small fixes for Q40 keyboard support.
Richard Zidlicky [Thu, 12 Sep 2002 09:46:05 +0000 (11:46 +0200)]
Few small fixes for Q40 keyboard support.

22 years agoMerge suse.cz:/home/vojtech/bk/linus into suse.cz:/home/vojtech/bk/input
Vojtech Pavlik [Thu, 12 Sep 2002 09:39:10 +0000 (11:39 +0200)]
Merge suse.cz:/home/vojtech/bk/linus into suse.cz:/home/vojtech/bk/input

22 years ago[PATCH] md - Fix problems with freeing gendisk in md.c
Neil Brown [Thu, 12 Sep 2002 08:44:25 +0000 (01:44 -0700)]
[PATCH] md - Fix problems with freeing gendisk in md.c

md currently tries to set_capacity() *after* freeing
the gendisk structure.

It also frees the gendisk even when switching to read-only.

That patch open-codes free_mddev (which is only called once)
and cleans all this up.

22 years ago[PATCH] kNFSd 16: Remove per-client list of exports.
Neil Brown [Thu, 12 Sep 2002 08:43:34 +0000 (01:43 -0700)]
[PATCH] kNFSd 16: Remove per-client list of exports.

This is used:
  to iterate all exports when making /proc/fs/nfs/exports
  to find all exports of a client to unexport them.

The first can just as easily be done by iterating the export_table
hash table.

The second is very rarely called and can be done by iterating the
hash table looking for exports for the given client.

22 years ago[PATCH] kNFSd 15: Unite per-client export key hash tables.
Neil Brown [Thu, 12 Sep 2002 08:43:16 +0000 (01:43 -0700)]
[PATCH] kNFSd 15: Unite per-client export key hash tables.

Instead of a separate hash table per client we now
have one hash table which includes the client in the key.

22 years ago[PATCH] kNFSd 14: Filehandle lookup makes use of new export table structure.
Neil Brown [Thu, 12 Sep 2002 08:42:59 +0000 (01:42 -0700)]
[PATCH] kNFSd 14: Filehandle lookup makes use of new export table structure.

Filehandle lookup currently breaks out the interesting pieces of
a filehandle and passes them to exp_get or exp_get_fsid, which put the
pieces back into a filehandle fragment.

We define a new interface "exp_find" which does a lookup based on
a filehandle fragment to avoid this double handling.

In the process, common code in exp_get_key and exp_get_fsid_key is united
into exp_find_key.

Also, filehandle composition now uses the mk_fsid_v? inline functions.

22 years ago[PATCH] kNFSd 13: Separate out the multiple keys in the export hash table.
Neil Brown [Thu, 12 Sep 2002 08:42:43 +0000 (01:42 -0700)]
[PATCH] kNFSd 13: Separate out the multiple keys in the export hash table.

Currently each entry in the export table had two hash chains
going through it, one for hash-by-dev/ino,  One for hash-by-fsid.
This is contrary to the goal of a simple hash table structure.

The two hash-tables per client are replace by one which stores 'exp_key's
which contain the key (as a file handle fragment) and a pointer to the
real export entry.

The export entries are then all stored in a single hash table indexed
by client+vfsmount+dentry;

22 years ago[PATCH] kNFSd 12: Change exp_parent to talk directory tree, not hash table.
Neil Brown [Thu, 12 Sep 2002 08:42:25 +0000 (01:42 -0700)]
[PATCH] kNFSd 12: Change exp_parent to talk directory tree, not hash table.

Currently get_parent (needed to find the exportpoint
above a given dentry) walks the hash table of export points
checking each with is_subdir.  Now it walks up the d_parent
link checking each for membership in the hashtable.

nfsd_lookup currently does that walk too (when crossing
a mountpoint backwards) so the code gets unified.

This approach makes more sense as we move towards a cache
for export information that can be filled on demand.
It also assumes less about the hash table (which will change).

22 years ago[PATCH] kNFSd 11: Remove problematic "security" checks when NFS exporting.
Neil Brown [Thu, 12 Sep 2002 08:42:09 +0000 (01:42 -0700)]
[PATCH] kNFSd 11: Remove problematic "security" checks when NFS exporting.

The nfs server currently doesn't allow you to export both a
directory and an ancestor of that directory on the same filesystem.

This check is more of a problem than a solution and can be
done in user-space if needed, so it is removed.

The potential for a security problem is because the files
below the lower directory could be accessed as though it were under
either of the export points, and so the access control that is
applied might not be what is expected (by the nieve admin).

e.g.  export /a as readwrite and /a/b as readonly.  Then a/b/c
can be accessed readwrite as it is in /a which might not be the
intend.  Altering the user to this can be done in userspace though.

The current restriction also stops exporting / as readonly and
/tmp as read-write which some people want to do.  Providing
/tmp is also exported subtree_check (the default) there is no
security issue here.

22 years ago[PATCH] kNFSd 10: Discard ex_dev and ex_ino from svc_export
Neil Brown [Thu, 12 Sep 2002 08:41:52 +0000 (01:41 -0700)]
[PATCH] kNFSd 10: Discard ex_dev and ex_ino from svc_export

They can be deduced from ex_dentry