1. 02 Jul, 2004 28 commits
    • Martin Schwidefsky's avatar
      [PATCH] s390: zfcp host adapter · e1bc2047
      Martin Schwidefsky authored
      From: Heiko Carstens <heiko.carstens@de.ibm.com>
      From: Andreas Herrmann <aherrman@de.ibm.com>
      From: Maxim Shchetynin <maxim@de.ibm.com>
      
      zfcp host adapter changes:
       - Exploit FC transport class and autoselect SCSI_FC_ATTRS for zfcp.
       - Fix acl download to zfcp controller.
       - Change message loglevels to make zfcp less noisy.
       - Don't wait for SBAL to finish for command aborts after a timeout
         and for logical unit or target resets.
       - Force reopen of port if link test failed.
       - Fix race between qdio_shutdown and do_QDIO.
      Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      e1bc2047
    • Martin Schwidefsky's avatar
      [PATCH] s390: network driver changes · 6e955f71
      Martin Schwidefsky authored
      From: Ursula Braun-Krahl <braunu@de.ibm.com>
      From: Frank Pavlic <pavlic@de.ibm.com>
      From: Thomas Spatzier <tspat@de.ibm.com>
      From: Peter Tiedemann <ptiedem@de.ibm.com>
      
      s390 network driver changes:
       - ctc: replace snprintf by strlcpy.
       - lcs: change info text for lcs cards from "OSA2 card" to "OSA LCS card".
       - lcs: fix alignment of lcs_cmd structure to get multicast pings working.
       - lcs: first call in_dev_put then register multicast addresses.
       - netiucv: remove unused device timer and unused flags field.
       - netiucv: include interrupt type in pathid mismatch message.
       - qeth: don't start a new kernel thread for every new ip address.
       - qeth: fix IP assist command sequence numbers.
      Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      6e955f71
    • Martin Schwidefsky's avatar
      [PATCH] s390: sclp console driver · 30257457
      Martin Schwidefsky authored
      From: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
      
      sclp console driver changes:
       - Correct handling of busy and not operational states.
      Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      30257457
    • Martin Schwidefsky's avatar
      [PATCH] s390: dasd driver changes · 04d81fff
      Martin Schwidefsky authored
      From: Horst Hummel <horst.hummel@de.ibm.com>
      From: Carsten Otte <cotte@de.ibm.com>
      From: Stefan Weinhuber <wein@de.ibm.com>
      
      dasd device driver changes:
       - Fix calculation of number of idal words needed for a channel program.
       - Fix race in i/o termination after request timeout.
       - Fix race in state change interrupt handling.
       - Fix call to BLKPG ioctl in dasd_destroy_partitions.
       - Integrate irb into dasd request to avoid kmalloc in the interrupt handler.
       - Store build clock for error recovery requests.
       - Remove unused cpu variable from dasd_ext_handler.
      Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      04d81fff
    • Martin Schwidefsky's avatar
      [PATCH] s390: comon i/o layer · 17db3da8
      Martin Schwidefsky authored
      From: Utz Bacher <utz.bacher@de.ibm.com>
      From: Cornelia Huck <cohuck@de.ibm.com>
      
      Common i/o layer changes:
       - Consolidate store channel subsystem characteristics from its three
         users (css, cmf and qdio) to a single location.
       - Always use new stipd format and move creation of global path group
         to channel subsystem init function. Add dummy init_IRQ to setup.c
         and remove requestirq.c.
       - Remove bogus CHPID_LONGS define.
       - Add more magic to catch chpids coming online again without generating
         machine checks.
       - Fix check for unsolicited interrupts. Deferred cc=1 indicates a
         solicited interrupt.
       - Fix progress indication in qdio summary bytes to avoid loosing interrupts.
       - Rename console_device to console_devno to avoid naming conflict.
      Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      17db3da8
    • Martin Schwidefsky's avatar
      [PATCH] s390: core changes · 3fb67b11
      Martin Schwidefsky authored
      From: Arnd Bergmann <arndb@de.ibm.com>
      From: Christian Bornträger <cborntra@de.ibm.com>
      From: Michael Holzheu <holzheu@de.ibm.com>
      From: Martin Schwidefsky <schwidefsky@de.ibm.com>
      
      s390 core changes:
       - Fix cpu_idle loop if /proc/sys/kernel/hz_timer is set.
       - Store correct trap indication on 64 bit for call to do_debugger_trap
         in the single stepped svc code.
       - Avoid the use of alloca in the debug feature.
       - Remove extraneous includes of linux/version.h.
       - Regenerate default configuration.
       - Mention eServer z890 in Kconfig help text.
       - Prevent gcc 3.4 from removing statically defined per cpu variables.
      Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      3fb67b11
    • Martin Schwidefsky's avatar
      [PATCH] 64 bit bug in radix-tree lookup. · 48a3a8cd
      Martin Schwidefsky authored
      The radix tree functions __lookup and __lookup_tag uses (1 << shift) in
      their index calculations.  On 64 bit systems the shift can be bigger than
      32.  The shift of an integer by more than 32 bits evaluates to zero which
      causes the lookup to fail.
      Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      48a3a8cd
    • Eric Lammerts's avatar
      [PATCH] asiliantfb fix · 03071ffe
      Eric Lammerts authored
      The init function is writing somewhere using a physical address instead of
      a virtual address.
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      03071ffe
    • Natalie Protasevich's avatar
      [PATCH] es7000 subarch update for target_cpus() · 6b9956c0
      Natalie Protasevich authored
      This is ES7000 sub arch update.  The tiny patch below fixes a bug that
      results in boot problem on all ES7000 partitions with numbers higher than
      0.  Currently, target_cpus() returns incorrect cpumask value since it
      indexes bits by the logical APIC ID, not by CPU number.  The patch affects
      only ES7000 sub arch.  It was tested extensively on the system with
      multiple partitions.
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      6b9956c0
    • Bjorn Helgaas's avatar
      [PATCH] pcdp.c needs io.h · 2823acfe
      Bjorn Helgaas authored
      Include <asm/io.h> for ioremap() declaration.
      Signed-off-by: default avatarBjorn Helgaas <bjorn.helgaas@hp.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      2823acfe
    • Antonino Daplas's avatar
      [PATCH] Another batch of fbcon fixes · 21aff035
      Antonino Daplas authored
      - Update display->vrows when fbset changes certain fields in var (such as
        color depth) but without changing the display resolution.  This might
        produce concommitant changes in other fields such as and especially
        var->yres_virtual.
      
      - Clear the FBINFO_MISC_MODECHANGEUSER flag _before_ issuing a
        notifier_call_chain().  Clearing it after the notifier_call_chain() will
        cause fbcon to go into an infinite loop.
      
      - Sanitized failure path of set_con2fb_map().
      Signed-off-by: default avatarAntonino Daplas <adaplas@pol.net>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      21aff035
    • Antonino Daplas's avatar
      [PATCH] Mode Switch in fbcon_blank() · bd8450b9
      Antonino Daplas authored
      As we've discussed in another thread, below is a diff that will do a set_par()
      as late as possible when there is KD_TEXT<->KD_GRAPHICS switch.  The set_par()
      will be forced in fbcon_resize() instead.
      
      Not sure if this has repercussions with the other drivers, but this patch
      fixed the X nv driver hanging when switching to the console.  (I believe the
      crash is actually caused by an early set_par() -- while in fbcon_blank. 
      Removing the set_par in fbcon_blank fixed the hang but caused cursor sprite
      and display corruption).
      Signed-off-by: default avatarAntonino Daplas <adaplas@pol.net>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      bd8450b9
    • Antonino Daplas's avatar
      [PATCH] Rivafb fixes · 217f511e
      Antonino Daplas authored
      The patch below fixes the following to rivafb:
      
      1 Seems that nVidia hardware has a limit on clipping coordinates that is
        also dependent on the color depth of the framebuffer.
      
      2.From Pawel Goleniowski <pawelg@dabrowa.pl>: Fix for wrong colors at 16bpp
        (RGB565).  The fix has been submitted several times in lkml and this list
        but was never applied.
      
      3 Search all I2C/DDC busses for the EDID block instead of just the first
        bus.
      
      4 Updated request_mem_region/release_mem_region to
        pci_request_regions/pci_release_regions.
      Signed-off-by: default avatarAntonino Daplas <adaplas@pol.net>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      217f511e
    • Randy Dunlap's avatar
      [PATCH] convert private ABS() to kernel's abs() · ff8787d6
      Randy Dunlap authored
      Convert private ABS() defines and callers to use abs() from linux/kernel.h.
       Builds successfully.  stv0299, riva, & sstfb modules load.
      Signed-off-by: default avatarRandy Dunlap <rddunlap@osdl.org>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      ff8787d6
    • Mika Kukkonen's avatar
      [PATCH] sparse: fix sparse in drivers/pnp/pnpbios/* · 62d10271
      Mika Kukkonen authored
        CHECK   drivers/pnp/pnpbios/core.c
      include/linux/pnpbios.h:144:5: warning: undefined preprocessor identifier 'needed'
        CC      drivers/pnp/pnpbios/core.o
        CHECK   drivers/pnp/pnpbios/bioscalls.c
      include/linux/pnpbios.h:144:5: warning: undefined preprocessor identifier 'needed'
      drivers/pnp/pnpbios/bioscalls.c:346:5: warning: undefined preprocessor identifier 'needed'
      drivers/pnp/pnpbios/bioscalls.c:361:5: warning: undefined preprocessor identifier 'needed'
      drivers/pnp/pnpbios/bioscalls.c:388:5: warning: undefined preprocessor identifier 'needed'
      drivers/pnp/pnpbios/bioscalls.c:427:5: warning: undefined preprocessor identifier 'needed'
      drivers/pnp/pnpbios/bioscalls.c:509:5: warning: undefined preprocessor identifier 'needed'
        CC      drivers/pnp/pnpbios/bioscalls.o
        CHECK   drivers/pnp/pnpbios/rsparser.c
      include/linux/pnpbios.h:144:5: warning: undefined preprocessor identifier 'needed'
        CC      drivers/pnp/pnpbios/rsparser.o
        CHECK   drivers/pnp/pnpbios/proc.c
      include/linux/pnpbios.h:144:5: warning: undefined preprocessor identifier 'needed'
      
      The fix is trivial, sparse wants the preprocessor symbol to be defined
      before use.  There was a similar fix accepted by Linus couple weeks ago.
      Patch attached.
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      62d10271
    • Mika Kukkonen's avatar
      [PATCH] sparse: fix sparse warnings in kernel/power/* · 482ce192
      Mika Kukkonen authored
        CHECK   kernel/power/swsusp.c
      kernel/power/swsusp.c:320:15: warning: expected lvalue for member dereference
      kernel/power/swsusp.c:337:15: warning: expected lvalue for member dereference
      kernel/power/swsusp.c:359:14: warning: expected lvalue for member dereference
      kernel/power/swsusp.c:925:12: warning: assignment expression in conditional
      [...]
        CHECK   kernel/power/pmdisk.c
      kernel/power/pmdisk.c:795:12: warning: assignment expression in conditional
      
      Trivial sparse fixes for two files under kernel/power. Patch attached.
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      482ce192
    • Mika Kukkonen's avatar
      [PATCH] sparse: define max kernel symbol length and clean up errors in kernel/kallsyms.c · 77e5ab66
      Mika Kukkonen authored
        CHECK   kernel/kallsyms.c
      kernel/kallsyms.c:136:7: warning: bad constant expression
      kernel/kallsyms.c:136:7: warning: bad constant expression
      kernel/kallsyms.c:136:7: warning: bad constant expression
      kernel/kallsyms.c:143:22: warning: bad constant expression
      kernel/kallsyms.c:143:22: warning: bad constant expression
      kernel/kallsyms.c:143:22: warning: bad constant expression
      
      Now the cause of sparse warnings is that it does not handle runtime array
      dimensioning (which I take it is a sparse problem), but in this particular
      case it _might_ make sense to change the runtime allocation to compile
      time, as the upper size of the array is known, because the code in
      kernel/kallsyms.c clearly uses 127 (or 128) as "magic constant" for kernel
      symbol (array) length, and in the other hand in include/linux/module.h
      there is: #define MODULE_NAME_LEN (64 - sizeof(unsigned long))
      
      The only concern is that the array become quite big (the original comment
      of it being "pretty small" no longer applies ...).  One way to help that
      would be to use buffer[] also in place of namebuf[], but that would be
      little tricky as the format string should be before the symbol name ... 
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      77e5ab66
    • George Anzinger's avatar
      [PATCH] Bugfix for CLOCK_REALTIME absolute timer · 7fe672b1
      George Anzinger authored
      As required by the standard, this patch adds to POSIX ABSOLUTE timers the
      functionality of adjusting the timer when the clock is set so that it still
      expires at the specified time (provided that time has not passed, in which
      case the timer expires immeadiatly).
      
      The standard is, IMNSOHO, a bit vague on just how repeating timers are to
      be handled so I made some choices:
      
      1) If an absolute timer is to expire every N intervals, we assume that
         the expiries should happen at those specified times after clock setting.
          I.e.  we adjust the repeat timer as well as the initial timer.  (The
         other option would be to treat the repeating timers as relative and not
         to adjust them.)
      
      2) If a clock set moves the the clock prior to the initial expiry time
         AND that time has already passed and been signaled, the current repeat
         timer is adjusted, i.e.  we DO NOT go back to the initial time and
         repeat that.  (The other option is to treat this case as a new request
         with the initial timer parameters (which by this time we have lost).)
      
      3) If time is advanced such that it appears that several expiries have
         been missed, the overrun count will reflect the misses.  (The other
         option is to not reflect this in the overrun.) At the same time, nothing
         is done to acknowledge, to the user, that we are repeating expiries when
         the clock is retarded.
      Signed-off-by: default avatarGeorge Anzinger <george@mvista.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      7fe672b1
    • Arjan van de Ven's avatar
      [PATCH] produce a warning on unchecked inode_setattr use · 84db6603
      Arjan van de Ven authored
      The patch below uses the new-in-gcc-3.4 option to generate a warning on
      unchecked results of marked functions, and applies this to the
      inode_setattr function (which based on recent bk commits HAS to be checked
      for it's return value for correct operation).  A warning looks like this:
      
      fs/ext2/inode.c:1279: warning: ignoring return value of 'inode_setattr', declared with attribute warn_unused_result
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      84db6603
    • Pavel Machek's avatar
      [PATCH] swsusp: preparation for smp support & fix device suspending · 19995e25
      Pavel Machek authored
      It fixes levels for calling driver model, puts devices into sleep before
      powering down (so that emergency parking does not happen), and actually
      introduces SMP support, but its disabled for now.  Plus noone should try to
      freeze_processes() when thats not implemented, we now BUG()s -- we do not
      want Heisenbugs.
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      19995e25
    • Matt Porter's avatar
      [PATCH] ppc32: Fix dual UICs in 4xx PIC support · 939206e7
      Matt Porter authored
      Fixes a case where we were not correctly acking the base cascade controller
      on PPC4xx.  Patch from Pavel Bartusek <pba@sysgo.com>
      Signed-off-by: default avatarMatt Porter <mporter@kernel.crashing.org>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      939206e7
    • Matt Porter's avatar
      [PATCH] ppc32: PPC4xx preempt fix · 2197b58c
      Matt Porter authored
      PPC4xx preempt fixes. Based on previous Classic PPC patch.
      Signed-off-by: default avatarTom Rini <trini@kernel.crashing.org>
      Signed-off-by: default avatarMatt Porter <mporter@kernel.crashing.org>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      2197b58c
    • Matt Porter's avatar
      [PATCH] ppc32: PPC44x defconfig update and fixes · bd77c334
      Matt Porter authored
      Update PPC44x defconfigs and some fixes.
      Signed-off-by: default avatarMatt Porter <mporter@kernel.crashing.org>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      bd77c334
    • Tom Rini's avatar
      [PATCH] ppc32: OCP for MP10x · 0c54689b
      Tom Rini authored
      Attached is the latest version of Adrian Cox's OCP patch for
      MPC107/8240/8245.  This unifies some openpic setup code, and ensures that
      the OCP devices are only added to the bus on chip variants which have them.
      
      All interested parties seem happy, and this patch is necessary to provide a
      unified I2C driver for 85xx and 107/824x.
      Signed-off-by: default avatarAdrian Cox <adrian@humboldt.co.uk>
      Signed-off-by: default avatarTom Rini <trini@kernel.crashing.org>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      0c54689b
    • Paul Mackerras's avatar
      [PATCH] ppc64: Janitor rtas_call() return variables · 0fd58fb3
      Paul Mackerras authored
      Recently I changed the return value of rtas_call() from an unsigned long to
      an int.  That patch missed a few places where we declare a variable to
      store the result from rtas_call().  This new patch changes those places to
      use an int variable instead of a long or unsigned long variable.  Linas
      Vepstas pointed this out.
      Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      0fd58fb3
    • Paul Mackerras's avatar
      [PATCH] ppc64: janitor log_rtas_error() call arguments · e1148e37
      Paul Mackerras authored
      This patch from Linas Vepstas (rediffed by me) fixes the confusing argument
      aliasing of the log_rtas_error() subroutine.
      
      This patch makes no functional changes, it just cleans up some strange
      usage.
      
      The rtas_args used to communicate with firmware are always taken from the
      paca struct, so as to keep the args at a fixed, low-memory location.  But
      the log_rtas_error() routine also took an rtas_args pointer, which it
      assumed was aliased to the paca struct.  This aliasing is both
      un-neccessary, and confusing; this patch eliminates this confusion.
      Signed-off-by: default avatarLinas Vepstas <linas@linas.org>
      Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      e1148e37
    • David Gibson's avatar
      [PATCH] ppc64: PACA cleanup · 16b004a7
      David Gibson authored
      Cleanup the PPC64 PACA structure.  It was previously a big mess of
      unecessary fields, overengineered cache layout and uninformative comments. 
      This is essentially a rewrite of include/asm-pp64/paca.h with associated
      changes elsewhere.  The patch:
      
      - Removes unused PACA fields
      
      - Removes uneeded #includes
      
      - Uses gcc attributes instead of explicit padding to get the desired
        cacheline layout, also rethinks the layout and comments accordingly.
      
      - Better comments where asm or firmware dependencies apply non-obvious
        layout constraints.
      
      - Splits up the pointless STAB structure, letting us move its elements
        independently.
      
      - Uses offsetof instead of hardcoded offset in spinlocks.
      
      - Eradicates xStudlyCaps identifiers
      
      - Replaces PACA guard page with an explicitly defined emergency stack
        (removing more than NR_CPUS pages from the initialized data segment).
      
      Cc: Paul Mackerras <paulus@samba.org>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      16b004a7
    • David Gibson's avatar
      [PATCH] ppc64: remove RTAS arguments from PACA · 78c39c9f
      David Gibson authored
      This patch removes the RTAS arguments structure on ppc64 from the PACA. 
      The args have to be in the RMO, but since we have a global spinlock for
      RTAS anyway, there's no reason to have a separate copy of the args per-CPU.
       This patch replaces the PACA field with a single instance in the global
      rtas structure.
      
      The one exception is for the rtas_stop_self() call, which can't take the
      lock, because it never returns.  But it has a fixed set of arguments, so we
      can use another global instance which is initialized at boot.
      
      This lets us remove rtas.h from paca.h, which substantially reduces overall
      #include hairiness (because paca.h is now, as it wants to be, a nice
      low-level structure-defining header which relies on very little and can
      safely be included almost anywhere).  Although it does add some noise to
      the patch, because a bunch of places relied on the indirect inclusion of
      rtas.h, or even more indirect inclusions (see the hunks applying to eeh.h
      and current.h!).
      
      Cc: Paul Mackerras <paulus@samba.org>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      78c39c9f
  2. 01 Jul, 2004 12 commits