1. 28 Nov, 2005 11 commits
    • Benjamin Herrenschmidt's avatar
      [PATCH] Console rotation fixes · 1a9c3f78
      Benjamin Herrenschmidt authored
      Remove bogus usage of test/set_bit() from fbcon rotation code and just
      manipulate the bits directly.  This fixes an oops on powerpc among others
      and should be faster.  Seems to work fine on the G5 here.
      Signed-off-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Acked-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>
      1a9c3f78
    • David Howells's avatar
      [PATCH] FRV: Make the FRV arch work again · 8080f231
      David Howells authored
      The attached patch implements a bunch of small changes to the FRV arch to
      make it work again.
      
      It deals with the following problems:
      
       (1) SEM_DEBUG should be SEMAPHORE_DEBUG.
      
       (2) The argument list to pcibios_penalize_isa_irq() has changed.
      
       (3) CONFIG_HIGHMEM can't be used directly in #if as it may not be defined.
      
       (4) page->private is no longer directly accessible.
      
       (5) linux/hardirq.h assumes asm/hardirq.h will include linux/irq.h
      
       (6) The IDE MMIO access functions are given pointers, not integers, and so
           get type casting errors.
      
       (7) __pa() is passed an explicit u64 type in drivers/char/mem.c, but that
           can't be cast directly to a pointer on a 32-bit platform.
      
       (8) SEMAPHORE_DEBUG should not be contingent on WAITQUEUE_DEBUG as that no
           longer exists.
      
       (9) PREEMPT_ACTIVE is too low a value.
      Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      8080f231
    • Andrew Morton's avatar
      [PATCH] fork.c: proc_fork_connector() called under write_lock() · c13cf856
      Andrew Morton authored
      Don't do that - it does GFP_KERNEL allocations, for a start.
      
      (Reported by Guillaume Thouvenin <guillaume.thouvenin@bull.net>)
      Acked-by: default avatarMatt Helsley <matthltc@us.ibm.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      c13cf856
    • Andrew Morton's avatar
      [PATCH] memory_sysdev_class is static · ff88a3b2
      Andrew Morton authored
      So don't define it as extern in the header file.
      
      drivers/base/memory.c:28: error: static declaration of 'memory_sysdev_class' follows non-static declaration
      include/linux/memory.h:88: error: previous declaration of 'memory_sysdev_class' was here
      
      Cc: Greg KH <greg@kroah.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      ff88a3b2
    • Ashok Raj's avatar
      [PATCH] clean up lock_cpu_hotplug() in cpufreq · a9d9baa1
      Ashok Raj authored
      There are some callers in cpufreq hotplug notify path that the lowest
      function calls lock_cpu_hotplug().  The lock is already held during
      cpu_up() and cpu_down() calls when the notify calls are broadcast to
      registered clients.
      
      Ideally if possible, we could disable_preempt() at the highest caller and
      make sure we dont sleep in the path down in cpufreq->driver_target() calls
      but the calls are so intertwined and cumbersome to cleanup.
      
      Hence we consistently use lock_cpu_hotplug() and unlock_cpu_hotplug() in
      all places.
      
       - Removed export of cpucontrol semaphore and made it static.
       - removed explicit uses of up/down with lock_cpu_hotplug()
         so we can keep track of the the callers in same thread context and
         just keep refcounts without calling a down() that causes a deadlock.
       - Removed current_in_hotplug() uses
       - Removed PF_HOTPLUG_CPU in sched.h introduced for the current_in_hotplug()
         temporary workaround.
      
      Tested with insmod of cpufreq_stat.ko, and logical online/offline
      to make sure we dont have any hang situations.
      Signed-off-by: default avatarAshok Raj <ashok.raj@intel.com>
      Cc: Zwane Mwaikambo <zwane@linuxpower.ca>
      Cc: Shaohua Li <shaohua.li@intel.com>
      Cc: "Siddha, Suresh B" <suresh.b.siddha@intel.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      a9d9baa1
    • Alan Stern's avatar
      [PATCH] Workaround for gcc 2.96 (undefined references) · e0f39591
      Alan Stern authored
        LD      .tmp_vmlinux1
      mm/built-in.o(.text+0x100d6): In function `copy_page_range':
      : undefined reference to `__pud_alloc'
      mm/built-in.o(.text+0x1010b): In function `copy_page_range':
      : undefined reference to `__pmd_alloc'
      mm/built-in.o(.text+0x11ef4): In function `__handle_mm_fault':
      : undefined reference to `__pud_alloc'
      fs/built-in.o(.text+0xc930): In function `install_arg_page':
      : undefined reference to `__pud_alloc'
      make: *** [.tmp_vmlinux1] Error 1
      
      Those missing references in mm/memory.c arise from this code in
      include/linux/mm.h, combined with the fact that __PGTABLE_PMD_FOLDED and
      __PGTABLE_PUD_FOLDED are both set and __ARCH_HAS_4LEVEL_HACK is not:
      
      /*
       * The following ifdef needed to get the 4level-fixup.h header to work.
       * Remove it when 4level-fixup.h has been removed.
       */
      #if defined(CONFIG_MMU) && !defined(__ARCH_HAS_4LEVEL_HACK)
      static inline pud_t *pud_alloc(struct mm_struct *mm, pgd_t *pgd, unsigned long address)
      {
              return (unlikely(pgd_none(*pgd)) && __pud_alloc(mm, pgd, address))?
                      NULL: pud_offset(pgd, address);
      }
      
      static inline pmd_t *pmd_alloc(struct mm_struct *mm, pud_t *pud, unsigned long address)
      {
              return (unlikely(pud_none(*pud)) && __pmd_alloc(mm, pud, address))?
                      NULL: pmd_offset(pud, address);
      }
      #endif /* CONFIG_MMU && !__ARCH_HAS_4LEVEL_HACK */
      
      With my configuration the pgd_none and pud_none routines are inlines
      returning a constant 0.  Apparently the old compiler avoids generating
      calls to __pud_alloc and __pmd_alloc but still lists them as undefined
      references in the module's symbol table.
      
      I don't know which change caused this problem.  I think it was added
      somewhere between 2.6.14 and 2.6.15-rc1, because I remember building
      several 2.6.14-rc kernels without difficulty.  However I can't point to an
      individual culprit.
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      e0f39591
    • David S. Miller's avatar
      [PATCH] sparc: convert IO remapping to VM_PFNMAP · 5cd9194a
      David S. Miller authored
      Here are the Sparc bits.
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      5cd9194a
    • Linus Torvalds's avatar
      mm: re-architect the VM_UNPAGED logic · 6aab341e
      Linus Torvalds authored
      This replaces the (in my opinion horrible) VM_UNMAPPED logic with very
      explicit support for a "remapped page range" aka VM_PFNMAP.  It allows a
      VM area to contain an arbitrary range of page table entries that the VM
      never touches, and never considers to be normal pages.
      
      Any user of "remap_pfn_range()" automatically gets this new
      functionality, and doesn't even have to mark the pages reserved or
      indeed mark them any other way.  It just works.  As a side effect, doing
      mmap() on /dev/mem works for arbitrary ranges.
      
      Sparc update from David in the next commit.
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      6aab341e
    • Adrian Bunk's avatar
      [PATCH] drivers/scsi/dpt_i2o.c: fix a NULL pointer dereference · 458af543
      Adrian Bunk authored
      The Coverity checker spotted this obvious NULL pointer dereference.
      Signed-off-by: default avatarAdrian Bunk <bunk@stusta.de>
      Acked-by: default avatarMark Salyzyn <mark_salyzyn@adaptec.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      458af543
    • Adrian Bunk's avatar
      [PATCH] drivers/infiniband/core/mad.c: fix use-after-release case · 2012a116
      Adrian Bunk authored
      The Coverity checker spotted this obvious use-after-release bug caused
      by a wrong order of the cleanups.
      Signed-off-by: default avatarAdrian Bunk <bunk@stusta.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      2012a116
    • Adrian Bunk's avatar
      [PATCH] drivers/message/i2o/pci.c: fix a NULL pointer dereference · 16a63173
      Adrian Bunk authored
      The Coverity checker spotted this obvious NULL pointer dereference.
      Signed-off-by: default avatarAdrian Bunk <bunk@stusta.de>
      Acked-by: default avatarMarkus Lidel <Markus.Lidel@shadowconnect.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      16a63173
  2. 26 Nov, 2005 1 commit
  3. 25 Nov, 2005 17 commits
  4. 24 Nov, 2005 11 commits