1. 19 Jan, 2004 40 commits
    • Linus Torvalds's avatar
      Make sure we don't access "cmd" in ide-scsi after having · 4d53a003
      Linus Torvalds authored
      started the command - it may not exist any more.
      
      In particular, load the host early in order to do proper
      locking without having to access the command structure later.
      
      Noted by Andries Brouwer.
      4d53a003
    • Linus Torvalds's avatar
      Merge bk://kernel.bkbits.net/davem/sparc-2.6 · d0365251
      Linus Torvalds authored
      into home.osdl.org:/home/torvalds/v2.5/linux
      d0365251
    • Paul Mackerras's avatar
      [PATCH] sort exception tables · 35b93751
      Paul Mackerras authored
      This patch arranges for the exception tables to be sorted on most
      architectures.  It sorts the main kernel exception table on startup
      and the module exception tables when they get loaded.  The main table
      is sorted reasonably early - just after kmem_cache_init - but that
      could be moved even earlier if necessary.
      
      There is now a lib/extable.c which includes the sort_extable()
      function from arch/ppc/mm/extable.c and the search_extable() function
      from arch/i386/mm/extable.c, which had been copied to many
      architectures.  On many architectures, arch/$(ARCH)/mm/extable.c
      became empty and so I have removed it.
      
      There are four architectures which do things differently from i386:
      alpha, ia64, sparc and sparc64.  Alpha and ia64 store the offset from
      the offset from the exception table entry to the instruction, and
      sparc and sparc64 have range entries in the table.  For those
      architectures I have added empty sort_extable functions.  The
      maintainers for those architectures can implement something better if
      they care to.  As it is they are no worse off than before.
      
      Although it is a moderately sizable patch, it ends up with a net
      reduction of 377 lines in the size of the kernel source. :)
      
      I have tested this on x86 and ppc with a module that uses __get_user
      in an init function, deliberately laid out to get the exception table
      out of order, and it works (whereas it oopsed without this patch).
      35b93751
    • Andrew Morton's avatar
      [PATCH] Restore missing ppc64 hash_low.S file · d35e9aba
      Andrew Morton authored
      This went missing somewhere.  Here's a patch which puts it back.
      d35e9aba
    • Bartlomiej Zolnierkiewicz's avatar
      [PATCH] pdc202xx_old.c: sanitize 66MHz clock use · f154cb92
      Bartlomiej Zolnierkiewicz authored
      Sanitize 66MHz clock use: "enable" 66MHz clock before starting UDMA3/4/5
      read/write transfer and "disable" it after finishing transfer.
      
      - fixes timings for non-UDMA3/4/5 operations (correct 33MHz timings are used)
      
      - allows using UDMA3/4/5 modes on a capable drive even if non-UDMA3/4/5 drive
        is present on the same channel
      
      - fixes corner case when one drive on the channel was using UDMA66/100 + LBA48
        (so clock was enabled/disabled for each read/write) and other one was using
        UDMA66/100 + LBA28, it could happen that request on LBA48 drive disabled
        66MHz clock and it was not enabled for the next transfer on LBA28 drive
      f154cb92
    • Bartlomiej Zolnierkiewicz's avatar
      [PATCH] pdc202xx_old.c: fix enabling 66MHz clock for modes > UDMA2 · 749949ea
      Bartlomiej Zolnierkiewicz authored
      drive->id is now always present even if no device is attached,
      therefore check for drive->present instead.
      749949ea
    • Bartlomiej Zolnierkiewicz's avatar
      [PATCH] pdc202xx_old.c: fix PIO autotuning · 4a59db4e
      Bartlomiej Zolnierkiewicz authored
      This fixes bugzilla bug #1431.
      
      Always tune controller PIO timings.  This fixes lockup during PIO access
      (ie. 'cat /proc/ide/hda/identify') when Promise BIOS is disabled.
      4a59db4e
    • Linus Torvalds's avatar
      Merge bk://kernel.bkbits.net/gregkh/linux/i2c-2.6 · e5392b30
      Linus Torvalds authored
      into home.osdl.org:/home/torvalds/v2.5/linux
      e5392b30
    • Linus Torvalds's avatar
      Merge bk://linux-scsi.bkbits.net/scsi-for-linus-2.6 · 56660d5e
      Linus Torvalds authored
      into home.osdl.org:/home/torvalds/v2.5/linux
      56660d5e
    • Linus Torvalds's avatar
      Merge bk://kernel.bkbits.net/gregkh/linux/driver-2.6 · dfb754ee
      Linus Torvalds authored
      into home.osdl.org:/home/torvalds/v2.5/linux
      dfb754ee
    • Linus Torvalds's avatar
      This removes the old Eicon ISDN driver. · d52531b8
      Linus Torvalds authored
      The config entries etc were already removed earlier.
      d52531b8
    • Andrew Morton's avatar
      [PATCH] reiserfs v3 should throttle writers · f69c2d56
      Andrew Morton authored
      From: Chris Mason <mason@suse.com>
      
      The v3 reiserfs_file_write func doesn't do any write throttling, which
      leads to a variety of problems.  Here's a patch that makes
      reiserfs_file_write call balance_dirty_pages_ratelimited, and exports that
      func for module usage.
      f69c2d56
    • Andrew Morton's avatar
      [PATCH] video-buf.c cleanup · e94aaae6
      Andrew Morton authored
      Remove now-unused 2.4 back-compat code.
      e94aaae6
    • Andrew Morton's avatar
      [PATCH] work around gcc bug in bitmap.c · 0229cc25
      Andrew Morton authored
      gcc miscompiles this. Scary.
      0229cc25
    • Andrew Morton's avatar
      [PATCH] uninline bitmap functions · 7685e7ed
      Andrew Morton authored
      - A couple of them are using alloca (via DECLARE_BITMAP) and this generates
        a cannot-inline warning with -Winline.
      
      - These functions are too big to inline anwyay.
      7685e7ed
    • Andrew Morton's avatar
      [PATCH] Remove CLONE_DETACHED · 8ce5870d
      Andrew Morton authored
      From: Andries.Brouwer@cwi.nl
      
      Remove obsolete CLONE_DETACHED
      8ce5870d
    • Andrew Morton's avatar
      [PATCH] kbuild: Maintainers update · 8883639b
      Andrew Morton authored
      From: Sam Ravnborg <sam@ravnborg.org>
      
      Modify MAINTAINERS to reflect the reality in maintainership for kbuild.
      This is ack'ed with Michael Elizabeth Chastain and Kai Germaschewski.
      
      I removed the list and web-site since they are not actively used today.
      8883639b
    • Andrew Morton's avatar
      [PATCH] ALI M1533 audio hang fix · 22d73219
      Andrew Morton authored
      From: risto.sandvik@helsinki.fi
      
      Everything freezes when trying to play sounds using the alsa driver opl3sa2
      (kernel supplied or 1.0.0rc2) on an Acer Extensa series laptop with the Ali
      M1533 PCI to ISA bridge.  Problem exists both in the 2.6 and 2.4 series of
      kernels.
      
      Adding AL_M1533 to drivers/pci/quirks.c fixes the problem for both.  This has
      been a known problem since 2.2.x (see
      http://www.mfn.unipmn.it/~sitta/linux503.html)
      22d73219
    • Andrew Morton's avatar
      [PATCH] AFS upgrade · 2244b109
      Andrew Morton authored
      From: David Howells <dhowells@redhat.com>
      
      Here's a patch to improve the AFS linux support. It:
      
       (1) Includes Pete's patch to skip the colon in the volume name, compile
           directly into the kernel, and not try to access non-existent caching
           routines.
      
       (2) Changes if (...) BUG() to BUG_ON()
      
       (3) Gets rid of typedefs.
      
       (4) Changes list_for_each() into list_for_each_entry().
      
       (5) Adds more whitespace and wraps lines to please the CodingStyle sticklers.
      2244b109
    • Andrew Morton's avatar
      [PATCH] rxrpc update · ae450eb1
      Andrew Morton authored
      From: David Howells <dhowells@redhat.com>
      
      Here's a patch to fix some bugs in my RxRPC code, including the fix for the
      transport initialisation failure recovery spotted by Pete Zaitcev.
      
      It also inserts some extra spaces in a few places.
      ae450eb1
    • Andrew Morton's avatar
      [PATCH] sgiioc4.c cleanup weak symbol and error numbers · b6c06e02
      Andrew Morton authored
      From: Jes Sorensen <jes@trained-monkey.org>
      
      The included patch removes the usage of weak symbols from sgiioc4.c now
      that we have the Kconfig issue sorted as well as cleans up the error no
      handling (instead of return 1 on error) and adds a check for the return
      value on snia_pci_endian_set as suggested by Christoph.
      b6c06e02
    • Andrew Morton's avatar
      [PATCH] remove spurious strdup · ddb89db6
      Andrew Morton authored
      From: James Morris <jmorris@redhat.com>
      
      AFS has an unused strdup() implementation.
      ddb89db6
    • Andrew Morton's avatar
      [PATCH] rq_for_each_bio fix · 6c5703d5
      Andrew Morton authored
      From: Xavier Bestel <xavier.bestel@free.fr>
      
      Within the body of this macro we are accessing rq->bio, but `bio' is an arg
      to the macro.  If someone uses this macro with some variable which is not
      named `bio' it won't compile.
      
      So use a more-likely-to-be-unique identifier for the macro.
      6c5703d5
    • Andrew Morton's avatar
      [PATCH] cleanup single_open usage in dma.c · 489a867c
      Andrew Morton authored
      From: Jeff Muizelaar <muizelaar@rogers.com>
      
      The attached patch lets the seq_file api take care of buffer allocation
      instead of doing it by hand.
      489a867c
    • Andrew Morton's avatar
      [PATCH] ppc cond_syscall fix · efe067fa
      Andrew Morton authored
      From: Matt Mackall <mpm@selenic.com>
      
      Experimenting with trying to use cond_syscall for a few arch-specific
      syscalls, I discovered that it can't actually be used outside the file
      in which sys_ni_syscall is declared because the assembler doesn't feel
      obliged to output the symbol in that case:
      
      weak.c:
      
      #define cond_syscall(x) asm(".weak\t" #x "\n\t.set\t" #x ",sys_ni_syscall");
      cond_syscall(sys_foo);
      
      $ nm weak.o
               U sys_ni_syscall
      
      One arch (PPC) is apparently trying to use cond_syscall this way
      anyway, though it's probably never been actually tested as the above
      test was done on a PPC.
      
      After trying a bunch of tricks to get it to work nicely, I decided
      there are basically two alternatives: make weak versions of
      sys_ni_syscall wherever they're wanted or put the arch-specific
      cond_syscalls in kernel/sys.c where sys_ni_syscall is defined.
      
      The former approach is a bit crufty and doesn't actually do the right
      thing in practice as you'll get multiple copies of sys_ni_syscall in
      your final image.
      
      The latter introduces some slight arch-pollution in sys.c, but as
      arch-specific cond_syscalls aren't all that frequent, it should be
      pretty minor. So here's a patch to move the current offender to sys.c:
      efe067fa
    • Andrew Morton's avatar
      [PATCH] remove null-ilizers · 2d0630e0
      Andrew Morton authored
      From: Jes Sorensen <jes@trained-monkey.org>
      
      The following patch removes a couple of null-ilizers of global variables.
      Not a big deal, but every byte helps in the .data segment ;-)
      2d0630e0
    • Andrew Morton's avatar
      [PATCH] fix error case in binfmt_elf.c:load_elf_interp · 31f73ed3
      Andrew Morton authored
      From: Roland McGrath <roland@redhat.com>
      
      Julie DeWandel noticed that in the error case where elf_map has failed,
      load_elf_interp will (at the out_close: label) return the `error' variable,
      but that will contain the result of a prior operation and not the error
      number from elf_map.
      31f73ed3
    • Andrew Morton's avatar
      [PATCH] isapnp modem addition · 3d122f30
      Andrew Morton authored
      From: David Sanders <linux@sandersweb.net>
      
      Patch adds support for another pnp modem in 2.6 kernel.
      3d122f30
    • Andrew Morton's avatar
      [PATCH] setscheduler fix · 22770def
      Andrew Morton authored
      From: Joe Korty <joe.korty@ccur.com>
      
      task_running(rq,p) is equivalent to (rq->curr == p) only for some
      architectures.
      22770def
    • Andrew Morton's avatar
      [PATCH] sysrq_key_table_key2index() fixlets · 8ef1b7ac
      Andrew Morton authored
      - It's using & where it meant to use &&.  (Randy Dunlap)
      
      - It has two callsites - uninline it.
      8ef1b7ac
    • Andrew Morton's avatar
      [PATCH] if ... BUG() -> BUG_ON() · f598fb8d
      Andrew Morton authored
      From: Adrian Bunk <bunk@fs.tum.de>
      
      four months ago, Rolf Eike Beer <eike-kernel@sf-tec.de> sent a patch
      against 2.6.0-test5-bk1 that converted several if ...  BUG() to BUG_ON()
      
      This might in some cases result in slightly faster code because BUG_ON()
      uses unlikely().
      f598fb8d
    • Andrew Morton's avatar
      [PATCH] make gcc 3.4 compilation work · fd2ac4b2
      Andrew Morton authored
      From: David Mosberger <davidm@napali.hpl.hp.com>
      
      With gcc-3.4 we need "attribute((used))" declarations to get "make
      modules_install" to work.
      
      Otherwise these sections get dropped from the final image (I assume).
      fd2ac4b2
    • Andrew Morton's avatar
      [PATCH] Arrange for EFI-related code to be compiled away · ce65cade
      Andrew Morton authored
      From: David Mosberger <davidm@napali.hpl.hp.com>
      
      There is some EFI-related code which is present in the ia64 build but is not
      needed: variable efi_enabled is always zero.
      
      The patch fiddles with the efi_enabled definition to arrange for
      `efi_enabled' to be constant zero or constant one in those situations where
      this can be guaranteed.
      ce65cade
    • Andrew Morton's avatar
      [PATCH] ext3: fix determination of inode journalling mode · d91341a9
      Andrew Morton authored
      The test for whether an inode is using journalled, ordered or writeback data
      is incorrect and can lead to ext3_set_aops() giving the inode the wrong set
      of address_space_operations.  Fix.  (Spotted by Jan Kara).
      d91341a9
    • Andrew Morton's avatar
      [PATCH] Add bdev private field · 7766a93b
      Andrew Morton authored
      From: Christoph Hellwig <hch@lst.de>
      
      Currently xfs has a per-bdev (and XFS filesystem uses up to three underlying
      block devices) object that Al complained about loudly that it should be gone.
      
      But for that to happen without rewriting half of XFS (and changing layering
      in a way that we don't really want) we need an additional fs-private variable
      in struct block_device.
      7766a93b
    • Andrew Morton's avatar
      [PATCH] tmpfs readdir does not update dir atime · 175770e5
      Andrew Morton authored
      From: mark@borgerding.net
      
      Access times of tmpfs dirs do not get updated on readdir.  This can cause
      empty dirs to get tmpwatch'd too early, b/c atime never changes even though
      the dir is in use.
      175770e5
    • Andrew Morton's avatar
      [PATCH] Fix statically declare FIXMAPs · eb4f6fb9
      Andrew Morton authored
      From: Anton Blanchard <anton@samba.org>, me.
      
      Two uses of the FIXADDR_USER_START/END things are problematic:
      
      a) ppc64 wants the FIXADDR area to be at a different location on 32bit and
         64bit tasks.  On 32bit we want it just below 4GB but that gets in the way
         on 64bit.  By putting both right at -(some small amount) we can also use
         some ppc tricks to get there real quickly (single instruction branches).
      
      b) We assume that FIXADDR_USER_START and FIXADDR_USER_END are constants.
         This breaks the UML build.
      
      Fixes:
      
      - Call it all gate. We currently have half the stuff called fixmap and
        the other gate, lets be consistent.
      
      - Create in_gate_area(), get_gate_vma() and use it in both places
      
      - Provide defaults for in_gate_area/get_gate_vma, allowing an arch to
        override it. (I used CONFIG_* but am open to better suggestions here)
      
      - The /proc/pid/maps vma wasnt marked readable but the get_user
        vma was. That sounds suspicious to me, they are now both the same VMA
        and so have the same (read,exec) permissions
      eb4f6fb9
    • Andrew Morton's avatar
      [PATCH] Alpha: make prefetch_spinlock() a no-op on UP · 3ab88352
      Andrew Morton authored
      From: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
      
      When CONFIG_SMP is not set, spinlock_t is an empty structure, so its
      address has arbitrary alignment.
      
      The prefetch instructions with unaligned address don't have visible side
      effects on alphas with SRM console (except performance degradation) - the
      PALcode handles unaligned traps caused by prefetch instructions internally.
      However, on old AlphaBIOS/MILO boxes unaligned prefetch leads to unhandled
      alignment trap and kernel panic.
      3ab88352
    • Andrew Morton's avatar
      [PATCH] suspend/resume support for PIT · 68cfa179
      Andrew Morton authored
      From: Pavel Machek <pavel@ucw.cz>
      
      This adds proper suspend/resume support for PIT.  That means that clock are
      actually correct after suspend/resume.
      68cfa179
    • Andrew Morton's avatar
      [PATCH] fix up CPU detection in p4-clockmod · 7f6060e8
      Andrew Morton authored
      From: Dominik Brodowski <linux@dominikbrodowski.de>
      
      Too many users use the p4-clockmod cpufreq driver instead of the more
      advanced speedstep-centrino, speedstep-ich or even acpi drivers.  All of
      the latter (usually) provide voltage scaling, while the p4-clockmod driver
      only offers a variant of frequency scaling.  So, warn users if they try out
      this driver instead.
      
      Also, instead of using a local copy, use the speedstep_lib infrastructure
      for detecting the processor speed.  Adding the Pentium-M get_frequency
      function to that module only costs about 200 bytes in object size.
      7f6060e8