06 Dec, 2011

2 commits

  • When DCDC input line over current detecting, PMIC will change
    charging current automatically. Logging event is enough.

    Signed-off-by: Major Lee
    Signed-off-by: Alan Cox
    Cc: Mathias Nyman
    Cc: Feng Tang
    Cc: "H. Peter Anvin"
    [fix build]
    Signed-off-by: Andrew Morton
    Signed-off-by: Ingo Molnar

    Major Lee
     
  • Fix an outstanding issue that has been reported since 2.6.37.
    Under a heavy loaded machine processing "fork()" calls could
    crash with:

    BUG: unable to handle kernel paging request at f573fc8c
    IP: [] swap_count_continued+0x104/0x180
    *pdpt = 000000002a3b9027 *pde = 0000000001bed067 *pte = 0000000000000000 Oops: 0000 [#1] SMP
    Modules linked in:
    Pid: 1638, comm: apache2 Not tainted 3.0.4-linode37 #1
    EIP: 0061:[] EFLAGS: 00210246 CPU: 3
    EIP is at swap_count_continued+0x104/0x180
    .. snip..
    Call Trace:
    [] ? __swap_duplicate+0xc2/0x160
    [] ? pte_mfn_to_pfn+0x87/0xe0
    [] ? swap_duplicate+0x14/0x40
    [] ? copy_pte_range+0x45b/0x500
    [] ? copy_page_range+0x195/0x200
    [] ? dup_mmap+0x1c6/0x2c0
    [] ? dup_mm+0xa8/0x130
    [] ? copy_process+0x98a/0xb30
    [] ? do_fork+0x4f/0x280
    [] ? getnstimeofday+0x43/0x100
    [] ? sys_clone+0x30/0x40
    [] ? ptregs_clone+0x15/0x48
    [] ? syscall_call+0x7/0xb

    The problem is that in copy_page_range() we turn lazy mode on,
    and then in swap_entry_free() we call swap_count_continued()
    which ends up in:

    map = kmap_atomic(page, KM_USER0) + offset;

    and then later we touch *map.

    Since we are running in batched mode (lazy) we don't actually
    set up the PTE mappings and the kmap_atomic is not done
    synchronously and ends up trying to dereference a page that has
    not been set.

    Looking at kmap_atomic_prot_pfn(), it uses
    'arch_flush_lazy_mmu_mode' and doing the same in
    kmap_atomic_prot() and __kunmap_atomic() makes the problem go
    away.

    Interestingly, commit b8bcfe997e4615 ("x86/paravirt: remove lazy
    mode in interrupts") removed part of this to fix an interrupt
    issue - but it went to far and did not consider this scenario.

    Signed-off-by: Konrad Rzeszutek Wilk
    Cc: Peter Zijlstra
    Cc: Jeremy Fitzhardinge
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Ingo Molnar

    Konrad Rzeszutek Wilk
     

05 Dec, 2011

14 commits

  • Ingo Molnar
     
  • Looks like on some Acer Aspire 1s with older bioses, reboot via bios
    fails. It works on my machine, (with BIOS version 0.3310) but
    not on some others (BIOS version 0.3309).

    There's a log of problems at:

    https://bbs.archlinux.org/viewtopic.php?id=124136

    This patch adds a different callback to the reboot quirk table,
    to allow rebooting via keybaord controller.

    Reported-by: Uroš Vampl
    Tested-by: Vasily Khoruzhick
    Signed-off-by: Peter Chubb
    Cc: Don Zickus
    Cc: Peter Zijlstra
    Cc: stable@kernel.org
    Link: http://lkml.kernel.org/r/1323093233-9481-1-git-send-email-anarsoul@gmail.com
    Signed-off-by: Ingo Molnar

    Peter Chubb
     
  • Following is from Notes of section 11.5.3 of Intel processor
    manual available at:

    http://www.intel.com/Assets/PDF/manual/325384.pdf

    For the Pentium 4 and Intel Xeon processors, after the sequence of
    steps given above has been executed, the cache lines containing the
    code between the end of the WBINVD instruction and before the
    MTRRS have actually been disabled may be retained in the cache
    hierarchy. Here, to remove code from the cache completely, a
    second WBINVD instruction must be executed after the MTRRs have
    been disabled.

    This patch provides resolution for that.

    Ideally, I will like to make changes only for Pentium 4 and Xeon
    processors. But, I am not finding easier way to do it.
    And, extra wbinvd() instruction does not hurt much for other
    processors.

    Signed-off-by: Ajaykumar Hotchandani
    Cc: Linus Torvalds
    Cc: Arjan van de Ven
    Cc: Lucas De Marchi
    Link: http://lkml.kernel.org/r/4EBD1CC5.3030008@oracle.com
    Signed-off-by: Ingo Molnar

    Ajaykumar Hotchandani
     
  • Recently, I got bitten by using rdmsr_safe too early in the boot
    process. Document its shortcomings for future reference.

    Link: http://lkml.kernel.org/r/4ED5B70F.606@lwfinger.net
    Signed-off-by: Borislav Petkov

    Borislav Petkov
     
  • The microcode update driver's initialization code does not handle
    failures correctly. This patch fixes this issue.

    Signed-off-by: Jan Beulich
    Signed-off-by: Srivatsa S. Bhat
    Link: http://lkml.kernel.org/r/20111107123530.12164.31227.stgit@srivatsabhat.in.ibm.com
    Link: http://lkml.kernel.org/r/4ED8E2270200007800065120@nat28.tlf.novell.com
    Signed-off-by: Borislav Petkov

    Srivatsa S. Bhat
     
  • TAINT_FIRMWARE_WORKAROUND should be set when an MTRR fixup
    is done.

    Signed-off-by: Prarit Bhargava
    Acked-by: David Rientjes
    Link: http://lkml.kernel.org/r/1318958650-12447-1-git-send-email-prarit@redhat.com
    Signed-off-by: Ingo Molnar

    Prarit Bhargava
     
  • In commit f8924e770e04 ("x86: unify mp_bus_info"), the 32-bit
    and 64-bit versions of MP_bus_info were rearranged to match each
    other better. Unfortunately it introduced a regression: prior
    to that change we used to always set the mp_bus_not_pci bit,
    then clear it if we found a PCI bus. After it, we set
    mp_bus_not_pci for ISA buses, clear it for PCI buses, and leave
    it alone otherwise.

    In the cases of ISA and PCI, there's not much difference. But
    ISA is not the only non-PCI bus, so it's better to always set
    mp_bus_not_pci and clear it only for PCI.

    Without this change, Dan's Dell PowerEdge 4200 panics on boot
    with a log indicating interrupt routing trouble unless the
    "noapic" option is supplied. With this change, the machine
    boots reliably without "noapic".

    Fixes http://bugs.debian.org/586494

    Reported-bisected-and-tested-by: Dan McGrath
    Signed-off-by: Bjorn Helgaas
    Cc: stable@vger.kernel.org # 2.6.26+
    Cc: Dan McGrath
    Cc: Alexey Starikovskiy
    [jrnieder@gmail.com: clarified commit message]
    Signed-off-by: Jonathan Nieder
    Link: http://lkml.kernel.org/r/20111122215000.GA9151@elie.hsd1.il.comcast.net
    Signed-off-by: Ingo Molnar

    Bjorn Helgaas
     
  • In latest firmware's SFI tables, pmic_gpio has been set to
    IPC type of device, so we need handle it too.

    Signed-off-by: Feng Tang
    Signed-off-by: Alan Cox
    Signed-off-by: Ingo Molnar

    Feng Tang
     
  • Add SFI glue for the following devices:

    tca6416: a gpio expander compatible with max7315
    mpu3050: gyro sensor

    Both of these actual drivers are already upstream

    Signed-off-by: Jekyll Lai
    Signed-off-by: Alan Cox
    Signed-off-by: Ingo Molnar

    Jekyll Lai
     
  • On the Intel MID devices SCU commands are issued to manage power
    off and the like. We need to issue different ones for
    non-Lincroft based devices.

    Signed-off-by: Alek Du
    Signed-off-by: Jacob Pan
    Signed-off-by: Alan Cox
    Signed-off-by: Ingo Molnar

    Jacob Pan
     
  • Dell OptiPlex 990 is known to require PCI reboot, so add it to
    the reboot blacklist in pci_reboot_dmi_table[].

    Signed-off-by: Rafael J. Wysocki
    Link: http://lkml.kernel.org/r/201111160019.51303.rjw@sisk.pl
    Signed-off-by: Ingo Molnar

    Rafael J. Wysocki
     
  • There was a mixup when the SGI UV2 hub chip was sent to be
    fabricated, and it ended up with the wrong part number in the
    HRP_NODE_ID mmr. Future versions of the chip will (may) have the
    correct part number. Change the UV infrastructure to recognize
    both part numbers as valid IDs of a UV2 hub chip.

    Signed-off-by: Jack Steiner
    Link: http://lkml.kernel.org/r/20111129210058.GA20452@sgi.com
    Signed-off-by: Ingo Molnar

    Jack Steiner
     
  • The kernel stack overflow is checked in stack_overflow_check(),
    which may wrongly detect the overflow if the stack pointer in
    user space points to the kernel stack intentionally or
    accidentally. So, the actual overflow is never detected after
    this misdetection because WARN_ONCE() is used on the detection
    of it.

    This patch adds user-mode-vm checking before it to avoid this
    problem and bails out early if the user stack is used.

    Signed-off-by: Mitsuo Hayasaka
    Cc: yrl.pp-manager.tt@hitachi.com
    Cc: Randy Dunlap
    Link: http://lkml.kernel.org/r/20111129060821.11076.55315.stgit@ltc219.sdl.hitachi.co.jp
    Signed-off-by: Ingo Molnar
    Cc: "H. Peter Anvin"

    Mitsuo Hayasaka
     
  • People with old AMD chips are getting hung boots, because commit
    bcb80e53877c ("x86, microcode, AMD: Add microcode revision to
    /proc/cpuinfo") moved the microcode detection too early into
    "early_init_amd()".

    At that point we are *so* early in the booth that the exception tables
    haven't even been set up yet, so the whole

    rdmsr_safe(MSR_AMD64_PATCH_LEVEL, &c->microcode, &dummy);

    doesn't actually work: if the rdmsr does a GP fault (due to non-existant
    MSR register on older CPU's), we can't fix it up yet, and the boot fails.

    Fix it by simply moving the code to a slightly later point in the boot
    (init_amd() instead of early_init_amd()), since the kernel itself
    doesn't even really care about the microcode patchlevel at this point
    (or really ever: it's made available to user space in /proc/cpuinfo, and
    updated if you do a microcode load).

    Reported-tested-and-bisected-by: Larry Finger
    Tested-by: Bob Tracy
    Acked-by: Borislav Petkov
    Cc: Ingo Molnar
    Cc: Srivatsa S. Bhat
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     

04 Dec, 2011

1 commit

  • The idea behind commit d91ee5863b71 ("cpuidle: replace xen access to x86
    pm_idle and default_idle") was to have one call - disable_cpuidle()
    which would make pm_idle not be molested by other code. It disallows
    cpuidle_idle_call to be set to pm_idle (which is excellent).

    But in the select_idle_routine() and idle_setup(), the pm_idle can still
    be set to either: amd_e400_idle, mwait_idle or default_idle. This
    depends on some CPU flags (MWAIT) and in AMD case on the type of CPU.

    In case of mwait_idle we can hit some instances where the hypervisor
    (Amazon EC2 specifically) sets the MWAIT and we get:

    Brought up 2 CPUs
    invalid opcode: 0000 [#1] SMP

    Pid: 0, comm: swapper Not tainted 3.1.0-0.rc6.git0.3.fc16.x86_64 #1
    RIP: e030:[] [] mwait_idle+0x6f/0xb4
    ...
    Call Trace:
    [] cpu_idle+0xae/0xe8
    [] cpu_bringup_and_idle+0xe/0x10
    RIP [] mwait_idle+0x6f/0xb4
    RSP

    In the case of amd_e400_idle we don't get so spectacular crashes, but we
    do end up making an MSR which is trapped in the hypervisor, and then
    follow it up with a yield hypercall. Meaning we end up going to
    hypervisor twice instead of just once.

    The previous behavior before v3.0 was that pm_idle was set to
    default_idle regardless of select_idle_routine/idle_setup.

    We want to do that, but only for one specific case: Xen. This patch
    does that.

    Fixes RH BZ #739499 and Ubuntu #881076
    Reported-by: Stefan Bader
    Signed-off-by: Konrad Rzeszutek Wilk
    Signed-off-by: Linus Torvalds

    Konrad Rzeszutek Wilk
     

03 Dec, 2011

6 commits

  • * 'usb-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (21 commits)
    usb: ftdi_sio: add PID for Propox ISPcable III
    Revert "xHCI: reset-on-resume quirk for NEC uPD720200"
    xHCI: fix bug in xhci_clear_command_ring()
    usb: gadget: fsl_udc: fix dequeuing a request in progress
    usb: fsl_mxc_udc.c: Remove compile-time dependency of MX35 SoC type
    usb: fsl_mxc_udc.c: Fix build issue by including missing header file
    USB: fsl_udc_core: use usb_endpoint_xfer_isoc to judge ISO XFER
    usb: udc: Fix gadget driver's speed check in various UDC drivers
    usb: gadget: fix g_serial regression
    usb: renesas_usbhs: fixup driver speed
    usb: renesas_usbhs: fixup gadget.dev.driver when udc_stop.
    usb: renesas_usbhs: fixup signal the driver that cable was disconnected
    usb: renesas_usbhs: fixup device_register timing
    usb: musb: PM: fix context save/restore in suspend/resume path
    USB: linux-cdc-acm.inf: add support for the acm_ms gadget
    EHCI : Fix a regression in the ISO scheduler
    xHCI: reset-on-resume quirk for NEC uPD720200
    USB: whci-hcd: fix endian conversion in qset_clear()
    USB: usb-storage: unusual_devs entry for Kingston DT 101 G2
    usb: option: add SIMCom SIM5218
    ...

    Linus Torvalds
     
  • * 'staging-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
    Staging: comedi: fix integer overflow in do_insnlist_ioctl()
    Revert "Staging: comedi: integer overflow in do_insnlist_ioctl()"
    Staging: comedi: integer overflow in do_insnlist_ioctl()
    Staging: comedi: fix signal handling in read and write
    Staging: comedi: fix mmap_count
    staging: comedi: fix oops for USB DAQ devices.
    staging: comedi: usbduxsigma: Fixed wrong range for the analogue channel.
    staging:rts_pstor:Complete scanning_done variable
    staging: usbip: bugfix for deadlock

    Linus Torvalds
     
  • * 'for-linus' of git://oss.sgi.com/xfs/xfs:
    xfs: fix attr2 vs large data fork assert
    xfs: force buffer writeback before blocking on the ilock in inode reclaim
    xfs: validate acl count

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid:
    HID: Correct General touch PID

    Linus Torvalds
     
  • * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux:
    vmwgfx: integer overflow in vmw_kms_update_layout_ioctl()
    drm/radeon/kms: fix 2D tiling CS support on EG/CM
    drm/radeon/kms: fix scanout of 2D tiled buffers on EG/CM
    drm: Fix lack of CRTC disable for drm_crtc_helper_set_config(.fb=NULL)
    drm/radeon/kms: add some new pci ids
    drm/radeon/kms: Skip ACPI call to ATIF when possible
    drm/radeon/kms: Hide debugging message
    drm/radeon/kms: add some loop timeouts in pageflip code
    drm/nv50/disp: silence compiler warning
    drm/nouveau: fix oopses caused by clear being called on unpopulated ttms
    drm/nouveau: Keep RAMIN heap within the channel.
    drm/nvd0/disp: fix sor dpms typo, preventing dpms on in some situations
    drm/nvc0/gr: fix TP init for transform feedback offset queries
    drm/nouveau: add dumb ioctl support

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound:
    ALSA: hda - Fix S3/S4 problem on machines with VREF-pin mute-LED
    ALSA: hda_intel - revert a quirk that affect VIA chipsets
    ALSA: hda - Avoid touching mute-VREF pin for IDT codecs
    firmware: Sigma: Fix endianess issues
    firmware: Sigma: Skip header during CRC generation
    firmware: Sigma: Prevent out of bounds memory access
    ALSA: usb-audio - Support for Roland GAIA SH-01 Synthesizer
    ASoC: Supply dcs_codes for newer WM1811 revisions
    ASoC: Error out if we can't generate a LRCLK at all for WM8994
    ASoC: Correct name of Speyside Main Speaker widget
    ASoC: skip resume of soc-audio devices without codecs
    ASoC: cs42l51: Fix off-by-one for reg_cache_size
    ASoC: drop support for PlayPaq with WM8510
    ASoC: mpc8610: tell the CS4270 codec that it's the master
    ASoC: cs4720: use snd_soc_cache_sync()
    ASoC: SAMSUNG: Fix build error
    ASoC: max9877: Update register if either val or val2 is changed
    ASoC: Fix wrong define for AD1836_ADC_WORD_OFFSET

    Linus Torvalds
     

02 Dec, 2011

17 commits

  • There are two issues in vmw_kms_update_layout_ioctl(). First, the
    for loop forgets to index rects and only checks the first element.
    Second, there is a potential integer overflow if userspace passes
    in a large arg->num_outputs. The call to kzalloc() would allocate
    a small buffer, leading to out-of-bounds read.

    Reported-by: Haogang Chen
    Signed-off-by: Xi Wang
    Signed-off-by: Thomas Hellstrom
    Signed-off-by: Dave Airlie

    Xi Wang
     
  • Fixes:
    https://bugs.freedesktop.org/show_bug.cgi?id=43191

    Signed-off-by: Alex Deucher
    Signed-off-by: Dave Airlie

    Alex Deucher
     
  • Fixes:
    https://bugs.freedesktop.org/show_bug.cgi?id=43191

    Signed-off-by: Alex Deucher
    Signed-off-by: Dave Airlie

    Alex Deucher
     
  • Disabling the CRTC by setting its framebuffer to NULL, as used by
    drm_framebuffer_cleanup(), was failing to pass the current framebuffer
    to the crtc_func->disable callback. This is because of the dance within
    drm_crtc_helper_set_config to pass the new_fb (NULL in this case) to the
    drm_crtc_helper_set_mode with the currently attached fb as a parameter.
    drm_crtc_helper_set_mode treats this as a no-op and the encoder is still
    enabled. And so the current fb is forgotten before the call to
    drm_helper_disable_unused_functions.

    This patch treats disabling the CRTC as a simple special case rather
    than adding further complexity into the configuration logic.

    This fixes a pin-leak of the fb bo on Xserver close.

    Signed-off-by: Chris Wilson
    Signed-off-by: Dave Airlie

    Chris Wilson
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (73 commits)
    netfilter: Remove ADVANCED dependency from NF_CONNTRACK_NETBIOS_NS
    ipv4: flush route cache after change accept_local
    sch_red: fix red_change
    Revert "udp: remove redundant variable"
    bridge: master device stuck in no-carrier state forever when in user-stp mode
    ipv4: Perform peer validation on cached route lookup.
    net/core: fix rollback handler in register_netdevice_notifier
    sch_red: fix red_calc_qavg_from_idle_time
    bonding: only use primary address for ARP
    ipv4: fix lockdep splat in rt_cache_seq_show
    sch_teql: fix lockdep splat
    net: fec: Select the FEC driver by default for i.MX SoCs
    isdn: avoid copying too long drvid
    isdn: make sure strings are null terminated
    netlabel: Fix build problems when IPv6 is not enabled
    sctp: better integer overflow check in sctp_auth_create_key()
    sctp: integer overflow in sctp_auth_create_key()
    ipv6: Set mcast_hops to IPV6_DEFAULT_MCASTHOPS when -1 was given.
    net: Fix corruption in /proc/*/net/dev_mcast
    mac80211: fix race between the AGG SM and the Tx data path
    ...

    Linus Torvalds
     
  • firewalld in Fedora 16 needs this.

    Signed-off-by: David S. Miller

    David S. Miller
     
  • After reset ipv4_devconf->data[IPV4_DEVCONF_ACCEPT_LOCAL] to 0,
    we should flush route cache, or it will continue receive packets with local
    source address, which should be dropped.

    Signed-off-by: Weiping Pan
    Signed-off-by: David S. Miller

    Peter Pan(潘卫平)
     
  • Le mercredi 30 novembre 2011 à 14:36 -0800, Stephen Hemminger a écrit :

    > (Almost) nobody uses RED because they can't figure it out.
    > According to Wikipedia, VJ says that:
    > "there are not one, but two bugs in classic RED."

    RED is useful for high throughput routers, I doubt many linux machines
    act as such devices.

    I was considering adding Adaptative RED (Sally Floyd, Ramakrishna
    Gummadi, Scott Shender), August 2001

    In this version, maxp is dynamic (from 1% to 50%), and user only have to
    setup min_th (target average queue size)
    (max_th and wq (burst in linux RED) are automatically setup)

    By the way it seems we have a small bug in red_change()

    if (skb_queue_empty(&sch->q))
    red_end_of_idle_period(&q->parms);

    First, if queue is empty, we should call
    red_start_of_idle_period(&q->parms);

    Second, since we dont use anymore sch->q, but q->qdisc, the test is
    meaningless.

    Oh well...

    [PATCH] sch_red: fix red_change()

    Now RED is classful, we must check q->qdisc->q.qlen, and if queue is empty,
    we start an idle period, not end it.

    Signed-off-by: Eric Dumazet
    Signed-off-by: David S. Miller

    Eric Dumazet
     
  • Linus Torvalds
     
  • * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jlbec/ocfs2: (31 commits)
    ocfs2: avoid unaligned access to dqc_bitmap
    ocfs2: Use filemap_write_and_wait() instead of write_inode_now()
    ocfs2: honor O_(D)SYNC flag in fallocate
    ocfs2: Add a missing journal credit in ocfs2_link_credits() -v2
    ocfs2: send correct UUID to cleancache initialization
    ocfs2: Commit transactions in error cases -v2
    ocfs2: make direntry invalid when deleting it
    fs/ocfs2/dlm/dlmlock.c: free kmem_cache_zalloc'd data using kmem_cache_free
    ocfs2: Avoid livelock in ocfs2_readpage()
    ocfs2: serialize unaligned aio
    ocfs2: Implement llseek()
    ocfs2: Fix ocfs2_page_mkwrite()
    ocfs2: Add comment about orphan scanning
    ocfs2: Clean up messages in the fs
    ocfs2/cluster: Cluster up now includes network connections too
    ocfs2/cluster: Add new function o2net_fill_node_map()
    ocfs2/cluster: Fix output in file elapsed_time_in_ms
    ocfs2/dlm: dlmlock_remote() needs to account for remastery
    ocfs2/dlm: Take inflight reference count for remotely mastered resources too
    ocfs2/dlm: Cleanup dlm_wait_for_node_death() and dlm_wait_for_node_recovery()
    ...

    Linus Torvalds
     
  • The dqc_bitmap field of struct ocfs2_local_disk_chunk is 32-bit aligned,
    but not 64-bit aligned. The dqc_bitmap is accessed by ocfs2_set_bit(),
    ocfs2_clear_bit(), ocfs2_test_bit(), or ocfs2_find_next_zero_bit(). These
    are wrapper macros for ext2_*_bit() which need to take an unsigned long
    aligned address (though some architectures are able to handle unaligned
    address correctly)

    So some 64bit architectures may not be able to access the dqc_bitmap
    correctly.

    This avoids such unaligned access by using another wrapper functions for
    ext2_*_bit(). The code is taken from fs/ext4/mballoc.c which also need to
    handle unaligned bitmap access.

    Signed-off-by: Akinobu Mita
    Acked-by: Joel Becker
    Cc: Mark Fasheh
    Signed-off-by: Andrew Morton
    Signed-off-by: Joel Becker

    Akinobu Mita
     
  • * 'fixes' of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm:
    ARM: 7182/1: ARM cpu topology: fix warning
    ARM: 7181/1: Restrict kprobes probing SWP instructions to ARMv5 and below
    ARM: 7180/1: Change kprobes testcase with unpredictable STRD instruction
    ARM: 7177/1: GIC: avoid skipping non-existent PPIs in irq_start calculation
    ARM: 7176/1: cpu_pm: register GIC PM notifier only once
    ARM: 7175/1: add subname parameter to mfp_set_groupg callers
    ARM: 7174/1: Fix build error in kprobes test code on Thumb2 kernels
    ARM: 7172/1: dma: Drop GFP_COMP for DMA memory allocations
    ARM: 7171/1: unwind: add unwind directives to bitops assembly macros
    ARM: 7170/2: fix compilation breakage in entry-armv.S
    ARM: 7168/1: use cache type functions for arch_get_unmapped_area
    ARM: perf: check that we have a platform device when reserving PMU
    ARM: 7166/1: Use PMD_SHIFT instead of PGDIR_SHIFT in dma-consistent.c
    ARM: 7165/2: PL330: Fix typo in _prepare_ccr()
    ARM: 7163/2: PL330: Only register usable channels
    ARM: 7162/1: errata: tidy up Kconfig options for PL310 errata workarounds
    ARM: 7161/1: errata: no automatic store buffer drain
    ARM: perf: initialise used_mask for fake PMU during validation
    ARM: PMU: remove pmu_init declaration
    ARM: PMU: re-export release_pmu symbol to modules

    Linus Torvalds
     
  • This reverts commit 81d54ec8479a2c695760da81f05b5a9fb2dbe40a.

    If we take the "try_again" goto, due to a checksum error,
    the 'len' has already been truncated. So we won't compute
    the same values as the original code did.

    Reported-by: paul bilke
    Signed-off-by: David S. Miller

    David S. Miller
     
  • …rah/xhci into usb-linus

    * 'for-usb-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sarah/xhci:
    Revert "xHCI: reset-on-resume quirk for NEC uPD720200"
    xHCI: fix bug in xhci_clear_command_ring()

    Greg Kroah-Hartman
     
  • When in user-stp mode, bridge master do not follow state of its slaves, so
    after the following sequence of events it can stuck forever in no-carrier
    state:
    1) turn stp off
    2) put all slaves down - master device will follow their state and also go in
    no-carrier state
    3) turn stp on with bridge-stp script returning 0 (go to the user-stp mode)
    Now bridge master won't follow slaves' state and will never reach running
    state.

    This patch solves the problem by making user-stp and kernel-stp behavior
    similar regarding master following slaves' states.

    Signed-off-by: Vitalii Demianets
    Acked-by: Stephen Hemminger
    Signed-off-by: David S. Miller

    Vitalii Demianets
     
  • Signed-off-by: Marcin Kościelnicki
    Cc: stable
    Signed-off-by: Greg Kroah-Hartman

    Marcin Kościelnicki
     
  • This reverts commit df711fc9962b9491af2b92bd0d21ecbfefe4e5fa.

    The commit added a reset-on-resume quirk because the NEC chipset stopped
    responding to commands about 30 minutes after a system resume from
    suspend. We thought it was a chipset issue, but it turns out that the
    xHCI driver was zeroing out the link TRB after a successful context
    restore during resume. The host controller would fall off the command
    ring sometime later, causing it to not respond to new commands.

    The link TRB issue has been fixed with commit
    158886cd2cf4599e04f9b7e10cb767f5f39b14f1 "xHCI: fix bug in
    xhci_clear_command_ring()", so revert the reset-on-resume quirk, as it's
    not necessary.

    Commit df711fc9962b9491af2b92bd0d21ecbfefe4e5fa was marked for stable
    trees back to 2.6.37, but according to my mail, it has not made it into
    Linus' tree or the stable trees yet.

    Signed-off-by: Sarah Sharp
    Tested-by: Julian Sikorski
    Cc: Andiry Xu

    Sarah Sharp