08 Feb, 2011

4 commits

  • Some architectures have unusual symbol names and the generic code to
    match the symbol name with the function name for the syscall metadata
    will fail. For example, symbols on PPC64 start with a period and the
    generic code will fail to match them.

    This patch moves the match logic out into a separate function which an
    arch can override by defining ARCH_HAS_SYSCALL_MATCH_SYM_NAME in
    asm/ftrace.h and implementing arch_syscall_match_sym_name.

    Signed-off-by: Ian Munsie
    LKML-Reference:
    Signed-off-by: Steven Rostedt

    Ian Munsie
     
  • Some architectures use non-trivial system call tables and will not work
    with the generic arch_syscall_addr code. For example, PowerPC64 uses a
    table of twin long longs.

    This patch makes the generic arch_syscall_addr weak to allow
    architectures with non-trivial system call tables to override it.

    Signed-off-by: Ian Munsie
    LKML-Reference:
    Signed-off-by: Steven Rostedt

    Ian Munsie
     
  • With the ftrace events now checking if the syscall_nr is valid upon
    initialisation it should no longer be possible to register or unregister
    a syscall event without a valid syscall_nr since they should not be
    created. This adds a WARN_ON_ONCE in the register and unregister
    functions to locate potential regressions in the future.

    Signed-off-by: Ian Munsie
    LKML-Reference:
    Signed-off-by: Steven Rostedt

    Ian Munsie
     
  • FTRACE_SYSCALLS would create events for each and every system call, even
    if it had failed to map the system call's name with it's number. This
    resulted in a number of events being created that would not behave as
    expected.

    This could happen, for example, on architectures who's symbol names are
    unusual and will not match the system call name. It could also happen
    with system calls which were mapped to sys_ni_syscall.

    This patch changes the default system call number in the metadata to -1.
    If the system call name from the metadata is not successfully mapped to
    a system call number during boot, than the event initialisation routine
    will now return an error, preventing the event from being created.

    Signed-off-by: Ian Munsie
    LKML-Reference:
    Signed-off-by: Steven Rostedt

    Ian Munsie
     

07 Feb, 2011

9 commits


06 Feb, 2011

6 commits


05 Feb, 2011

