1. 31 Jul, 2002 2 commits
    • Trond Myklebust's avatar
      [PATCH] Re: better getattr caching.. · 7325bea7
      Trond Myklebust authored
      The following patches to nfs2xdr.c/nfs3xdr.c might be relevant: *entry
      points into the page, and so the assignment should be made before we
      kunmap().
      
      Also includes a patch that converts references to inode->i_data into
      inode->i_mapping.  Not likely to be the source of your hang, but should
      still be done for consistency with the rest of the kernel.
      7325bea7
    • Trond Myklebust's avatar
      [PATCH] NFS lookup() BKL imbalance · 386b34c2
      Trond Myklebust authored
      One more lookup bug caught. Fix missing unlock_kernel() when doing
      readdirplus cached lookups in nfs_lookup().
      386b34c2
  2. 30 Jul, 2002 8 commits
    • Linus Torvalds's avatar
      Split up "do_fork()" into "copy_process()" and "do_fork()". · 9fb72010
      Linus Torvalds authored
      copy_process() just copies the process, it doesn't actually start it.
      
      This is in preparation for doing a "atomically start process on CPU X"
      or other cases where we want to change the state of the process before
      we actually start running it.
      9fb72010
    • Martin Dalecki's avatar
      [PATCH] 2.5.29 IDE 109 · c57f6cae
      Martin Dalecki authored
       - Include first cut by Adam J. Richter on proper lock protection for
         tuning functions.
      
       - Rename ide_register_subdriver() to ata_register_device() and
         ide_unregister_subdriver() accordingly to ata_unregister_device(),
         since this is reflecting better what those functions are about.
      
       - Remove tons of "curicum vite" style useless documentation here and
         there.
      c57f6cae
    • Martin Dalecki's avatar
      [PATCH] 2.5.29 IDE 108 · 3bd271cd
      Martin Dalecki authored
       - typedef unsigned char byte; is finally gone. Everything using it should
         be just ported to u8 if I missed some place where it still gets used.
      
       - Next round of parameter parsing cleanups by Gerald Champagne.
         Adjusted a bit to harmonize with  hd.c.
      
       - Move IDE register bitfields declarations over from hdparm.h to
         ide.h.
      
       - Declare constants needed by hd.c directly there. Those are standard
         values not subject to change and we prefer a bit of code duplication
         in favour of making the two drivers independant from each other.
      
       - Move everything not ioctl related away from hdreg.h to ide.h.
         This header is in effect not private to the ATA code and should
         therefore not contain stuff only usefull there.
      3bd271cd
    • Alan Cox's avatar
      [PATCH] cs5530 IDE driver cli/sti fixes and cleanups · 12949f5d
      Alan Cox authored
      The CS5530 one seems unneeded looking at the databook.  Try the patch
      below instead, which removes the irq lock and uses the proper kernel
      functions to enable MWI and master.
      12949f5d
    • Marcel Holtmann's avatar
      [PATCH] Bluetooth Subsystem PC Card drivers update · d2bc8e1f
      Marcel Holtmann authored
      This updates the 2.5.x PC Card drivers of the Bluetooth subsystem.
      d2bc8e1f
    • Linus Torvalds's avatar
      Merge bk://ncpfs.bkbits.net/linux-2.5 · 13e895aa
      Linus Torvalds authored
      into home.transmeta.com:/home/torvalds/v2.5/linux
      13e895aa
    • Petr Vandrovec's avatar
    • Linus Torvalds's avatar
      Do x86 "kernel_thread()" explicitly by hand, instead of · 73b2c325
      Linus Torvalds authored
      using a system call from kernel space. 
      
      This avoids one level of hidden code, and makes what happens
      much more explicit (and speeds it up too, fwiw)
      73b2c325
  3. 29 Jul, 2002 30 commits
    • Eric Sandeen's avatar
      [PATCH] wan/sdla_chdlc.c oops fix · 1934cd65
      Eric Sandeen authored
      This "warning fix" bug report is actually an OOPS bugfix.
      1934cd65
    • Matthew Wilcox's avatar
      [PATCH] fs/locks.c: eliminate locks_unlock_delete · 803e701d
      Matthew Wilcox authored
      locks_unlock_delete is buggy in a couple of different ways (previously
      reported by Brian Dixon). Rather than fix it, this patch simply deletes
      it and uses the normal posix file locking mechanisms to remove all locks
      in locks_remove_posix instead.
      803e701d
    • Anton Blanchard's avatar
      [PATCH] make cpu_relax a barrier on all architectures · 1a196c8a
      Anton Blanchard authored
      Make cpu_relax() on all architectures a gcc barrier to match x86.
      1a196c8a
    • Linus Torvalds's avatar
      Merge http://linux-isdn.bkbits.net/linux-2.5.make · 947ad94a
      Linus Torvalds authored
      into home.transmeta.com:/home/torvalds/v2.5/linux
      947ad94a
    • Kai Germaschewski's avatar
      Merge · b4b2bd4c
      Kai Germaschewski authored
      b4b2bd4c
    • Sam Ravnborg's avatar
    • Sam Ravnborg's avatar
      [PATCH] docbook: parportbook dependencies and do_cmd · 1fe581d8
      Sam Ravnborg authored
      o Corrected dependencies for parportbook
      o Introduced do_cmd, thus adhering to KBUILD_VERBOSE and make -s
      1fe581d8
    • Sam Ravnborg's avatar
      [PATCH] kbuild: Add new define do_cmd · 05e7c453
      Sam Ravnborg authored
      do_cmd is a nice shorthand when creating rules that in one line
      shall adhere to KBUILD_VERBOSE and make -s.
      So far the only user is (will be) the docbook makefile
      05e7c453
    • Linus Torvalds's avatar
      Chris Wright points out that this was also missed in the · d38147dd
      Linus Torvalds authored
      file locking LSM update
      d38147dd
    • Linus Torvalds's avatar
      6a1caddf
    • Hugh Dickins's avatar
      [PATCH] remove acct arg from do_munmap · a5271c10
      Hugh Dickins authored
      An acct flag was added to do_munmap, true everywhere but in mremap's
      move_vma: instead of updating the arch and driver sources, revert that
      that change and temporarily mask VM_ACCOUNT around that one do_munmap.
      
      Also, noticed that do_mremap fails needlessly if both shrinking _and_
      moving a mapping: update old_len to pass vm area boundaries test.
      a5271c10
    • Hugh Dickins's avatar
      [PATCH] shmem_file_setup when MAP_NORESERVE · d9acf5fe
      Hugh Dickins authored
      If we support mmap MAP_NORESERVE, we should support it on shared
      anonymous objects: too bad that needs a few changes.  do_mmap_pgoff pass
      VM_ACCOUNT (or not) down to shmem_file_setup, flag stored into shmem
      info, for use by shmem_delete_inode later.  Also removed a harmless but
      pointless call to shmem_truncate.
      d9acf5fe
    • Hugh Dickins's avatar
      [PATCH] update overcommit doc and comment · de16834e
      Hugh Dickins authored
      Update Doc and remove FIXME comment from fork.c now accounting right.
      de16834e
    • Hugh Dickins's avatar
      [PATCH] fix shared and private accounting · e054680b
      Hugh Dickins authored
      do_mmap_pgoff's (file == NULL) check was incorrect: it caused shared
      MAP_ANONYMOUS objects to be counted twice (again in shmem_file_setup),
      and again on fork(); whereas the equivalent shared /dev/zero objects
      were correctly counted.  Conversely, a private readonly file mapping
      was (correctly) not counted, but still not counted when mprotected to
      writable: mprotect_fixup had pointless "charged = 0" changes, now it
      does vm_enough_memory checking when private is first made writable
      (but later we may want to refine behaviour on a noreserve mapping).
      
      Also changed correct (flags & MAP_SHARED) test in do_mmap_pgoff to
      equivalent (vm_flags & VM_SHARED) test: because do_mmap_pgoff is
      dealing with vm_flags rather than the input flags by that stage.
      e054680b
    • Hugh Dickins's avatar
      [PATCH] remove unhelpful vm_unacct_vma · 3f7583d3
      Hugh Dickins authored
      Remove vm_unacct_vma function: it's only used in one place,
      which can do it better by using vm_unacct_memory directly.
      3f7583d3
    • Hugh Dickins's avatar
      [PATCH] mmap MAP_NORESERVE not in vm_flags · feb32a85
      Hugh Dickins authored
      do_mmap_pgoff clears MAP_NORESERVE from vm_flags when VM accounts
      strictly: but it's not in vm_flags, it's in flags (and tested there).
      feb32a85
    • Hugh Dickins's avatar
      [PATCH] mremap MAP_NORESERVE not in flags · 4b07a3c5
      Hugh Dickins authored
      There is no point in do_mremap clearing MAP_NORESERVE from its flags:
      it has already validated that only the MREMAP_ flags can be set,
      and it has no use for MAP_NORESERVE in the code that follows anyway.
      4b07a3c5
    • Hugh Dickins's avatar
      [PATCH] SHMEM_MAX_BYTES overflow checking · 36372380
      Hugh Dickins authored
      shmem_notify_change and shmem_file_write be careful about overflowingly
      large loff_t before shifting it into unsigned long for vm_enough_memory.
      Rename SHMEM_MAX_BLOCKS to SHMEM_MAX_INDEX (to avoid confusion with
      512-byte blocks), define SHMEM_MAX_BYTES from it.
      
      But 2.5 vmtruncate lacked the s_maxbytes error handling which
      shmem_notify_change now expects: bring it in from the -dj tree.
      shmem_file_write error handling needs a closer look later on.
      36372380
    • Hugh Dickins's avatar
      [PATCH] shmem_file_write rounding VM_ACCT · 477436ba
      Hugh Dickins authored
      Repeated overnight kernel builds in tmpfs showed insane Committed_AS
      by morning.  The main bug was that shmem_file_write was passing
      (newsize-oldsize)>>PAGE_SHIFT to vm_enough_memory, but it has to be
      ((newsize>>PAGE_SHIFT)-(oldsize>>PAGE_SHIFT)) - imagine 1k writes.
      
      But actually, if we're going to do strict accounting, then we should
      round up to next page not down - use VM_ACCT macro throughout (needs
      unusual mix of PAGE_CACHE_SIZE with PAGE_SHIFT); and must count one
      page for a long symlink.
      477436ba
    • Christoph Hellwig's avatar
      [PATCH] implement kmem_cache_size() · e0126e64
      Christoph Hellwig authored
      Currently there is no way to find out the effective object size of a slab
      cache.  XFS has lots of IRIX-derived code that want to do zalloc() style
      allocations on zones (which are implemented as slab caches in XFS/Linux)
      and thus needs to know about it.  There are three ways do implement it:
      
      a) implement kmem_cache_zalloc
      b) make the xfs zone a struct of kmem_cache_t and a size variable
      c) implement kmem_cache_size
      
      The current XFS tree does a) but I absolutely don't like it as encourages
      people to use kmem_cache_zalloc for new code instead of thinking about how
      to utilize slab object reuse.  b) would be easy, but I guess kmem_cache_size
      is usefull enough to get into the kernel.  Here's the patch:
      e0126e64
    • Linus Torvalds's avatar
      Rename "sys_pread/pwrite" to "sys_pread64/pwrite64" to match the · 5ff53a14
      Linus Torvalds authored
      actual implementation and avoid confusion.
      5ff53a14
    • Dave Hansen's avatar
      [PATCH] fix e1000 after irq craziness · 12ebbff8
      Dave Hansen authored
      I just duplicated the method used in drivers/net/tulip/de2104x.c
      12ebbff8
    • Kai Germaschewski's avatar
      kbuild: Fix double vmlinux link · 4b71ce39
      Kai Germaschewski authored
      pointed out by Sam Ravnborg
      4b71ce39
    • Kai Germaschewski's avatar
      Merge tp1.ruhr-uni-bochum.de:/home/kai/kernel/v2.5/linux-2.5 · 70d7ae38
      Kai Germaschewski authored
      into tp1.ruhr-uni-bochum.de:/home/kai/kernel/v2.5/linux-2.5.make-fix
      70d7ae38
    • Kai Germaschewski's avatar
      Merge tp1.ruhr-uni-bochum.de:/home/kai/kernel/v2.5/linux-2.5 · 62df53d4
      Kai Germaschewski authored
      into tp1.ruhr-uni-bochum.de:/home/kai/kernel/v2.5/linux-2.5.make-fix
      62df53d4
    • Linus Torvalds's avatar
    • David Howells's avatar
      [PATCH] export rwsem downgrade function · ac7823e4
      David Howells authored
      This should do the trick.
      ac7823e4
    • Jens Axboe's avatar
      08f9788a
    • Paul Mackerras's avatar
      [PATCH] page table page->index · f6c2354a
      Paul Mackerras authored
      I found a situation where page->index for a pagetable page can be set
      to 0 instead of the correct value.  This means that ptep_to_address
      will return the wrong answer.  The problem occurs when remap_pmd_range
      calls pte_alloc_map and pte_alloc_map needs to allocate a new pte
      page, because remap_pmd_range has masked off the top bits of the
      address (to avoid overflow in the computation of `end'), and it passes
      the masked address to pte_alloc_map.
      
      Now we presumably don't need to get from the physical pages mapped by
      remap_page_range back to the ptes mapping them.  But we could easily
      map some normal pages using ptes in that pagetable page subsequently,
      and when we call ptep_to_address on their ptes it will give the wrong
      answer.
      
      The patch below fixes the problem.
      
      There is a more general question this brings up - some of the
      procedures which iterate over ranges of ptes will do the wrong thing
      if the end of the address range is too close to ~0UL, while others are
      OK.  Is this a problem in practice?  On i386, ppc, and the 64-bit
      architectures it isn't since user addresses can't go anywhere near
      ~0UL, but what about arm or m68k for instance?
      
      And BTW, being able to go from a pte pointer to the mm and virtual
      address that that pte maps is an extremely useful thing on ppc, since
      it will enable me to do MMU hash-table management at set_pte (and
      ptep_*) time and thus avoid the extra traversal of the pagetables that
      I am currently doing in flush_tlb_*.  So if you do decide to back out
      rmap, please leave in the hooks for setting page->mapping and
      page->index on pagetable pages.
      f6c2354a
    • Paul Mackerras's avatar
      [PATCH] fix include/linux/timer.h compile · 07611a33
      Paul Mackerras authored
      include/linux/timer.h needs to include <linux/stddef.h>
      to get the definition of NULL.
      07611a33