1. 07 12月, 2011 2 次提交
  2. 06 12月, 2011 6 次提交
  3. 05 12月, 2011 5 次提交
    • I
      Merge branch 'tip/perf/urgent' of... · dc440d10
      Ingo Molnar 提交于
      Merge branch 'tip/perf/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace into perf/urgent
      dc440d10
    • I
    • P
      perf: Fix loss of notification with multi-event · 10c6db11
      Peter Zijlstra 提交于
      When you do:
              $ perf record -e cycles,cycles,cycles noploop 10
      
      You expect about 10,000 samples for each event, i.e., 10s at
      1000samples/sec. However, this is not what's happening. You
      get much fewer samples, maybe 3700 samples/event:
      
      $ perf report -D | tail -15
      Aggregated stats:
                 TOTAL events:      10998
                  MMAP events:         66
                  COMM events:          2
                SAMPLE events:      10930
      cycles stats:
                 TOTAL events:       3644
                SAMPLE events:       3644
      cycles stats:
                 TOTAL events:       3642
                SAMPLE events:       3642
      cycles stats:
                 TOTAL events:       3644
                SAMPLE events:       3644
      
      On a Intel Nehalem or even AMD64, there are 4 counters capable
      of measuring cycles, so there is plenty of space to measure those
      events without multiplexing (even with the NMI watchdog active).
      And even with multiplexing, we'd expect roughly the same number
      of samples per event.
      
      The root of the problem was that when the event that caused the buffer
      to become full was not the first event passed on the cmdline, the user
      notification would get lost. The notification was sent to the file
      descriptor of the overflowed event but the perf tool was not polling
      on it.  The perf tool aggregates all samples into a single buffer,
      i.e., the buffer of the first event. Consequently, it assumes
      notifications for any event will come via that descriptor.
      
      The seemingly straight forward solution of moving the waitq into the
      ringbuffer object doesn't work because of life-time issues. One could
      perf_event_set_output() on a fd that you're also blocking on and cause
      the old rb object to be freed while its waitq would still be
      referenced by the blocked thread -> FAIL.
      
      Therefore link all events to the ringbuffer and broadcast the wakeup
      from the ringbuffer object to all possible events that could be waited
      upon. This is rather ugly, and we're open to better solutions but it
      works for now.
      Reported-by: NStephane Eranian <eranian@google.com>
      Finished-by: NStephane Eranian <eranian@google.com>
      Reviewed-by: NStephane Eranian <eranian@google.com>
      Signed-off-by: NPeter Zijlstra <a.p.zijlstra@chello.nl>
      Link: http://lkml.kernel.org/r/20111126014731.GA7030@quadSigned-off-by: NIngo Molnar <mingo@elte.hu>
      10c6db11
    • R
      perf, x86: Force IBS LVT offset assignment for family 10h · 16e5294e
      Robert Richter 提交于
      On AMD family 10h we see firmware bug messages like the following:
      
       [Firmware Bug]: cpu 6, try to use APIC500 (LVT offset 0) for vector 0x10400, but the register is already in use for vector 0xf9 on another cpu
       [Firmware Bug]: cpu 6, IBS interrupt offset 0 not available (MSRC001103A=0x0000000000000100)
       [Firmware Bug]: using offset 1 for IBS interrupts
       [Firmware Bug]: workaround enabled for IBS LVT offset
       perf: AMD IBS detected (0x00000007)
      
      We always see this, since the offsets are not assigned by the BIOS for
      this family. Force LVT offset assignment in this case. If the OS
      assignment fails, fallback to BIOS settings and try to setup this.
      
      The fallback to BIOS settings weakens the family check since
      force_ibs_eilvt_setup() may fail e.g. in case of virtual machines.
      But setup may still succeed if BIOS offsets are correct.
      
      Other families don't have a workaround implemented that assigns LVT
      offsets. It's ok, to drop calling force_ibs_eilvt_setup() for that
      families.
      
      With the patch the [Firmware Bug] messages vanish. We see now:
      
       IBS: LVT offset 1 assigned
       perf: AMD IBS detected (0x00000007)
      Signed-off-by: NRobert Richter <robert.richter@amd.com>
      Signed-off-by: NPeter Zijlstra <a.p.zijlstra@chello.nl>
      Link: http://lkml.kernel.org/r/20111109162225.GO12451@erda.amd.comSigned-off-by: NIngo Molnar <mingo@elte.hu>
      16e5294e
    • P
      perf, x86: Disable PEBS on SandyBridge chips · 6a600a8b
      Peter Zijlstra 提交于
      Cc: Stephane Eranian <eranian@google.com>
      Cc: stable@kernel.org
      Signed-off-by: NPeter Zijlstra <a.p.zijlstra@chello.nl>
      Signed-off-by: NIngo Molnar <mingo@elte.hu>
      6a600a8b
  4. 02 12月, 2011 1 次提交
  5. 16 11月, 2011 2 次提交
  6. 15 11月, 2011 1 次提交
  7. 14 11月, 2011 9 次提交
  8. 13 11月, 2011 2 次提交
  9. 12 11月, 2011 12 次提交
    • L
      Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 5b34b089
      Linus Torvalds 提交于
      * 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
        arm/imx: fix imx6q mmc error when mounting rootfs
        arm/imx: fix AUTO_ZRELADDR selection
        arm/imx: fix the references to ARCH_MX3
        ARM: mx51/53: set pwm clock parent to ipg_perclk
        arm/tegra: enable headphone detection gpio on seaboard
        arm/dt: Fix ventana SDHCI power-gpios
        arm/tegra: Don't create duplicate gpio and pinmux devices
        ARM: at91: Fix USBA gadget registration
        atmel/spi: fix missing probe
        at91/yl-9200: Fix section mismatch
        at91: vmalloc fix missing AT91_VIRT_BASE define
        ARM: at91: usart: drop static map regs for dbgu
        ARM: picoxcell: add extra temp register to addruart
        ARM: msm: fix compilation flags for MSM_SCM
        arm/mxs: fix mmc device adding for mach-mx28evk
        ARM: mxc: Remove test_for_ltirq
        ARM:i.MX: fix build error in clock-mx51-mx53.c
        ARM:i.MX: fix build error in tzic/avic.c
        ARM: mxc: fix local timer interrupt handling
        msm: boards: Fix fallout from removal of machine_desc in fixup
      5b34b089
    • A
      [CPUFREQ] db8500: fix build error due to undeclared i variable · eb0b38a5
      Axel Lin 提交于
      The variable i is removed by commit ded84337
      "[CPUFREQ] db8500: remove unneeded for loop iteration over freq_table",
      but current code to print available frequencies still uses the i variable.
      Thus add the i variable back to fix below buld error:
      
        CC      drivers/cpufreq/db8500-cpufreq.o
      drivers/cpufreq/db8500-cpufreq.c: In function 'db8500_cpufreq_init':
      drivers/cpufreq/db8500-cpufreq.c:123: error: 'i' undeclared (first use in this function)
      drivers/cpufreq/db8500-cpufreq.c:123: error: (Each undeclared identifier is reported only once
      drivers/cpufreq/db8500-cpufreq.c:123: error: for each function it appears in.)
      make[2]: *** [drivers/cpufreq/db8500-cpufreq.o] Error 1
      make[1]: *** [drivers/cpufreq] Error 2
      make: *** [drivers] Error 2
      
      This patch also fixes using uninitialized i variable as array index.
      Signed-off-by: NAxel Lin <axel.lin@gmail.com>
      Acked-by: NLinus Walleij <linus.walleij@linaro.org>
      Signed-off-by: NDave Jones <davej@redhat.com>
      eb0b38a5
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k · 8f042aa7
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k: (29 commits)
        m68k/mac: Remove mac_irq_{en,dis}able() wrappers
        m68k/irq: Remove obsolete support for user vector interrupt fixups
        m68k/irq: Remove obsolete m68k irq framework
        m68k/q40: Convert Q40/Q60 to genirq
        m68k/sun3: Convert Sun3/3x to genirq
        m68k/sun3: Use the kstat_irqs_cpu() wrapper
        m68k/apollo: Convert Apollo to genirq
        m68k/vme: Convert VME to genirq
        m68k/hp300: Convert HP9000/300 and HP9000/400 to genirq
        m68k/mac: Optimize interrupts using chain handlers
        m68k/mac: Convert Mac to genirq
        m68k/amiga: Optimize interrupts using chain handlers
        m68k/amiga: Convert Amiga to genirq
        m68k/amiga: Refactor amiints.c
        m68k/atari: Remove code and comments about different irq types
        m68k/atari: Convert Atari to genirq
        m68k/irq: Add genirq support
        m68k/irq: Remove obsolete IRQ_FLG_* users
        m68k/irq: Rename {,__}m68k_handle_int()
        m68k/irq: Add m68k_setup_irq_controller()
        ...
      8f042aa7
    • L
      Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · e6f1227e
      Linus Torvalds 提交于
      * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media:
        [media] v4l2-ctrl: Send change events to all fh for auto cluster slave controls
        [media] v4l2-event: Don't set sev->fh to NULL on unsubscribe
        [media] v4l2-event: Remove pending events from fh event queue when unsubscribing
        [media] v4l2-event: Deny subscribing with a type of V4L2_EVENT_ALL
        [media] MAINTAINERS: add a maintainer for s5p-mfc driver
        [media] v4l: s5p-mfc: fix reported capabilities
        [media] media: vb2: reset queued list on REQBUFS(0) call
        [media] media: vb2: set buffer length correctly for all buffer types
        [media] media: vb2: add a check for uninitialized buffer
        [media] mxl111sf: fix build warning
        [media] mxl111sf: remove pointless if condition in mxl111sf_config_spi
        [media] mxl111sf: check for errors after mxl111sf_write_reg in mxl111sf_idac_config
        [media] mxl111sf: fix return value of mxl111sf_idac_config
        [media] uvcvideo: GET_RES should only be checked for BITMAP type menu controls
      e6f1227e
    • L
      Merge branch 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc · 3455229f
      Linus Torvalds 提交于
      * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc:
        powerpc/kvm: Fix build failure with HV KVM and CBE
        powerpc/ps3: Fix lv1_gpu_attribute hcall
        powerpc/ps3: Fix PS3 repository build warnings
        powerpc/ps3: irq: Remove IRQF_DISABLED
        powerpc/irq: Remove IRQF_DISABLED
        powerpc/numa: NUMA topology support for PowerNV
        powerpc: Add System RAM to /proc/iomem
        powerpc: Add KVM as module to defconfigs
        powerpc/kvm: Fix build with older toolchains
        powerpc, tqm5200: update tqm5200_defconfig to fit for charon board.
        powerpc/5200: add support for charon board
      3455229f
    • L
      Merge branch 'rc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild · 732783fe
      Linus Torvalds 提交于
      * 'rc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
        kbuild: Fix missing system calls check on mips.
      732783fe
    • W
      bma023: Add SFI translation for this device · 9f80d8b6
      William Douglas 提交于
      This needed the sfi IRQ 0xFF fix to go in first. It simply plumbs in the
      bma023 driver with the firmware naming of it.
      Signed-off-by: NWilliam Douglas <william.douglas@intel.com>
      Signed-off-by: NAlan Cox <alan@linux.intel.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      9f80d8b6
    • F
      vrtc: change its year offset from 1960 to 1972 · 57e6319d
      Feng Tang 提交于
      Real world year equals the value in vrtc YEAR register plus an offset.
      We used 1960 as the offset to make leap year consistent, but for a
      device's first use, its YEAR register is 0 and the system year will
      be parsed as 1960 which is not a valid UNIX time and will cause many
      applications to fail mysteriously. So we use 1972 instead to fix this
      issue.
      
      Updated patch which adds a sanity check suggested by Mathias
      
      This isn't a change in behaviour for systems, because 1972 is the one we
      actually use. It's the old version in upstream which is out of sync with
      all devices.
      Signed-off-by: NFeng Tang <feng.tang@intel.com>
      Signed-off-by: NAlan Cox <alan@linux.intel.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      57e6319d
    • Z
      ce4100: fix a build error · f2ee4421
      Zhang Rui 提交于
      Fix a build error. CE4100 with no serial errors because the alternate
      function is only a prototype not a null function as intended.
      Signed-off-by: NZhang Rui <rui.zhang@intel.com>
      Signed-off-by: NAlan Cox <alan@linux.intel.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      f2ee4421
    • L
      Merge branch 'upstream-linus' of git://github.com/jgarzik/libata-dev · 87618e00
      Linus Torvalds 提交于
      * 'upstream-linus' of git://github.com/jgarzik/libata-dev:
        pata_of_platform: Don't use NO_IRQ
        [libata] ahci: Add ASMedia ASM1061 support
        [libata] Issue SRST to Sil3726 PMP
        sata_sis.c: trivial spelling fix
        ahci_platform: use dev_get_platdata()
        [libata] libata-scsi.c: Add function parameter documentation
      87618e00
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs · c1f42467
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs:
        btrfs: rename the option to nospace_cache
        Btrfs: handle bio_add_page failure gracefully in scrub
        Btrfs: fix deadlock caused by the race between relocation
        Btrfs: only map pages if we know we need them when reading the space cache
        Btrfs: fix orphan backref nodes
        Btrfs: Abstract similar code for btrfs_block_rsv_add{, _noflush}
        Btrfs: fix unreleased path in btrfs_orphan_cleanup()
        Btrfs: fix no reserved space for writing out inode cache
        Btrfs: fix nocow when deleting the item
        Btrfs: tweak the delayed inode reservations again
        Btrfs: rework error handling in btrfs_mount()
        Btrfs: close devices on all error paths in open_ctree()
        Btrfs: avoid null dereference and leaks when bailing from open_ctree()
        Btrfs: fix subvol_name leak on error in btrfs_mount()
        Btrfs: fix memory leak in btrfs_parse_early_options()
        Btrfs: fix our reservations for updating an inode when completing io
        Btrfs: fix oops on NULL trans handle in btrfs_truncate
        btrfs: fix double-free 'tree_root' in 'btrfs_mount()'
      c1f42467
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · fe10e6f4
      Linus Torvalds 提交于
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
        ALSA: usb-audio: Use kmemdup rather than duplicating its implementation
        ALSA: hda - Re-enable the check NO_PRESENCE misc bit
        ALSA: vmaster - Free slave-links when freeing the master element
        ALSA: hda - Don't add elements of other codecs to vmaster slave
        ALSA: intel8x0: improve virtual environment detection
        ALSA: intel8x0: move virtual environment detection code into one place
        ALSA: snd_usb_audio: add Logitech HD Webcam c510 to quirk-384
        ALSA: hda - fix internal mic on Dell Vostro 3500 laptop
        ALSA: HDA: Remove quirk for Toshiba T110
        ALSA: usb-audio - Fix the missing volume quirks at delayed init
        ALSA: hda - Mute unused capture sources for Realtek codecs
        ALSA: intel8x0: Improve comments for VM optimization
        ASoC: Ensure we get an impedence reported for WM8958 jack detect
        ASoC: Don't use wm8994->control_data when requesting IRQs
        ASoC: Don't use wm8994->control_data in wm8994_readable_register()
        ASoC: Update git repository URL
      fe10e6f4