08 Nov, 2011

14 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (47 commits)
    forcedeth: fix a few sparse warnings (variable shadowing)
    forcedeth: Improve stats counters
    forcedeth: remove unneeded stats updates
    forcedeth: Acknowledge only interrupts that are being processed
    forcedeth: fix race when unloading module
    MAINTAINERS/rds: update maintainer
    wanrouter: Remove kernel_lock annotations
    usbnet: fix oops in usbnet_start_xmit
    ixgbe: Fix compile for kernel without CONFIG_PCI_IOV defined
    etherh: Add MAINTAINERS entry for etherh
    bonding: comparing a u8 with -1 is always false
    sky2: fix regression on Yukon Optima
    netlink: clarify attribute length check documentation
    netlink: validate NLA_MSECS length
    i825xx:xscale:8390:freescale: Fix Kconfig dependancies
    macvlan: receive multicast with local address
    tg3: Update version to 3.121
    tg3: Eliminate timer race with reset_task
    tg3: Schedule at most one tg3_reset_task run
    tg3: Obtain PCI function number from device
    ...

    Linus Torvalds
     
  • This fixes the following sparse warnings:
    drivers/net/ethernet/nvidia/forcedeth.c:2113:7: warning: symbol 'size' shadows an earlier one
    drivers/net/ethernet/nvidia/forcedeth.c:2102:6: originally declared here
    drivers/net/ethernet/nvidia/forcedeth.c:2155:7: warning: symbol 'size' shadows an earlier one
    drivers/net/ethernet/nvidia/forcedeth.c:2102:6: originally declared here
    drivers/net/ethernet/nvidia/forcedeth.c:2227:7: warning: symbol 'size' shadows an earlier one
    drivers/net/ethernet/nvidia/forcedeth.c:2215:6: originally declared here
    drivers/net/ethernet/nvidia/forcedeth.c:2271:7: warning: symbol 'size' shadows an earlier one
    drivers/net/ethernet/nvidia/forcedeth.c:2215:6: originally declared here
    drivers/net/ethernet/nvidia/forcedeth.c:2986:20: warning: symbol 'addr' shadows an earlier one
    drivers/net/ethernet/nvidia/forcedeth.c:2963:6: originally declared here

    Signed-off-by: David Decotigny
    Signed-off-by: David S. Miller

    david decotigny
     
  • Rx byte count was off; instead use the hardware's count. Tx packet
    count was counting pre-TSO packets; instead count on-the-wire packets.
    Report hardware dropped frame count as rx_fifo_errors.

    - The count of transmitted packets reported by the forcedeth driver
    reports pre-TSO (TCP Segmentation Offload) packet counts and not the
    count of the number of packets sent on the wire. This change fixes
    the forcedeth driver to report the correct count. Fixed the code by
    copying the count stored in the NIC H/W to the value reported by the
    driver.

    - Count rx_drop_frame errors as rx_fifo_errors:
    We see a lot of rx_drop_frame errors if we disable the rx bottom-halves
    for too long. Normally, rx_fifo_errors would be counted in this case.
    The rx_drop_frame error count is private to forcedeth and is not
    reported by ifconfig or sysfs. The rx_fifo_errors count is currently
    unused in the forcedeth driver. It is reported by ifconfig as overruns.
    This change reports rx_drop_frame errors as rx_fifo_errors.

    Signed-off-by: David Decotigny
    Signed-off-by: David S. Miller

    Mandeep Baines
     
  • Function ndo_get_stats() updates most of the stats from hardware
    registers, making the manual updates un-needed. This change removes
    these manual updates. Main exception is rx_missed_errors which needs
    manual update.

    Another exception is rx_packets, still updated manually in this commit
    to make sure this patch doesn't change behavior of driver. This will
    be addressed by a future patch.

    Signed-off-by: David Decotigny
    Signed-off-by: David S. Miller

    david decotigny
     
  • This is to avoid a race, accidentally acknowledging an interrupt that
    we didn't notice and won't immediately process. This is based solely
    on code inspection; it is not known if there was an actual bug here.

    Signed-off-by: David Decotigny
    Signed-off-by: David S. Miller

    Mike Ditto
     
  • When forcedeth module is unloaded, there exists a path that can lead
    to mod_timer() after del_timer_sync(), causing an oops. This patch
    short-circuits this unneeded path, which originates in
    nv_get_ethtool_stats().

    Tested:
    x86_64 16-way + 3 ethtool -S infinite loops + 100Mbps incoming traffic
    + rmmod/modprobe/ifconfig in a loop

    Initial-Author: Salman Qazi
    Discussion: http://patchwork.ozlabs.org/patch/123548/

    Signed-off-by: David Decotigny
    Signed-off-by: David S. Miller

    david decotigny
     
  • Reported-by: Witold Baryluk
    Signed-off-by: Stephen Rothwell
    Signed-off-by: Paul Gortmaker
    Signed-off-by: Linus Torvalds

    Stephen Rothwell
     
  • since it uses the module facilities.

    Reported-by: Witold Baryluk
    Signed-off-by: Stephen Rothwell
    Signed-off-by: Paul Gortmaker
    Signed-off-by: Linus Torvalds

    Stephen Rothwell
     
  • For the files which are not themselves modular, we can change
    them to include only the smaller export.h since all they are
    doing is looking for EXPORT_SYMBOL.

    Reported-by: Stephen Rothwell
    Signed-off-by: Paul Gortmaker
    Signed-off-by: Linus Torvalds

    Paul Gortmaker
     
  • This patch fixes the bug added in commit v3.1-rc7-1055-gf9b491e
    SKB can be NULL at this point, at least for cdc-ncm.

    Signed-off-by: Konstantin Khlebnikov
    Acked-by: Richard Cochran
    Signed-off-by: David S. Miller

    Konstantin Khlebnikov
     
  • Fix compiler errors and warnings with CONFIG_PCI_IOV defined and not
    defined.

    Signed-off-by: Greg Rose
    Signed-off-by: David S. Miller

    Rose, Gregory V
     
  • * 'release' of git://git.kernel.org/pub/scm/linux/kernel/git/lenb/linux:
    cpuidle: Single/Global registration of idle states
    cpuidle: Split cpuidle_state structure and move per-cpu statistics fields
    cpuidle: Remove CPUIDLE_FLAG_IGNORE and dev->prepare()
    cpuidle: Move dev->last_residency update to driver enter routine; remove dev->last_state
    ACPI: Fix CONFIG_ACPI_DOCK=n compiler warning
    ACPI: Export FADT pm_profile integer value to userspace
    thermal: Prevent polling from happening during system suspend
    ACPI: Drop ACPI_NO_HARDWARE_INIT
    ACPI atomicio: Convert width in bits to bytes in __acpi_ioremap_fast()
    PNPACPI: Simplify disabled resource registration
    ACPI: Fix possible recursive locking in hwregs.c
    ACPI: use kstrdup()
    mrst pmu: update comment
    tools/power turbostat: less verbose debugging

    Linus Torvalds
     
  • * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux: (40 commits)
    vmwgfx: Snoop DMA transfers with non-covering sizes
    vmwgfx: Move the prefered mode first in the list
    vmwgfx: Unreference surface on cursor error path
    vmwgfx: Free prefered mode on error path
    vmwgfx: Use pointer return error codes
    vmwgfx: Fix hw cursor position
    vmwgfx: Infrastructure for explicit placement
    vmwgfx: Make the preferred autofit mode have a 60Hz vrefresh
    vmwgfx: Remove screen object active list
    vmwgfx: Screen object cleanups
    drm/radeon/kms: consolidate GART code, fix segfault after GPU lockup V2
    drm/radeon/kms: don't poll forever if MC GDDR link training fails
    drm/radeon/kms: fix DP setup on TRAVIS bridges
    drm/radeon/kms: set HPD polarity in hpd_init()
    drm/radeon/kms: add MSI module parameter
    drm/radeon/kms: Add MSI quirk for Dell RS690
    drm/radeon/kms: Add MSI quirk for HP RS690
    drm/radeon/kms: split MSI check into a separate function
    vmwgfx: Reinstate the update_layout ioctl
    drm/radeon/kms: always do extended edid probe
    ...

    Linus Torvalds
     
  • * git://git.infradead.org/mtd-2.6: (226 commits)
    mtd: tests: annotate as DANGEROUS in Kconfig
    mtd: tests: don't use mtd0 as a default
    mtd: clean up usage of MTD_DOCPROBE_ADDRESS
    jffs2: add compr=lzo and compr=zlib options
    jffs2: implement mount option parsing and compression overriding
    mtd: nand: initialize ops.mode
    mtd: provide an alias for the redboot module name
    mtd: m25p80: don't probe device which has status of 'disabled'
    mtd: nand_h1900 never worked
    mtd: Add DiskOnChip G3 support
    mtd: m25p80: add EON flash EN25Q32B into spi flash id table
    mtd: mark block device queue as non-rotational
    mtd: r852: make r852_pm_ops static
    mtd: m25p80: add support for at25df321a spi data flash
    mtd: mxc_nand: preset_v1_v2: unlock all NAND flash blocks
    mtd: nand: switch `check_pattern()' to standard `memcmp()'
    mtd: nand: invalidate cache on unaligned reads
    mtd: nand: do not scan bad blocks with NAND_BBT_NO_OOB set
    mtd: nand: wait to set BBT version
    mtd: nand: scrub BBT on ECC errors
    ...

    Fix up trivial conflicts:
    - arch/arm/mach-at91/board-usb-a9260.c
    Merged into board-usb-a926x.c
    - drivers/mtd/maps/lantiq-flash.c
    add_mtd_partitions -> mtd_device_register vs changed to use
    mtd_device_parse_register.

    Linus Torvalds
     

