1. 08 Sep, 2006 4 commits
    • David Teigland's avatar
      [DLM] confirm master for recovered waiting requests · fa9f0e49
      David Teigland authored
      Fixing the following scenario:
      - A request is on the waiters list waiting for a reply from a remote node.
      - The request is the first one on the resource, so first_lkid is set.
      - The remote node fails causing recovery.
      - During recovery the requesting node becomes master.
      - The request is now processed locally instead of being a remote operation.
      - At this point we need to call confirm_master() on the resource since
        we're certain we're now the master node.  This will clear first_lkid.
      - We weren't calling confirm_master(), so first_lkid was not being cleared
        causing subsequent requests on that resource to get stuck.
      Signed-off-by: default avatarDavid Teigland <teigland@redhat.com>
      Signed-off-by: default avatarSteven Whitehouse <swhiteho@redhat.com>
      fa9f0e49
    • Steven Whitehouse's avatar
      [GFS2] Move rwlocks in glock.c into their own array · 37b2fa6a
      Steven Whitehouse authored
      This splits the rwlocks guarding the hash chains of the glock hash
      table into their own array. This will reduce memory usage in some
      cases due to better alignment, although the real reason for doing it
      is to allow the two tables to be different sizes in future (i.e.
      the locks will be sized proportionally with the max number of CPUs
      and the hash chains sized proportinally with the size of physical memory)
      
      In order to allow this, the gl_bucket member of struct gfs2_glock has
      now become gl_hash, so we record the hash rather than a pointer to the
      bucket itself.
      Signed-off-by: default avatarSteven Whitehouse <swhiteho@redhat.com>
      37b2fa6a
    • Steven Whitehouse's avatar
      [GFS2] Use void * instead of typedef for locking module interface · 9b47c11d
      Steven Whitehouse authored
      As requested by Jan Engelhardt, this removes the typedefs in the
      locking module interface and replaces them with void *. Also
      since we are changing the interface, I've added a few consts
      as well.
      
      Cc: Jan Engelhardt <jengelh@linux01.gwdg.de>
      Cc: David Teigland <teigland@redhat.com>
      Signed-off-by: default avatarSteven Whitehouse <swhiteho@redhat.com>
      9b47c11d
    • Steven Whitehouse's avatar
      [GFS2] vfree should be kfree · a2c45807
      Steven Whitehouse authored
      This was missed in an earlier patch when changing over from vmalloc
      to kmalloc for the superblock.
      Signed-off-by: default avatarSteven Whitehouse <swhiteho@redhat.com>
      a2c45807
  2. 07 Sep, 2006 9 commits
  3. 05 Sep, 2006 9 commits
  4. 04 Sep, 2006 14 commits
  5. 02 Sep, 2006 4 commits
    • Linus Torvalds's avatar
      Merge master.kernel.org:/home/rmk/linux-2.6-serial · 3fbcd940
      Linus Torvalds authored
      * master.kernel.org:/home/rmk/linux-2.6-serial:
        [SERIAL] 8250: constify some serial structs
        [SERIAL] Make uart_match_port() work with all memory mapped UARTs
      3fbcd940
    • Linus Torvalds's avatar
      Merge master.kernel.org:/home/rmk/linux-2.6-arm · e6944202
      Linus Torvalds authored
      * master.kernel.org:/home/rmk/linux-2.6-arm:
        [ARM] 3762/1: Fix ptrace cache coherency bug for ARM1136 VIPT nonaliasing Harvard caches
        [ARM] 3765/1: S3C24XX: cleanup include/asm-arm/arch-s3c2410/dma.h
        [ARM] 3764/1: S3C24XX: change type naming to kernel style
        [ARM] 3763/1: add both rtcs to csb337 defconfig
        [ARM] Fix ARM __raw_read_trylock() implementation
        [ARM] 3750/3: Fix double VFP emulation for EABI kernels
      e6944202
    • Oleg Nesterov's avatar
      [PATCH] eligible_child: remove an obsolete ->tgid check · 3b6362b8
      Oleg Nesterov authored
      It is not possible to find a sub-thread in ->children/->ptrace_children
      lists, ptrace_attach() does not allow to attach to sub-threads.
      
      Even if it was possible to ptrace the task from the same thread group,
      we can't allow to release ->group_leader while there are others (ptracer)
      threads in the same group.
      Signed-off-by: default avatarOleg Nesterov <oleg@tv-sign.ru>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      3b6362b8
    • George G. Davis's avatar
      [ARM] 3762/1: Fix ptrace cache coherency bug for ARM1136 VIPT nonaliasing Harvard caches · a188ad2b
      George G. Davis authored
      Patch from George G. Davis
      
      Resolve ARM1136 VIPT non-aliasing cache coherency issues observed when
      using ptrace to set breakpoints and cleanup copy_{to,from}_user_page()
      while we're here as requested by Russell King because "it's also far
      too heavy on non-v6 CPUs".
      
      NOTES:
      
      1. Only access_process_vm() calls copy_{to,from}_user_page().
      2. access_process_vm() calls get_user_pages() to pin down the "page".
      3. get_user_pages() calls flush_dcache_page(page) which ensures cache
         coherency between kernel and userspace mappings of "page".  However
         flush_dcache_page(page) may not invalidate I-Cache over this range
         for all cases, specifically, I-Cache is not invalidated for the VIPT
         non-aliasing case.  So memory is consistent between kernel and user
         space mappings of "page" but I-Cache may still be hot over this
         range.  IOW, we don't have to worry about flush_cache_page() before
         memcpy().
      4. Now, for the copy_to_user_page() case, after memcpy(), we must flush
         the caches so memory is consistent with kernel cache entries and
         invalidate the I-Cache if this mm region is executable.  We don't
         need to do anything after memcpy() for the copy_from_user_page()
         case since kernel cache entries will be invalidated via the same
         process above if we access "page" again.  The flush_ptrace_access()
         function (borrowed from SPARC64 implementation) is added to handle
         cache flushing after memcpy() for the copy_to_user_page() case.
      Signed-off-by: default avatarGeorge G. Davis <gdavis@mvista.com>
      Signed-off-by: default avatarRussell King <rmk+kernel@arm.linux.org.uk>
      a188ad2b