15 commits

  • The mask which filters out the valid bits which can be set via
    irq_modify_status() is missing IRQ_NO_BALANCING, which breaks UV.

    Add IRQ_PER_CPU as well to avoid another one line patch for 39.

    Signed-off-by: Thomas Gleixner

    Thomas Gleixner
     
  • The perf annotate tool continues aggregating everything on just one
    histograms, but to support the top model add support for one histogram
    perf evsel in the evlist.

    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Mike Galbraith
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Cc: Stephane Eranian
    Cc: Tom Zanussi
    LKML-Reference:
    Signed-off-by: Arnaldo Carvalho de Melo

    Arnaldo Carvalho de Melo
     
  • They will be used by perf top, so that we have just one set of routines
    to do annotation.

    Rename "struct sym_priv" to "struct annotation", etc, to clarify this
    code a bit.

    Rename "struct sym_ext" to "struct source_line", to give it a meaningful
    name, that clarifies that it is a the result of an addr2line call, that
    is sorted by percentage one particular source code line appeared in the
    annotation.

    And since we're moving things around also rename 'sym_hist->ip' to
    'sym_hist->addr' as we want to do data structure annotation at some
    point.

    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Mike Galbraith
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Cc: Stephane Eranian
    Cc: Tom Zanussi
    LKML-Reference:
    Signed-off-by: Arnaldo Carvalho de Melo

    Arnaldo Carvalho de Melo
     
  • From the sym_entry struct, struct symbol already has this field.

    Cc: Frederic Weisbecker
    Cc: Ingo Molnar
    Cc: Mike Galbraith
    Cc: Paul Mackerras
    Cc: Peter Zijlstra
    Cc: Stephane Eranian
    Cc: Tom Zanussi
    LKML-Reference:
    Signed-off-by: Arnaldo Carvalho de Melo

    Arnaldo Carvalho de Melo
     
  • Since checkin ebba638ae723d8a8fc2f7abce5ec18b688b791d7 we call
    verify_cpu even in 32-bit mode. Unfortunately, calling a function
    means using the stack, and the stack pointer was not initialized in
    the 32-bit setup code! This code initializes the stack pointer, and
    simplifies the interface slightly since it is easier to rely on just a
    pointer value rather than a descriptor; we need to have different
    values for the segment register anyway.

    This retains start_stack as a virtual address, even though a physical
    address would be more convenient for 32 bits; the 64-bit code wants
    the other way around...

    Reported-by: Matthieu Castet
    LKML-Reference:
    Tested-by: Kees Cook
    Signed-off-by: H. Peter Anvin

    H. Peter Anvin
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (68 commits)
    net: can: janz-ican3: world-writable sysfs termination file
    net: can: at91_can: world-writable sysfs files
    MAINTAINERS: update email ids of the be2net driver maintainers.
    bridge: Don't put partly initialized fdb into hash
    r8169: prevent RxFIFO induced loops in the irq handler.
    r8169: RxFIFO overflow oddities with 8168 chipsets.
    r8169: use RxFIFO overflow workaround for 8168c chipset.
    include/net/genetlink.h: Allow genlmsg_cancel to accept a NULL argument
    net: Provide compat support for SIOCGETMIFCNT_IN6 and SIOCGETSGCNT_IN6.
    net: Support compat SIOCGETVIFCNT ioctl in ipv4.
    net: Fix bug in compat SIOCGETSGCNT handling.
    niu: Fix races between up/down and get_stats.
    tcp_ecn is an integer not a boolean
    atl1c: Add missing PCI device ID
    s390: Fix possibly wrong size in strncmp (smsgiucv)
    s390: Fix wrong size in memcmp (netiucv)
    qeth: allow OSA CHPARM change in suspend state
    qeth: allow HiperSockets framesize change in suspend
    qeth: add more strict MTU checking
    qeth: show new mac-address if its setting fails
    ...

    Linus Torvalds
     
  • Don't allow everybody to set terminator via sysfs.

    Signed-off-by: Vasiliy Kulikov
    Signed-off-by: David S. Miller

    Vasiliy Kulikov
     
  • Don't allow everybody to write to mb0_id file.

    Signed-off-by: Vasiliy Kulikov
    Acked-by: Kurt Van Dijck
    Signed-off-by: David S. Miller

    Vasiliy Kulikov
     
  • Signed-off-by: Ajit Khaparde
    Signed-off-by: David S. Miller

    Ajit Khaparde
     
  • The fdb_create() puts a new fdb into hash with only addr set. This is
    not good, since there are callers, that search the hash w/o the lock
    and access all the other its fields.

    Applies to current netdev tree.

    Signed-off-by: Pavel Emelyanov
    Signed-off-by: David S. Miller

    Pavel Emelyanov
     
  • In get_empty_filp() since 2.6.29, file_free(f) is called with f->f_cred == NULL
    when security_file_alloc() returned an error. As a result, kernel will panic()
    due to put_cred(NULL) call within RCU callback.

    Fix this bug by assigning f->f_cred before calling security_file_alloc().

    Signed-off-by: Tetsuo Handa
    Signed-off-by: David Howells
    Signed-off-by: Linus Torvalds

    Tetsuo Handa
     
  • …t/rostedt/linux-2.6-trace into perf/urgent

    Ingo Molnar
     
  • * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: (27 commits)
    gpu/stub: fix acpi_video build error, fix stub kconfig dependencies
    drm/radeon/kms: dynamically allocate power state space
    drm/radeon/kms: fix s/r issues with bios scratch regs
    agp: ensure GART has an address before enabling it
    Revert "agp: AMD AGP is used on UP1100 & UP1500 alpha boxen"
    amd-k7-agp: remove non-x86 code
    drm/radeon/kms/evergreen: always set certain VGT regs at CP init
    drm/radeon/kms: add updated ib_execute function for evergreen
    drm/radeon: remove 0x4243 pci id
    drm/radeon/kms: Enable new pll calculation for avivo+ asics
    drm/radeon/kms: add new pll algo for avivo asics
    drm/radeon/kms: add pll debugging output
    drm/radeon/kms: switch back to min->max pll post divider iteration
    drm/radeon/kms: rv6xx+ thermal sensor fixes
    drm/nv50: fix display on 0x50
    drm/nouveau: correctly pair hwmon_init and hwmon_fini
    drm/i915: Only bind to function 0 of the PCI device
    drm/i915: Suppress spurious vblank interrupts
    drm: Avoid leak of adjusted mode along quick set_mode paths
    drm: Simplify and defend later checks when disabling a crtc
    ...

    Linus Torvalds
     
  • In drm_crtc_helper_set_config, instead of always forcing all outputs
    to DRM_MODE_DPMS_ON, only set them if the CRTC is actually getting a
    mode set, as any mode set will turn all outputs on.

    This fixes https://lkml.org/lkml/2011/1/24/457

    Signed-off-by: Keith Packard
    Cc: stable@kernel.org (2.6.37)
    Reported-and-tested-by: Carlos R. Mafra
    Tested-by: Takashi Iwai
    Signed-off-by: Linus Torvalds

    Keith Packard
     
  • Takashi Iwai
     

