1. 08 May, 2006 13 commits
    • Bjorn Helgaas's avatar
      [IA64] rework memory attribute aliasing · 32e62c63
      Bjorn Helgaas authored
      This closes a couple holes in our attribute aliasing avoidance scheme:
      
        - The current kernel fails mmaps of some /dev/mem MMIO regions because
          they don't appear in the EFI memory map.  This keeps X from working
          on the Intel Tiger box.
      
        - The current kernel allows UC mmap of the 0-1MB region of
          /sys/.../legacy_mem even when the chipset doesn't support UC
          access.  This causes an MCA when starting X on HP rx7620 and rx8620
          boxes in the default configuration.
      
      There's more detail in the Documentation/ia64/aliasing.txt file this
      adds, but the general idea is that if a region might be covered by
      a granule-sized kernel identity mapping, any access via /dev/mem or
      mmap must use the same attribute as the identity mapping.
      
      Otherwise, we fall back to using an attribute that is supported
      according to the EFI memory map, or to using UC if the EFI memory
      map doesn't mention the region.
      Signed-off-by: default avatarBjorn Helgaas <bjorn.helgaas@hp.com>
      Signed-off-by: default avatarTony Luck <tony.luck@intel.com>
      32e62c63
    • Andi Kleen's avatar
      [PATCH] x86_64: Move ondemand timer into own work queue · 6810b548
      Andi Kleen authored
      Taking the cpu hotplug semaphore in a normal events workqueue
      is unsafe because other tasks can wait for any workqueues with
      it hold. This results in a deadlock.
      
      Move the DBS timer into its own work queue which is not
      affected by other work queue flushes to avoid this.
      
      Has been acked by Venkatesh.
      
      Cc: venkatesh.pallipadi@intel.com
      Cc: cpufreq@lists.linux.org.uk
      Signed-off-by: default avatarAndi Kleen <ak@suse.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      6810b548
    • Andi Kleen's avatar
      [PATCH] x86_64: Avoid EBDA area in early boot allocator · ac71d12c
      Andi Kleen authored
      Based on analysis&patch from Robert Hentosch
      
      Observed on a Dell PE6850 with 16GB
      
      The problem occurs very early on, when the kernel allocates space for the
      temporary memory map called bootmap. The bootmap overlaps the EBDA region.
      EBDA region is not historically reserved in the e820 mapping. When the
      bootmap is freed it marks the EBDA region as usable.
      
      If you notice in setup.c there is already code to work around the EBDA
      in reserve_ebda_region(), this check however occurs after the bootmap
      is allocated and doesn't prevent the bootmap from using this range.
      
      AK: I redid the original patch. Thanks also to Jan Beulich for
      spotting some mistakes.
      
      Cc: Robert_Hentosch@dell.com
      Cc: jbeulich@novell.com
      Signed-off-by: default avatarAndi Kleen <ak@suse.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      ac71d12c
    • Corey Minyard's avatar
      [PATCH] x86_64: add nmi_exit to die_nmi · 8b1ffe95
      Corey Minyard authored
      Playing with NMI watchdog on x86_64, I discovered that it didn't
      do what I expected.  It always panic-ed, even when it didn't
      happen from interrupt context.  This patch solves that
      problem for me.  Also, in this case, do_exit() will be called
      with interrupts disabled, I believe.  Would it be wise to also
      call local_irq_enable() after nmi_exit()?
      [Yes I added it -AK]
      
      Currently, on x86_64, any NMI watchdog timeout will cause a panic
      because the irq count will always be set to be in an interrupt
      when do_exit() is called from die_nmi().  If we add nmi_exit() to
      the die_nmi() call (since the nmi will never exit "normally")
      it seems to solve this problem.  The following small program
      can be used to trigger the NMI watchdog to reproduce this:
        main ()
        {
              iopl(3);
              for (;;) asm("cli");
        }
      Signed-off-by: default avatarAndi Kleen <ak@suse.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      8b1ffe95
    • Corey Minyard's avatar
      [PATCH] x86_64: fix die_lock nesting · cdc60a4c
      Corey Minyard authored
      I noticed this when poking around in this area.
      
      The oops_begin() function in x86_64 would only conditionally claim
      the die_lock if the call is nested, but oops_end() would always
      release the spinlock. This patch adds a nest count for the die lock
      so that the release of the lock is only done on the final oops_end().
      Signed-off-by: default avatarCorey Minyard <minyard@acm.org>
      Signed-off-by: default avatarAndi Kleen <ak@suse.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      cdc60a4c
    • Andi Kleen's avatar
      [PATCH] x86_64: Check for too many northbridges in IOMMU code · 5192d84e
      Andi Kleen authored
      The IOMMU code can only deal with 8 northbridges. Error out when
      more are found.
      Signed-off-by: default avatarAndi Kleen <ak@suse.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      5192d84e
    • Kimball Murray's avatar
      [PATCH] x86_64: avoid IRQ0 ioapic pin collision · e0c1e9bf
      Kimball Murray authored
      The patch addresses a problem with ACPI SCI interrupt entry, which gets
      re-used, and the IRQ is assigned to another unrelated device.  The patch
      corrects the code such that SCI IRQ is skipped and duplicate entry is
      avoided.  Second issue came up with VIA chipset, the problem was caused by
      original patch assigning IRQs starting 16 and up.  The VIA chipset uses
      4-bit IRQ register for internal interrupt routing, and therefore cannot
      handle IRQ numbers assigned to its devices.  The patch corrects this
      problem by allowing PCI IRQs below 16.
      
      Cc: len.brown@intel.com
      
      Signed-off by: Natalie Protasevich <Natalie.Protasevich@unisys.com>
      Signed-off-by: default avatarAndi Kleen <ak@suse.de>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      e0c1e9bf
    • Linus Torvalds's avatar
      Merge branch 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6 · abfd3057
      Linus Torvalds authored
      * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:
        [IA64] remove asm-ia64/bitops.h self-inclusion
        [IA64] strcpy returns NULL pointer and not destination pointer
      abfd3057
    • Linus Torvalds's avatar
      Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6 · 96b8eaa1
      Linus Torvalds authored
      * master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:
        [IRDA] irda-usb: use NULL instead of 0
        [IPV4]: Remove likely in ip_rcv_finish()
        [NET]: Create netdev attribute_groups with class_device_add
        [CLASS DEVICE]: add attribute_group creation
      96b8eaa1
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild · bed7a560
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild:
        kbuild: Do not overwrite makefile as anohter user
        kbuild: drivers/video/logo/ - fix ident glitch
        kbuild: fix gen_initramfs_list.sh
        kbuild modpost - relax driver data name
        kbuild: removing .tmp_versions considered harmful
        kbuild: fix modpost segfault for 64bit mipsel kernel
      bed7a560
    • Trond Myklebust's avatar
      [PATCH] fs/locks.c: Fix lease_init · 75dff55a
      Trond Myklebust authored
      It is insane to be giving lease_init() the task of freeing the lock it is
      supposed to initialise, given that the lock is not guaranteed to be
      allocated on the stack. This causes lockups in fcntl_setlease().
      Problem diagnosed by Daniel Hokka Zakrisson <daniel@hozac.com>
      
      Also fix a slab leak in __setlease() due to an uninitialised return value.
      Problem diagnosed by Björn Steinbrink.
      Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
      Tested-by: default avatarDaniel Hokka Zakrisson <daniel@hozac.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
      75dff55a
    • Jan Beulich's avatar
      kbuild: Do not overwrite makefile as anohter user · fd5f0cd6
      Jan Beulich authored
      Change the conditional of the outputmakefile rule to be evaluated entirely
      in make, and add a conditional to not touch the generated makefile when e.g.
      running 'make install' as root while the build was done as non-root. Also
      adjust the comment describing this, and move the message printing and
      redirection to mkmakefile.
      Signed-off-by: default avatarJan Beulich <jbeulich@novell.com>
      Signed-off-by: default avatarSam Ravnborg <sam@ravnborg.org>
      fd5f0cd6
    • Linus Torvalds's avatar
      Merge master.kernel.org:/home/rmk/linux-2.6-arm · 9d21f09c
      Linus Torvalds authored
      * master.kernel.org:/home/rmk/linux-2.6-arm:
        [ARM] 3507/1: Replace map_desc.physical with map_desc.pfn: aaed2000
        [ARM] 3506/1: aaec2000: debug-macro.S needs hardware.h
        [ARM] 3505/1: aaec2000: entry-macro.S needs asm/arch/irqs.h
        [ARM] 3504/1: Fix clcd includes for aaec2000
        [ARM] 3503/1: Fix map_desc structure for aaec2000
        [ARM] 3501/1: i.MX: fix lowlevel debug macros
        [ARM] rtc-sa1100: fix compiler warnings and error cleanup
        [ARM] Allow SA1100 RTC alarm to be configured for wakeup
      9d21f09c
  2. 07 May, 2006 11 commits
  3. 06 May, 2006 10 commits
  4. 05 May, 2006 6 commits