1. 15 12月, 2009 1 次提交
    • T
      sched: Use rcu in sys_sched_getscheduler/sys_sched_getparam() · 5fe85be0
      Thomas Gleixner 提交于
      read_lock(&tasklist_lock) does not protect
      sys_sched_getscheduler and sys_sched_getparam() against a
      concurrent update of the policy or scheduler parameters as
      do_sched_setscheduler() does not take the tasklist_lock. The
      accessed integers can be retrieved w/o locking and are snapshots
      anyway.
      
      Using rcu_read_lock() to protect find_task_by_vpid() and prevent
      the task struct from going away is not changing the above
      situation.
      Signed-off-by: NThomas Gleixner <tglx@linutronix.de>
      Cc: Peter Zijlstra <peterz@infradead.org>
      LKML-Reference: <20091209100706.753790977@linutronix.de>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      5fe85be0
  2. 13 12月, 2009 13 次提交
    • J
      sched: Use pr_fmt() and pr_<level>() · 663997d4
      Joe Perches 提交于
      - Convert printk(KERN_<level> to pr_<level> (not KERN_DEBUG)
       - Add #define pr_fmt(fmt) KBUILD_MODNAME ": " fmt
       - Coalesce long format strings
       - Add missing \n to "ERROR: !SD_LOAD_BALANCE domain has parent"
      Signed-off-by: NJoe Perches <joe@perches.com>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      LKML-Reference: <1260655047.2637.7.camel@Joe-Laptop.home>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      663997d4
    • R
      sched: Make wakeup side and atomic variants of completion API irq safe · 7539a3b3
      Rafael J. Wysocki 提交于
      Alan Stern noticed that all the wakeup side (and atomic) variants of the
      completion APIs should be irq safe, but the newly introduced
      completion_done() and try_wait_for_completion() aren't. The use of the
      irq unsafe variants in IRQ contexts can cause crashes/hangs.
      
      Fix the problem by making them use spin_lock_irqsave() and
      spin_lock_irqrestore().
      Reported-by: NAlan Stern <stern@rowland.harvard.edu>
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Zhang Rui <rui.zhang@intel.com>
      Cc: pm list <linux-pm@lists.linux-foundation.org>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: David Chinner <david@fromorbit.com>
      Cc: Lachlan McIlroy <lachlan@sgi.com>
      LKML-Reference: <200912130007.30541.rjw@sisk.pl>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      7539a3b3
    • L
      Merge branch 'ixp4xx' of git://git.kernel.org/pub/scm/linux/kernel/git/chris/linux-2.6 · f4054253
      Linus Torvalds 提交于
      * 'ixp4xx' of git://git.kernel.org/pub/scm/linux/kernel/git/chris/linux-2.6:
        IXP4xx: GTWX5715 platform only has two PCI IRQ lines, not four.
        IXP4xx: Introduce IXP4XX_GPIO_IRQ(n) macro and convert IXP4xx platform files.
        IXP4xx: move Gemtek GTWX5715 platform macros to the platform code.
        IXP4xx: Remove unused Motorola PrPMC1100 platform macros.
        IXP4xx: move FSG platform macros to the platform code.
        IXP4xx: move DSM G600 platform macros to the platform code.
        IXP4xx: move NAS100D platform macros to the platform code.
        IXP4xx: move NSLU2 platform macros to the platform code.
        IXP4xx: move Coyote platform macros to the platform code.
        IXP4xx: move AVILA platform macros to the platform code.
        IXP4xx: move IXDP425 platform macros to the platform code.
        IXP4xx: Extend PCI MMIO indirect address space to 1 GB.
        IXP4xx: Fix compilation failure with CONFIG_IXP4XX_INDIRECT_PCI.
        IXP4xx: Drop "__ixp4xx_" prefix from in/out/ioread/iowrite functions for clarity.
        IXP4xx: Rename indirect MMIO primitives from __ixp4xx_* to __indirect_*.
        IXP4xx: Ensure index is positive in irq_to_gpio() and npe_request().
        ARM: fix insl() and outsl() endianness on IXP4xx architecture.
        IXP4xx: Fix normally-disabled debugging text in drivers/net/arm/ixp4xx_eth.c.
        IXP4xx: change the timer base frequency to 66.666000 MHz.
      f4054253
    • L
      [BKL] add 'might_sleep()' to the outermost lock taker · f01eb364
      Linus Torvalds 提交于
      As shown by the previous patch (6698e347: "tty: Fix BKL taken under a
      spinlock bug introduced in the BKL split") the BKL removal is prone to
      some subtle issues, where removing the BKL in one place may in fact make
      a previously nested BKL call the new outer call, and then prone to nasty
      deadlocks with other spinlocks.
      
      In general, we should never take the BKL while we're holding a spinlock,
      so let's just add a "might_sleep()" to it (even though the BKL doesn't
      technically sleep - at least not yet), and we'll get nice warnings the
      next time this kind of problem happens during BKL removal.
      Acked-and-Tested-by: NThomas Gleixner <tglx@linutronix.de>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      f01eb364
    • A
      tty: Fix BKL taken under a spinlock bug introduced in the BKL split · 6698e347
      Alan Cox 提交于
      The fasync path takes the BKL (it probably doesn't need to in fact)
      while holding the file_list spinlock.  You can't do that with the kernel
      lock: it causes lock inversions and deadlocks.
      
      Leave the BKL over that bit for the moment.
      
      Identified by AKPM.
      Signed-off-by: NAlan Cox <alan@linux.intel.com>
      Acked-and-Tested-by: NThomas Gleixner <tglx@linutronix.de>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      6698e347
    • L
      Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc · 09cea96c
      Linus Torvalds 提交于
      * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (151 commits)
        powerpc: Fix usage of 64-bit instruction in 32-bit altivec code
        MAINTAINERS: Add PowerPC patterns
        powerpc/pseries: Track previous CPPR values to correctly EOI interrupts
        powerpc/pseries: Correct pseries/dlpar.c build break without CONFIG_SMP
        powerpc: Make "intspec" pointers in irq_host->xlate() const
        powerpc/8xx: DTLB Miss cleanup
        powerpc/8xx: Remove DIRTY pte handling in DTLB Error.
        powerpc/8xx: Start using dcbX instructions in various copy routines
        powerpc/8xx: Restore _PAGE_WRITETHRU
        powerpc/8xx: Add missing Guarded setting in DTLB Error.
        powerpc/8xx: Fixup DAR from buggy dcbX instructions.
        powerpc/8xx: Tag DAR with 0x00f0 to catch buggy instructions.
        powerpc/8xx: Update TLB asm so it behaves as linux mm expects.
        powerpc/8xx: Invalidate non present TLBs
        powerpc/pseries: Serialize cpu hotplug operations during deactivate Vs deallocate
        pseries/pseries: Add code to online/offline CPUs of a DLPAR node
        powerpc: stop_this_cpu: remove the cpu from the online map.
        powerpc/pseries: Add kernel based CPU DLPAR handling
        sysfs/cpu: Add probe/release files
        powerpc/pseries: Kernel DLPAR Infrastructure
        ...
      09cea96c
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6 · 6eb7365d
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
        ALSA: hda - Overwrite pin config on intel DG45ID board.
        intelhdmi - dont power off HDA link
        ALSA: hrtimer - Fix lock-up
        ALSA: intelhdmi - add channel mapping for typical configurations
        ALSA: intelhdmi - channel mapping applies to Pin
        ALSA: intelhdmi - accept DisplayPort pin
        ALSA: hda - show HBR(High Bit Rate) pin cap in procfs
        ALSA: hda - Fix LED GPIO setup for HP laptops with IDT codecs
        ASoC: Fix build of OMAP sound drivers
        ALSA: opti93x: fix irq releasing if the irq cannot be allocated
      6eb7365d
    • L
      Merge branch 'omap-for-linus' of... · 9c3936cb
      Linus Torvalds 提交于
      Merge branch 'omap-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6
      
      * 'omap-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap-2.6: (75 commits)
        omap3: Fix OMAP35XX_REV macros
        omap: serial: fix non-empty uart fifo read abort
        omap3: Zoom2/3: Update hsmmc board config params
        omap3 : Enable TWL4030 Keypad for Zoom2 and Zoom3 boards
        omap3: id code detection 3525 vs 3515
        omap3: rx51: Use wl1251 in SPI mode 3
        omap3: zoom2/3: make MMC slot work again
        omap1: htcherald: Update defconfig to include mux support
        omap1: LCD_DMA: Use some define rather than a hexadecimal
        omap: header: remove unused data-type
        omap: arch/arm/plat-omap/devices.c - sort alphabetically
        omap: Correcting GPMC_CONFIG1_DEVICETYPE_NAND
        OMAP3: serial - allow platforms specify which UARTs to initialize
        omap3: cm-t35: add mux initialization
        OMAP4: Sync up omap4430 defconfig
        OMAP4: Remove the secondary wait loop
        OMAP4: AuxCoreBoot registers only accessible in secure mode
        OMAP4: Fix SRAM base and size
        OMAP4: Fix cpu detection
        omap3: pandora: board file updates for .33
        ...
      9c3936cb
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6 · 5de76b18
      Linus Torvalds 提交于
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
        be2net: fix error in rx completion processing.
        igbvf: avoid reset storms due to mailbox issues
        igb: fix handling of mailbox collisions between PF/VF
        usb: remove rare pm primitive for conversion to new API
      5de76b18
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6 · 8d0e7fb9
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6:
        slab, kmemleak: pass the correct pointer to kmemleak_erase()
        slab, kmemleak: stop calling kmemleak_erase() unconditionally
        SLAB: Fix unlikely() annotation in __cache_alloc_node()
        SLAB: Fix lockdep annotations for CPU hotplug
        SLUB: Fix __GFP_ZERO unlikely() annotation
        slub: allow stats to be cleared
      8d0e7fb9
    • L
      Merge branch 'sched-fixes-for-linus' of... · 702a7c76
      Linus Torvalds 提交于
      Merge branch 'sched-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip
      
      * 'sched-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (21 commits)
        sched: Remove forced2_migrations stats
        sched: Fix memory leak in two error corner cases
        sched: Fix build warning in get_update_sysctl_factor()
        sched: Update normalized values on user updates via proc
        sched: Make tunable scaling style configurable
        sched: Fix missing sched tunable recalculation on cpu add/remove
        sched: Fix task priority bug
        sched: cgroup: Implement different treatment for idle shares
        sched: Remove unnecessary RCU exclusion
        sched: Discard some old bits
        sched: Clean up check_preempt_wakeup()
        sched: Move update_curr() in check_preempt_wakeup() to avoid redundant call
        sched: Sanitize fork() handling
        sched: Clean up ttwu() rq locking
        sched: Remove rq->clock coupling from set_task_cpu()
        sched: Consolidate select_task_rq() callers
        sched: Remove sysctl.sched_features
        sched: Protect sched_rr_get_param() access to task->sched_class
        sched: Protect task->cpus_allowed access in sched_getaffinity()
        sched: Fix balance vs hotplug race
        ...
      
      Fixed up conflicts in kernel/sysctl.c (due to sysctl cleanup)
      702a7c76
    • T
      Merge branch 'topic/hda' into for-linus · 84a3bd06
      Takashi Iwai 提交于
      84a3bd06
    • T
      Merge branch 'topic/asoc' into for-linus · f52d7a43
      Takashi Iwai 提交于
      f52d7a43
  3. 12 12月, 2009 26 次提交