1. 17 4月, 2009 14 次提交
  2. 16 4月, 2009 17 次提交
  3. 15 4月, 2009 9 次提交
    • T
      Merge branch 'topic/hda' into for-linus · 9dd175f7
      Takashi Iwai 提交于
      * topic/hda:
        ALSA: hda - Fix the cmd cache keys for amp verbs
        ALSA: add missing definitions(letters) to HD-Audio.txt
      9dd175f7
    • T
      ALSA: hda - Fix the cmd cache keys for amp verbs · fcad94a4
      Takashi Iwai 提交于
      Fix the key value generation for get/set amp verbs.  The upper bits of
      the parameter have to be combined with the verb value to be unique for
      each direction/index of amp access.
      
      This fixes the resume problem on some hardwares like Macbook after
      the channel mode is changed.
      Tested-by: NJohannes Berg <johannes@sipsolutions.net>
      Cc: <stable@kernel.org>
      Signed-off-by: NTakashi Iwai <tiwai@suse.de>
      fcad94a4
    • L
      Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc · a23c218b
      Linus Torvalds 提交于
      * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc:
        powerpc: pseries/dtl.c should include asm/firmware.h
        powerpc: Fix data-corrupting bug in __futex_atomic_op
        powerpc/pseries: Set error_state to pci_channel_io_normal in eeh_report_reset()
        powerpc: Allow 256kB pages with SHMEM
        powerpc: Document new FSL I2C bindings and cleanup
        powerpc/mm: Fix compile warning
        powerpc/85xx: TQM8548: update defconfig
        powerpc/85xx: TQM8548: use proper phy-handles for enet2 and enet3
        powerpc/85xx: TQM85xx: correct address of LM75 I2C device nodes
        powerpc: Add support for early tlbilx opcode
        powerpc: Fix tlbilx opcode
      a23c218b
    • L
      acpi-cpufreq: fix 'smp_call_function_many()' confusion · ea34f43a
      Linus Torvalds 提交于
      It turns out that 'smp_call_function_many()' doesn't work at all like
      'smp_call_function_single()', and my change to Andrew's patch to use it
      rather than a loop over all CPU's acpi-cpufreq doesn't work.
      
      My bad.
      
      'smp_call_function_many()' has two "features" (aka "documented bugs"):
      
       (a) it needs to be called with preemption disabled, because it uses
           smp_processor_id() without guarding the CPU lookup with 'get_cpu()'
           and 'put_cpu()' like the 'single' variant does.
      
       (b) even if the current CPU is part of the CPU mask, it won't do the
           call on that CPU.
      
      Still, we're better off trying to use 'smp_call_function_many()' than
      looping over CPU's, since it at least in theory allows us to use a
      broadcast IPI and do it all in parallel.  So let's just work around the
      silly semantic bugs in that function.
      Reported-and-tested-by: NAli Gholami Rudi <ali@rudi.ir>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Andrew Morton <akpm@linux-foundation.org>,
      Cc: Rusty Russell <rusty@rustcorp.com.au>
      Cc: Dave Jones <davej@redhat.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      ea34f43a
    • E
      packet: avoid warnings when high-order page allocation fails · 719bfeaa
      Eric Dumazet 提交于
      Latest tcpdump/libpcap triggers annoying messages because of high order page
      allocation failures (when lowmem exhausted or fragmented)
      
      These allocation errors are correctly handled so could be silent.
      
      [22660.208901] tcpdump: page allocation failure. order:5, mode:0xc0d0
      [22660.208921] Pid: 13866, comm: tcpdump Not tainted 2.6.30-rc2 #170
      [22660.208936] Call Trace:
      [22660.208950]  [<c04e2b46>] ? printk+0x18/0x1a
      [22660.208965]  [<c02760f7>] __alloc_pages_internal+0x357/0x460
      [22660.208980]  [<c0276251>] __get_free_pages+0x21/0x40
      [22660.208995]  [<c04cc835>] packet_set_ring+0x105/0x3d0
      [22660.209009]  [<c04ccd1d>] packet_setsockopt+0x21d/0x4d0
      [22660.209025]  [<c0270400>] ? filemap_fault+0x0/0x450
      [22660.209040]  [<c0449e34>] sys_setsockopt+0x54/0xa0
      [22660.209053]  [<c044b97f>] sys_socketcall+0xef/0x270
      [22660.209067]  [<c0202e34>] sysenter_do_call+0x12/0x26
      Signed-off-by: NEric Dumazet <dada1@cosmosbay.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      719bfeaa
    • J
      cfq-iosched: add close cooperator code · a36e71f9
      Jens Axboe 提交于
      If we have processes that are working in close proximity to each
      other on disk, we don't want to idle wait. Instead allow the close
      process to issue a request, getting better aggregate bandwidth.
      The anticipatory scheduler has similar checks, noop and deadline do
      not need it since they don't care about process <-> io mappings.
      
      The code for CFQ is a little more involved though, since we split
      request queues into per-process contexts.
      
      This fixes a performance problem with eg dump(8), since it uses
      several processes in some silly attempt to speed IO up. Even if
      dump(8) isn't really a valid case (it should be fixed by using
      CLONE_IO), there are other cases where we see close processes
      and where idling ends up hurting performance.
      
      Credit goes to Jeff Moyer <jmoyer@redhat.com> for writing the
      initial implementation.
      Signed-off-by: NJens Axboe <jens.axboe@oracle.com>
      a36e71f9
    • J
      cfq-iosched: log responsible 'cfqq' in idle timer arm · 9481ffdc
      Jens Axboe 提交于
      Makes it easier to read the traces.
      Signed-off-by: NJens Axboe <jens.axboe@oracle.com>
      9481ffdc
    • J
      cfq-iosched: tweak kick logic a bit more · 2d870722
      Jens Axboe 提交于
      We only kick the dispatch for an idling queue, if we think it's a
      (somewhat) fully merged request. Also allow a kick if we have other
      busy queues in the system, since we don't want to risk waiting for
      a potential merge in that case. It's better to get some work done and
      proceed.
      Signed-off-by: NJens Axboe <jens.axboe@oracle.com>
      2d870722
    • J
      cfq-iosched: no need to save interrupts in cfq_kick_queue() · 40bb54d1
      Jens Axboe 提交于
      It's called from the workqueue handlers from process context, so
      we always have irqs enabled when entered.
      Signed-off-by: NJens Axboe <jens.axboe@oracle.com>
      40bb54d1