04 Feb, 2011

6 commits

  • While the RxFIFO interruption is masked for most 8168, nothing prevents
    it to appear in the irq status word. This is no excuse to crash.

    Signed-off-by: Francois Romieu
    Cc: Ivan Vecera
    Cc: Hayes

    Francois Romieu
     
  • Some experiment-based action to prevent my 8168 chipsets locking-up hard
    in the irq handler under load (pktgen ~1Mpps). Apparently a reset is not
    always mandatory (is it at all ?).

    - RTL_GIGA_MAC_VER_12
    - RTL_GIGA_MAC_VER_25
    Missed ~55% packets. Note:
    - this is an old SiS 965L motherboard
    - the 8168 chipset emits (lots of) control frames towards the sender

    - RTL_GIGA_MAC_VER_26
    The chipset does not go into a frenzy of mac control pause when it
    crashes yet but it can still be crashed. It needs more work.

    Signed-off-by: Francois Romieu
    Cc: Ivan Vecera
    Cc: Hayes

    Francois Romieu
     
  • I found that one of the 8168c chipsets (concretely XID 1c4000c0) starts
    generating RxFIFO overflow errors. The result is an infinite loop in
    interrupt handler as the RxFIFOOver is handled only for ...MAC_VER_11.
    With the workaround everything goes fine.

    Signed-off-by: Ivan Vecera
    Acked-by: Francois Romieu
    Cc: Hayes

    Ivan Vecera
     
  • Calling local_bh_enable() will want to actually start processing
    softirqs, which isn't a good idea since this can get called with IRQs
    disabled.

    Cure this by using _local_bh_enable() which doesn't start processing
    softirqs, and use raw_local_irq_save() to avoid any softirqs from
    happening without letting lockdep think IRQs are in fact disabled.

    Reported-by: Nick Bowler
    Signed-off-by: Peter Zijlstra
    Reviewed-by: Yong Zhang
    LKML-Reference:
    Signed-off-by: Thomas Gleixner

    Peter Zijlstra
     
  • nlmsg_cancel can accept NULL as its second argument, so for similarity,
    this patch extends genlmsg_cancel to be able to accept a NULL second
    argument as well.

    Signed-off-by: Julia Lawall
    Signed-off-by: David S. Miller

    Julia Lawall
     
  • The comments under "config STUB_POULSBO" are close to correct,
    but they are not being followed. This patch updates them to reflect
    the requirements for THERMAL.

    This build error is caused by STUB_POULSBO selecting ACPI_VIDEO
    when ACPI_VIDEO's config requirements are not met.

    ERROR: "thermal_cooling_device_register" [drivers/acpi/video.ko] undefined!
    ERROR: "thermal_cooling_device_unregister" [drivers/acpi/video.ko] undefined!

    Signed-off-by: Randy Dunlap
    Tested-by: Ingo Molnar
    Signed-off-by: Dave Airlie

    Randy Dunlap