1. 04 Apr, 2003 13 commits
    • Roland McGrath's avatar
      [PATCH] linux-2.5.66-signal-cleanup.patch · da334d91
      Roland McGrath authored
      Here is the cleanup patch I promised back in February.  Sorry it took a
      while.
      
      The effects should be purely cosmetic in 2.5.66.  However, the new
      interface for the proper way to send thread-specific of process-global
      signals from inside the kernel is needed for correct implementation of
      some fixes to timer stuff that Ulrich told me about.
      
      This cleans up some obsolete comments and macros in kernel/signal.c,
      restores send_sig_info to its original behavior, and adds a global entry
      point send_group_sig_info.  I checked all the uses of send_sig and
      send_sig_info and changed a few to send_group_sig_info.
      
      I think it would be cleanest if the whole mess of *_sig* entry points were
      reduced to two or three, but I did the change that minimized the number of
      callers I had to fix up.
      
      There should be no discernible difference, since the 2.5.66 send_sig_info
      function did group semantics for those signals by number already.  The only
      exception to that is pdeath_signal, which I guess can be any signal number
      but I deemed ought to be process-wide.
      
      I did not change any of the calls using SIGKILL, though that does have
      process-wide semantics.  There is no need to change it since SIGKILL always
      kills the whole group, though the code path for send_sig(SIGKILL,...) calls
      in multithreaded processes will be different now.
      da334d91
    • John Levon's avatar
      [PATCH] bk - fix oprofile for pm driver register · 7777d006
      John Levon authored
      OK, so I screwed up - didn't notice the late_initcall() that was
      introduced, which was obviously bogus. This one should build OK for the
      module case. I've tested insmod/rmmod alongside a mounted sysfs.
      
      I think the built-in case is OK: oprofile/ is after kernel/ in the link
      order. I tested that too.
      7777d006
    • Andrew Morton's avatar
      [PATCH] acpi compile fix · 99686994
      Andrew Morton authored
      ACPI is performing a spin_lock() on a `void *'.  That's OK when spin_lock is
      implemented via an inline function.  But when it is implemented via macros
      it causes compile-time breakage.
      
      So cast it to the right type. It really should be fixed not to use opaque
      handles, though.
      99686994
    • Corey Minyard's avatar
      [PATCH] IPMI driver version 19 release · b1ffe92e
      Corey Minyard authored
      This fixes some performance problems.  Some vendors implement firmware
      updates over IPMI, and this speeds up that process quite a bit.
      
       * Improve the "send - wait for response - send -wait for response -
         etc" performance when using high-res timers.  Before, an ~10ms delay
         would be added to each message, because it didn't restart the timer
         if nothing was happing when a new message was started.
      
       * Add some checking for leaked messages.
      b1ffe92e
    • Zwane Mwaikambo's avatar
      [PATCH] smp_call_function needs mb() · 856eeb53
      Zwane Mwaikambo authored
      We really need a memory barrier in smp_call_function(), so that the
      other cpu's get the updated value when they get IPI'd immediately
      afterwards.
      
      This seems to be true on some old (and arguably broken) hardware where
      the IPI generation and reception doesn't synchronize enough.
      856eeb53
    • Linus Torvalds's avatar
      Merge bk://kernel.bkbits.net/davem/net-2.5 · a38298ec
      Linus Torvalds authored
      into home.transmeta.com:/home/torvalds/v2.5/linux
      a38298ec
    • Stephen Hemminger's avatar
      e2635a88
    • Stephen Hemminger's avatar
    • Stephen Hemminger's avatar
    • Stephen Hemminger's avatar
      [IPV6]: ipv6 can use synchronize_net. · 2cb7b621
      Stephen Hemminger authored
      2cb7b621
    • David S. Miller's avatar
      Merge http://linux-lksctp.bkbits.net/lksctp-2.5 · 381a2af8
      David S. Miller authored
      into nuts.ninka.net:/home/davem/src/BK/net-2.5
      381a2af8
    • David S. Miller's avatar
      Merge nuts.ninka.net:/home/davem/src/BK/network-2.5 · 850e6bc2
      David S. Miller authored
      into nuts.ninka.net:/home/davem/src/BK/net-2.5
      850e6bc2
    • Rusty Russell's avatar
  2. 03 Apr, 2003 27 commits
    • Neil Brown's avatar
      [PATCH] md: Add some new lines to diagnostic printks. · 2c12e127
      Neil Brown authored
      Stops <6> appearing in middles of line and improves output.
      2c12e127
    • Neil Brown's avatar
    • Neil Brown's avatar
      becf91fc
    • David S. Miller's avatar
      Merge nuts.ninka.net:/home/davem/src/BK/sparcwork-2.5 · bd4efa73
      David S. Miller authored
      into nuts.ninka.net:/home/davem/src/BK/sparc-2.5
      bd4efa73
    • David S. Miller's avatar
    • David S. Miller's avatar
      [SPARC64]: Fix trap stack allocations so gcc-3.x builds work. · 11bef0bb
      David S. Miller authored
      1) Use PTREGS_OFF consistently
      2) Define it to allocate STACKFRAME_SZ instead of REGWIN_SZ
      3) Kill off REGWIN_SZ, replace with sizeof(struct reg_window).
      11bef0bb
    • David S. Miller's avatar
    • David S. Miller's avatar
      54f05dc4
    • Ben Collins's avatar
      [SPARC64]: Fix boot target deps. · afa82d46
      Ben Collins authored
      afa82d46
    • Linus Torvalds's avatar
      Merge bk://kernel.bkbits.net/davem/sparc-2.5 · 513230c4
      Linus Torvalds authored
      into home.transmeta.com:/home/torvalds/v2.5/linux
      513230c4
    • Linus Torvalds's avatar
      Merge bk://kernel.bkbits.net/davem/net-2.5 · 5148292f
      Linus Torvalds authored
      into home.transmeta.com:/home/torvalds/v2.5/linux
      5148292f
    • David S. Miller's avatar
      [SPARC64]: Update defconfig. · 588a4b4c
      David S. Miller authored
      588a4b4c
    • David S. Miller's avatar
    • Andrew Morton's avatar
      [PATCH] ext3 journal commit I/O error fix · 68569684
      Andrew Morton authored
      From: Hua Zhong <hzhong@cisco.com>
      
      The current ext3 totally ignores I/O errors that happened during a
      journal_force_commit time, causing user space to falsely believe it has
      succeeded, which actually did not.
      
      This patch  checks IO error during  journal_commit_transaction. and aborts
      the journal when there is I/O error.
      
      Originally I thought about reporting the error without doing aborting the
      journal, but it probably needs a new flag. Aborting the journal seems to be
      the easy way to  signal "hey sth is wrong..".
      68569684
    • Andrew Morton's avatar
      [PATCH] ext3: create a slab cache for transaction handles · c20fb5f1
      Andrew Morton authored
      ext3 allocates and frees at least one handle structure for each system call.
      kmalloc and kfree are apparent in the profiles.
      
      Adding a slab cache for these objects takes the overhead for a write() from
      1.63 microseconds down to 1.56.
      c20fb5f1
    • Andrew Morton's avatar
      [PATCH] ext3_commit_write speedup · 9aabee2e
      Andrew Morton authored
      For an appending write, ext3_commit_write() will call the expensive
      ext3_mark_inode_dirty() twice.  Once in generic_commit_write()'s extension of
      i_size and once in ext3_commit_write() itself where i_disksize is updated.
      
      But by updating i_disksize _before_ calling generic_commit_write() these can
      be piggybacked.
      
      The patch takes the overhead of a write() from 1.96 microseconds down to
      1.63.
      9aabee2e
    • Andrew Morton's avatar
      [PATCH] ext3_mark_inode_dirty() speedup · f0f46afd
      Andrew Morton authored
      ext3_mark_inode_dirty() (and several other callers) use the
      ext3_reserve_inode_write() and ext3_mark_ioc_dirty() pair for journalling an
      inode's backing block.
      
      Because ext3_reserve_inode_write() gets journalling access to the block there
      is no need for ext3_mark_iloc_dirty() to do it as well.
      
      This change reduces the overhead of a write() from 2.7 microseconds to 1.95
      on a 2.7G P4.
      f0f46afd
    • Andrew Morton's avatar
      [PATCH] Fix jbd assert failure on IO error. · 7ba93ca7
      Andrew Morton authored
      From: Stephen Tweedie <sct@redhat.com>
      
      The buffer_uptodate flag gets cleared on IO failure, and this can panic jbd
      when it tries to write such a buffer.  Relax the panic to be just a warning.
      7ba93ca7
    • Andrew Morton's avatar
      [PATCH] Add less-severe assert-failure form for ext3. · bdf6c6a6
      Andrew Morton authored
      From: Stephen Tweedie <sct@redhat.com>
      
      Add a new form of assert failure in ext3 which allows us to flag events which
      are *usually* bugs, but which can be legally triggered in the presence of IO
      failures.  Don't panic the kernel on such errors unless we've defined
      #JBD_PARANOID_IOFAIL, which will normally be set only for testing purposes.
      bdf6c6a6
    • Andrew Morton's avatar
      [PATCH] remove dparent_lock · 723c6e83
      Andrew Morton authored
      The big SMP machines are seeing quite some contention in dnotify_parent()
      (via vfs_write).  This function is hammering the global dparent_lock.
      
      However we don't actually need a global dparent_lock for pinning down
      dentry->d_parent.  We can use dentry->d_lock for this.  That is already being
      held across d_move.
      
      This patch speeds up SDET on the 16-way by 5% and wipes dnotify_parent() off
      the profiles.
      
      It also uninlines dnofity_parent().
      
      It also uses spin_lock(), which is faster than read_lock().
      
      I'm not sure that we need to take both the source and target dentry's d_lock
      in d_move.
      
      The patch also does lots of s/__inline__/inline/ in dcache.h
      723c6e83
    • Andrew Morton's avatar
      [PATCH] real_lookup race fix · 1b8910cf
      Andrew Morton authored
      From: Maneesh Soni <maneesh@in.ibm.com>
      
      Here is a patch to use seqlock for real_lookup race with d_lookup as suggested
      by Linus. The race condition can result in duplicate dentry when d_lookup
      fails due concurrent d_move in some unrelated directory.
      
      Apart from real_lookup, lookup_hash()->cached_lookup() can also fail due
      to same reason. So, for that I am doing the d_lookup again.
      
      Now we have __d_lookup (called from do_lookup() during pathwalk) and
      d_lookup which uses seqlock to protect againt rename race.
      
      dcachebench numbers (lower is better) don't have much difference on a 4-way
      PIII xeon SMP box.
      
      base-2565
      Average usec/iteration  19059.4
      Standard Deviation      503.07
      
      base-2565 + seq_lock
      Average usec/iteration  18843.2
      Standard Deviation      450.57
      1b8910cf
    • Andrew Morton's avatar
      [PATCH] exp_parent locking fixes · ec1d26ec
      Andrew Morton authored
      From: Neil Brown and myself.
      
      Don't do dput() inside read_lock().  It can sleep.
      ec1d26ec
    • Andrew Morton's avatar
      [PATCH] umsdos fixes · ca88b8e8
      Andrew Morton authored
      From: Andries.Brouwer@cwi.nl
      
      Make sure structs used by umsdos ioctls do not change size when the size of
      dev_t is changed.
      ca88b8e8
    • Andrew Morton's avatar
      [PATCH] Fix devfs' partition handling · 7ceef18f
      Andrew Morton authored
      From: Andre Landwehr <andre.landwehr@gmx.net>
      
      with / on an IDE harddisk the disks partitions do not appear in
      devfs, only the disc device. This is due to rescan_partitions
      being called twice and deleting but not re-creating the entries
      during the second call.
      
      hch has acked this.
      7ceef18f
    • Andrew Morton's avatar
      [PATCH] add vt console scrollback ioctl · 8a8e9c88
      Andrew Morton authored
      From: Samuel Thibault <Samuel.Thibault@ens-lyon.fr>
      
      There is no way for a braille device driven by brltty (userland root-owned
      daemon) to scrollback the virtual console, the only way is to use the pc
      keyboard.  A very simple TIOCLINUX ioctl meets this need (tested).
      
      Also add a command for bringing the last console to the top, as keyboard.c's
      lastcons() does when pressing alt - down arrow.
      8a8e9c88
    • Andrew Morton's avatar
      [PATCH] sync dirty pages in fadvise(FADV_DONTNEED) · 3bc17e74
      Andrew Morton authored
      This changes the fadvise(FADV_DONTNEED) operation to start async writeout of
      any dirty pages in the file.
      
      The thinking is that if the application doesn't want to use those pages in
      the future, we may as well get IO underway against them so they can be freed
      up on the next call to fadvise().
      
      The POSIX spec does not go into any detail as to whether this is the right or
      wrong behaviour.
      
      This provides a nice way for applications whihc are writing streaming data
      (the main users of fadvise) to keep the amount of dirty pagecache under
      control without having to resort to system-wide VM tuning.
      
      It also provides an "async fsync()".  If the application passes in a length
      of zero, fadvise will start async writeout of the pages, but will not
      invalidate any of the file's pagecache.
      3bc17e74
    • Andrew Morton's avatar
      [PATCH] Additional 3c980 device support · 89ef9495
      Andrew Morton authored
      From: "J.A. Magallon" <jamagallon@able.es>
      
      Adds support for a couple of 3c980 variants which are in pci.ids, but not in
      the driver.
      89ef9495