07 Nov, 2011

26 commits

  • Enough to get cursors working under Wayland.

    Signed-off-by: Jakob Bornecrantz
    Signed-off-by: Thomas Hellstrom
    Signed-off-by: Dave Airlie

    Jakob Bornecrantz
     
  • Signed-off-by: Jakob Bornecrantz
    Signed-off-by: Thomas Hellstrom
    Signed-off-by: Dave Airlie

    Jakob Bornecrantz
     
  • Signed-off-by: Jakob Bornecrantz
    Reviewed-by: Thomas Hellstrom
    Signed-off-by: Dave Airlie

    Jakob Bornecrantz
     
  • Signed-off-by: Jakob Bornecrantz
    Signed-off-by: Thomas Hellstrom
    Signed-off-by: Dave Airlie

    Jakob Bornecrantz
     
  • Signed-off-by: Jakob Bornecrantz
    Signed-off-by: Thomas Hellstrom
    Signed-off-by: Dave Airlie

    Jakob Bornecrantz
     
  • Signed-off-by: Thomas Hellstrom
    Reviewed-by: Jakob Bornecrantz
    Signed-off-by: Dave Airlie

    Thomas Hellstrom
     
  • Make it possible to use explicit placement
    (although not hooked up with a user-space interface yet)
    and relax the single framebuffer limit to only apply to implicit placement.

    Signed-off-by: Thomas Hellstrom
    Reviewed-by: Jakob Bornecrantz
    Signed-off-by: Dave Airlie

    Thomas Hellstrom
     
  • Signed-off-by: Thomas Hellstrom
    Reviewed-by: Jakob Bornecrantz
    Signed-off-by: Dave Airlie

    Thomas Hellstrom
     
  • It isn't used for anything. Replace with an active bool.

    Also make a couple of functions return void instead of int
    since their return value wasn't checked anyway.

    Signed-off-by: Thomas Hellstrom
    Reviewed-by: Jakbo Bornecrantz
    Signed-off-by: Dave Airlie

    Thomas Hellstrom
     
  • Remove unused member.
    No need to pin / unpin fb.

    Signed-off-by: Thomas Hellstrom
    Reviewed-by: Jakob Bornecrantz
    Signed-off-by: Dave Airlie

    Thomas Hellstrom
     
  • This reverts commit 361162459f62dc0826b82c9690a741a940f457f0.

    It causes an infinite loop when booting Linux under Xen, as so:

    [ 2.382984] console [hvc0] enabled
    [ 2.382984] console [hvc0] enabled
    [ 2.382984] console [hvc0] enabled
    ...

    as reported by Konrad Rzeszutek Wilk. And Rusty reports the same for
    lguest. He goes on to say:

    "This is not a concurrency problem: the issue seems to be that
    calling register_console() twice on the same struct console is a bad
    idea."

    and Greg says he'll fix it up properly at some point later. Revert for now.

    Reported-by: Konrad Rzeszutek Wilk
    Reported-by: Rusty Russell
    Requested-by: Stephen Rothwell
    Cc: Miche Baker-Harvey
    Cc: Greg Kroah-Hartman
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • Fix building following build error:

    drivers/tty/hvc/hvc_opal.c:244:12: error: 'THIS_MODULE' undeclared here (not in a function)

    Signed-off-by: Michael Neuling
    [ New file from powerpc tree not following the new rules from the
    module.h split, both of which were merged today. - Linus ]
    Signed-off-by: Linus Torvalds

    Michael Neuling
     
  • * 'stable/cleanups-3.2' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen:
    xen: use static initializers in xen-balloon.c
    Xen: fix braces and tabs coding style issue in xenbus_probe.c
    Xen: fix braces coding style issue in xenbus_probe.h
    Xen: fix whitespaces,tabs coding style issue in drivers/xen/pci.c
    Xen: fix braces coding style issue in gntdev.c and grant-table.c
    Xen: fix whitespaces,tabs coding style issue in drivers/xen/events.c
    Xen: fix whitespaces,tabs coding style issue in drivers/xen/balloon.c

    Fix up trivial whitespace-conflicts in
    drivers/xen/{balloon.c,pci.c,xenbus/xenbus_probe.c}

    Linus Torvalds
     
  • * 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux: (230 commits)
    Revert "tracing: Include module.h in define_trace.h"
    irq: don't put module.h into irq.h for tracking irqgen modules.
    bluetooth: macroize two small inlines to avoid module.h
    ip_vs.h: fix implicit use of module_get/module_put from module.h
    nf_conntrack.h: fix up fallout from implicit moduleparam.h presence
    include: replace linux/module.h with "struct module" wherever possible
    include: convert various register fcns to macros to avoid include chaining
    crypto.h: remove unused crypto_tfm_alg_modname() inline
    uwb.h: fix implicit use of asm/page.h for PAGE_SIZE
    pm_runtime.h: explicitly requires notifier.h
    linux/dmaengine.h: fix implicit use of bitmap.h and asm/page.h
    miscdevice.h: fix up implicit use of lists and types
    stop_machine.h: fix implicit use of smp.h for smp_processor_id
    of: fix implicit use of errno.h in include/linux/of.h
    of_platform.h: delete needless include
    acpi: remove module.h include from platform/aclinux.h
    miscdevice.h: delete unnecessary inclusion of module.h
    device_cgroup.h: delete needless include
    net: sch_generic remove redundant use of
    net: inet_timewait_sock doesnt need
    ...

    Fix up trivial conflicts (other header files, and removal of the ab3550 mfd driver) in
    - drivers/media/dvb/frontends/dibx000_common.c
    - drivers/media/video/{mt9m111.c,ov6650.c}
    - drivers/mfd/ab3550-core.c
    - include/linux/dmaengine.h

    Linus Torvalds
     
  • Len Brown
     
  • Len Brown
     
  • * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending:
    target: use ->exectute_task for all CDB emulation
    target: remove SCF_EMULATE_CDB_ASYNC
    target: refactor transport_emulate_control_cdb
    target: pass the se_task to the CDB emulation callback
    target: split core_scsi3_emulate_pr
    target: split core_scsi2_emulate_crh
    target: Add generic active I/O shutdown logic
    target: add back error handling in transport_complete_task
    target/pscsi: blk_make_request() returns an ERR_PTR()
    target: Remove core TRANSPORT_FREE_CMD_INTR usage
    target: Make TFO->check_stop_free return free status
    iscsi-target: Fix non-immediate TMR handling
    iscsi-target: Add missing CMDSN_LOWER_THAN_EXP check in iscsit_handle_scsi_cmd
    target: Avoid double list_del for aborted se_tmr_req
    target: Minor cleanups to core_tmr_drain_tmr_list
    target: Fix wrong se_tmr being added to drain_tmr_list
    target: Fix incorrect se_cmd assignment in core_tmr_drain_tmr_list
    target: Check -ENOMEM to signal QUEUE_FULL from fabric callbacks
    tcm_loop: Add explict read buffer memset for SCF_SCSI_CONTROL_SG_IO_CDB
    target: Fix compile warning w/ missing module.h include

    Linus Torvalds
     
  • * 'trivial' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
    scsi: drop unused Kconfig symbol
    pci: drop unused Kconfig symbol
    stmmac: drop unused Kconfig symbol
    x86: drop unused Kconfig symbol
    powerpc: drop unused Kconfig symbols
    powerpc: 40x: drop unused Kconfig symbol
    mips: drop unused Kconfig symbols
    openrisc: drop unused Kconfig symbols
    arm: at91: drop unused Kconfig symbol
    samples: drop unused Kconfig symbol
    m32r: drop unused Kconfig symbol
    score: drop unused Kconfig symbols
    sh: drop unused Kconfig symbol
    um: drop unused Kconfig symbol
    sparc: drop unused Kconfig symbol
    alpha: drop unused Kconfig symbol

    Fix up trivial conflict in drivers/net/ethernet/stmicro/stmmac/Kconfig
    as per Michal: the STMMAC_DUAL_MAC config variable is still unused and
    should be deleted.

    Linus Torvalds
     
  • This removes the use of the special "macbookair_fn_keys" keyboard
    translation table for the MacBookAir4,x models (ie the 2011 refresh).
    They use the standard apple_fn_keys[] translation. Apparently only the
    old MacBook Air's need a different translation table.

    This mirrors the change that commit da617c7cb915 ("HID: consolidate
    MacbookAir 4,1 mappings") did for the WELLSPRING6A ones, but does it for
    the WELLSPRING6 model used on the MacBookAir4,2.

    Reported-and-tested-by: Dirk Hohndel
    Cc: Jiri Kosina
    Cc: Joshua V Dillon
    Cc: Chase Douglas
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • * 'stable/vmalloc-3.2' of git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen:
    net: xen-netback: use API provided by xenbus module to map rings
    block: xen-blkback: use API provided by xenbus module to map rings
    xen: use generic functions instead of xen_{alloc, free}_vm_area()

    Linus Torvalds
     
  • This patch makes the cpuidle_states structure global (single copy)
    instead of per-cpu. The statistics needed on per-cpu basis
    by the governor are kept per-cpu. This simplifies the cpuidle
    subsystem as state registration is done by single cpu only.
    Having single copy of cpuidle_states saves memory. Rare case
    of asymmetric C-states can be handled within the cpuidle driver
    and architectures such as POWER do not have asymmetric C-states.

    Having single/global registration of all the idle states,
    dynamic C-state transitions on x86 are handled by
    the boot cpu. Here, the boot cpu would disable all the devices,
    re-populate the states and later enable all the devices,
    irrespective of the cpu that would receive the notification first.

    Reference:
    https://lkml.org/lkml/2011/4/25/83

    Signed-off-by: Deepthi Dharwar
    Signed-off-by: Trinabh Gupta
    Tested-by: Jean Pihet
    Reviewed-by: Kevin Hilman
    Acked-by: Arjan van de Ven
    Acked-by: Kevin Hilman
    Signed-off-by: Len Brown

    Deepthi Dharwar
     
  • This is the first step towards global registration of cpuidle
    states. The statistics used primarily by the governor are per-cpu
    and have to be split from rest of the fields inside cpuidle_state,
    which would be made global i.e. single copy. The driver_data field
    is also per-cpu and moved.

    Signed-off-by: Deepthi Dharwar
    Signed-off-by: Trinabh Gupta
    Tested-by: Jean Pihet
    Reviewed-by: Kevin Hilman
    Acked-by: Arjan van de Ven
    Acked-by: Kevin Hilman
    Signed-off-by: Len Brown

    Deepthi Dharwar
     
  • The cpuidle_device->prepare() mechanism causes updates to the
    cpuidle_state[].flags, setting and clearing CPUIDLE_FLAG_IGNORE
    to tell the governor not to chose a state on a per-cpu basis at
    run-time. State demotion is now handled by the driver and it returns
    the actual state entered. Hence, this mechanism is not required.
    Also this removes per-cpu flags from cpuidle_state enabling
    it to be made global.

    Reference:
    https://lkml.org/lkml/2011/3/25/52

    Signed-off-by: Deepthi Dharwar
    Signed-off-by: Trinabh Gupta
    Tested-by: Jean Pihet
    Acked-by: Arjan van de Ven
    Reviewed-by: Kevin Hilman
    Signed-off-by: Len Brown

    Deepthi Dharwar
     
  • Cpuidle governor only suggests the state to enter using the
    governor->select() interface, but allows the low level driver to
    override the recommended state. The actual entered state
    may be different because of software or hardware demotion. Software
    demotion is done by the back-end cpuidle driver and can be accounted
    correctly. Current cpuidle code uses last_state field to capture the
    actual state entered and based on that updates the statistics for the
    state entered.

    Ideally the driver enter routine should update the counters,
    and it should return the state actually entered rather than the time
    spent there. The generic cpuidle code should simply handle where
    the counters live in the sysfs namespace, not updating the counters.

    Reference:
    https://lkml.org/lkml/2011/3/25/52

    Signed-off-by: Deepthi Dharwar
    Signed-off-by: Trinabh Gupta
    Tested-by: Jean Pihet
    Reviewed-by: Kevin Hilman
    Acked-by: Arjan van de Ven
    Acked-by: Kevin Hilman
    Signed-off-by: Len Brown

    Deepthi Dharwar
     
  • There are a lot userspace approaches to detect the usage of the
    platform (laptop, workstation, server, ...) and adjust kernel tunables
    accordingly (io/process scheduler, power management, ...).

    These approaches need constant maintaining and are ugly to implement
    (detect PCMCIA controller -> laptop,
    does not work on recent systems anymore, ...)
    On ACPI systems there is an easy and reliable way (if implemented
    in BIOS and most recent platforms have this value set).
    -> export it to userspace.

    Signed-off-by: Thomas Renninger
    Acked-by: Rafael J. Wysocki
    Signed-off-by: Len Brown

    Thomas Renninger
     
  • The thermal driver should use a freezable workqueue to schedule
    polling to prevent thermal_zone_device_update() from being run
    during system suspend, when the devices it relies on may be inactive.
    Make it use the system freezable workqueue for this purpose.

    Signed-off-by: Rafael J. Wysocki
    Signed-off-by: Len Brown

    Rafael J. Wysocki