1. 09 Oct, 2003 23 commits
    • David S. Miller's avatar
      903d3abe
    • David S. Miller's avatar
      [SPARC64]: Update defconfig. · 6d0830b2
      David S. Miller authored
      6d0830b2
    • David S. Miller's avatar
    • Linus Torvalds's avatar
      Revert the process group accessor functions. They are buggy, and · 06349d9d
      Linus Torvalds authored
      cause NULL pointer references in /proc.
      
      Moreover, it's questionable whether the whole thing makes sense at all. 
      Per-thread state is good.
      
      Cset exclude: davem@nuts.ninka.net|ChangeSet|20031005193942|01097
      Cset exclude: akpm@osdl.org[torvalds]|ChangeSet|20031005180420|42200
      Cset exclude: akpm@osdl.org[torvalds]|ChangeSet|20031005180411|42211
      06349d9d
    • Paul Mundt's avatar
      [PATCH] net/sunrpc/clnt.c compile fix · 6601345f
      Paul Mundt authored
      net/sunrpc/clnt.c does not compile if RPC_DEBUG is not enabled, due to
      the fact that tk_pid is protected by RPC_DEBUG (which in turn depends on
      CONFIG_SYSCTL).
      
      The printk's that use it don't actually need to print it out at all,
      the rpc_task tag isn't really interesting here.
      
      Acked by Trond Myklebust.
      6601345f
    • Matthew Wilcox's avatar
      [PATCH] Build fixes for zoran on PA-RISC · 9d75d797
      Matthew Wilcox authored
      The Zoran driver doesn't include <asm/io.h> and thus won't compile
      on architectures where that doesn't get implicitly included through
      some other path.
      
      Add the proper includes.
      9d75d797
    • Andi Kleen's avatar
      [PATCH] Prefetch workaround for Athlon/Opteron · 9b7a76f4
      Andi Kleen authored
      This is the latest iteration of the workaround for the Athlon/Opteron
      prefetch erratum.  Sometimes the CPU would incorrectly report an
      exception on prefetch.
      
      This supercedes the previous dumb workaround of checking for AMD CPUs in
      prefetch().  That one bloated the kernel by several KB and lead to lots
      of unnecessary checks in hot paths. 
      
      Also this one handles user space faults too, so the kernel can
      effectively isolte the user space from caring about this errata.
      
      Instead it handles it in the slow path of the exception handler (the
      check is only done when the kernel would normally trigger seg fault or
      crash anyways)
      
      All the serious criticisms to the previous patches have been addressed. 
      It checks segment bases now, handles vm86 mode and avoids deadlocks when
      the prefetch exception happened inside mmap_sem.
      
      This includes review and fixes from Jamie Lokier and Andrew Morton.
      Opcode decoder based on code from Richard Brunner.
      9b7a76f4
    • Corey Minyard's avatar
      [PATCH] IPMI fixes for 2.6.0-test7 · d0a2fba8
      Corey Minyard authored
      This fixes some problems with timing calculations (primarily for ia64)
      and adds an operation to send panic strings to the IPMI event log on a
      panic.
      d0a2fba8
    • Mikael Pettersson's avatar
      [PATCH] ftape linkage error · d825dc17
      Mikael Pettersson authored
      Since 2.6.0-test6, ftape can't be configured as a built-in driver.
      test6 changed ftape-init.c to call ftape_proc_destroy() also in
      the non-MODULE case; however, ftape_proc_destroy() is only defined
      when the driver is built as a module. The result is a linkage error.
      
      This fixes this by deleting the #if MODULE around ftape_proc_destroy()'s
      definition.
      d825dc17
    • Linus Torvalds's avatar
      Revert floppy driver dependence on CONFIG_ISA. The thing exists · 5813ce32
      Linus Torvalds authored
      on lots of PCI-only setups that have no ISA anywhere.
      5813ce32
    • Michael Hunold's avatar
      [PATCH] Update the AV7110 DVB driver · 6e44a514
      Michael Hunold authored
       - add vbi device handling for dvb-c cards with analog module
       - fix error handling upon device initialization
       - fix DD1_INIT handling of DVB-C w/ analog module installed.  (Jon
         Burgess)
      6e44a514
    • Michael Hunold's avatar
      [PATCH] Misc. fixes for AT76C651 DVB frontend driver · 756cf36c
      Michael Hunold authored
       - fixed some return values in device attach functions
       - allow private data to be associated with frontend devices here, too
       - misc bugfixes and performance improvements (endianess, function split up)
      756cf36c
    • Michael Hunold's avatar
      [PATCH] Misc. fixes for ALPS TDLB7 DVB frontend driver · e1bd9bfd
      Michael Hunold authored
       - applied latest changes by Juergen Peitz (great work!)
        o as a workaround for the lockup problem the data valid signal is
          checked after every channel switch.  If it is not set FEC parameters
          are set again.
        o disabled autoprobing if FEC settings are known (from sp887x). 
        o added support for FE_READ_UNCORRECTED_BLOCKS (from sp887x).
        o added support for FE_SLEEP (from sp887x).
        o bit error rate is now not only read from register 0xC07 but also
          from 0xC08 (from sp887x). 
        o I2C feedthrough to the tuner is now only enabled when needed (from
          sp887x).
        o Added FE_CAN_QAM_AUTO and FE_CAN_HIERARCHY_AUTO to
          dvb_frontend_info.
        o Removed obsolete setting of default frontend parameters in
          sp8870_init.
        o Removed obsolete module parameter 'loadcode' because changes in the
          saa7146 driver made firmware loading very fast.
      e1bd9bfd
    • Michael Hunold's avatar
      [PATCH] Fix DVB network device handling · 7bd39161
      Michael Hunold authored
       - simplify and sanitize add/del handling for dvb net devices
      7bd39161
    • Michael Hunold's avatar
      [PATCH] Add private data pointer to DVB frontends · 49bd4833
      Michael Hunold authored
       - allow private data to be associated with dvb frontend devices
         (Andreas Oberritter)
       - fixed fe_count countint in nxt6000 frontend driver (Andreas
         Oberritter)
      49bd4833
    • Michael Hunold's avatar
      [PATCH] Fix vbi handling in saa7146 core driver · 7ddf4633
      Michael Hunold authored
       - add some debug and safety checks for video/vbi capture buffer
         handling
       - add new flag SAA7146_USE_PORT_B_FOR_VBI, so we can distinguish on
         which video port to apply the vbi workaround
       - add del_timer(...) for vbi capture queue and vbi_read timers,
         prevents oopses on vbi usage
      7ddf4633
    • Michael Hunold's avatar
      [PATCH] New DVB frontend driver ves1x93 (obsoletes alps_bsrv2) · 26a64442
      Michael Hunold authored
       - replace alps_bsrv2 driver by generic ves1893 & ves1993 driver
         (Andreas Oberritter)
      26a64442
    • Andi Kleen's avatar
      [PATCH] Fix 64bit bug in trident frame buffer driver · 3931445f
      Andi Kleen authored
      Fix another 64bit bug, this time in the trident frame buffer driver
      
      When storing the ioremap_nocache() return in a integer the variable must be
      long not int.
      3931445f
    • Rusty Russell's avatar
      [PATCH] More barriers in module code. · fe3f6208
      Rusty Russell authored
      Paul McKenney convinced me that there's no *guarantee* that all archs
      will refuse the speculate the atomic ops above the state test, eg:
      
      CPU0 (stopref_set_state)		CPU1 (stopref)
      
       atomic_set(&ack, 0);			if (state == XXX)
       wmb();						atomic_inc(&ack);
       state = XXX;
      
      Certainly Alpha needs a rmb() inside stopref to guarantee it sees
      the same ordering.
      fe3f6208
    • Rusty Russell's avatar
      [PATCH] ipt_limit fix for HZ=1000 · b6e31b8e
      Rusty Russell authored
      The range that the iptables limit extension can specify depends on HZ.
      This means that rules which worked i386 2.4 (100 HZ) won't work on
      2.6.
      
      The solution is to adjust the precision based on the HZ value (keeping
      the range of possible values the same).  For extra geek cred, this is
      done by calculating a power-of-two constant below the maximum
      multiplication factor, which gcc then turns into a simple shift.
      b6e31b8e
    • Rusty Russell's avatar
      [PATCH] Fix pcmcia_tcic.c if PCMCIA_DEBUG is defined. · 9c0451e5
      Rusty Russell authored
      From:  Stephen Hemminger <shemminger@osdl.org>
      
        Compile errors in the pcmcia/tcic driver if PCMCIA_DEBUG is defined.
        Looks like simple debug code bitrot, this fixes it.
      9c0451e5
    • Linus Torvalds's avatar
      Manual merge of sound config · 239af6cf
      Linus Torvalds authored
      239af6cf
    • Linus Torvalds's avatar
      Merge bk://ppc.bkbits.net/for-linus-ppc · 3480a142
      Linus Torvalds authored
      into home.osdl.org:/home/torvalds/v2.5/linux
      3480a142
  2. 10 Oct, 2003 1 commit
  3. 09 Oct, 2003 2 commits
    • Paul Mackerras's avatar
      Merge samba.org:/stuff/paulus/kernel/linux-2.5 · a605a1cf
      Paul Mackerras authored
      into samba.org:/stuff/paulus/kernel/for-linus-ppc
      a605a1cf
    • Paul Mackerras's avatar
      [PATCH] Fix compile on PPC · 19d4808f
      Paul Mackerras authored
      At the moment the aty128fb and matroxfb frame buffer drivers don't
      compile on PPC.  In both cases the error is pretty trivial.  This
      patch is the minimum change to fix the problems.
      
      The _IOR() type problem fix in aty128fb.c depends on the fact that the
      size of a pointer is the same as "size_t", so we don't have to use
      _IOR_BAD() to keep the ioctl number the same.
      19d4808f
  4. 08 Oct, 2003 14 commits
    • Linus Torvalds's avatar
      disable_irq() should synchronize with irq handler only if one exists. · ebf7c862
      Linus Torvalds authored
      Noted by Al Viro: if no handler exists (and we have IRQ_INPROGRESS set
      because of an earlier irq that got through), synchronize_irq() will
      end up waiting forever.
      ebf7c862
    • Jamie Lokier's avatar
      [PATCH] futex bug fixes · 8462805c
      Jamie Lokier authored
      This fixes two serious bugs in the futex code.
      
      One is a race condition which results in list corruption when
      FUTEX_REQUEUE is used.  It is due to the split locks change introduced
      in 2.6.0-test6, and oopses when triggered.
      
      The other is a security hole.  A program can use FUTEX_FD to create
      futexes on mms or inodes which don't reference them, and when those
      structures are reused by a different mm or inode, the addresses match.
      The effect is that a malicious or flawed program can steal wakeups from
      completely unrelated tasks, causing them to block (or worse if they are
      counting on the token passing property).
      
      These are the specific changes:
      
          1. Each futex_q retains a reference to its key mm or inode.
      
          2. The condition for a futex_q to indicate that it's woken can usually
             be interrogated lock-free.
      
          3. futex_wait calls the hash function once instead of three times,
             and usually takes the per-bucket lock once too.
      
          4. When a futex is woken, the per-bucket lock is not usually taken,
             so that's one less cache line transfer during heavy SMP futex use.
      
          5. The wait condition and barriers in futex_wait are simpler.
      
          5. FUTEX_REQUEUE is fixed.  The per-bucket lock juggling is done
             in such a way that there are no race conditions against the tests
             for whether a futex is woken.
      
      
      This patch is an combination of patches previously sent to the list.  An
      equivalent patch has been in Andrew Morton's tree for a while, with no
      failure reports.  Also I have been running it on my own SMP box for a
      while.  Conversely, we have received an oops report for the 2.6.0-test6
      code, so the fix is needed.
      8462805c
    • Jamie Lokier's avatar
      [PATCH] set sigio target to current->pid and only if not already set · c69f2894
      Jamie Lokier authored
      1. send_sigio() sends to a specific thread, _not_ a process.
         (It can also send to a process group, but that's not relevant here).
         This is useful, and should stay as it is.
      
         Therefore it makes _no sense_ to call f_setown() with current->tgid.
         Presently the kernel is inconsistent about it, with some places using
         current->pid and some others using current->tgid.
      
         This patch changes f_setown() calls to use current->pid.
      
      2. In some places, f_setown() is called not at the user's direct request,
         but as a side effect of another function.  Specifically: dnotify and
         file leases.
      
         It is good to allow a program the flexibility to specify a different
         pid than the default, using F_SETOWN.  Presently they can do this after
         the dnotify or lease call, but there is a small time window when it
         will be temporarily set to current->tgid (which as pointed out above,
         is not always right).
      
         The window is avoidable if the program can use F_SETOWN prior to the
         dnotify or lease call.  This is exactly what the "force" argument to
         f_setown() is for, and this patch changes it to zero in those callers.
      
         This change is not likely to affect any existing programs.
      c69f2894
    • Trond Myklebust's avatar
      [PATCH] NFS: Enable NFS_DIRECTIO support · d9e033b3
      Trond Myklebust authored
      Enable NFS_DIRECTIO support now that it has been fixed...
      d9e033b3
    • Trond Myklebust's avatar
      [PATCH] NFS: Fix O_DIRECT code · 2d631698
      Trond Myklebust authored
        - Support synchronous directio only. Defer asynchronous directio until
          it can be made safe.
        - If read/write exits due to an error, return number of bytes read/written
          prior to occurrence of the error.
        - Make sure we mark read pages as dirty in case we're doing zero-copy tricks.
          Export set_page_dirty_lock() for use by NFS directio.
        - Ensure we revalidate stale attribute info.
      2d631698
    • Trond Myklebust's avatar
      [PATCH] NFS: synchronous NFSv3/v4 COMMIT · cd21f96e
      Trond Myklebust authored
      Add support for synchronous calls to the NFSv3/v4 COMMIT functions.
      cd21f96e
    • Trond Myklebust's avatar
      [PATCH] NFS: remove broken O_DIRECT wait code · 88a88295
      Trond Myklebust authored
      It is in any case no longer needed.
      88a88295
    • Trond Myklebust's avatar
      [PATCH] NFS: fix the synchronous READ/WRITE bugs · f60d81b1
      Trond Myklebust authored
        - Use correct credentials in the NFSv4 synchronous read/write code.
        - Return correct number of read bytes in the NFSv4 synchronous read code.
        - SunRPC XDR fix: NFSv4 reads when caller requests a non-word aligned
          number of bytes was broken.
      f60d81b1
    • Linus Torvalds's avatar
      Merge bk://kernel.bkbits.net//home/mochel/linux-2.5-power · cc7d1ffd
      Linus Torvalds authored
      into home.osdl.org:/home/torvalds/v2.5/linux
      cc7d1ffd
    • Linus Torvalds's avatar
      Merge bk://kernel.bkbits.net//home/mochel/linux-2.5-core · 3ee1e2b7
      Linus Torvalds authored
      into home.osdl.org:/home/torvalds/v2.5/linux
      3ee1e2b7
    • Andi Kleen's avatar
      [PATCH] Disable non 64bit clean drivers for x86-64 · 27e21142
      Andi Kleen authored
      This just disables some drivers which are clearly not 64bit clean from
      the configuration for CONFIG_64BIT hosts.
      
      Partly from Arnd Bergmann.
      27e21142
    • Andi Kleen's avatar
      [PATCH] Fix x86-64 build with separate object tree · 26398fb7
      Andi Kleen authored
      From Arnd Bergmann.
      26398fb7
    • Andi Kleen's avatar
      [PATCH] APIC fixes for x86-64 · 21add34f
      Andi Kleen authored
      Various APIC/ACPI fixes for x86-64. This brings us closer to working
      out of the box on the now popular VIA and NVidia Nforce3 based Athlon64
      and Opteron boards. To be really good we would need more ACPI changes
      (still waiting for that to be all merged through the usual channels).
      
      With this we mostly work with acpi=off at least.
      
      Also it syncs us up with bugfixes done in 2.4.
      
       - Disable IO-APIC by default on non SMP VIA/NVidia boards.  This is a
         bit of a hack, but needed to work around ACPI bugs.  Can be
         overwriten with "apic". 
       - Add acpi=ht, meaning run ACPI boot setup, but do not enable the
         interpreter.  Same as i386.
       - Stop MADT parsing early when local APIC or IO-APIC are disabled
       - Add more option parsing early enough to actually change the boot
         process
       - Update documentation for command line options
      21add34f
    • Linus Torvalds's avatar
      Merge bk://bk.arm.linux.org.uk/linux-2.6-serial · ffdbfd52
      Linus Torvalds authored
      into home.osdl.org:/home/torvalds/v2.5/linux
      ffdbfd52