1. 29 Dec, 2009 1 commit
    • Mike Travis's avatar
      x86: SGI UV: Fix writes to led registers on remote uv hubs · 39d30770
      Mike Travis authored
      The wrong address was being used to write the SCIR led regs on
      remote hubs.  Also, there was an inconsistency between how BIOS
      and the kernel indexed these regs.  Standardize on using the
      lower 6 bits of the APIC ID as the index.
      
      This patch fixes the problem of writing to an errant address to
      a cpu # >= 64.
      Signed-off-by: default avatarMike Travis <travis@sgi.com>
      Reviewed-by: default avatarJack Steiner <steiner@sgi.com>
      Cc: Robin Holt <holt@sgi.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: stable@kernel.org
      LKML-Reference: <4B3922F9.3060905@sgi.com>
      [ v2: fix a number of annoying checkpatch artifacts and whitespace noise ]
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      39d30770
  2. 28 Dec, 2009 3 commits
    • Pekka Enberg's avatar
      x86, kmemcheck: Use KERN_WARNING for error reporting · c0ca9da4
      Pekka Enberg authored
      As suggested by Vegard Nossum, use KERN_WARNING for error
      reporting to make sure kmemcheck reports end up in syslog.
      Suggested-by: default avatarVegard Nossum <vegard.nossum@gmail.com>
      Signed-off-by: default avatarPekka Enberg <penberg@cs.helsinki.fi>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      LKML-Reference: <1261990935.4641.7.camel@penberg-laptop>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      c0ca9da4
    • Pekka Enberg's avatar
      x86: Use KERN_DEFAULT log-level in __show_regs() · d015a092
      Pekka Enberg authored
      Andrew Morton reported a strange looking kmemcheck warning:
      
        WARNING: kmemcheck: Caught 32-bit read from uninitialized memory (ffff88004fba6c20)
        0000000000000000310000000000000000000000000000002413000000c9ffff
         u u u u u u u u u u u u u u u u i i i i i i i i u u u u u u u u
      
         [<ffffffff810af3aa>] kmemleak_scan+0x25a/0x540
         [<ffffffff810afbcb>] kmemleak_scan_thread+0x5b/0xe0
         [<ffffffff8104d0fe>] kthread+0x9e/0xb0
         [<ffffffff81003074>] kernel_thread_helper+0x4/0x10
         [<ffffffffffffffff>] 0xffffffffffffffff
      
      The above printout is missing register dump completely. The
      problem here is that the output comes from syslog which doesn't
      show KERN_INFO log-level messages. We didn't see this before
      because both of us were testing on 32-bit kernels which use the
      _default_ log-level.
      
      Fix that up by explicitly using KERN_DEFAULT log-level for
      __show_regs() printks.
      Signed-off-by: default avatarPekka Enberg <penberg@cs.helsinki.fi>
      Cc: Vegard Nossum <vegard.nossum@gmail.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Arjan van de Ven <arjan@infradead.org>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      LKML-Reference: <1261988819.4641.2.camel@penberg-laptop>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      d015a092
    • Ingo Molnar's avatar
      Merge branch 'iommu/fixes' of... · 605c1a18
      Ingo Molnar authored
      Merge branch 'iommu/fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/linux-2.6-iommu into x86/urgent
      605c1a18
  3. 25 Dec, 2009 1 commit
    • H. Peter Anvin's avatar
      x86, compress: Force i386 instructions for the decompressor · 17a2a9b5
      H. Peter Anvin authored
      Recently, some distros have started shipping versions of gcc which
      default to -march=i686.  This breaks building kernels for pre-i686
      machines, even if they have been selected in Kconfig, due to the
      generation of CMOV instructions.
      
      There isn't enough benefit to try to preserve the generation of these
      instructions even when selected, so simply force -march=i386 for the
      decompressor when building a 32-bit kernel.
      Reported-and-tested-by: default avatarChris Rankin <rankincj@yahoo.com>
      Signed-off-by: default avatarH. Peter Anvin <hpa@zytor.com>
      LKML-Reference: <219280.97558.qm@web52907.mail.re2.yahoo.com>
      17a2a9b5
  4. 21 Dec, 2009 3 commits
    • Joerg Roedel's avatar
    • Joerg Roedel's avatar
      x86/amd-iommu: Fix initialization failure panic · 0f764806
      Joerg Roedel authored
      The assumption that acpi_table_parse passes the return value
      of the hanlder function to the caller proved wrong
      recently. The return value of the handler function is
      totally ignored. This makes the initialization code for AMD
      IOMMU buggy in a way that could cause a kernel panic on
      initialization. This patch fixes the issue in the AMD IOMMU
      driver.
      
      Cc: stable@kernel.org
      Signed-off-by: default avatarJoerg Roedel <joerg.roedel@amd.com>
      0f764806
    • Shaun Ruffell's avatar
      dma-debug: Do not add notifier when dma debugging is disabled. · f797d988
      Shaun Ruffell authored
      If CONFIG_HAVE_DMA_API_DEBUG is defined and "dma_debug=off" is
      specified on the kernel command line, when you detach a driver from a
      device you can cause the following NULL pointer dereference:
      
      BUG: unable to handle kernel NULL pointer dereference at (null)
      IP: [<c0580d35>] dma_debug_device_change+0x5d/0x117
      
      The problem is that the dma_debug_device_change notifier function is
      added to the bus notifier chain even though the dma_entry_hash array
      was never initialized.  If dma debugging is disabled, this patch both
      prevents dma_debug_device_change notifiers from being added to the
      chain, and additionally ensures that the dma_debug_device_change
      notifier function is a no-op.
      
      Cc: stable@kernel.org
      Signed-off-by: default avatarShaun Ruffell <sruffell@digium.com>
      Signed-off-by: default avatarJoerg Roedel <joerg.roedel@amd.com>
      f797d988
  5. 18 Dec, 2009 11 commits
    • Masami Hiramatsu's avatar
      x86: Fix objdump version check in chkobjdump.awk for different formats. · 8bee738b
      Masami Hiramatsu authored
      Different version of objdump says its version in different way;
      
      GNU objdump 2.16.1
      
      or
      
      GNU objdump version 2.19.51.0.14-1.fc11 20090722
      
      This patch uses the first argument which starts with a number
      as version string.
      
      Changes in v2:
       - Remove unneeded increment.
      Signed-off-by: default avatarMasami Hiramatsu <mhiramat@redhat.com>
      LKML-Reference: <20091218154012.16960.5113.stgit@dhcp-100-2-132.bos.redhat.com>
      Suggested-by: default avatarH. Peter Anvin <hpa@zytor.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarH. Peter Anvin <hpa@zytor.com>
      8bee738b
    • Suresh Siddha's avatar
      x86, irq: Allow 0xff for /proc/irq/[n]/smp_affinity on an 8-cpu system · 18374d89
      Suresh Siddha authored
      John Blackwood reported:
      > on an older Dell PowerEdge 6650 system with 8 cpus (4 are hyper-threaded),
      > and  32 bit (x86) kernel, once you change the irq smp_affinity of an irq
      > to be less than all cpus in the system, you can never change really the
      > irq smp_affinity back to be all cpus in the system (0xff) again,
      > even though no error status is returned on the "/bin/echo ff >
      > /proc/irq/[n]/smp_affinity" operation.
      >
      > This is due to that fact that BAD_APICID has the same value as
      > all cpus (0xff) on 32bit kernels, and thus the value returned from
      > set_desc_affinity() via the cpu_mask_to_apicid_and() function is treated
      > as a failure in set_ioapic_affinity_irq_desc(), and no affinity changes
      > are made.
      
      set_desc_affinity() is already checking if the incoming cpu mask
      intersects with the cpu online mask or not. So there is no need
      for the apic op cpu_mask_to_apicid_and() to check again
      and return BAD_APICID.
      
      Remove the BAD_APICID return value from cpu_mask_to_apicid_and()
      and also fix set_desc_affinity() to return -1 instead of using BAD_APICID
      to represent error conditions (as cpu_mask_to_apicid_and() can return
      logical or physical apicid values and BAD_APICID is really to represent
      bad physical apic id).
      Reported-by: default avatarJohn Blackwood <john.blackwood@ccur.com>
      Root-caused-by: default avatarJohn Blackwood <john.blackwood@ccur.com>
      Signed-off-by: default avatarSuresh Siddha <suresh.b.siddha@intel.com>
      LKML-Reference: <1261103386.2535.409.camel@sbs-t61>
      Signed-off-by: default avatarH. Peter Anvin <hpa@zytor.com>
      18374d89
    • Linus Torvalds's avatar
      Linux 2.6.33-rc1 · 55639353
      Linus Torvalds authored
      55639353
    • Linus Torvalds's avatar
      Merge branch 'cpumask-cleanups' of... · 55db493b
      Linus Torvalds authored
      Merge branch 'cpumask-cleanups' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus
      
      * 'cpumask-cleanups' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:
        cpumask: rename tsk_cpumask to tsk_cpus_allowed
        cpumask: don't recommend set_cpus_allowed hack in Documentation/cpu-hotplug.txt
        cpumask: avoid dereferencing struct cpumask
        cpumask: convert drivers/idle/i7300_idle.c to cpumask_var_t
        cpumask: use modern cpumask style in drivers/scsi/fcoe/fcoe.c
        cpumask: avoid deprecated function in mm/slab.c
        cpumask: use cpu_online in kernel/perf_event.c
      55db493b
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of... · efc8e7f4
      Linus Torvalds authored
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/security-testing-2.6:
        Keys: KEYCTL_SESSION_TO_PARENT needs TIF_NOTIFY_RESUME architecture support
        NOMMU: Optimise away the {dac_,}mmap_min_addr tests
        security/min_addr.c: make init_mmap_min_addr() static
        keys: PTR_ERR return of wrong pointer in keyctl_get_security()
      efc8e7f4
    • Linus Torvalds's avatar
      Merge branch 'omap-fixes-for-linus' of... · b5c96f89
      Linus Torvalds authored
      Merge branch 'omap-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6
      
      * 'omap-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6:
        OMAP3: serial - fix bug introduced in
        mfd: twl: fix twl4030 rename for remaining driver, board files
        USB ehci: replace mach header with plat
        omap3: Allow EHCI to be built on OMAP3
      b5c96f89
    • Linus Torvalds's avatar
      Merge branch 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging · e82b1dae
      Linus Torvalds authored
      * 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jdelvare/staging:
        hwmon: (w83627hf) Fix for "No such device"
        hwmon: (sht15) Off-by-one error in array index + incorrect constants
        hwmon: Add driver for VIA CPU core temperature
        hwmon: (smsc47m1) Enable device if needed
        hwmon: (smsc47m1) Fail module loading on error
        hwmon: (smsc47m1) Only request I/O ports we really use
        hwmon: New driver for AMD Family 10h/11h CPUs
      e82b1dae
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6 · fc6f0700
      Linus Torvalds authored
      * git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6: (40 commits)
        [SCSI] 3w-9xxx fix bug in sgl loading
        [SCSI] fcoe, libfc: adds enable/disable for fcoe interface
        [SCSI] libfc: reduce hold time on SCSI host lock
        [SCSI] libfc: remote port gets stuck in restart state without really restarting
        [SCSI] pm8001: misc code cleanup
        [SCSI] pm8001: enable read HBA SAS address from VPD
        [SCSI] pm8001: do not reset local sata as it will not be found if reset
        [SCSI] pm8001: bit set pm8001_ha->flags
        [SCSI] pm8001:fix potential NULL pointer dereference
        [SCSI] pm8001: set SSC down-spreading only to get less errors on some 6G device.
        [SCSI] pm8001: fix endian issues with SAS address
        [SCSI] pm8001: enhance error handle for IO patch
        [SCSI] pm8001: Fix for sata io circular lock dependency.
        [SCSI] hpsa: add driver for HP Smart Array controllers.
        [SCSI] cxgb3i: always use negative errno in case of error
        [SCSI] bnx2i: minor code cleanup and update driver version
        [SCSI] bnx2i: Task management ABORT TASK fixes
        [SCSI] bnx2i: update CQ arming algorith for 5771x chipsets
        [SCSI] bnx2i: Adjust sq_size module parametr to power of 2 only if a non-zero value is specified
        [SCSI] bnx2i: Add 5771E device support to bnx2i driver
        ...
      fc6f0700
    • Linus Torvalds's avatar
      Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus · dbfc9851
      Linus Torvalds authored
      * 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus: (71 commits)
        MIPS: Lasat: Fix botched changes to sysctl code.
        RTC: rtc-cmos.c: Fix warning on MIPS
        MIPS: Cleanup random differences beween lmo and Linus' kernel.
        MIPS: No longer hardwire CONFIG_EMBEDDED to y
        MIPS: Fix and enhance built-in kernel command line
        MIPS: eXcite: Remove platform.
        MIPS: Loongson: Cleanups of serial port support
        MIPS: Lemote 2F: Suspend CS5536 MFGPT Timer
        MIPS: Excite: move iodev_remove to .devexit.text
        MIPS: Lasat: Convert to proc_fops / seq_file
        MIPS: Cleanup signal code initialization
        MIPS: Modularize COP2 handling
        MIPS: Move EARLY_PRINTK to Kconfig.debug
        MIPS: Yeeloong 2F: Cleanup reset logic using the new ec_write function
        MIPS: Yeeloong 2F: Add LID open event as the wakeup event
        MIPS: Yeeloong 2F: Add basic EC operations
        MIPS: Move several variables from .bss to .init.data
        MIPS: Tracing: Make function graph tracer work with -mmcount-ra-address
        MIPS: Tracing: Reserve $12(t0) for mcount-ra-address of gcc 4.5
        MIPS: Tracing: Make ftrace for MIPS work without -fno-omit-frame-pointer
        ...
      dbfc9851
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable · 7c508e50
      Linus Torvalds authored
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable:
        Btrfs: make sure fallocate properly starts a transaction
        Btrfs: make metadata chunks smaller
        Btrfs: Show discard option in /proc/mounts
        Btrfs: deny sys_link across subvolumes.
        Btrfs: fail mount on bad mount options
        Btrfs: don't add extent 0 to the free space cache v2
        Btrfs: Fix per root used space accounting
        Btrfs: Fix btrfs_drop_extent_cache for skip pinned case
        Btrfs: Add delayed iput
        Btrfs: Pass transaction handle to security and ACL initialization functions
        Btrfs: Make truncate(2) more ENOSPC friendly
        Btrfs: Make fallocate(2) more ENOSPC friendly
        Btrfs: Avoid orphan inodes cleanup during committing transaction
        Btrfs: Avoid orphan inodes cleanup while replaying log
        Btrfs: Fix disk_i_size update corner case
        Btrfs: Rewrite btrfs_drop_extents
        Btrfs: Add btrfs_duplicate_item
        Btrfs: Avoid superfluous tree-log writeout
      7c508e50
    • Linus Torvalds's avatar
      Merge branch 'kmemleak' of git://linux-arm.org/linux-2.6 · dcc7cd01
      Linus Torvalds authored
      * 'kmemleak' of git://linux-arm.org/linux-2.6:
        kmemleak: fix kconfig for crc32 build error
        kmemleak: Reduce the false positives by checking for modified objects
        kmemleak: Show the age of an unreferenced object
        kmemleak: Release the object lock before calling put_object()
        kmemleak: Scan the _ftrace_events section in modules
        kmemleak: Simplify the kmemleak_scan_area() function prototype
        kmemleak: Do not use off-slab management with SLAB_NOLEAKTRACE
      dcc7cd01
  6. 17 Dec, 2009 21 commits