1. 14 Mar, 2004 4 commits
    • Linus Torvalds's avatar
      Merge bk://linux-scsi.bkbits.net/scsi-for-linus-2.6 · 180cc17d
      Linus Torvalds authored
      into ppc970.osdl.org:/home/torvalds/v2.5/linux
      180cc17d
    • Andrew Morton's avatar
      [PATCH] gcc-3.5 libata build fix · 265395f4
      Andrew Morton authored
      drivers/scsi/sata_vsc.c: In function `vsc_sata_interrupt':
      include/linux/libata.h:414: sorry, unimplemented: inlining failed in call to 'ata_host_intr': function body not available
      drivers/scsi/sata_vsc.c:187: sorry, unimplemented: called from here
      265395f4
    • Andrew Morton's avatar
      [PATCH] module unload deadlock fix · 3e4ea6c8
      Andrew Morton authored
      From: Rusty Russell <rusty@rustcorp.com.au>
      
      From: Andrea Arcangeli <andrea@suse.de>
      
      We should drop module sem before calling mod->exit, for practical reasons:
      too many module exit functions oops or hang, resulting in a permenantly held
      module sem, which blocks all module ops including lsmod.
      3e4ea6c8
    • Andrew Morton's avatar
      [PATCH] DMA: Fill gaping hole in DMA API interfaces. · 66b99421
      Andrew Morton authored
      From: "David S. Miller" <davem@redhat.com>
      
      Currently, for an existing DMA mapping, there is a way to transfer buffer
      ownership back to the cpu, yet there is no way to give it back to the device
      again explicitly.  The latter really is needed on platforms where the PCI
      subsystem does not snoop the cpu caches, MIPS is one example.
      
      Many drivers were expecting the existing DMA sync interface to handle both
      directions, which was wrong.
      
      Now, with this change, we have explicit interfaces for DMA syncing to/from
      the device and the cpu.
      66b99421
  2. 13 Mar, 2004 9 commits
    • James Bottomley's avatar
      [PATCH] Add Domain Validation to 53c700 driver · e1efdea5
      James Bottomley authored
      This simply throws out the 53c700 driver's optimistic setting of the
      best possible transport parameters and replaces it with DV
      determination.  It also adds a missing report_bus_reset() callback and
      finally does a delayed DV on device errors.
      e1efdea5
    • Andrew Morton's avatar
      [PATCH] Work around an AMD768MPX erratum · e214725f
      Andrew Morton authored
      From: Andi Kleen <ak@suse.de>
      
      This patch has been in the SuSE 2.4 kernel forever, but for some reason
      never made it mainline.
      
      It works around the infamous "only works stable when a mouse is plugged in"
      problem some AMD 768MPX Dual Athlon chipsets have.  The problem happens
      because the chipset can hang when PCI prefetch strides from a RAM page into
      the VGA text buffer.  When a PS2 mouse is plugged in the BIOS reserves a
      page before the VGA text buffer, which stops the prefetch early.
      
      This patch always reserves this page when the chipset could be AMD768MPX.
      This can be only done early in bootmem setup.  Because it's difficult to
      scan the PCI bus that early it just always reserves this page when the CPU
      is an Athlon.  Normally it should not make a difference because the BIOS
      will have reserved that page anyways when a PS/2 mouse is plugged in.
      e214725f
    • Andrew Morton's avatar
      [PATCH] md: allow assembling of partitioned arrays at boot time. · 00cf7097
      Andrew Morton authored
      From: NeilBrown <neilb@cse.unsw.edu.au>
      
      kernel parameters:
      
         raid=partitionable
           will make all auto-detected md arrays partitionable
      
         md=d....
           will assemble an array as a partitionable array.
      00cf7097
    • Andrew Morton's avatar
      [PATCH] md: use "shedule_timeout()" instead of yield() · b0b191f3
      Andrew Morton authored
      From: NeilBrown <neilb@cse.unsw.edu.au>
      
      Use "shedule_timeout()" instead of yield() as it seems to wait for less
      time.
      b0b191f3
    • Andrew Morton's avatar
      [PATCH] use wait_task_inactive() in kthread_bind() · abf1e853
      Andrew Morton authored
      From: Rusty Russell <rusty@rustcorp.com.au>
      
      Make it clear that the reason we do wait_task_inactive is because
      kthread_bind frobs with k->thread_info->cpu, which is only legal because
      the task is definitely not running.
      
      We can't use the normal migration thread code here, because it doesn't let
      us bind to cpus which are offline yet, and also because we use this to
      start the migration threads themselves.
      abf1e853
    • Andrew Morton's avatar
      [PATCH] further __KERNEL_SYSCALLS__ removal · d1dbcdee
      Andrew Morton authored
      From: Arnd Bergmann <arnd@arndb.de>
      
      Dave Jones already removed some of the useless __KERNEL_SYSCALLS__ defines
      in various files, this gets rid of almost all the others.  Replacing
      execve() is nontrivial, so I left those in for now.
      
      For all the other system calls that are currently used from inside the
      kernel, calling the sys_* function directly should always have an identical
      effect.
      d1dbcdee
    • Andrew Morton's avatar
      [PATCH] Manfred's patch to distribute boot allocations across nodes · 214b914e
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
      
      Distribute boot time memory allocations across all nodes, from Manfred
      Spraul.
      
      We want to spread memory across nodes to avoid all allocations ending
      up on node 0.
      
      Spreading boot time allocations around also helps us to avoid node 0
      becoming the hot node.
      
      I took it for a spin:
      
      buddyinfo before:
      Node 7, 0    2    1    1    0    2    1    2    1    2    1    2    741
      Node 6, 0    0    0    2    0    2    1    1    2    2    2    2   1002
      Node 5, 0    0    0    2    0    2    1    2    1    2    2    2   2006
      Node 4, 0    0    0    2    0    2    1    2    1    2    2    2   2006
      Node 3, 0    0    0    2    0    2    1    2    1    2    2    2   2006
      Node 2, 0    0    0    2    0    2    1    2    1    2    2    2   2006
      Node 1, 0    0    0    2    0    2    1    1    2    2    2    2   1002
      Node 0, 0    0   38    7    0    1    1    1    0    0    0    0   1998
      
      buddyinfo after:
      Node 7, 0    1    0    1    1    1    1    0    0    0    1    2    738
      Node 6, 0    1    0    1    1    1    0    1    0    0    2    2   1002
      Node 5, 0    0    0    1    1    1    1    0    0    0    2    2   2006
      Node 4, 0    1    0    1    0    1    1    0    0    0    2    2   2006
      Node 3, 0    0    0    1    0    1    1    0    0    0    2    2   2005
      Node 2, 0    1    0    0    0    0    0    1    0    0    2    2   2006
      Node 1, 0    2    1    1    0    1    1    1    0    0    2    2   1002
      Node 0, 0   20   45    8    3    0    1    1    1    1    0    1   2004
      
      Change in free memory due to patch:
      
      Node 7 -54.08 MB
      Node 6  -6.33 MB
      Node 5  -6.09 MB
      Node 4  -6.14 MB
      Node 3 -22.15 MB
      Node 2  -6.05 MB
      Node 1  -6.12 MB
      Node 0 107.35 MB
      
      As you can see we gained over 100MB on node 0.
      214b914e
    • Andrew Morton's avatar
      [PATCH] Use 64-bit counters for scheduler stats · 0281d847
      Andrew Morton authored
      From: Kingsley Cheung <kingsley@aurema.com>
      
      A number of scheduler counters wrap around after 47 days.  The context-switch
      counter can wrap around after considerably less time.
      
      Convert them to 64-bit values.
      0281d847
    • Andrew Morton's avatar
      [PATCH] ppc64: fix NUMA compile with large cpumasks · baf129a1
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>
      
      The recent NUMA changes fail to compile with large cpumasks, we need to use
      a temporary to get around the type checking.
      baf129a1
  3. 14 Mar, 2004 3 commits
    • Wim Van Sebroeck's avatar
      [WATCHDOG] v2.6.4 notifier_block-patches · 9e533ec6
      Wim Van Sebroeck authored
      Remove unnecessary initialization in notifier_block
      9e533ec6
    • Wim Van Sebroeck's avatar
      WATCHDOG] v2.6.4 wdt977-v0.03-patch · b52ce0ba
      Wim Van Sebroeck authored
      Version 0.03 of wdt977.c - Changes that were made are:
      * Extract the stop code in a seperate function (wdt977_stop)
      * Extract the start code in a seperate function (wdt977_start)
      * Rename kick_wdog to wdt977_keepalive for consistency
      * Extract the watchdog's status code to a seperate function (wdt977_get_status)
      * Change the way we deal with the watchdog timeout:
         Up till now we used timeoutM (in minutes) as the correct value and then
         calculated timeout as being timeoutM*60 or *timeoutM*120 (depending on
         wether or not we have the netwinder hardware bug).
      
         From now on timeout is the correct value and we calculate timeoutM out
         of it. Because of this we start with checking wether or not we have a
         correct timeout value (if not we reset it to the default value) and we
         automatically calculate timeoutM. Each time we change timeout with a
         correct timeout value, we recalculate timeoutM.
      * Extended ioctl code with WDIOC_SETOPTIONS and updated the watchdog_info structure
      * Added notifier support
      
      Code has been tested by Woody
      b52ce0ba
    • Wim Van Sebroeck's avatar
      [WATCHDOG] v2.6.4 pcwd_pci-v1.00_20040313-patch · 591095cb
      Wim Van Sebroeck authored
      Two small fixes:
      * Make cards_found a global variable so that if we remove the
        pci device we can count down.
      * If we can't find a correct I/O address for the card, then we
      should disable the card again.
      591095cb
  4. 13 Mar, 2004 4 commits
    • James Bottomley's avatar
      [PATCH] Fix removable USB drive oops · 4352438e
      James Bottomley authored
      The actual problem reported was because there wasn't a corresponding
      check on transport_classdev.class in the unregister.
      
      However, on closer inspection I also turned up a nasty thinko in the
      reference counting.  For reasons best known to the class code authors,
      class devices have to obtain their own references to the devices they're
      attached to which they release again in their .release routines, so you
      have to remember to do a get_device() in the correct place after the
      class_device_add().  I put comments in the code so that, hopefully, we
      can avoid the problem in future.
      4352438e
    • James Bottomley's avatar
      [PATCH] Add Domain Validation to the SPI transport class · b4324bc3
      James Bottomley authored
      Domain Validation is a fairly essential element to the SCSI Parallel
      Interface (although if you look very few drivers actually do it).  The
      premise is that the Parallel Bus, being a transmission line, might not
      be correctly tuned to the transfers you want do perform.  DV probes the
      parameters of the transport until it finds a setting that works (for the
      interested, see http://www.t10.org/ftp/t10/drafts/sdv/sdv-r08b.pdf)
      
      The current code employs rather simplistic DV heuristics, although those
      can be improved over time.  The change in scsi_scan.c is so that DV may
      be done easily from the slave_configure routine, which is the most
      natural place to begin.
      b4324bc3
    • Linus Torvalds's avatar
      Merge bk://gkernel.bkbits.net/net-drivers-2.5 · 9bf35f8c
      Linus Torvalds authored
      into ppc970.osdl.org:/home/torvalds/v2.5/linux
      9bf35f8c
    • Jeff Garzik's avatar
      Merge redhat.com:/spare/repo/linux-2.5 · 7db4809d
      Jeff Garzik authored
      into redhat.com:/spare/repo/net-drivers-2.5
      7db4809d
  5. 12 Mar, 2004 20 commits