Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sync with Linus #23

Merged
merged 354 commits into from
Jan 20, 2015
Merged

Sync with Linus #23

merged 354 commits into from
Jan 20, 2015
This pull request is big! We’re only showing the most recent 250 commits.

Commits on Jan 8, 2015

  1. libata: Whitelist SSDs that are known to properly return zeroes after…

    … TRIM
    
    As defined, the DRAT (Deterministic Read After Trim) and RZAT (Return
    Zero After Trim) flags in the ATA Command Set are unreliable in the
    sense that they only define what happens if the device successfully
    executed the DSM TRIM command. TRIM is only advisory, however, and the
    device is free to silently ignore all or parts of the request.
    
    In practice this renders the DRAT and RZAT flags completely useless and
    because the results are unpredictable we decided to disable discard in
    MD for 3.18 to avoid the risk of data corruption.
    
    Hardware vendors in the real world obviously need better guarantees than
    what the standards bodies provide. Unfortuntely those guarantees are
    encoded in product requirements documents rather than somewhere we can
    key off of them programatically. So we are compelled to disabling
    discard_zeroes_data for all devices unless we explicitly have data to
    support whitelisting them.
    
    This patch whitelists SSDs from a few of the main vendors. None of the
    whitelists are based on written guarantees. They are purely based on
    empirical evidence collected from internal and external users that have
    tested or qualified these drives in RAID deployments.
    
    The whitelist is only meant as a starting point and is by no means
    comprehensive:
    
       - All intel SSD models except for 510
       - Micron M5?0/M600
       - Samsung SSDs
       - Seagate SSDs
    
    Signed-off-by: Martin K. Petersen <[email protected]>
    Reviewed-by: Christoph Hellwig <[email protected]>
    Signed-off-by: Tejun Heo <[email protected]>
    martinkpetersen authored and htejun committed Jan 8, 2015
    Configuration menu
    Copy the full SHA
    e61f7d1 View commit details
    Browse the repository at this point in the history
  2. blk-mq: Wake tasks entering queue on dying

    When the queue is set to dying, wake up tasks that are waiting on frozen
    queue so they realize it is dying and abandon their request.
    
    Signed-off-by: Keith Busch <[email protected]>
    
    Modified by me to add a code comment on the need for the wakeup.
    
    Signed-off-by: Jens Axboe <[email protected]>
    Keith Busch authored and axboe committed Jan 8, 2015
    Configuration menu
    Copy the full SHA
    3fd5940 View commit details
    Browse the repository at this point in the history
  3. blk-mq: Export if requests were started

    Drivers can iterate over all allocated request tags, but their callback
    needs a way to know if the driver started the request in the first place.
    
    Signed-off-by: Keith Busch <[email protected]>
    Signed-off-by: Jens Axboe <[email protected]>
    Keith Busch authored and axboe committed Jan 8, 2015
    Configuration menu
    Copy the full SHA
    973c019 View commit details
    Browse the repository at this point in the history
  4. blk-mq: Let drivers cancel requeue_work

    Kicking requeued requests will start h/w queues in a work_queue, which
    may alter the driver's requested state to temporarily stop them. This
    patch exports a method to cancel the q->requeue_work so a driver can be
    assured stopped h/w queues won't be started up before it is ready.
    
    Signed-off-by: Keith Busch <[email protected]>
    Signed-off-by: Jens Axboe <[email protected]>
    Keith Busch authored and axboe committed Jan 8, 2015
    Configuration menu
    Copy the full SHA
    c68ed59 View commit details
    Browse the repository at this point in the history
  5. blk-mq: Add helper to abort requeued requests

    Adds a helper function a driver can use to abort requeued requests in
    case any are pending when h/w queues are being removed.
    
    Signed-off-by: Jens Axboe <[email protected]>
    axboe committed Jan 8, 2015
    Configuration menu
    Copy the full SHA
    1885b24 View commit details
    Browse the repository at this point in the history
  6. blk-mq: Allow requests to never expire

    Some types of requests may be started that are not gauranteed to ever
    complete. This adds a request flag that a driver can use so mark the
    request as such.
    
    Signed-off-by: Keith Busch <[email protected]>
    Signed-off-by: Jens Axboe <[email protected]>
    Keith Busch authored and axboe committed Jan 8, 2015
    Configuration menu
    Copy the full SHA
    5b3f25f View commit details
    Browse the repository at this point in the history
  7. blk-mq: End unstarted requests on a dying queue

    Requests that haven't been started prior to a queue dying can be ended
    in error without waiting for them to start and time out.
    
    Signed-off-by: Keith Busch <[email protected]>
    
    Added code comment to explain why this is done.
    
    Signed-off-by: Jens Axboe <[email protected]>
    Keith Busch authored and axboe committed Jan 8, 2015
    Configuration menu
    Copy the full SHA
    eb130db View commit details
    Browse the repository at this point in the history
  8. NVMe: Start all requests

    Once the nvme callback is set for a request, the driver can start it
    and make it available for timeout handling. For timed out commands on a
    device that is not initialized, this fixes potential deadlocks that can
    occur on startup and shutdown when a device is unresponsive since they
    can now be cancelled.
    
    Asynchronous requests do not have any expected timeout, so these are
    using the new "REQ_NO_TIMEOUT" request flags.
    
    Signed-off-by: Keith Busch <[email protected]>
    Signed-off-by: Jens Axboe <[email protected]>
    Keith Busch authored and axboe committed Jan 8, 2015
    Configuration menu
    Copy the full SHA
    c917dfe View commit details
    Browse the repository at this point in the history
  9. NVMe: Reference count admin queue usage

    Since there is no gendisk associated with the admin queue, the driver
    needs to hold a reference to it until all open references to the
    controller are closed.
    
    This also combines queue cleanup with freeing the tag set since these
    should not be separate.
    
    Signed-off-by: Keith Busch <[email protected]>
    Signed-off-by: Jens Axboe <[email protected]>
    Keith Busch authored and axboe committed Jan 8, 2015
    Configuration menu
    Copy the full SHA
    ea191d2 View commit details
    Browse the repository at this point in the history
  10. NVMe: Admin queue removal handling

    This protects admin queue access on shutdown. When the controller is
    disabled, the queue is frozen to prevent new entry, and unfrozen on
    resume, and fixes cq_vector signedness to not suspend a queue twice.
    
    Since unfreezing the queue makes it available for commands, it requires
    the queue be initialized, so this moves this part after that.
    
    Special handling is done when the device is unresponsive during
    shutdown. This can be optimized to not require subsequent commands to
    timeout, but saving that fix for later.
    
    This patch also removes the kill signals in this path that were left-over
    artifacts from the blk-mq conversion and no longer necessary.
    
    Signed-off-by: Keith Busch <[email protected]>
    Signed-off-by: Jens Axboe <[email protected]>
    Keith Busch authored and axboe committed Jan 8, 2015
    Configuration menu
    Copy the full SHA
    0fb59cb View commit details
    Browse the repository at this point in the history
  11. NVMe: Command abort handling fixes

    Aborts all requeued commands prior to killing the request_queue. For
    commands that time out on a dying request queue, set the "Do Not Retry"
    bit on the command status so the command cannot be requeued. Finanally, if
    the driver is requested to abort a command it did not start, do nothing.
    
    Signed-off-by: Keith Busch <[email protected]>
    Signed-off-by: Jens Axboe <[email protected]>
    Keith Busch authored and axboe committed Jan 8, 2015
    Configuration menu
    Copy the full SHA
    cef6a94 View commit details
    Browse the repository at this point in the history
  12. NVMe: Start and stop h/w queues on reset

    This freezes and stops all the queues on device shutdown and restarts
    them on resume. This fixes hotplug and reset issues when the controller
    is actively being used.
    
    Signed-off-by: Keith Busch <[email protected]>
    Signed-off-by: Jens Axboe <[email protected]>
    Keith Busch authored and axboe committed Jan 8, 2015
    Configuration menu
    Copy the full SHA
    c9d3bf8 View commit details
    Browse the repository at this point in the history
  13. NVMe: Fix locking on abort handling

    The queues and device need to be locked when messing with them.
    
    Signed-off-by: Keith Busch <[email protected]>
    Signed-off-by: Jens Axboe <[email protected]>
    Keith Busch authored and axboe committed Jan 8, 2015
    Configuration menu
    Copy the full SHA
    7a509a6 View commit details
    Browse the repository at this point in the history
  14. arm: dts: Use pmu_system_controller phandle for dp phy

    DP PHY now require pmu-system-controller to handle PMU register
    to control PHY's power isolation. Adding the same to dp-phy
    node.
    
    Signed-off-by: Vivek Gautam <[email protected]>
    Reviewed-by: Jingoo Han <[email protected]>
    Tested-by: Javier Martinez Canillas <[email protected]>
    Signed-off-by: Kukjin Kim <[email protected]>
    Vivek Gautam authored and Kukjin Kim committed Jan 8, 2015
    Configuration menu
    Copy the full SHA
    e93e545 View commit details
    Browse the repository at this point in the history
  15. Input: elantech - support new ICs types for version 4

    This change allows the driver to recognize newer Elantech touchpads.
    
    Cc: [email protected]
    Signed-off-by: Yi ju Hong <[email protected]>
    Signed-off-by: Dmitry Torokhov <[email protected]>
    Sam hung authored and dtor committed Jan 8, 2015
    Configuration menu
    Copy the full SHA
    810aa09 View commit details
    Browse the repository at this point in the history
  16. Input: I8042 - add Acer Aspire 7738 to the nomux list

    When KBC is in active multiplexing mode the touchpad on this laptop does
    not work.
    
    Reported-by: Bilal Koc <[email protected]>
    Cc: [email protected]
    Signed-off-by: Dmitry Torokhov <[email protected]>
    dtor committed Jan 8, 2015
    Configuration menu
    Copy the full SHA
    9333cae View commit details
    Browse the repository at this point in the history

Commits on Jan 9, 2015

  1. Merge tag 'iio-fixes-for-3.19a' of git://git.kernel.org/pub/scm/linux…

    …/kernel/git/jic23/iio into staging-linus
    
    Jonathan writes:
    
    First round of IIO fixes for the 3.19 cycle.
    
    * ad799x fix ad7991/ad7995/ad7999 setup as they do not have a configuration
      register to write to.  It is written during the convesion sequence. As
      such we don't want to write to it at other times.
    * Fix iio_channel_read utility function to return to ensure it is apparent
      if the relevant element is not there. This avoids using a wrong value
      if some channels have the element and others do not.
    gregkh committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    8ecb55b View commit details
    Browse the repository at this point in the history
  2. Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/gi…

    …t/jkirsher/net
    
    Jeff Kirsher says:
    
    ====================
    Intel Wired LAN Driver Updates 2015-01-06
    
    This series contains fixes to i40e only.
    
    Jesse provides a fix for when the driver was polling with interrupts
    disabled the hardware would occasionally not write back descriptors.
    His fix causes the driver to detect this situation and force an interrupt
    to fire which will flush the stuck descriptor.
    
    Anjali provides a couple of fixes, the first corrects an issue where
    the receive port checksum error counter was incrementing incorrectly with
    UDP encapsulated tunneled traffic.  The second fix resolves an issue where
    the driver was examining the outer protocol layer to set the inner protocol
    layer checksum offload.  In the case of TCP over IPv6 over an IPv4 based
    VXLAN, the inner checksum offloads would be set to look for IPv4/UDP
    instead of IPv6/TCP, so fixed the issue so that the driver will look at
    the proper layer for encapsulation offload settings.
    
    v2: fixed a bug in patch 01 of the series, where the interrupt rate impacted
        4 port workloads by reducing throughput.
    ====================
    
    Signed-off-by: David S. Miller <[email protected]>
    davem330 committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    000f42a View commit details
    Browse the repository at this point in the history
  3. sh-eth: Set fdr_value of R-Car SoCs

    FDR register of R-Car set in fdr_value can have the original settings.
    This sets the value that is suitable for each SoCs to fdr_value of R8A777x
    and R8A779x.
    
    Signed-off-by: Nobuhiro Iwamatsu <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    Nobuhiro Iwamatsu authored and davem330 committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    d407bc0 View commit details
    Browse the repository at this point in the history
  4. sh_eth: Fix access to TRSCER register

    TRSCER register is configured differently by SoCs. TRSCER of R-Car Gen2 is
    RINT8 bit only valid, other bits are reserved bits. This removes access to
    TRSCER register reserve bit by adding variable trscer_err_mask to
    sh_eth_cpu_data structure, set the register information to each SoCs.
    
    Signed-off-by: Nobuhiro Iwamatsu <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    Nobuhiro Iwamatsu authored and davem330 committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    b284fbe View commit details
    Browse the repository at this point in the history
  5. net: fec: fix NULL pointer dereference in fec_enet_timeout_work

    This patch initialises the fep->netdev pointer. This pointer was not
    initialised at all, but is used in fec_enet_timeout_work and in some
    error paths.
    
    Signed-off-by: Hubert Feurstein <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    hfeurstein authored and davem330 committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    0c81859 View commit details
    Browse the repository at this point in the history
  6. s390/bpf: Fix ALU_NEG (A = -A)

    Currently the LOAD NEGATIVE (lnr) instruction is used for ALU_NEG. This
    instruction always loads the negative value. Therefore, if A is already
    negative, it remains unchanged. To fix this use LOAD COMPLEMENT (lcr)
    instead.
    
    Signed-off-by: Michael Holzheu <[email protected]>
    Signed-off-by: Martin Schwidefsky <[email protected]>
    Michael Holzheu authored and Martin Schwidefsky committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    df3eed3 View commit details
    Browse the repository at this point in the history
  7. s390/bpf: Fix JMP_JGE_X (A > X) and JMP_JGT_X (A >= X)

    Currently the signed COMPARE (cr) instruction is used to compare "A"
    with "X". This is not correct because "A" and "X" are both unsigned.
    To fix this use the unsigned COMPARE LOGICAL (clr) instruction instead.
    
    Signed-off-by: Michael Holzheu <[email protected]>
    Signed-off-by: Martin Schwidefsky <[email protected]>
    Michael Holzheu authored and Martin Schwidefsky committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    ae75097 View commit details
    Browse the repository at this point in the history
  8. MAINTAINERS: Update maintainer list for qla4xxx

    Signed-off-by: Nilesh Javali <[email protected]>
    Signed-off-by: Christoph Hellwig <[email protected]>
    Nilesh Javali authored and Christoph Hellwig committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    1018b8b View commit details
    Browse the repository at this point in the history
  9. scsi: ->queue_rq can't sleep

    The blk-mq ->queue_rq method is always called from process context,
    but might have preemption disabled.  This means we still always
    have to use GFP_ATOMIC for memory allocations, and thus need to
    revert part of commit 3c356bd ("scsi: stop passing a gfp_mask
    argument down the command setup path").
    
    Signed-off-by: Christoph Hellwig <[email protected]>
    Reported-by: Sasha Levin <[email protected]>
    Reviewed-by: Bart Van Assche <[email protected]>
    Tested-by: Alexei Starovoitov <[email protected]>
    Christoph Hellwig committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    70a0f2c View commit details
    Browse the repository at this point in the history
  10. Merge tag 'for-3.19-rc' of git://git.kernel.org/pub/scm/linux/kernel/…

    …git/kishon/linux-phy into usb-linus
    
    Kishon writes:
    
    misc fixes in PHY drivers
    gregkh committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    4408933 View commit details
    Browse the repository at this point in the history
  11. Revert "usb: chipidea: remove duplicate dev_set_drvdata for host_start"

    This reverts commit 14b4099
    
    It moved platform_set_drvdata(pdev, ci) before hcd is created,
    and the hcd will assign itself as ci controller's drvdata during
    the hcd creation function (in usb_create_shared_hcd), so it
    overwrites the real ci's drvdata which we want to use.
    
    So, if the controller is at host mode, the system suspend
    API will get the wrong struct ci_hdrc pointer, and cause the
    oops.
    
    Signed-off-by: Peter Chen <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    Peter Chen authored and gregkh committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    24c498d View commit details
    Browse the repository at this point in the history
  12. xhci: Check if slot is already in default state before moving it there

    Solves xhci error cases with debug messages:
    xhci_hcd 0000:00:14.0: Setup ERROR: setup context command for slot 1.
    usb 1-6: hub failed to enable device, error -22
    
    xhci will give a context state error if we try to set a slot in default
    state to the same default state with a special address device command.
    
    Turns out this happends in several cases:
    - retry reading the device rescriptor in hub_port_init()
    - usb_reset_device() is called for a slot in default state
    - in resume path, usb_port_resume() calls hub_port_init()
    
    The default state is usually reached from most states with a reset device
    command without any context state errors, but using the address device
    command with BSA bit set (block set address) only works from the enabled
    state and will otherwise cause context error.
    
    solve this by checking if we are already in the default state before issuing
    a address device BSA=1 command.
    
    Fixes: 48fc7db ("usb: xhci: change enumeration scheme to 'new scheme'")
    Cc: <[email protected]> # v3.14+
    Signed-off-by: Mathias Nyman <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    matnyman authored and gregkh committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    f161ead View commit details
    Browse the repository at this point in the history
  13. USB: EHCI: fix initialization bug in iso_stream_schedule()

    Commit c3ee9b7 (EHCI: improved logic for isochronous scheduling)
    introduced the idea of using ehci->last_iso_frame as the origin (or
    base) for the circular calculations involved in modifying the
    isochronous schedule.  However, the new code it added used
    ehci->last_iso_frame before the value was properly initialized.  This
    patch rectifies the mistake by moving the initialization lines earlier
    in iso_stream_schedule().
    
    This fixes Bugzilla #72891.
    
    Signed-off-by: Alan Stern <[email protected]>
    Fixes: c3ee9b7
    Reported-by: Joe Bryant <[email protected]>
    Tested-by: Joe Bryant <[email protected]>
    Tested-by: Martin Long <[email protected]>
    CC: <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    AlanStern authored and gregkh committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    6d89252 View commit details
    Browse the repository at this point in the history
  14. USB: EHCI: adjust error return code

    The USB stack uses error code -ENOSPC to indicate that the periodic
    schedule is too full, with insufficient bandwidth to accommodate a new
    allocation.  It uses -EFBIG to indicate that an isochronous transfer
    could not be linked into the schedule because it would exceed the
    number of isochronous packets the host controller driver can handle
    (generally because the new transfer would extend too far into the
    future).
    
    ehci-hcd uses the wrong error code at one point.  This patch fixes it,
    along with a misleading comment and debugging message.
    
    Signed-off-by: Alan Stern <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    AlanStern authored and gregkh committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    c401e7b View commit details
    Browse the repository at this point in the history
  15. xhci: Add broken-streams quirk for Fresco Logic FL1000G xhci controllers

    Streams do not work reliabe on Fresco Logic FL1000G xhci controllers,
    trying to use them results in errors like this:
    
    21:37:33 kernel: xhci_hcd 0000:04:00.0: ERROR Transfer event for disabled endpoint or incorrect stream ring
    21:37:33 kernel: xhci_hcd 0000:04:00.0: @00000000368b3570 9067b000 00000000 05000000 01078001
    21:37:33 kernel: xhci_hcd 0000:04:00.0: ERROR Transfer event for disabled endpoint or incorrect stream ring
    21:37:33 kernel: xhci_hcd 0000:04:00.0: @00000000368b3580 9067b400 00000000 05000000 01038001
    
    As always I've ordered a pci-e addon card with a Fresco Logic controller for
    myself to see if I can come up with a better fix then the big hammer, in
    the mean time this will make uas devices work again (in usb-storage mode)
    for FL1000G users.
    
    Reported-by: Marcin Zajączkowski <[email protected]>
    Cc: [email protected] # 3.15
    Signed-off-by: Hans de Goede <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    jwrdegoede authored and gregkh committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    7f5c4d6 View commit details
    Browse the repository at this point in the history
  16. uas: Add US_FL_NO_ATA_1X for Seagate devices with usb-id 0bc2:a013

    This is yet another Seagate device which needs the US_FL_NO_ATA_1X quirk
    
    Reported-by: Marcin Zajączkowski <[email protected]>
    Cc: [email protected] # 3.16
    Signed-off-by: Hans de Goede <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    jwrdegoede authored and gregkh committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    e5797a3 View commit details
    Browse the repository at this point in the history
  17. uas: Add US_FL_NO_REPORT_OPCODES for JMicron JMS566 with usb-id 0bc2:…

    …a013
    
    Like the JMicron JMS567 enclosures with the JMS566 choke on report-opcodes,
    so avoid it.
    
    Tested-and-reported-by: Takeo Nakayama <[email protected]>
    Cc: [email protected] # 3.16
    Signed-off-by: Hans de Goede <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    jwrdegoede authored and gregkh committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    c6fa394 View commit details
    Browse the repository at this point in the history
  18. uas: disable UAS on Apricorn SATA dongles

    The Apricorn SATA dongle will occasionally return "USBSUSBSUSB" in
    response to SCSI commands when running in UAS mode.  Therefore,
    disable UAS mode on this dongle.
    
    Signed-off-by: Darrick J. Wong <[email protected]>
    Acked-by: Hans de Goede <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    djwong authored and gregkh committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    36d1ffd View commit details
    Browse the repository at this point in the history
  19. usb: host: ehci-tegra: request deferred probe when failing to get phy

    The commit 1290a95 ("usb: phy: propagate __of_usb_find_phy()'s error on
    failure") changed the condition to return -EPROBE_DEFER to host driver.
    Originally the Tegra host driver depended on the returned -EPROBE_DEFER to
    get the phy device later when booting. Now we have to do that explicitly.
    
    Signed-off-by: Vince Hsu <[email protected]>
    Tested-by: Tomeu Vizoso <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    Vince Hsu authored and gregkh committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    f56e67f View commit details
    Browse the repository at this point in the history
  20. usb: gadget: udc: avoid dereference before NULL check in ep_queue

    Coverity: CID 1260069
    
    Signed-off-by: John W. Linville <[email protected]>
    Cc: Felipe Balbi <[email protected]>
    Cc: stable <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    linvjw authored and gregkh committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    f26d29e View commit details
    Browse the repository at this point in the history
  21. uas: Do not blacklist ASM1153 disk enclosures

    Our detection logic to avoid doing UAS on ASM1051 bridge chips causes problems
    with newer ASM1153 disk enclosures in 2 ways:
    
    1) Some ASM1153 disk enclosures re-use the ASM1051 device-id of 5106, which
       we assume is always an ASM1051, so remove the quirk for 5106, and instead
       use the same detection logic as we already use for device-id 55aa, which is
       used for all of ASM1051, ASM1053 and ASM1153 devices <sigh>.
    
    2) Our detection logic to differentiate between ASM1051 and ASM1053 sees
       ASM1153 devices as ASM1051 because they have 32 streams like ASM1051 devs.
       Luckily the ASM1153 descriptors are not 100% identical, unlike the previous
       models the ASM1153 has bMaxPower == 0, so use that to differentiate it.
    
    Signed-off-by: Hans de Goede <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    jwrdegoede authored and gregkh committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    078fd7d View commit details
    Browse the repository at this point in the history
  22. uas: Add US_FL_NO_ATA_1X for 2 more Seagate disk enclosures

    Just like all previous UAS capable Seagate disk enclosures, these need the
    US_FL_NO_ATA_1X to not crash when udev probes them.
    
    Cc: [email protected] # 3.16
    Signed-off-by: Hans de Goede <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    jwrdegoede authored and gregkh committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    3ca8c71 View commit details
    Browse the repository at this point in the history
  23. OHCI: add a quirk for ULi M5237 blocking on reset

    Commit 8dccddb ("OHCI: final fix for NVIDIA problems (I hope)")
    introduced into 3.1.9 broke boot on e.g. Freescale P2020DS development
    board. The code path that was previously specific to NVIDIA controllers
    had then become taken for all chips.
    
    However, the M5237 installed on the board wedges solid when accessing
    its base+OHCI_FMINTERVAL register, making it impossible to boot any
    kernel newer than 3.1.8 on this particular and apparently other similar
    machines.
    
    Don't readl() and writel() base+OHCI_FMINTERVAL on PCI ID 10b9:5237.
    
    The patch is suitable for the -next tree as well as all maintained
    kernels up to 3.2 inclusive.
    
    Signed-off-by: Arseny Solokha <[email protected]>
    Acked-by: Alan Stern <[email protected]>
    Cc: stable <[email protected]> # 3.2
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    Arseny Solokha authored and gregkh committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    56abcab View commit details
    Browse the repository at this point in the history
  24. usb: phy: Fix deferred probing

    Commit 1290a95 ("usb: phy: propagate __of_usb_find_phy()'s error on
    failure") actually broke the deferred probing mechanism, since it now returns
    EPROBE_DEFER only when the try_module_get call fails, but not when the phy
    lookup does.
    
    All the other similar functions seem to return ENODEV when try_module_get
    fails, and the error code of either __usb_find_phy or __of_usb_find_phy
    otherwise.
    
    In order to have a consistent behaviour, and a meaningful EPROBE_DEFER, always
    return EPROBE_DEFER when __(of_)usb_find_phy fails to look up the requested
    phy, that will be propagated by the caller, and ENODEV if try_module_get fails.
    
    Signed-off-by: Maxime Ripard <[email protected]>
    Tested-by: Olof Johansson <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    mripard authored and gregkh committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    9c9d824 View commit details
    Browse the repository at this point in the history
  25. tty: Add support for the WCH384 4S multi-IO card

    WCH384 4S board is a PCI-E card with 4 DB9 COM ports detected as
    Serial controller: Device 1c00:3470 (rev 10) (prog-if 05 [16850])
    
    Signed-off-by: Sergej Pupykin <[email protected]>
    Acked-by: Zany Yan <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    Sergej Pupykin authored and gregkh committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    72a3c0e View commit details
    Browse the repository at this point in the history
  26. tty: Prevent hw state corruption in exclusive mode reopen

    Exclusive mode ttys (TTY_EXCLUSIVE) do not allow further reopens;
    fail the condition before associating the file pointer and calling
    the driver open() method.
    
    Prevents DTR programming when the tty is already in exclusive mode.
    
    Reported-by: Shreyas Bethur <[email protected]>
    Signed-off-by: Peter Hurley <[email protected]>
    Acked-by: Shreyas Bethur <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    peterhurley authored and gregkh committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    86f2c00 View commit details
    Browse the repository at this point in the history
  27. Revert "tty: Fix pty master poll() after slave closes v2"

    This reverts commit c4dc304.
    This fix is superseded by commit 52bce7f,
    'pty, n_tty: Simplify input processing on final close'.
    
    The final close now waits for input processing to complete before
    destroying the pty, so poll() does not need to special case this
    condition.
    
    Cc: Francesco Ruggeri <[email protected]>
    Signed-off-by: Peter Hurley <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    peterhurley authored and gregkh committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    2ce3c10 View commit details
    Browse the repository at this point in the history
  28. serial: samsung: Add the support for Exynos5433 SoC

    This patch adds new s3c24xx_serial_drv_data structure for Exynos5433 SoC
    because Exynos5433 has different fifo size from existing Exynos4 SoC.
    
    Cc: Greg Kroah-Hartman <[email protected]>
    Cc: Jiri Slaby <[email protected]>
    Cc: [email protected]
    Signed-off-by: Chanwoo Choi <[email protected]>
    Acked-by: Inki Dae <[email protected]>
    Acked-by: Geunsik Lim <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    chanwoochoi authored and gregkh committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    31ec77a View commit details
    Browse the repository at this point in the history
  29. ahci: Use dev_info() to inform about the lack of Device Sleep support

    According to the Serial ATA AHCI specification, Device Sleep is an
    optional feature and as such no errors should be printed if it's
    missing. Keep informing users, but use dev_info() instead of dev_err().
    
    Signed-off-by: Gabriele Mazzotta <[email protected]>
    Signed-off-by: Tejun Heo <[email protected]>
    gm-vm authored and htejun committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    95bbbe9 View commit details
    Browse the repository at this point in the history
  30. mei: clean reset bit before reset

    H_RST bit in H_CSR register may be found lit before reset is started,
    for example if preceding reset flow hasn't completed.
    In that case asserting H_RST will be ignored, therefore we need to clean
    H_RST bit to start a successful reset sequence.
    
    Cc: <[email protected]> #3.10+
    Signed-off-by: Alexander Usyskin <[email protected]>
    Signed-off-by: Tomas Winkler <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    ausyskin authored and gregkh committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    b13a65e View commit details
    Browse the repository at this point in the history
  31. mei: add ABI documentation for fw_status exported through sysfs

    Signed-off-by: Tomas Winkler <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    tomasbw authored and gregkh committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    7e4a90c View commit details
    Browse the repository at this point in the history
  32. mcb: mcb-pci: Only remap the 1st 0x200 bytes of BAR 0

    Currently it is not possible to have a kernel with built-in MCB attached
    devices. This results out of the fact that mcb-pci requests PCI BAR 0, then
    parses the chameleon table and calls the driver's probe function before
    releasing BAR 0 again. When building the kernel with modules this is not a
    problem (and therefore it wasn't detected by my tests yet).
    
    A solution is to only remap the 1st 0x200 bytes of a Chameleon PCI device.
    0x200 bytes is the maximum size of a Chameleon v2 Table.
    
    Also this patch stops disabling the PCI device on successful registration of MCB
    devices.
    
    Signed-off-by: Johannes Thumshirn <[email protected]>
    Suggested-by: Bjorn Helgaas <[email protected]>
    Reviewed-by: Bjorn Helgaas <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    Johannes Thumshirn authored and gregkh committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    7b7c549 View commit details
    Browse the repository at this point in the history
  33. kernfs: Fix kernfs_name_compare

    Returning a difference from a comparison functions is usually wrong
    (see acbbe6f "kcmp: fix standard comparison bug" for the long
    story). Here there is the additional twist that if the void pointers
    ns and kn->ns happen to differ by a multiple of 2^32,
    kernfs_name_compare returns 0, falsely reporting a match to the
    caller.
    
    Technically 'hash - kn->hash' is ok since the hashes are restricted to
    31 bits, but it's better to avoid that subtlety.
    
    Signed-off-by: Rasmus Villemoes <[email protected]>
    Acked-by: Tejun Heo <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    Villemoes authored and gregkh committed Jan 9, 2015
    Configuration menu
    Copy the full SHA
    72392ed View commit details
    Browse the repository at this point in the history

Commits on Jan 10, 2015

  1. usb: gadget: gadgetfs: fix an oops in ep_write()

    We try to free an ERR_PTR on this error path.
    
    Fixes: b44be24 ('usb: gadget: gadgetfs: Free memory allocated by memdup_user()')
    Signed-off-by: Dan Carpenter <[email protected]>
    Signed-off-by: Felipe Balbi <[email protected]>
    Dan Carpenter authored and Felipe Balbi committed Jan 10, 2015
    Configuration menu
    Copy the full SHA
    42d6cfa View commit details
    Browse the repository at this point in the history
  2. usb: gadget: udc: atmel: fix possible oops when unloading module

    When unloading the module 'g_hid.ko', the urb request will be dequeued and the
    completion routine will be excuted. If there is no urb packet, the urb request
    will not be added to the endpoint queue and the completion routine pointer in
    urb request is NULL.
    
    Accessing to this NULL function pointer will cause the Oops issue reported
    below.
    
    Add the code to check if the urb request is in the endpoint queue
    or not. If the urb request is not in the endpoint queue, a negative
    error code will be returned.
    
    Here is the Oops log:
    
    Unable to handle kernel NULL pointer dereference at virtual address 00000000
    pgd = dedf0000
    [00000000] *pgd=3ede5831, *pte=00000000, *ppte=00000000
    Internal error: Oops: 80000007 [#1] ARM
    Modules linked in: g_hid(-) usb_f_hid libcomposite
    CPU: 0 PID: 923 Comm: rmmod Not tainted 3.18.0+ #2
    Hardware name: Atmel SAMA5 (Device Tree)
    task: df6b110 ti: dedf6000 task.ti: dedf6000
    PC is at 0x0
    LR is at usb_gadget_giveback_request+0xc/0x10
    pc : [<00000000>]    lr : [<c02ace88>]    psr: 60000093
    sp : dedf7eb0  ip : df572634  fp : 00000000
    r10: 00000000  r9 : df52e210  r8 : 60000013
    r7 : df6a9858  r6 : df52e210  r5 : df6a9858  r4 : df572600
    r3 : 00000000  r2 : ffffff98  r1 : df572600  r0 : df6a9868
    Flags: nZCv  IRQs off  FIQs on  Mode SVC_32  ISA ARM  Segment user
    Control: 10c53c7d  Table: 3edf0059  DAC: 00000015
    Process rmmod (pid: 923, stack limit = 0xdedf6230)
    Stack: (0xdedf7eb0 to 0xdedf8000)
    7ea0:                                     00000000 c02adbbc df572580 deced608
    7ec0: df572600 df6a9868 df572634 c02aed3c df577c00 c01b8608 00000000 df6be27c
    7ee0: 00200200 00100100 bf0162f4 c000e544 dedf6000 00000000 00000000 bf010c00
    7f00: bf0162cc bf00159c 00000000 df572980 df52e218 00000001 df5729b8 bf0031d0
    [..]
    [<c02ace88>] (usb_gadget_giveback_request) from [<c02adbbc>] (request_complete+0x64/0x88)
    [<c02adbbc>] (request_complete) from [<c02aed3c>] (usba_ep_dequeue+0x70/0x128)
    [<c02aed3c>] (usba_ep_dequeue) from [<bf010c00>] (hidg_unbind+0x50/0x7c [usb_f_hid])
    [<bf010c00>] (hidg_unbind [usb_f_hid]) from [<bf00159c>] (remove_config.isra.6+0x98/0x9c [libcomposite])
    [<bf00159c>] (remove_config.isra.6 [libcomposite]) from [<bf0031d0>] (__composite_unbind+0x34/0x98 [libcomposite])
    [<bf0031d0>] (__composite_unbind [libcomposite]) from [<c02acee0>] (usb_gadget_remove_driver+0x50/0x78)
    [<c02acee0>] (usb_gadget_remove_driver) from [<c02ad570>] (usb_gadget_unregister_driver+0x64/0x94)
    [<c02ad570>] (usb_gadget_unregister_driver) from [<bf0160c0>] (hidg_cleanup+0x10/0x34 [g_hid])
    [<bf0160c0>] (hidg_cleanup [g_hid]) from [<c0056748>] (SyS_delete_module+0x118/0x19c)
    [<c0056748>] (SyS_delete_module) from [<c000e3c0>] (ret_fast_syscall+0x0/0x30)
    Code: bad PC value
    
    Signed-off-by: Songjun Wu <[email protected]>
    [[email protected]: reworked the commit message]
    Signed-off-by: Nicolas Ferre <[email protected]>
    Fixes: 914a3f3 ("USB: add atmel_usba_udc driver")
    Cc: <[email protected]> # 2.6.x-ish
    Signed-off-by: Felipe Balbi <[email protected]>
    sowu authored and Felipe Balbi committed Jan 10, 2015
    Configuration menu
    Copy the full SHA
    5fb694f View commit details
    Browse the repository at this point in the history
  3. USB: console: fix uninitialised ldisc semaphore

    The USB console currently allocates a temporary fake tty which is used
    to pass terminal settings to the underlying serial driver.
    
    The tty struct is not fully initialised, something which can lead to a
    lockdep warning (or worse) if a serial driver tries to acquire a
    line-discipline reference:
    
    	usbserial: USB Serial support registered for pl2303
    	pl2303 1-2.1:1.0: pl2303 converter detected
    	usb 1-2.1: pl2303 converter now attached to ttyUSB0
    	INFO: trying to register non-static key.
    	the code is fine but needs lockdep annotation.
    	turning off the locking correctness validator.
    	CPU: 0 PID: 68 Comm: udevd Tainted: G        W      3.18.0-rc5 #10
    	[<c0016f04>] (unwind_backtrace) from [<c0013978>] (show_stack+0x20/0x24)
    	[<c0013978>] (show_stack) from [<c0449794>] (dump_stack+0x24/0x28)
    	[<c0449794>] (dump_stack) from [<c006f730>] (__lock_acquire+0x1e50/0x2004)
    	[<c006f730>] (__lock_acquire) from [<c0070128>] (lock_acquire+0xe4/0x18c)
    	[<c0070128>] (lock_acquire) from [<c027c6f8>] (ldsem_down_read_trylock+0x78/0x90)
    	[<c027c6f8>] (ldsem_down_read_trylock) from [<c027a1cc>] (tty_ldisc_ref+0x24/0x58)
    	[<c027a1cc>] (tty_ldisc_ref) from [<c0340760>] (usb_serial_handle_dcd_change+0x48/0xe8)
    	[<c0340760>] (usb_serial_handle_dcd_change) from [<bf000484>] (pl2303_read_int_callback+0x210/0x220 [pl2303])
    	[<bf000484>] (pl2303_read_int_callback [pl2303]) from [<c031624c>] (__usb_hcd_giveback_urb+0x80/0x140)
    	[<c031624c>] (__usb_hcd_giveback_urb) from [<c0316fc0>] (usb_giveback_urb_bh+0x98/0xd4)
    	[<c0316fc0>] (usb_giveback_urb_bh) from [<c0042e44>] (tasklet_hi_action+0x9c/0x108)
    	[<c0042e44>] (tasklet_hi_action) from [<c0042380>] (__do_softirq+0x148/0x42c)
    	[<c0042380>] (__do_softirq) from [<c00429cc>] (irq_exit+0xd8/0x114)
    	[<c00429cc>] (irq_exit) from [<c007ae58>] (__handle_domain_irq+0x84/0xdc)
    	[<c007ae58>] (__handle_domain_irq) from [<c000879c>] (omap_intc_handle_irq+0xd8/0xe0)
    	[<c000879c>] (omap_intc_handle_irq) from [<c0014544>] (__irq_svc+0x44/0x7c)
    	Exception stack(0xdf4e7f08 to 0xdf4e7f50)
    	7f00:                   debc0b80 df4e7f5c 00000000 00000000 debc0b80 be8da96c
    	7f20: 00000000 00000128 c000fc84 df4e6000 00000000 df4e7f94 00000004 df4e7f50
    	7f40: c038ebc0 c038d74c 600f0013 ffffffff
    	[<c0014544>] (__irq_svc) from [<c038d74c>] (___sys_sendmsg.part.29+0x0/0x2e0)
    	[<c038d74c>] (___sys_sendmsg.part.29) from [<c038ec08>] (SyS_sendmsg+0x18/0x1c)
    	[<c038ec08>] (SyS_sendmsg) from [<c000fa00>] (ret_fast_syscall+0x0/0x48)
    	console [ttyUSB0] enabled
    
    Fixes: 3669752 ("tty: Replace ldisc locking with ldisc_sem")
    Cc: stable <[email protected]>
    Signed-off-by: Johan Hovold <[email protected]>
    jhovold committed Jan 10, 2015
    Configuration menu
    Copy the full SHA
    d269d44 View commit details
    Browse the repository at this point in the history
  4. USB: console: fix potential use after free

    Use tty kref to release the fake tty in usb_console_setup to avoid use
    after free if the underlying serial driver has acquired a reference.
    
    Note that using the tty destructor release_one_tty requires some more
    state to be initialised.
    
    Fixes: 4a90f09 ("tty: usb-serial krefs")
    Cc: stable <[email protected]>
    Signed-off-by: Johan Hovold <[email protected]>
    jhovold committed Jan 10, 2015
    Configuration menu
    Copy the full SHA
    32a4bf2 View commit details
    Browse the repository at this point in the history

Commits on Jan 11, 2015

  1. m68k: Wire up execveat

    Check success of execveat(3, '../execveat', 0)... [OK]
    Check success of execveat(5, 'execveat', 0)... [OK]
    Check success of execveat(6, 'execveat', 0)... [OK]
    Check success of execveat(-100, '/root/selftest-exec/exec/execveat', 0)... [OK]
    Check success of execveat(99, '/root/selftest-exec/exec/execveat', 0)... [OK]
    Check success of execveat(8, '', 4096)... [OK]
    Check success of execveat(17, '', 4096)... [OK]
    Check success of execveat(9, '', 4096)... [OK]
    Check success of execveat(14, '', 4096)... [OK]
    Check success of execveat(14, '', 4096)... [OK]
    Check success of execveat(15, '', 4096)... [OK]
    Check failure of execveat(8, '', 0) with ENOENT... [OK]
    Check failure of execveat(8, '(null)', 4096) with EFAULT... [OK]
    Check success of execveat(5, 'execveat.symlink', 0)... [OK]
    Check success of execveat(6, 'execveat.symlink', 0)... [OK]
    Check success of execveat(-100, '/root/selftest-exec/...xec/execveat.symlink', 0)... [OK]
    Check success of execveat(10, '', 4096)... [OK]
    Check success of execveat(10, '', 4352)... [OK]
    Check failure of execveat(5, 'execveat.symlink', 256) with ELOOP... [OK]
    Check failure of execveat(6, 'execveat.symlink', 256) with ELOOP... [OK]
    Check failure of execveat(-100, '/root/selftest-exec/exec/execveat.symlink', 256) with ELOOP... [OK]
    Check success of execveat(3, '../script', 0)... [OK]
    Check success of execveat(5, 'script', 0)... [OK]
    Check success of execveat(6, 'script', 0)... [OK]
    Check success of execveat(-100, '/root/selftest-exec/exec/script', 0)... [OK]
    Check success of execveat(13, '', 4096)... [OK]
    Check success of execveat(13, '', 4352)... [OK]
    Check failure of execveat(18, '', 4096) with ENOENT... [OK]
    Check failure of execveat(7, 'script', 0) with ENOENT... [OK]
    Check success of execveat(16, '', 4096)... [OK]
    Check success of execveat(16, '', 4096)... [OK]
    Check success of execveat(4, '../script', 0)... [OK]
    Check success of execveat(4, 'script', 0)... [OK]
    Check success of execveat(4, '../script', 0)... [OK]
    Check failure of execveat(4, 'script', 0) with ENOENT... [OK]
    Check failure of execveat(5, 'execveat', 65535) with EINVAL... [OK]
    Check failure of execveat(5, 'no-such-file', 0) with ENOENT... [OK]
    Check failure of execveat(6, 'no-such-file', 0) with ENOENT... [OK]
    Check failure of execveat(-100, 'no-such-file', 0) with ENOENT... [OK]
    Check failure of execveat(5, '', 4096) with EACCES... [OK]
    Check failure of execveat(5, 'Makefile', 0) with EACCES... [OK]
    Check failure of execveat(11, '', 4096) with EACCES... [OK]
    Check failure of execveat(12, '', 4096) with EACCES... [OK]
    Check failure of execveat(99, '', 4096) with EBADF... [OK]
    Check failure of execveat(99, 'execveat', 0) with EBADF... [OK]
    Check failure of execveat(8, 'execveat', 0) with ENOTDIR... [OK]
    Invoke copy of 'execveat' via filename of length 4093:
    Check success of execveat(19, '', 4096)... [OK]
    Check success of execveat(5, 'xxxxxxxxxxxxxxxxxxxx...yyyyyyyyyyyyyyyyyyyy', 0)... [OK]
    Invoke copy of 'script' via filename of length 4093:
    Check success of execveat(20, '', 4096)... [OK]
    Check success of execveat(5, 'xxxxxxxxxxxxxxxxxxxx...yyyyyyyyyyyyyyyyyyyy', 0)... [OK]
    
    Signed-off-by: Geert Uytterhoeven <[email protected]>
    geertu committed Jan 11, 2015
    Configuration menu
    Copy the full SHA
    f27bd5b View commit details
    Browse the repository at this point in the history

Commits on Jan 12, 2015

  1. Input: uinput - fix ioctl nr overflow for UI_GET_SYSNAME/VERSION

    Request number for ioctls are encoded as 8bit numbers, but unfortunately
    UI_GET_SYSNAME and UI_GET_VERSION specifu values larger than that, so they
    get truncated to 44 (0x2c) and 45 (0x2d). This change makes requested
    values match their effective values (the ABI stays intact).
    
    Signed-off-by: Gabriel Laskar <[email protected]>
    Signed-off-by: Dmitry Torokhov <[email protected]>
    GabrielL authored and dtor committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    029b183 View commit details
    Browse the repository at this point in the history
  2. net: dnet: fix dnet_poll()

    A NAPI poll() handler is supposed to return exactly the budget when/if
    napi_complete() has not been called.
    
    It is also supposed to return number of frames that were received, so
    that netdev_budget can have a meaning.
    
    Signed-off-by: Eric Dumazet <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    Eric Dumazet authored and davem330 committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    12d80ac View commit details
    Browse the repository at this point in the history
  3. alx: fix alx_poll()

    Commit d75b1ad ("net: less interrupt masking in NAPI") uncovered
    wrong alx_poll() behavior.
    
    A NAPI poll() handler is supposed to return exactly the budget when/if
    napi_complete() has not been called.
    
    It is also supposed to return number of frames that were received, so
    that netdev_budget can have a meaning.
    
    Also, in case of TX pressure, we still have to dequeue received
    packets : alx_clean_rx_irq() has to be called even if
    alx_clean_tx_irq(alx) returns false, otherwise device is half duplex.
    
    Signed-off-by: Eric Dumazet <[email protected]>
    Fixes: d75b1ad ("net: less interrupt masking in NAPI")
    Reported-by: Oded Gabbay <[email protected]>
    Bisected-by: Oded Gabbay <[email protected]>
    Tested-by: Oded Gabbay <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    Eric Dumazet authored and davem330 committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    7a05dc6 View commit details
    Browse the repository at this point in the history
  4. packet: bail out of packet_snd() if L2 header creation fails

    Due to a misplaced parenthesis, the expression
    
      (unlikely(offset) < 0),
    
    which expands to
    
      (__builtin_expect(!!(offset), 0) < 0),
    
    never evaluates to true. Therefore, when sending packets with
    PF_PACKET/SOCK_DGRAM, packet_snd() does not abort as intended
    if the creation of the layer 2 header fails.
    
    Spotted by Coverity - CID 1259975 ("Operands don't affect result").
    
    Fixes: 9c70776 ("packet: make packet_snd fail on len smaller than l2 header")
    Signed-off-by: Christoph Jaeger <[email protected]>
    Acked-by: Eric Dumazet <[email protected]>
    Acked-by: Willem de Bruijn <[email protected]>
    Acked-by: Daniel Borkmann <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    christophjaeger authored and davem330 committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    46d2cfb View commit details
    Browse the repository at this point in the history
  5. Merge git://git.kernel.org/pub/scm/linux/kernel/git/pablo/nf

    Pablo Neira Ayuso says:
    
    ====================
    netfilter/ipvs fixes for net
    
    The following patchset contains netfilter/ipvs fixes, they are:
    
    1) Small fix for the FTP helper in IPVS, a diff variable may be left
       unset when CONFIG_IP_VS_IPV6 is set. Patch from Dan Carpenter.
    
    2) Fix nf_tables port NAT in little endian archs, patch from leroy
       christophe.
    
    3) Fix race condition between conntrack confirmation and flush from
       userspace. This is the second reincarnation to resolve this problem.
    
    4) Make sure inner messages in the batch come with the nfnetlink header.
    
    5) Relax strict check from nfnetlink_bind() that may break old userspace
       applications using all 1s group mask.
    
    6) Schedule removal of chains once no sets and rules refer to them in
       the new nf_tables ruleset flush command. Reported by Asbjoern Sloth
       Toennesen.
    
    Note that this batch comes later than usual because of the short
    winter holidays.
    ====================
    
    Signed-off-by: David S. Miller <[email protected]>
    davem330 committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    2bd8221 View commit details
    Browse the repository at this point in the history
  6. Merge tag 'wireless-drivers-for-davem-2015-01-09' of git://git.kernel…

    ….org/pub/scm/linux/kernel/git/kvalo/wireless-drivers
    
    * rtlwifi: fix a regression in large skb allocation failure
    
    iwlwifi:
    
    * fix for 7265D NVM check
    * fixes for scan: fix long scanning times and network discovery
    * new firmware API for iwlmvm supported devices
    * fixes in rate control
    
    Signed-off-by: David S. Miller <[email protected]>
    davem330 committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    81a0712 View commit details
    Browse the repository at this point in the history
  7. powernv: Fix OPAL tracepoint code

    Patch c49f635 ("powernv: Add OPAL tracepoints") has a spurious
    store to the stack:
    
    	ld      r12,opal_tracepoint_refcount@toc(r2);           \
    	std     r12,32(r1);                                     \
    
    The store was originally used to save the current tracepoint status
    so the entry and the exit tracepoints were always balanced. In the
    end I just created a separate path when tracepoints are enabled.
    
    The offset on the stack used for this store is not valid for ABIv2
    and it causes strange issues. I noticed it because OPAL console input
    was broken.
    
    Fixes: c49f635 ("powernv: Add OPAL tracepoints")
    Cc: <[email protected]> # v3.17+
    Signed-off-by: Anton Blanchard <[email protected]>
    Signed-off-by: Michael Ellerman <[email protected]>
    antonblanchard authored and mpe committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    bfe5fda View commit details
    Browse the repository at this point in the history
  8. cxl: Fix issues when unmapping contexts

    An issue was introduced with "cxl: Unmap MMIO regions when detaching a
    context" (b123429) where closing a
    context normally could also unmap the problem state area of other
    contexts currently using the AFU.
    
    It was also discovered that after a context's MMIO space had been
    unmapped it would read 0s when accessing it, whereas the expected
    behaviour was for the access to fail altogether.
    
    In order to address these issues, this patch does two things:
    
    - Forced mmap unmapping is only done when we are forcefully detaching
      all contexts, and not in the normal detach path. Since the normal
      context close path is tied to the file release any mmaps must have
      already been released so we don't need to worry in that case.
    
    - The mmap path now uses a vm_operations_struct with a fault handler.
      The fault handler ensures that the context is in started state,
      otherwise it fails the access attempt with a SIGBUS.
    
    Fixes: b123429 ("cxl: Unmap MMIO regions when detaching a context")
    Signed-off-by: Ian Munsie <[email protected]>
    Signed-off-by: Michael Ellerman <[email protected]>
    Ian Munsie authored and mpe committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    0712dc7 View commit details
    Browse the repository at this point in the history
  9. powerpc: Work around gcc bug in current_thread_info()

    In commit a3e5b35 "powerpc: Don't use local named register variable
    in current_thread_info" Anton changed the way we did current_thread_info()
    to accommodate LLVM, and it was not meant to have any effect elsewhere.
    
    Unfortunately it has exposed a gcc bug, where r1 gets copied into
    another register and then gcc uses that register to restore the toc
    after a function call, even when that register is volatile and has been
    clobbered by the function call.
    
    We could revert Anton's patch, but it's not clear the original code is
    safe either, we may just have been lucky.
    
    The cleanest solution is to just use the existing CURRENT_THREAD_INFO()
    asm macro, and call it using inline asm.
    
    Segher points out we don't need volatile on the asm, if the result of
    the shift is unused it's fine for the compiler to elide it.
    
    Fixes: a3e5b35 ("powerpc: Don't use local named register variable in current_thread_info")
    Reported-by: Alexander Graf <[email protected]>
    Signed-off-by: Michael Ellerman <[email protected]>
    mpe committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    a87e810 View commit details
    Browse the repository at this point in the history
  10. ARM: exynos_defconfig: Enable options for display panel support

    Many Exynos devices have a display panel. Most of them just have
    a simple panel while others have more complex configurations that
    requires an embedded DisplayPort (eDP) to LVDS bridges.
    
    This patch enables the following features to be built in the kernel
    image to support both setups:
    
    - Direct Rendering Manager (DRM)
    - DRM bridge registration and lookup framework
    - Parade ps8622/ps8625 eDP/LVDS bridge
    - NXP ptn3460 eDP/LVDS bridge
    - Exynos Fully Interactive Mobile Display controller (FIMD)
    - Panel registration and lookup framework
    - Simple panels
    - Backlight & LCD device support
    
    Signed-off-by: Javier Martinez Canillas <[email protected]>
    Tested-by: Kevin Hilman <[email protected]>
    Signed-off-by: Kukjin Kim <[email protected]>
    Javier Martinez Canillas authored and Kukjin Kim committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    2809d90 View commit details
    Browse the repository at this point in the history
  11. ARM: exynos_defconfig: Enable LM90 driver

    multi_v7_defconfig has it as Y already, so build it in here, too, for
    consistency, and therefore build in HWMON as well.
    
    Signed-off-by: Andreas Faerber <[email protected]>
    Reviewed-by: Javier Martinez Canillas <[email protected]>
    Signed-off-by: Kukjin Kim <[email protected]>
    afaerber authored and Kukjin Kim committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    26d13bf View commit details
    Browse the repository at this point in the history
  12. usb: serial: silence all non-critical read errors

    If a USB serial device is unplugged while there is an active program
    using the device it may spam the logs with -EPROTO (71) messages as it
    attempts to retry.
    
    Most serial usb drivers (metro-usb, pl2303, mos7840, ...) only output
    these messages for debugging.  The generic driver treats these as
    errors.
    
    Change the default output for the generic serial driver from error to
    debug to silence these non-critical errors.
    
    Signed-off-by: Jeremiah Mahler <[email protected]>
    Signed-off-by: Johan Hovold <[email protected]>
    jmahler authored and jhovold committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    aa8e221 View commit details
    Browse the repository at this point in the history
  13. usb: serial: handle -ENODEV quietly in generic_submit_read_urb

    If a USB serial device (e.g. /dev/ttyUSB0) with an active program is
    unplugged, an -ENODEV (19) error will be produced after it gives up
    trying to resubmit a read.
    
      usb_serial_generic_submit_read_urb - usb_submit_urb failed: -19
    
    Add -ENODEV as one of the permanent errors along with -EPERM that
    usb_serial_generic_submit_read_urb() handles quietly without an error.
    
    Signed-off-by: Jeremiah Mahler <[email protected]>
    Signed-off-by: Johan Hovold <[email protected]>
    jmahler authored and jhovold committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    04f9c6e View commit details
    Browse the repository at this point in the history
  14. s390/uprobes: fix user space PER events

    If uprobes are single stepped for example with gdb, the behavior should
    now be correct. Before this patch, when gdb was single stepping a uprobe,
    the result was a SIGILL.
    When PER is active for any storage alteration and a uprobe is hit, a storage
    alteration event is indicated. These over indications are filterd out by gdb,
    if no change has happened within the observed area.
    
    Signed-off-by: Jan Willeke <[email protected]>
    Signed-off-by: Martin Schwidefsky <[email protected]>
    Jan Willeke authored and Martin Schwidefsky committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    8d1a242 View commit details
    Browse the repository at this point in the history
  15. arm64: KVM: Fix TLB invalidation by IPA/VMID

    It took about two years for someone to notice that the IPA passed
    to TLBI IPAS2E1IS must be shifted by 12 bits. Clearly our reviewing
    is not as good as it should be...
    
    Paper bag time for me.
    
    Reported-by: Mario Smarduch <[email protected]>
    Tested-by: Mario Smarduch <[email protected]>
    Signed-off-by: Marc Zyngier <[email protected]>
    Signed-off-by: Christoffer Dall <[email protected]>
    Signed-off-by: Paolo Bonzini <[email protected]>
    Marc Zyngier authored and bonzini committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    55e858b View commit details
    Browse the repository at this point in the history
  16. arm64: KVM: Fix HCR setting for 32bit guests

    Commit b856a59 (arm/arm64: KVM: Reset the HCR on each vcpu
    when resetting the vcpu) moved the init of the HCR register to
    happen later in the init of a vcpu, but left out the fixup
    done in kvm_reset_vcpu when preparing for a 32bit guest.
    
    As a result, the 32bit guest is run as a 64bit guest, but the
    rest of the kernel still manages it as a 32bit. Fun follows.
    
    Moving the fixup to vcpu_reset_hcr solves the problem for good.
    
    Signed-off-by: Marc Zyngier <[email protected]>
    Signed-off-by: Christoffer Dall <[email protected]>
    Signed-off-by: Paolo Bonzini <[email protected]>
    Marc Zyngier authored and bonzini committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    801f677 View commit details
    Browse the repository at this point in the history
  17. ARM: at91/dt: sama5d4: fix the timer reg length

    The second property of reg is the length, so correct it for timer.
    
    Signed-off-by: Bo Shen <[email protected]>
    Signed-off-by: Nicolas Ferre <[email protected]>
    Bo Shen authored and Nicolas Ferre committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    0068b2e View commit details
    Browse the repository at this point in the history
  18. ARM: at91: sama5d3: dt: correct the sound route

    The MICBIAS is a supply, should route to MIC while not IN1L.
    
    Signed-off-by: Bo Shen <[email protected]>
    Signed-off-by: Nicolas Ferre <[email protected]>
    Bo Shen authored and Nicolas Ferre committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    04582fd View commit details
    Browse the repository at this point in the history
  19. ARM: at91/dt: sam9263: Add missing clocks to lcdc node

    atmel_lcdfb needs also uses hclk clock, but AT91SAM9263 doesn't have that
    specific clock, so use lcd_clk twice. The same was done in
    arch/arm/mach-at91/at91sam9263.c
    
    Signed-off-by: Alexander Stein <[email protected]>
    Acked-by: Alexandre Belloni <[email protected]>
    Signed-off-by: Nicolas Ferre <[email protected]>
    AlexanderStein authored and Nicolas Ferre committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    55eb9c3 View commit details
    Browse the repository at this point in the history
  20. ARM: at91: board-dt-sama5: add phy_fixup to override NAND_Tree

    Appearance: On some SAMA5D4EK boards, after power up, the Eth1 doesn't work.
    
    Reason: The PIOE2 pin is connected to the NAND_Tree# of KSZ8081,
    But it outputs LOW during the reset period, which cause the NAND_Tree# enabled.
    
    Add phy_fixup() to disable NAND_Tree by overriding the Operation
    Mode Strap Override register(i.e. Register 16h) to clear the NAND_Tree bit.
    
    Signed-off-by: Wenyou Yang <[email protected]>
    Signed-off-by: Nicolas Ferre <[email protected]>
    wenyouya authored and Nicolas Ferre committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    b865975 View commit details
    Browse the repository at this point in the history
  21. arm64: compat: wire up compat_sys_execveat

    With 841ee23 ("ARM: wire up execveat syscall"), arch/arm/ has grown
    support for the execveat system call.
    
    This patch wires up the compat variant for arm64.
    
    Signed-off-by: Will Deacon <[email protected]>
    wildea01 committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    cd25b85 View commit details
    Browse the repository at this point in the history
  22. Merge tag 'fixes-for-v3.19-rc5' of git://git.kernel.org/pub/scm/linux…

    …/kernel/git/balbi/usb into usb-linus
    
    Felipe writes:
    
    usb: fixes for v3.19-rc5
    
    Just three fixes this time. An oops fix in ep_write() from gadgetfs,
    another oops for the Atmel UDC when unloading a gadget driver and
    the fix for PHY deferred probing.
    
    Signed-off-by: Felipe Balbi <[email protected]>
    
    Conflicts:
    	drivers/usb/phy/phy.c
    gregkh committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    06087cb View commit details
    Browse the repository at this point in the history
  23. isdn: fix NUL (\0 or \x00) specification in string

    In C one can either use '\0' or '\x00' (or '\000') to add a NUL byte to
    a string. '\0x00' isn't part of these and will in fact result in a
    single NUL followed by "x00". This fixes that.
    
    Signed-off-by: Giel van Schijndel <[email protected]>
    Reported-at: http://www.viva64.com/en/b/0299/
    Signed-off-by: David S. Miller <[email protected]>
    muggenhor authored and davem330 committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    6205864 View commit details
    Browse the repository at this point in the history
  24. net/at91_ether: prepare and unprepare clock

    The clock is enabled without being prepared, this leads to:
    
    WARNING: CPU: 0 PID: 1 at drivers/clk/clk.c:889 __clk_enable+0x24/0xa8()
    
    and a non working ethernet interface.
    
    Use clk_prepare_enable() and clk_disable_unprepare() to handle the clock.
    
    Signed-off-by: Alexandre Belloni <[email protected]>
    Acked-by: Boris Brezillon <[email protected]>
    Acked-by: Nicolas Ferre <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    alexandrebelloni authored and davem330 committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    caffd45 View commit details
    Browse the repository at this point in the history
  25. update ip-sysctl.txt documentation (v2)

    Update documentation to reflect the fact that
    /proc/sys/net/ipv4/route/max_size is no longer used for ipv4.
    
    Signed-off-by: Ani Sinha <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    Ani Sinha authored and davem330 committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    25050c6 View commit details
    Browse the repository at this point in the history
  26. thermal: rcar: Spelling/grammar: s/drier use .../driver uses ...s/

    Signed-off-by: Geert Uytterhoeven <[email protected]>
    Signed-off-by: Eduardo Valentin <[email protected]>
    geertu authored and Eduardo Valentin committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    ee853ad View commit details
    Browse the repository at this point in the history
  27. tipc: fix bug in broadcast retransmit code

    In commit 58dc55f ("tipc: use generic
    SKB list APIs to manage link transmission queue") we replace all list
    traversal loops with the macros skb_queue_walk() or
    skb_queue_walk_safe(). While the previous loops were based on the
    assumption that the list was NULL-terminated, the standard macros
    stop when the iterator reaches the list head, which is non-NULL.
    
    In the function bclink_retransmit_pkt() this macro replacement has
    lead to a bug. When we receive a BCAST STATE_MSG we unconditionally
    call the function bclink_retransmit_pkt(), whether there really is
    anything to retransmit or not, assuming that the sequence number
    comparisons will lead to the correct behavior. However, if the
    transmission queue is empty, or if there are no eligible buffers in
    the transmission queue, we will by mistake pass the list head pointer
    to the function tipc_link_retransmit(). Since the list head is not a
    valid sk_buff, this leads to a crash.
    
    In this commit we fix this by only calling tipc_link_retransmit()
    if we actually found eligible buffers in the transmission queue.
    
    Reviewed-by: Ying Xue <[email protected]>
    Signed-off-by: Jon Maloy <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    Jon Paul Maloy authored and davem330 committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    1641677 View commit details
    Browse the repository at this point in the history
  28. MAINTAINERS: add me as ibmveth maintainer

    Adding myself as the ibmveth maintainer and replacing
    Santiago Leon.
    
    Signed-off-by: Thomas Falcon <[email protected]>
    Cc: Santiago Leon <[email protected]>
    Cc: Brian King <[email protected]>
    Cc: Nathan Fontenot <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    tlfalcon authored and davem330 committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    eddd63a View commit details
    Browse the repository at this point in the history
  29. usb/kaweth: use GFP_ATOMIC under spin_lock in usb_start_wait_urb()

    Commit e4c7f25 ("USB: kaweth.c: use GFP_ATOMIC under spin_lock")
    makes sure that kaweth_internal_control_msg() allocates memory with GFP_ATOMIC,
    but kaweth_internal_control_msg() also calls usb_start_wait_urb()
    that still allocates memory with GFP_NOIO.
    
    The patch fixes usb_start_wait_urb() as well.
    
    Found by Linux Driver Verification project (linuxtesting.org).
    
    Signed-off-by: Alexey Khoroshilov <[email protected]>
    Acked-by: Oliver Neukum <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    khoroshilov authored and davem330 committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    49c9e7c View commit details
    Browse the repository at this point in the history
  30. Merge tag 'v3.19-rockhip-clkfixes1' of git://git.kernel.org/pub/scm/l…

    …inux/kernel/git/mmind/linux-rockchip into clk-fixes
    
    - two currently unused clocks that need to stay enabled
    - fix the lock bit locations of the rk3066 plls
    - fix rk3288 core divider values to the ones actually
      specified by the soc vendor
    Michael Turquette committed Jan 12, 2015
    Configuration menu
    Copy the full SHA
    98f87a7 View commit details
    Browse the repository at this point in the history

Commits on Jan 13, 2015

  1. staging: vt6655: fix sparse warnings: incorrect argument type

    this patch fixes following sparse warnings:
    
    drivers/staging/vt6655/device_main.c:1503:25: warning: incorrect type in argument 1 (different address spaces)
    drivers/staging/vt6655/device_main.c:1503:25:    expected void [noderef] <asn:2>*<noident>
    drivers/staging/vt6655/device_main.c:1503:25:    got struct vnt_private *
    drivers/staging/vt6655/device_main.c:1503:25: warning: incorrect type in argument 2 (different address spaces)
    drivers/staging/vt6655/device_main.c:1503:25:    expected void [noderef] <asn:2>*<noident>
    drivers/staging/vt6655/device_main.c:1503:25:    got struct vnt_private *
    drivers/staging/vt6655/device_main.c:1505:25: warning: incorrect type in argument 1 (different address spaces)
    drivers/staging/vt6655/device_main.c:1505:25:    expected void [noderef] <asn:2>*<noident>
    drivers/staging/vt6655/device_main.c:1505:25:    got struct vnt_private *
    drivers/staging/vt6655/device_main.c:1505:25: warning: incorrect type in argument 2 (different address spaces)
    drivers/staging/vt6655/device_main.c:1505:25:    expected void [noderef] <asn:2>*<noident>
    drivers/staging/vt6655/device_main.c:1505:25:    got struct vnt_private *
    
    Signed-off-by: Mike Krinkin <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    krinkinmu authored and gregkh committed Jan 13, 2015
    Configuration menu
    Copy the full SHA
    84c00af View commit details
    Browse the repository at this point in the history
  2. staging: vt6655: vnt_tx_packet Fix corrupted tx packets.

    Move PSTxDesc->m_td1TD1 to inside spin locks.
    
    if m_td1TD1.byTCR has TCR_EDP and TCR_STP are set, the interrupt handler will
    try and complete the buffer before it is completed. Usually on the tail
    of a burst of tx packets.
    
    This results in a partially completed packet being transmitted or worse
    sitll dead lock when skb is freed by the interrupt handler.
    
    Set head_td->m_td1TD1.byTCR to 0 in first lock of vnt_tx_packet to stop
    interrupt handler completing the buffer. Move Set TSR1 & ReqCount in
    s_cbFillTxBufHead to the second lock.
    
    cbReqCount is carried to the second lock in pTDInfo->dwReqCount without
    the padding removed.
    
    Signed-off-by: Malcolm Priestley <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    Malcolm Priestley authored and gregkh committed Jan 13, 2015
    Configuration menu
    Copy the full SHA
    b574529 View commit details
    Browse the repository at this point in the history
  3. staging: vt6655: Fix loss of distant/weak access points on channel ch…

    …ange.
    
    If the asssocated access point is strong byBBVGACurrent will be adjusted
    accordingly.
    
    Users will nolonger see distant access points without taking down interface.
    
    When changing channel reset byBBVGACurrent back to pDevice->abyBBVGA[0] for
    max sensitivity.
    
    Signed-off-by: Malcolm Priestley <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    Malcolm Priestley authored and gregkh committed Jan 13, 2015
    Configuration menu
    Copy the full SHA
    3a9dda7 View commit details
    Browse the repository at this point in the history
  4. staging: vt6655: fix sparse warning: argument type

    Fixes following warning generated by sparse:
    
    drivers/staging/vt6655/baseband.c:2180:45: warning: incorrect type in argument 1 (different address spaces)
    drivers/staging/vt6655/baseband.c:2180:45:    expected struct vnt_private *priv
    drivers/staging/vt6655/baseband.c:2180:45:    got void [noderef] <asn:2>*dwIoBase
    
    Compile tested on next-20141219.
    
    Signed-off-by: Eddie Kovsky <[email protected]>
    Signed-off-by: Greg Kroah-Hartman <[email protected]>
    ewk authored and gregkh committed Jan 13, 2015
    Configuration menu
    Copy the full SHA
    a307d1d View commit details
    Browse the repository at this point in the history
  5. simplefb: Fix build failure on Sparc

    of_platform_device_create is only defined when CONFIG_OF_ADDRESS is set,
    which is normally always the case when CONFIG_OF is defined, except on Sparc,
    so explicitly check for CONFIG_OF_ADDRESS rather then for CONFIG_OF.
    
    Reported-by: kbuild test robot <[email protected]>
    Signed-off-by: Hans de Goede <[email protected]>
    Signed-off-by: Tomi Valkeinen <[email protected]>
    jwrdegoede authored and tomba committed Jan 13, 2015
    Configuration menu
    Copy the full SHA
    d9e0201 View commit details
    Browse the repository at this point in the history
  6. crypto: add missing crypto module aliases

    Commit 5d26a10 ("crypto: prefix module autoloading with "crypto-"")
    changed the automatic module loading when requesting crypto algorithms
    to prefix all module requests with "crypto-". This requires all crypto
    modules to have a crypto specific module alias even if their file name
    would otherwise match the requested crypto algorithm.
    
    Even though commit 5d26a10 added those aliases for a vast amount of
    modules, it was missing a few. Add the required MODULE_ALIAS_CRYPTO
    annotations to those files to make them get loaded automatically, again.
    This fixes, e.g., requesting 'ecb(blowfish-generic)', which used to work
    with kernels v3.18 and below.
    
    Also change MODULE_ALIAS() lines to MODULE_ALIAS_CRYPTO(). The former
    won't work for crypto modules any more.
    
    Fixes: 5d26a10 ("crypto: prefix module autoloading with "crypto-"")
    Cc: Kees Cook <[email protected]>
    Signed-off-by: Mathias Krause <[email protected]>
    Signed-off-by: Herbert Xu <[email protected]>
    minipli authored and herbertx committed Jan 13, 2015
    Configuration menu
    Copy the full SHA
    3e14dcf View commit details
    Browse the repository at this point in the history
  7. locks: fix NULL-deref in generic_delete_lease

    commit 0efaa7e
      locks: generic_delete_lease doesn't need a file_lock at all
    
    moves the call to fl->fl_lmops->lm_change() to a place in the
    code where fl might be a non-lease lock.
    When that happens, fl_lmops is NULL and an Oops ensures.
    
    So add an extra test to restore correct functioning.
    
    Reported-by: Linda Walsh <[email protected]>
    Link: https://bugzilla.suse.com/show_bug.cgi?id=912569
    Cc: [email protected] (v3.18)
    Fixes: 0efaa7e
    Signed-off-by: NeilBrown <[email protected]>
    Signed-off-by: Jeff Layton <[email protected]>
    neilbrown authored and Jeff Layton committed Jan 13, 2015
    Configuration menu
    Copy the full SHA
    52d304e View commit details
    Browse the repository at this point in the history
  8. fbdev/broadsheetfb: fix memory leak

    static code analysis from cppcheck reports:
    
    [drivers/video/fbdev/broadsheetfb.c:673]:
      (error) Memory leak: sector_buffer
    
    sector_buffer is not being kfree'd on each call to
    broadsheet_spiflash_rewrite_sector(), so free it.
    
    Signed-off-by: Colin Ian King <[email protected]>
    Signed-off-by: Tomi Valkeinen <[email protected]>
    Colin Ian King authored and tomba committed Jan 13, 2015
    Configuration menu
    Copy the full SHA
    ef6899c View commit details
    Browse the repository at this point in the history
  9. usb: phy: mv-usb: fix usb_phy build errors

    The driver was recently adapted to a core API change, but the
    change was incomplete, missing out the suspend helper and
    leaving an extraneous local variable around:
    
    usb/phy/phy-mv-usb.c: In function 'mv_otg_update_state':
    usb/phy/phy-mv-usb.c:341:18: warning: unused variable 'phy' [-Wunused-variable]
    
    usb/phy/phy-mv-usb.c: In function 'mv_otg_suspend':
    usb/phy/phy-mv-usb.c:861:16: error: 'struct usb_phy' has no member named 'state'
    
    Signed-off-by: Arnd Bergmann <[email protected]>
    Fixes: e47d925 ("usb: move the OTG state from the USB PHY to the OTG structure")
    Signed-off-by: Felipe Balbi <[email protected]>
    arndb authored and Felipe Balbi committed Jan 13, 2015
    Configuration menu
    Copy the full SHA
    90bdf40 View commit details
    Browse the repository at this point in the history
  10. ahci: Remove Device ID for Intel Sunrise Point PCH

    This patch removes a duplicate AHCI-mode SATA Device ID for the Intel Sunrise Point PCH.
    
    Signed-off-by: James Ralston <[email protected]>
    Signed-off-by: Tejun Heo <[email protected]>
    jamesdralston authored and htejun committed Jan 13, 2015
    Configuration menu
    Copy the full SHA
    46319e1 View commit details
    Browse the repository at this point in the history
  11. dmaengine: dw: balance PM runtime calls

    In case of PCI driver we will get a warning:
    	dw_dmac_pci 0000:00:18.0: Unbalanced pm_runtime_enable!
    	dw_dmac_pci 0000:00:18.0: DesignWare DMA Controller, 8 channels
    
    This happens due to pm_runtime_enable() call from the driver when PM runtime is
    enabled by core.
    
    This patch moves that call to the platform driver where it might make sense.
    
    Fixes: bb32baf (dmaengine: dw: enable runtime PM)
    Signed-off-by: Andy Shevchenko <[email protected]>
    Signed-off-by: Vinod Koul <[email protected]>
    andy-shev authored and Vinod Koul committed Jan 13, 2015
    Configuration menu
    Copy the full SHA
    6acf399 View commit details
    Browse the repository at this point in the history
  12. clk: at91: keep slow clk enabled to prevent system hang

    All slow clk users are not properly claiming it (get + prepare + enable)
    before using it.
    If all users properly claiming this clock release it, the clock is
    disabled, but faulty users still depends on it, and the system hangs.
    
    This fix prevents the slow clock from being disabled, and should solve the
    hanging issue, but offending drivers should be patched to properly claim
    this clock.
    
    Signed-off-by: Boris Brezillon <[email protected]>
    Reported-by: Bo Shen <[email protected]>
    Cc: [email protected]
    Signed-off-by: Michael Turquette <[email protected]>
    Boris Brezillon authored and Michael Turquette committed Jan 13, 2015
    Configuration menu
    Copy the full SHA
    dca1a4b View commit details
    Browse the repository at this point in the history
  13. clk: berlin: bg2q: remove non-exist "smemc" gate clock

    The "smemc" clock is removed on BG2Q SoCs. In fact, bit19 of clkenable
    register is for nfc. Current code use bit19 for non-exist "smemc"
    incorrectly, this prevents eMMC from working due to the sdhci's
    "core" clk is still gated.
    
    Signed-off-by: Jisheng Zhang <[email protected]>
    Cc: [email protected] # 3.16+
    Signed-off-by: Michael Turquette <[email protected]>
    Jisheng Zhang authored and Michael Turquette committed Jan 13, 2015
    Configuration menu
    Copy the full SHA
    b71e8ec View commit details
    Browse the repository at this point in the history
  14. net: Corrected the comment describing the ndo operations to reflect t…

    …he actual prototype for couple of operations
    
    Corrected the comment describing the ndo operations to
    reflect the actual prototype for couple of operations
    
    Signed-off-by: B Viswanath <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    bviswanath authored and davem330 committed Jan 13, 2015
    Configuration menu
    Copy the full SHA
    5d632cb View commit details
    Browse the repository at this point in the history
  15. kernel: Change ASSIGN_ONCE(val, x) to WRITE_ONCE(x, val)

    Feedback has shown that WRITE_ONCE(x, val) is easier to use than
    ASSIGN_ONCE(val,x).
    There are no in-tree users yet, so lets change it for 3.19.
    
    Signed-off-by: Christian Borntraeger <[email protected]>
    Acked-by: Peter Zijlstra <[email protected]>
    Acked-by: Davidlohr Bueso <[email protected]>
    Acked-by: Paul E. McKenney <[email protected]>
    borntraeger committed Jan 13, 2015
    Configuration menu
    Copy the full SHA
    43239cb View commit details
    Browse the repository at this point in the history
  16. ata: pata_at91: depend on !ARCH_MULTIPLATFORM

    Until the driver is corrected to stop using mach/at91isam9_smc.h, it won't
    compile in a ARCH_MULTIPLATFORM configuration.
    
    Suggested-by: Arnd Bergmann <[email protected]>
    Signed-off-by: Alexandre Belloni <[email protected]>
    Signed-off-by: Tejun Heo <[email protected]>
    alexandrebelloni authored and htejun committed Jan 13, 2015
    Configuration menu
    Copy the full SHA
    19406d7 View commit details
    Browse the repository at this point in the history
  17. cxgb4vf: Initialize mdio_addr before using it

    In commit 5ad24de ("cxgb4vf: Fix ethtool get_settings for VF driver")
    mdio_addr of port_info structure was used unininitialzed. Fixing it.
    
    Signed-off-by: Hariprasad Shenai <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    Hariprasad Shenai authored and davem330 committed Jan 13, 2015
    Configuration menu
    Copy the full SHA
    fd48e63 View commit details
    Browse the repository at this point in the history
  18. leds: netxbig: fix oops at probe time

    This patch fixes a NULL pointer dereference on led_dat->mode_val. Due to
    this bug, a kernel oops can be observed at probe time on the LaCie 2Big
    and 5Big v2 boards:
    
    Unable to handle kernel NULL pointer dereference at virtual address 00000008
    [...]
    [<c03f244c>] (netxbig_led_probe) from [<c02c8c6c>] (platform_drv_probe+0x4c/0x9c)
    [<c02c8c6c>] (platform_drv_probe) from [<c02c72d0>] (driver_probe_device+0x98/0x25c)
    [<c02c72d0>] (driver_probe_device) from [<c02c7520>] (__driver_attach+0x8c/0x90)
    [<c02c7520>] (__driver_attach) from [<c02c5c24>] (bus_for_each_dev+0x68/0x94)
    [<c02c5c24>] (bus_for_each_dev) from [<c02c6408>] (bus_add_driver+0x124/0x1dc)
    [<c02c6408>] (bus_add_driver) from [<c02c7ac0>] (driver_register+0x78/0xf8)
    [<c02c7ac0>] (driver_register) from [<c000888c>] (do_one_initcall+0x80/0x1cc)
    [<c000888c>] (do_one_initcall) from [<c0733618>] (kernel_init_freeable+0xe4/0x1b4)
    [<c0733618>] (kernel_init_freeable) from [<c058db9c>] (kernel_init+0xc/0xec)
    [<c058db9c>] (kernel_init) from [<c0009850>] (ret_from_fork+0x14/0x24)
    [...]
    
    This bug was introduced by commit 588a6a9
    ("leds: netxbig: fix attribute-creation race").
    
    Signed-off-by: Simon Guinot <[email protected]>
    Cc: <[email protected]> # 3.17+
    Acked-by: Johan Hovold <[email protected]>
    Signed-off-by: Bryan Wu <[email protected]>
    simonguinot authored and cooloney committed Jan 13, 2015
    Configuration menu
    Copy the full SHA
    0c86ac2 View commit details
    Browse the repository at this point in the history
  19. drivers: net: cpsw: fix multicast flush in dual emac mode

    Since ALE table is a common resource for both the interfaces in Dual EMAC
    mode and while bringing up the second interface in cpsw_ndo_set_rx_mode()
    all the multicast entries added by the first interface is flushed out and
    only second interface multicast addresses are added. Fixing this by
    flushing multicast addresses based on dual EMAC port vlans which will not
    affect the other emac port multicast addresses.
    
    Fixes: d9ba8f9 (driver: net: ethernet: cpsw: dual emac interface implementation)
    Cc: <[email protected]> # v3.9+
    Signed-off-by: Mugunthan V N <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    mugunthanvnm authored and davem330 committed Jan 13, 2015
    Configuration menu
    Copy the full SHA
    2590605 View commit details
    Browse the repository at this point in the history
  20. xen-netfront: use different locks for Rx and Tx stats

    In netfront the Rx and Tx path are independent and use different
    locks.  The Tx lock is held with hard irqs disabled, but Rx lock is
    held with only BH disabled.  Since both sides use the same stats lock,
    a deadlock may occur.
    
      [ INFO: possible irq lock inversion dependency detected ]
      3.16.2 #16 Not tainted
      ---------------------------------------------------------
      swapper/0/0 just changed the state of lock:
       (&(&queue->tx_lock)->rlock){-.....}, at: [<c03adec8>]
      xennet_tx_interrupt+0x14/0x34
      but this lock took another, HARDIRQ-unsafe lock in the past:
       (&stat->syncp.seq#2){+.-...}
      and interrupts could create inverse lock ordering between them.
      other info that might help us debug this:
       Possible interrupt unsafe locking scenario:
    
             CPU0                    CPU1
             ----                    ----
        lock(&stat->syncp.seq#2);
                                     local_irq_disable();
                                     lock(&(&queue->tx_lock)->rlock);
                                     lock(&stat->syncp.seq#2);
        <Interrupt>
          lock(&(&queue->tx_lock)->rlock);
    
    Using separate locks for the Rx and Tx stats fixes this deadlock.
    
    Reported-by: Dmitry Piotrovsky <[email protected]>
    Signed-off-by: David Vrabel <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    David Vrabel authored and davem330 committed Jan 13, 2015
    Configuration menu
    Copy the full SHA
    900e183 View commit details
    Browse the repository at this point in the history
  21. Merge tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/gi…

    …t/borntraeger/linux
    
    Pull WRITE_ONCE argument order change from Christian Borntraeger:
     "As discussed on LKML[1] it was agreed that WRITE_ONCE(x, val) is
      better than ASSIGN_ONCE(val, x)
    
      Lets change that for 3.19 as 3.19 has no user yet, but the first users
      will hit linux-next soon"
    
    [1] http://marc.info/?l=linux-kernel&m=142081181707596
    
    * tag 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/borntraeger/linux:
      kernel: Change ASSIGN_ONCE(val, x) to WRITE_ONCE(x, val)
    torvalds committed Jan 13, 2015
    Configuration menu
    Copy the full SHA
    0c133dd View commit details
    Browse the repository at this point in the history
  22. Merge branch 'leds-fixes-for-3.19' of git://git.kernel.org/pub/scm/li…

    …nux/kernel/git/cooloney/linux-leds
    
    Pull LED fix from Bryan Wu.
    
    * 'leds-fixes-for-3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/linux-leds:
      leds: netxbig: fix oops at probe time
    torvalds committed Jan 13, 2015
    Configuration menu
    Copy the full SHA
    188c901 View commit details
    Browse the repository at this point in the history

Commits on Jan 14, 2015

  1. net: fec: fix MDIO bus assignement for dual fec SoC's

    On i.MX28, the MDIO bus is shared between the two FEC instances.
    The driver makes sure that the second FEC uses the MDIO bus of the
    first FEC. This is done conditionally if FEC_QUIRK_ENET_MAC is set.
    However, in newer designs, such as Vybrid or i.MX6SX, each FEC MAC
    has its own MDIO bus. Simply removing the quirk FEC_QUIRK_ENET_MAC
    is not an option since other logic, triggered by this quirk, is
    still needed.
    
    Furthermore, there are board designs which use the same MDIO bus
    for both PHY's even though the second bus would be available on the
    SoC side. Such layout are popular since it saves pins on SoC side.
    Due to the above quirk, those boards currently do work fine. The
    boards in the mainline tree with such a layout are:
    - Freescale Vybrid Tower with TWR-SER2 (vf610-twr.dts)
    - Freescale i.MX6 SoloX SDB Board (imx6sx-sdb.dts)
    
    This patch adds a new quirk FEC_QUIRK_SINGLE_MDIO for i.MX28, which
    makes sure that the MDIO bus of the first FEC is used in any case.
    
    However, the boards above do have a SoC with a MDIO bus for each FEC
    instance. But the PHY's are not connected in a 1:1 configuration. A
    proper device tree description is needed to allow the driver to
    figure out where to find its PHY. This patch fixes that shortcoming
    by adding a MDIO bus child node to the first FEC instance, along
    with the two PHY's on that bus, and making use of the phy-handle
    property to add a reference to the PHY's.
    
    Acked-by: Sascha Hauer <[email protected]>
    Signed-off-by: Stefan Agner <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    agners authored and davem330 committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    3d125f9 View commit details
    Browse the repository at this point in the history
  2. neighbour: fix base_reachable_time(_ms) not effective immediatly when…

    … changed
    
    When setting base_reachable_time or base_reachable_time_ms on a
    specific interface through sysctl or netlink, the reachable_time
    value is not updated.
    
    This means that neighbour entries will continue to be updated using the
    old value until it is recomputed in neigh_period_work (which
        recomputes the value every 300*HZ).
    On systems with HZ equal to 1000 for instance, it means 5mins before
    the change is effective.
    
    This patch changes this behavior by recomputing reachable_time after
    each set on base_reachable_time or base_reachable_time_ms.
    The new value will become effective the next time the neighbour's timer
    is triggered.
    
    Changes are made in two places: the netlink code for set and the sysctl
    handling code. For sysctl, I use a proc_handler. The ipv6 network
    code does provide its own handler but it already refreshes
    reachable_time correctly so it's not an issue.
    Any other user of neighbour which provide its own handlers must
    refresh reachable_time.
    
    Signed-off-by: Jean-Francois Remy <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    jfremy authored and davem330 committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    4bf6980 View commit details
    Browse the repository at this point in the history
  3. Merge branch 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git…

    …/evalenti/linux-soc-thermal into thermal-soc
    zhang-rui committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    a4378cc View commit details
    Browse the repository at this point in the history
  4. mmc: sdhci: Set SDHCI_POWER_ON with external vmmc

    Host controllers lacking the required internal vmmc regulator may still
    follow the spec with regard to the LSB of SDHCI_POWER_CONTROL.  Set the
    SDHCI_POWER_ON bit when vmmc is enabled to encourage the controller to
    to drive CMD, DAT, SDCLK.
    
    This fixes a regression observed on some Qualcomm and Nvidia boards
    caused by 5222161 mmc: sdhci: Improve external VDD regulator support.
    
    Fixes: 5222161 (mmc: sdhci: Improve external VDD regulator support)
    Signed-off-by: Tim Kryger <[email protected]>
    Tested-by: Bjorn Andersson <[email protected]>
    Signed-off-by: Ulf Hansson <[email protected]>
    Tim Kryger authored and storulf committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    3cbc612 View commit details
    Browse the repository at this point in the history
  5. gpio: crystalcove: use handle_nested_irq

    The CrystalCove GPIO chip has can_sleep set so its demultiplexed irqs
    will have IRQ_NESTED_THREAD flag set, thus we should use the nested
    version handle_nested_irq in CrystalCove's irq handler instead of
    handle_generic_irq, or the following warning will be hit and the
    functionality is lost:
    
    [ 4089.639554] Hardware name: ASUSTeK COMPUTER INC. T100TA/T100TA, BIOS T100TA.313 08/13/2014
    [ 4089.639564]  00000002 00000000 c24fbdf4 c16e0257 c24fbe38 c24fbe28 c105390c c18ec480
    [ 4089.639596]  c24fbe54 00000048 c18f8e3b 00000295 c10a60fc 00000295 c10a60fc f4464540
    [ 4089.639626]  f446459c c278ad40 c24fbe40 c1053974 00000009 c24fbe38 c18ec480 c24fbe54
    [ 4089.639656] Call Trace:
    [ 4089.639685]  [<c16e0257>] dump_stack+0x41/0x52
    [ 4089.639707]  [<c105390c>] warn_slowpath_common+0x8c/0xc0
    [ 4089.639727]  [<c10a60fc>] ? irq_nested_primary_handler+0x2c/0x30
    [ 4089.639744]  [<c10a60fc>] ? irq_nested_primary_handler+0x2c/0x30
    [ 4089.639763]  [<c1053974>] warn_slowpath_fmt+0x34/0x40
    [ 4089.639781]  [<c10a60fc>] irq_nested_primary_handler+0x2c/0x30
    [ 4089.639800]  [<c10a5c56>] handle_irq_event_percpu+0x76/0x190
    [ 4089.639818]  [<c1461570>] ? regmap_format_10_14_write+0x30/0x30
    [ 4089.639836]  [<c1464f4c>] ? _regmap_bus_raw_write+0x4c/0x70
    [ 4089.639854]  [<c10a5da1>] handle_irq_event+0x31/0x50
    [ 4089.639872]  [<c10a83eb>] handle_simple_irq+0x4b/0x70
    [ 4089.639889]  [<c10a5384>] generic_handle_irq+0x24/0x40
    [ 4089.639908]  [<c1366d87>] crystalcove_gpio_irq_handler+0xa7/0xc0
    [ 4089.639927]  [<c10a85a7>] handle_nested_irq+0x77/0x190
    [ 4089.639947]  [<c1469801>] regmap_irq_thread+0x1b1/0x360
    [ 4089.639966]  [<c10a6ae8>] irq_thread_fn+0x18/0x30
    [ 4089.639983]  [<c10a6906>] irq_thread+0xf6/0x110
    [ 4089.640001]  [<c10a6ad0>] ? irq_finalize_oneshot.part.30+0x1b0/0x1b0
    [ 4089.640019]  [<c10a6b50>] ? irq_forced_thread_fn+0x50/0x50
    [ 4089.640037]  [<c10a6810>] ? irq_thread_check_affinity+0xc0/0xc0
    [ 4089.640054]  [<c106f389>] kthread+0xa9/0xc0
    [ 4089.640074]  [<c16e6401>] ret_from_kernel_thread+0x21/0x30
    [ 4089.640091]  [<c106f2e0>] ? kthread_create_on_node+0x110/0x110
    [ 4089.640105] ---[ end trace dca7946ad31eba7d ]---
    
    Buglink: https://bugzilla.kernel.org/show_bug.cgi?id=90521
    Reported-and-tested-by: Brian Loften <[email protected]>
    Cc: Stable <[email protected]>
    Signed-off-by: Aaron Lu <[email protected]>
    Signed-off-by: Linus Walleij <[email protected]>
    Aaron Lu authored and linusw committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    e733a2f View commit details
    Browse the repository at this point in the history
  6. pinctrl: rockchip: Avoid losing interrupts when supporting both edges

    I was seeing cases where I was losing interrupts when inserting and
    removing SD cards.  Sometimes the card would get "stuck" in the
    inserted state.
    
    I believe that the problem was related to the code to handle the case
    where we needed both rising and falling edges.  This code would
    disable the interrupt as the polarity was switched.  If an interrupt
    came at the wrong time it could be lost.
    
    We'll match what the gpio-dwapb.c driver does upstream and change the
    interrupt polarity without disabling things.
    
    Signed-off-by: Doug Anderson <[email protected]>
    Reviewed-by: Heiko Stuebner <[email protected]>
    Tested-by: Heiko Stuebner <[email protected]>
    Signed-off-by: Linus Walleij <[email protected]>
    dianders authored and linusw committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    53b1bfc View commit details
    Browse the repository at this point in the history
  7. pinctrl: Fix two deadlocks

    This patch is to fix two deadlock cases.
    Deadlock 1:
    CPU #1
     pinctrl_register-> pinctrl_get ->
     create_pinctrl
     (Holding lock pinctrl_maps_mutex)
     -> get_pinctrl_dev_from_devname
     (Trying to acquire lock pinctrldev_list_mutex)
    CPU #0
     pinctrl_unregister
     (Holding lock pinctrldev_list_mutex)
     -> pinctrl_put ->> pinctrl_free ->
     pinctrl_dt_free_maps -> pinctrl_unregister_map
     (Trying to acquire lock pinctrl_maps_mutex)
    
    Simply to say
    CPU#1 is holding lock A and trying to acquire lock B,
    CPU#0 is holding lock B and trying to acquire lock A.
    
    Deadlock 2:
    CPU #3
     pinctrl_register-> pinctrl_get ->
     create_pinctrl
     (Holding lock pinctrl_maps_mutex)
     -> get_pinctrl_dev_from_devname
     (Trying to acquire lock pinctrldev_list_mutex)
    CPU #2
     pinctrl_unregister
     (Holding lock pctldev->mutex)
     -> pinctrl_put ->> pinctrl_free ->
     pinctrl_dt_free_maps -> pinctrl_unregister_map
     (Trying to acquire lock pinctrl_maps_mutex)
    CPU #0
     tegra_gpio_request
     (Holding lock pinctrldev_list_mutex)
     -> pinctrl_get_device_gpio_range
     (Trying to acquire lock pctldev->mutex)
    
    Simply to say
    CPU#3 is holding lock A and trying to acquire lock D,
    CPU#2 is holding lock B and trying to acquire lock A,
    CPU#0 is holding lock D and trying to acquire lock B.
    
    Cc: Stable <[email protected]>
    Signed-off-by: Jim Lin <[email protected]>
    Signed-off-by: Linus Walleij <[email protected]>
    Jim Lin authored and linusw committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    db93fac View commit details
    Browse the repository at this point in the history
  8. pinctrl: lantiq: remove bogus of_gpio_chip_add

    Remove bogus call to of_gpiochip_add (and of_gpio_chip remove in error
    path) which is also called when adding the gpio chip.
    
    This prevents adding the same pinctrl range twice.
    
    Fixes: 3f8c50c ("OF: pinctrl: MIPS: lantiq: implement lantiq/xway
    pinctrl support")
    
    Signed-off-by: Johan Hovold <[email protected]>
    Signed-off-by: Linus Walleij <[email protected]>
    jhovold authored and linusw committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    41f632f View commit details
    Browse the repository at this point in the history
  9. gpio: fix memory and reference leaks in gpiochip_add error path

    Memory allocated and references taken by of_gpiochip_add and
    acpi_gpiochip_add were never released on errors in gpiochip_add (e.g.
    failure to find free gpio range).
    
    Fixes: 391c970 ("of/gpio: add default of_xlate function if device
    has a node pointer")
    Fixes: 664e3e5 ("gpio / ACPI: register to ACPI events
    automatically")
    Cc: stable <[email protected]>
    
    Signed-off-by: Johan Hovold <[email protected]>
    Signed-off-by: Linus Walleij <[email protected]>
    jhovold authored and linusw committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    5539b3c View commit details
    Browse the repository at this point in the history
  10. gpio: fix gpio-chip list corruption

    Fix potential corruption of gpio-chip list due to failure to remove the
    chip from the list before returning in gpiochip_add error path.
    
    The chip could be long gone when the global list is next traversed,
    something which could lead to a null-pointer dereference. In the best
    case (chip not deallocated) we are just leaking the gpio range.
    
    Fixes: 14e85c0 ("gpio: remove gpio_descs global array")
    Signed-off-by: Johan Hovold <[email protected]>
    Signed-off-by: Linus Walleij <[email protected]>
    jhovold authored and linusw committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    225fce8 View commit details
    Browse the repository at this point in the history
  11. gpio: clean up gpiochip_add error handling

    Clean up gpiochip_add error handling.
    
    Signed-off-by: Johan Hovold <[email protected]>
    Signed-off-by: Linus Walleij <[email protected]>
    jhovold authored and linusw committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    05aa520 View commit details
    Browse the repository at this point in the history
  12. gpio: fix memory leak and sleep-while-atomic

    Fix memory leak and sleep-while-atomic in gpiochip_remove.
    
    The memory leak was introduced by afa82fa ("gpio / ACPI: Move event
    handling registration to gpiolib irqchip helpers") that moved the
    release of acpi interrupt resources to gpiochip_irqchip_remove, but by
    then the resources are no longer accessible as the acpi_gpio_chip has
    already been freed by acpi_gpiochip_remove.
    
    Note that this also fixes a few potential sleep-while-atomics, which has
    been around since 1425052 ("gpio: add IRQ chip helpers in gpiolib")
    when the call to gpiochip_irqchip_remove while holding a spinlock was
    added (a couple of irq-domain paths can end up grabbing mutexes).
    
    Fixes: afa82fa ("gpio / ACPI: Move event handling registration to
    gpiolib irqchip helpers")
    Fixes: 1425052 ("gpio: add IRQ chip helpers in gpiolib")
    Cc: stable <[email protected]>
    
    Signed-off-by: Johan Hovold <[email protected]>
    Signed-off-by: Linus Walleij <[email protected]>
    jhovold authored and linusw committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    00acc3d View commit details
    Browse the repository at this point in the history
  13. gpio: fix sleep-while-atomic in gpiochip_remove

    Move direct and indirect calls to gpiochip_remove_pin_ranges outside of
    spin lock as they can end up taking a mutex in pinctrl_remove_gpio_range.
    
    Note that the pin ranges are already added outside of the lock.
    
    Fixes: 9ef0d6f ("gpiolib: call pin removal in chip removal function")
    Fixes: f23f151 ("gpiolib: provide provision to register pin ranges")
    Cc: stable <[email protected]>
    Signed-off-by: Johan Hovold <[email protected]>
    Signed-off-by: Linus Walleij <[email protected]>
    jhovold authored and linusw committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    6798aca View commit details
    Browse the repository at this point in the history
  14. gpio: unregister gpiochip device before removing it

    Unregister gpiochip device (used to export information through sysfs)
    before removing it internally. This way removal will reverse addition.
    
    Signed-off-by: Johan Hovold <[email protected]>
    Signed-off-by: Linus Walleij <[email protected]>
    jhovold authored and linusw committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    01cca93 View commit details
    Browse the repository at this point in the history
  15. usb: dwc3: gadget: Fix TRB preparation during SG

    When scatter gather (SG) is used, multiple TRBs are prepared from one DWC3
    request (dwc3_request). So while preparing TRBs, the 'last' flag should be set
    only when it is the last TRB being prepared from the last dwc3_request entry.
    
    The current implementation uses list_is_last to check if the dwc3_request is the
    last entry from the request_list. However, list_is_last returns false for the
    last entry too. This is because, while preparing the first TRB from a request,
    the function dwc3_prepare_one_trb modifies the request's next and prev pointers
    while moving the URB to req_queued. Hence, list_is_last always returns false no
    matter what.
    
    The correct way is not to access the modified pointers of dwc3_request but to
    use list_empty macro instead.
    
    Fixes: e5ba5ec (usb: dwc3: gadget: fix scatter gather implementation)
    Signed-off-by: Amit Virdi <[email protected]>
    Cc: <[email protected]> # v3.9+
    Signed-off-by: Felipe Balbi <[email protected]>
    Amit Virdi authored and Felipe Balbi committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    ec512fb View commit details
    Browse the repository at this point in the history
  16. usb: dwc3: gadget: Stop TRB preparation after limit is reached

    DWC3 gadget sets up a pool of 32 TRBs for each EP during initialization. This
    means, the max TRBs that can be submitted for an EP is fixed to 32. Since the
    request queue for an EP is a linked list, any number of requests can be queued
    to it by the gadget layer.  However, the dwc3 driver must not submit TRBs more
    than the pool it has created for. This limit wasn't respected when SG was used
    resulting in submitting more than the max TRBs, eventually leading to
    non-transfer of the TRBs submitted over the max limit.
    
    Root cause:
    When SG is used, there are two loops iterating to prepare TRBs:
     - Outer loop over the request_list
     - Inner loop over the SG list
    The code was missing break to get out of the outer loop.
    
    Fixes: eeb720f (usb: dwc3: gadget: add support for SG lists)
    Cc: <[email protected]> # v3.9+
    Signed-off-by: Amit Virdi <[email protected]>
    Signed-off-by: Felipe Balbi <[email protected]>
    Amit Virdi authored and Felipe Balbi committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    39e6063 View commit details
    Browse the repository at this point in the history
  17. bridge: only provide proxy ARP when CONFIG_INET is enabled

    When IPV4 support is disabled, we cannot call arp_send from
    the bridge code, which would result in a kernel link error:
    
    net/built-in.o: In function `br_handle_frame_finish':
    :(.text+0x59914): undefined reference to `arp_send'
    :(.text+0x59a50): undefined reference to `arp_tbl'
    
    This makes the newly added proxy ARP support in the bridge
    code depend on the CONFIG_INET symbol and lets the compiler
    optimize the code out to avoid the link error.
    
    Signed-off-by: Arnd Bergmann <[email protected]>
    Fixes: 9585011 ("bridge: Add support for IEEE 802.11 Proxy ARP")
    Cc: Kyeyoon Park <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    arndb authored and davem330 committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    d92cfdb View commit details
    Browse the repository at this point in the history
  18. Merge branch 'for-linus' of git://git.kernel.dk/linux-block

    Pull block layer fixes from Jens Axboe:
     "The major part is an update to the NVMe driver, fixing various issues
      around surprise removal and hung controllers.  Most of that is from
      Keith, and parts are simple blk-mq fixes or exports/additions of minor
      functions to aid this effort, and parts are changes directly to the
      NVMe driver.
    
      Apart from the above, this contains:
    
       - Small blk-mq change from me, killing an unused member of the
         hardware queue structure.
    
       - Small fix from Ming Lei, fixing up a few drivers that didn't
         properly check for ERR_PTR() returns from blk_mq_init_queue()"
    
    * 'for-linus' of git://git.kernel.dk/linux-block:
      NVMe: Fix locking on abort handling
      NVMe: Start and stop h/w queues on reset
      NVMe: Command abort handling fixes
      NVMe: Admin queue removal handling
      NVMe: Reference count admin queue usage
      NVMe: Start all requests
      blk-mq: End unstarted requests on a dying queue
      blk-mq: Allow requests to never expire
      blk-mq: Add helper to abort requeued requests
      blk-mq: Let drivers cancel requeue_work
      blk-mq: Export if requests were started
      blk-mq: Wake tasks entering queue on dying
      blk-mq: get rid of ->cmd_size in the hardware queue
      block: fix checking return value of blk_mq_init_queue
      block: wake up waiters when a queue is marked dying
      NVMe: Fix double free irq
      blk-mq: Export freeze/unfreeze functions
      blk-mq: Exit queue on alloc failure
    torvalds committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    31238e6 View commit details
    Browse the repository at this point in the history
  19. netdevice: Add missing parentheses in macro

    For example, one could conceivably call
    	for_each_netdev_in_bond_rcu(condition ? bond1 : bond2, slave)
    and get an unexpected result.
    
    Signed-off-by: Benjamin Poirier <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    gobenji authored and davem330 committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    4ccce02 View commit details
    Browse the repository at this point in the history
  20. Merge tag 'locks-v3.19-1' of git://git.samba.org/jlayton/linux

    Pull file locking fix from Jeff Layton:
     "Just a simple bugfix for a regression that I introduced into v3.18
      with the internal lease API overhaul -- mea culpa.  Kudos to Linda and
      Neil for tracking this down and fixing it"
    
    * tag 'locks-v3.19-1' of git://git.samba.org/jlayton/linux:
      locks: fix NULL-deref in generic_delete_lease
    torvalds committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    fb005c4 View commit details
    Browse the repository at this point in the history
  21. cxgb4vf: Fix queue allocation for 40G adapter

    Signed-off-by: Hariprasad Shenai <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    Hariprasad Shenai authored and davem330 committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    14b3812 View commit details
    Browse the repository at this point in the history
  22. i40e: adds FCoE configure option

    Adds FCoE config option I40E_FCOE, so that FCoE can be enabled
    as needed but otherwise have it disabled by default.
    
    This also eliminate multiple FCoE config checks, instead now just
    one config check for CONFIG_I40E_FCOE.
    
    The I40E FCoE was added with 3.17 kernel and therefore this patch
    shall be applied to stable 3.17 kernel also.
    
    CC: <[email protected]>
    Signed-off-by: Vasu Dev <[email protected]>
    Tested-by: Jim Young <[email protected]>
    Signed-off-by: Jeff Kirsher <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    Vasu Dev authored and davem330 committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    776d4e9 View commit details
    Browse the repository at this point in the history
  23. openvswitch: packet messages need their own probe attribtue

    User space is currently sending a OVS_FLOW_ATTR_PROBE for both flow
    and packet messages. This leads to an out-of-bounds access in
    ovs_packet_cmd_execute() because OVS_FLOW_ATTR_PROBE >
    OVS_PACKET_ATTR_MAX.
    
    Introduce a new OVS_PACKET_ATTR_PROBE with the same numeric value
    as OVS_FLOW_ATTR_PROBE to grow the range of accepted packet attributes
    while maintaining to be binary compatible with existing OVS binaries.
    
    Fixes: 05da589 ("openvswitch: Add support for OVS_FLOW_ATTR_PROBE.")
    Reported-by: Sander Eikelenboom <[email protected]>
    Tracked-down-by: Florian Westphal <[email protected]>
    Signed-off-by: Thomas Graf <[email protected]>
    Reviewed-by: Jesse Gross <[email protected]>
    Acked-by: Pravin B Shelar <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    tgraf authored and davem330 committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    1ba3980 View commit details
    Browse the repository at this point in the history
  24. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/s390/linux
    
    Pull s390 fixes from Martin Schwidefsky:
     "Two small performance tweaks, the plumbing for the execveat system
      call and a couple of bug fixes"
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
      s390/uprobes: fix user space PER events
      s390/bpf: Fix JMP_JGE_X (A > X) and JMP_JGT_X (A >= X)
      s390/bpf: Fix ALU_NEG (A = -A)
      s390/mm: avoid using pmd_to_page for !USE_SPLIT_PMD_PTLOCKS
      s390/timex: fix get_tod_clock_ext() inline assembly
      s390: wire up execveat syscall
      s390/kernel: use stnsm 255 instead of stosm 0
      s390/vtime: Get rid of redundant WARN_ON
      s390/zcrypt: kernel oops at insmod of the z90crypt device driver
    torvalds committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    6fb400d View commit details
    Browse the repository at this point in the history
  25. team: avoid possible underflow of count_pending value for notify_peer…

    …s and mcast_rejoin
    
    This patch is fixing a race condition that may cause setting
    count_pending to -1, which results in unwanted big bulk of arp messages
    (in case of "notify peers").
    
    Consider following scenario:
    
    count_pending == 2
       CPU0                                           CPU1
    					team_notify_peers_work
    					  atomic_dec_and_test (dec count_pending to 1)
    					  schedule_delayed_work
     team_notify_peers
       atomic_add (adding 1 to count_pending)
    					team_notify_peers_work
    					  atomic_dec_and_test (dec count_pending to 1)
    					  schedule_delayed_work
    					team_notify_peers_work
    					  atomic_dec_and_test (dec count_pending to 0)
       schedule_delayed_work
    					team_notify_peers_work
    					  atomic_dec_and_test (dec count_pending to -1)
    
    Fix this race by using atomic_dec_if_positive - that will prevent
    count_pending running under 0.
    
    Fixes: fc423ff ("team: add peer notification")
    Fixes: 492b200  ("team: add support for sending multicast rejoins")
    Signed-off-by: Jiri Pirko <[email protected]>
    Signed-off-by: Jiri Benc <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    jpirko authored and davem330 committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    b0d11b4 View commit details
    Browse the repository at this point in the history
  26. Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm

    Pull kvm fixes from Paolo Bonzini:
     "Two bugfixes for arm64.  I will have another pull request next week,
      but otherwise things are calm"
    
    * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
      arm64: KVM: Fix HCR setting for 32bit guests
      arm64: KVM: Fix TLB invalidation by IPA/VMID
    torvalds committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    48c53db View commit details
    Browse the repository at this point in the history
  27. tg3: tg3_timer() should grab tp->lock before checking for tp->irq_sync

    This is to avoid the race between tg3_timer() and the execution paths
    which does not invoke tg3_timer_stop() and releases tp->lock before
    calling synchronize_irq()
    
    Reported-by: Peter Hurley <[email protected]>
    Tested-by: Peter Hurley <[email protected]>
    Signed-off-by: Prashant Sreedharan <[email protected]>
    Signed-off-by: Michael Chan <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    Prashant Sreedharan authored and davem330 committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    4fd190a View commit details
    Browse the repository at this point in the history
  28. tg3: tg3_reset_task() needs to use rtnl_lock to synchronize

    Currently tg3_reset_task() uses only tp->lock for synchronizing with code
    paths like tg3_open() etc. But since tp->lock is released before doing
    synchronize_irq(), rtnl_lock should be taken in tg3_reset_task() to
    synchronize it with other code paths.
    
    Reported-by: Peter Hurley <[email protected]>
    Tested-by: Peter Hurley <[email protected]>
    Signed-off-by: Prashant Sreedharan <[email protected]>
    Signed-off-by: Michael Chan <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    Prashant Sreedharan authored and davem330 committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    db84bf4 View commit details
    Browse the repository at this point in the history
  29. tg3: Release tp->lock before invoking synchronize_irq()

    synchronize_irq() can sleep waiting, for pending IRQ handlers so driver
    should release the tp->lock spin lock before invoking synchronize_irq()
    
    Reported-by: Peter Hurley <[email protected]>
    Tested-by: Peter Hurley <[email protected]>
    Signed-off-by: Prashant Sreedharan <[email protected]>
    Signed-off-by: Michael Chan <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    Prashant Sreedharan authored and davem330 committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    932f19d View commit details
    Browse the repository at this point in the history
  30. Merge branch 'tg3-net'

    Prashant Sreedharan says:
    
    ====================
    tg3: synchronize_irq() should be called without taking locks
    
    v2: Added Reported-by, Tested-by fields and reference to the thread that
        reported the problem
    
    This series addresses the problem reported by Peter Hurley in mail thread
    https://lkml.org/lkml/2015/1/12/1082
    ====================
    
    Signed-off-by: David S. Miller <[email protected]>
    davem330 committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    c637dbc View commit details
    Browse the repository at this point in the history
  31. Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net

    Pull networking fixes from David Miller:
    
     1) Don't use uninitialized data in IPVS, from Dan Carpenter.
    
     2) conntrack race fixes from Pablo Neira Ayuso.
    
     3) Fix TX hangs with i40e, from Jesse Brandeburg.
    
     4) Fix budget return from poll calls in dnet and alx, from Eric
        Dumazet.
    
     5) Fix bugus "if (unlikely(x) < 0)" test in AF_PACKET, from Christoph
        Jaeger.
    
     6) Fix bug introduced by conversion to list_head in TIPC retransmit
        code, from Jon Paul Maloy.
    
     7) Don't use GFP_NOIO under spinlock in USB kaweth driver, from Alexey
        Khoroshilov.
    
     8) Fix bridge build with INET disabled, from Arnd Bergmann.
    
     9) Fix netlink array overrun for PROBE attributes in openvswitch, from
        Thomas Graf.
    
    10) Don't hold spinlock across synchronize_irq() in tg3 driver, from
        Prashant Sreedharan.
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (44 commits)
      tg3: Release tp->lock before invoking synchronize_irq()
      tg3: tg3_reset_task() needs to use rtnl_lock to synchronize
      tg3: tg3_timer() should grab tp->lock before checking for tp->irq_sync
      team: avoid possible underflow of count_pending value for notify_peers and mcast_rejoin
      openvswitch: packet messages need their own probe attribtue
      i40e: adds FCoE configure option
      cxgb4vf: Fix queue allocation for 40G adapter
      netdevice: Add missing parentheses in macro
      bridge: only provide proxy ARP when CONFIG_INET is enabled
      neighbour: fix base_reachable_time(_ms) not effective immediatly when changed
      net: fec: fix MDIO bus assignement for dual fec SoC's
      xen-netfront: use different locks for Rx and Tx stats
      drivers: net: cpsw: fix multicast flush in dual emac mode
      cxgb4vf: Initialize mdio_addr before using it
      net: Corrected the comment describing the ndo operations to reflect the actual prototype for couple of operations
      usb/kaweth: use GFP_ATOMIC under spin_lock in usb_start_wait_urb()
      MAINTAINERS: add me as ibmveth maintainer
      tipc: fix bug in broadcast retransmit code
      update ip-sysctl.txt documentation (v2)
      net/at91_ether: prepare and unprepare clock
      ...
    torvalds committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    a6391a9 View commit details
    Browse the repository at this point in the history
  32. Merge tag 'usb-serial-3.19-rc5' of git://git.kernel.org/pub/scm/linux…

    …/kernel/git/johan/usb-serial into usb-linus
    
    Johan writes:
    
    USB-serial fixes for v3.18-rc5
    
    Here are a few fixes for reported problems including a possible
    null-deref on probe with keyspan, a misbehaving modem, and a couple of
    issues with the USB console.
    
    Some new device IDs are also added.
    
    Signed-off-by: Johan Hovold <[email protected]>
    gregkh committed Jan 14, 2015
    Configuration menu
    Copy the full SHA
    919ba4e View commit details
    Browse the repository at this point in the history

Commits on Jan 15, 2015

  1. Merge tag 'fixes-for-v3.19-rc6' of git://git.kernel.org/pub/scm/linux…

    …/kernel/git/balbi/usb into usb-linus
    
    Felipe writes:
    
    usb: fixes for v3.19-rc6
    
    The final set of fixes for v3.19. Two of the fixes are
    related to dwc3 scatter/gather implementation when we have
    more requests queued than available TRBs, while the other
    is a build fix for mv-usb PHY.
    
    Signed-off-by: Felipe Balbi <[email protected]>
    gregkh committed Jan 15, 2015
    Configuration menu
    Copy the full SHA
    f8359da View commit details
    Browse the repository at this point in the history
  2. Merge branch 'thermal-soc' of git://git.kernel.org/pub/scm/linux/kern…

    …el/git/rzhang/linux
    
    Pull thermal fixes from Zhang Rui:
     "Specifics:
    
       - bogus type qualifier fix in OF thermal code.
       - Minor fixes on imx and rcar thermal drivers.
       - Update TI SoC thermal maintainer entry.
       - Updated documentation of OF cpufreq cooling register"
    
    * 'thermal-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux:
      thermal: rcar: Spelling/grammar: s/drier use .../driver uses ...s/
      thermal: rcar: change type of ctemp in rcar_thermal_update_temp()
      thermal: rcar: fix ENR register value
      Documentation: thermal: document of_cpufreq_cooling_register()
      Thermal: imx: add clk disable/enable for suspend/resume
      MAINTAINERS: update ti-soc-thermal status
      MAINTAINERS: Add linux-omap to list of reviewers for TI Thermal
      thermal: of: Remove bogus type qualifier for of_thermal_get_trip_points()
    torvalds committed Jan 15, 2015
    Configuration menu
    Copy the full SHA
    f800c25 View commit details
    Browse the repository at this point in the history
  3. be2net: Allow GRE to work concurrently while a VxLAN tunnel is config…

    …ured
    
    Other tunnels like GRE break while VxLAN offloads are enabled in Skyhawk-R. To
    avoid this, we should restrict offload features on a per-packet basis in such
    conditions.
    
    Signed-off-by: Sriharsha Basavapatna <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    Sriharsha Basavapatna authored and davem330 committed Jan 15, 2015
    Configuration menu
    Copy the full SHA
    16dde0d View commit details
    Browse the repository at this point in the history
  4. ftrace: Fix updating of filters for shared global_ops filters

    As the set_ftrace_filter affects both the function tracer as well as the
    function graph tracer, the ops that represent each have a shared
    ftrace_ops_hash structure. This allows both to be updated when the filter
    files are updated.
    
    But if function graph is enabled and the global_ops (function tracing) ops
    is not, then it is possible that the filter could be changed without the
    update happening for the function graph ops. This will cause the changes
    to not take place and may even cause a ftrace_bug to occur as it could mess
    with the trampoline accounting.
    
    The solution is to check if the ops uses the shared global_ops filter and
    if the ops itself is not enabled, to check if there's another ops that is
    enabled and also shares the global_ops filter. In that case, the
    modification still needs to be executed.
    
    Link: http://lkml.kernel.org/r/[email protected]
    
    Cc: [email protected] # 3.17+
    Reviewed-by: Masami Hiramatsu <[email protected]>
    Signed-off-by: Steven Rostedt <[email protected]>
    rostedt committed Jan 15, 2015
    Configuration menu
    Copy the full SHA
    8f86f83 View commit details
    Browse the repository at this point in the history
  5. ftrace: Check both notrace and filter for old hash

    Using just the filter for checking for trampolines or regs is not enough
    when updating the code against the records that represent all functions.
    Both the filter hash and the notrace hash need to be checked.
    
    To trigger this bug (using trace-cmd and perf):
    
     # perf probe -a do_fork
     # trace-cmd start -B foo -e probe
     # trace-cmd record -p function_graph -n do_fork sleep 1
    
    The trace-cmd record at the end clears the filter before it disables
    function_graph tracing and then that causes the accounting of the
    ftrace function records to become incorrect and causes ftrace to bug.
    
    Link: http://lkml.kernel.org/r/[email protected]
    
    Cc: [email protected]
    [ still need to switch old_hash_ops to old_ops_hash ]
    Reviewed-by: Masami Hiramatsu <[email protected]>
    Signed-off-by: Steven Rostedt <[email protected]>
    rostedt committed Jan 15, 2015
    Configuration menu
    Copy the full SHA
    7485058 View commit details
    Browse the repository at this point in the history
  6. ftrace/jprobes/x86: Fix conflict between jprobes and function graph t…

    …racing
    
    If the function graph tracer traces a jprobe callback, the system will
    crash. This can easily be demonstrated by compiling the jprobe
    sample module that is in the kernel tree, loading it and running the
    function graph tracer.
    
     # modprobe jprobe_example.ko
     # echo function_graph > /sys/kernel/debug/tracing/current_tracer
     # ls
    
    The first two commands end up in a nice crash after the first fork.
    (do_fork has a jprobe attached to it, so "ls" just triggers that fork)
    
    The problem is caused by the jprobe_return() that all jprobe callbacks
    must end with. The way jprobes works is that the function a jprobe
    is attached to has a breakpoint placed at the start of it (or it uses
    ftrace if fentry is supported). The breakpoint handler (or ftrace callback)
    will copy the stack frame and change the ip address to return to the
    jprobe handler instead of the function. The jprobe handler must end
    with jprobe_return() which swaps the stack and does an int3 (breakpoint).
    This breakpoint handler will then put back the saved stack frame,
    simulate the instruction at the beginning of the function it added
    a breakpoint to, and then continue on.
    
    For function tracing to work, it hijakes the return address from the
    stack frame, and replaces it with a hook function that will trace
    the end of the call. This hook function will restore the return
    address of the function call.
    
    If the function tracer traces the jprobe handler, the hook function
    for that handler will not be called, and its saved return address
    will be used for the next function. This will result in a kernel crash.
    
    To solve this, pause function tracing before the jprobe handler is called
    and unpause it before it returns back to the function it probed.
    
    Some other updates:
    
    Used a variable "saved_sp" to hold kcb->jprobe_saved_sp. This makes the
    code look a bit cleaner and easier to understand (various tries to fix
    this bug required this change).
    
    Note, if fentry is being used, jprobes will change the ip address before
    the function graph tracer runs and it will not be able to trace the
    function that the jprobe is probing.
    
    Link: http://lkml.kernel.org/r/[email protected]
    
    Cc: [email protected] # 2.6.30+
    Acked-by: Masami Hiramatsu <[email protected]>
    Signed-off-by: Steven Rostedt <[email protected]>
    rostedt committed Jan 15, 2015
    Configuration menu
    Copy the full SHA
    237d28d View commit details
    Browse the repository at this point in the history
  7. tracing: Remove extra call to init_ftrace_syscalls()

    trace_init() calls init_ftrace_syscalls() and then calls trace_event_init()
    which also calls init_ftrace_syscalls(). It makes more sense to only
    call it from trace_event_init().
    
    Calling it twice wastes memory, as it allocates the syscall events twice,
    and loses the first copy of it.
    
    Link: http://lkml.kernel.org/r/[email protected]
    Link: http://lkml.kernel.org/r/[email protected]
    
    Reported-by: Wang Nan <[email protected]>
    Signed-off-by: Steven Rostedt <[email protected]>
    rostedt committed Jan 15, 2015
    Configuration menu
    Copy the full SHA
    83829b7 View commit details
    Browse the repository at this point in the history
  8. tracing: Fix enabling of syscall events on the command line

    Commit 5f893b2 "tracing: Move enabling tracepoints to just after
    rcu_init()" broke the enabling of system call events from the command
    line. The reason was that the enabling of command line trace events
    was moved before PID 1 started, and the syscall tracepoints require
    that all tasks have the TIF_SYSCALL_TRACEPOINT flag set. But the
    swapper task (pid 0) is not part of that. Since the swapper task is the
    only task that is running at this early in boot, no task gets the
    flag set, and the tracepoint never gets reached.
    
    Instead of setting the swapper task flag (there should be no reason to
    do that), re-enabled trace events again after the init thread (PID 1)
    has been started. It requires disabling all command line events and
    re-enabling them, as just enabling them again will not reset the logic
    to set the TIF_SYSCALL_TRACEPOINT flag, as the syscall tracepoint will
    be fooled into thinking that it was already set, and wont try setting
    it again. For this reason, we must first disable it and re-enable it.
    
    Link: http://lkml.kernel.org/r/[email protected]
    Link: http://lkml.kernel.org/r/[email protected]
    
    Reported-by: Michael Ellerman <[email protected]>
    Signed-off-by: Steven Rostedt <[email protected]>
    rostedt committed Jan 15, 2015
    Configuration menu
    Copy the full SHA
    ce1039b View commit details
    Browse the repository at this point in the history
  9. MAINTAINERS: update linux-can git repositories

    The linux-can upstream git repositories are now hosted on kernel.org, update
    MAINTAINERS accordingly.
    
    Signed-off-by: Marc Kleine-Budde <[email protected]>
    marckleinebudde committed Jan 15, 2015
    Configuration menu
    Copy the full SHA
    870482a View commit details
    Browse the repository at this point in the history
  10. can: dev: fix crtlmode_supported check

    When changing flags in the CAN drivers ctrlmode the provided new content has to
    be checked whether the bits are allowed to be changed. The bits that are to be
    changed are given as a bitfield in cm->mask. Therefore checking against
    cm->flags is wrong as the content can hold any kind of values.
    
    The iproute2 tool sets the bits in cm->mask and cm->flags depending on the
    detected command line options. To be robust against bogus user space
    applications additionally sanitize the provided flags with the provided mask.
    
    Cc: Wolfgang Grandegger <[email protected]>
    Signed-off-by: Oliver Hartkopp <[email protected]>
    Cc: linux-stable <[email protected]>
    Signed-off-by: Marc Kleine-Budde <[email protected]>
    hartkopp authored and marckleinebudde committed Jan 15, 2015
    Configuration menu
    Copy the full SHA
    9b1087a View commit details
    Browse the repository at this point in the history
  11. can: m_can: tag current CAN FD controllers as non-ISO

    During the CAN FD standardization process within the ISO it turned out that
    the failure detection capability has to be improved.
    
    The CAN in Automation organization (CiA) defined the already implemented CAN
    FD controllers as 'non-ISO' and the upcoming improved CAN FD controllers as
    'ISO' compliant. See at http://www.can-cia.com/index.php?id=1937
    
    Finally there will be three types of CAN FD controllers in the future:
    
    1. ISO compliant (fixed)
    2. non-ISO compliant (fixed, like the M_CAN IP v3.0.1 in m_can.c)
    3. ISO/non-ISO CAN FD controllers (switchable, like the PEAK USB FD)
    
    So the current M_CAN driver for the M_CAN IP v3.0.1 has to expose its non-ISO
    implementation by setting the CAN_CTRLMODE_FD_NON_ISO ctrlmode at startup.
    As this bit cannot be switched at configuration time CAN_CTRLMODE_FD_NON_ISO
    must not be set in ctrlmode_supported of the current M_CAN driver.
    
    Signed-off-by: Oliver Hartkopp <[email protected]>
    Cc: linux-stable <[email protected]>
    Signed-off-by: Marc Kleine-Budde <[email protected]>
    hartkopp authored and marckleinebudde committed Jan 15, 2015
    Configuration menu
    Copy the full SHA
    6cfda7f View commit details
    Browse the repository at this point in the history
  12. can: c_can: use regmap_update_bits() to modify RAMINIT register

    use of regmap_read() and regmap_write() in c_can_hw_raminit_syscon()
    is not safe as the RAMINIT register can be shared between different drivers
    at least for TI SoCs.
    
    To make the modification atomic we switch to using regmap_update_bits().
    
    regmap_update_bits() skips writing to the register if it's read content is the
    same as what is going to be written. This causes an issue for us when we
    need to clear the DONE bit with the initial condition START:0, DONE:1 as
    DONE bit must be written with 1 to clear it.
    
    So we defer the clearing of DONE bit to later when we set the START bit.
    There we are sure that START bit is changed from 0 to 1 so the write of
    1 to already set DONE bit will happen.
    
    Signed-off-by: Roger Quadros <[email protected]>
    Signed-off-by: Marc Kleine-Budde <[email protected]>
    Roger Quadros authored and marckleinebudde committed Jan 15, 2015
    Configuration menu
    Copy the full SHA
    47e3485 View commit details
    Browse the repository at this point in the history
  13. can: kvaser_usb: Don't free packets when tight on URBs

    Flooding the Kvaser CAN to USB dongle with multiple reads and
    writes in high frequency caused seemingly-random panics in the
    kernel.
    
    On further inspection, it seems the driver erroneously freed the
    to-be-transmitted packet upon getting tight on URBs and returning
    NETDEV_TX_BUSY, leading to invalid memory writes and double frees
    at a later point in time.
    
    Note:
    
    Finding no more URBs/transmit-contexts and returning NETDEV_TX_BUSY
    is a driver bug in and out of itself: it means that our start/stop
    queue flow control is broken.
    
    This patch only fixes the (buggy) error handling code; the root
    cause shall be fixed in a later commit.
    
    Acked-by: Olivier Sobrie <[email protected]>
    Signed-off-by: Ahmed S. Darwish <[email protected]>
    Cc: linux-stable <[email protected]>
    Signed-off-by: Marc Kleine-Budde <[email protected]>
    Ahmed S. Darwish authored and marckleinebudde committed Jan 15, 2015
    Configuration menu
    Copy the full SHA
    b442723 View commit details
    Browse the repository at this point in the history
  14. can: kvaser_usb: Reset all URB tx contexts upon channel close

    Flooding the Kvaser CAN to USB dongle with multiple reads and
    writes in very high frequency (*), closing the CAN channel while
    all the transmissions are on (#), opening the device again (@),
    then sending a small number of packets would make the driver
    enter an almost infinite loop of:
    
    [....]
    [15959.853988] kvaser_usb 4-3:1.0 can0: cannot find free context
    [15959.853990] kvaser_usb 4-3:1.0 can0: cannot find free context
    [15959.853991] kvaser_usb 4-3:1.0 can0: cannot find free context
    [15959.853993] kvaser_usb 4-3:1.0 can0: cannot find free context
    [15959.853994] kvaser_usb 4-3:1.0 can0: cannot find free context
    [15959.853995] kvaser_usb 4-3:1.0 can0: cannot find free context
    [....]
    
    _dragging the whole system down_ in the process due to the
    excessive logging output.
    
    Initially, this has caused random panics in the kernel due to a
    buggy error recovery path.  That got fixed in an earlier commit.(%)
    This patch aims at solving the root cause. -->
    
    16 tx URBs and contexts are allocated per CAN channel per USB
    device. Such URBs are protected by:
    
    a) A simple atomic counter, up to a value of MAX_TX_URBS (16)
    b) A flag in each URB context, stating if it's free
    c) The fact that ndo_start_xmit calls are themselves protected
       by the networking layers higher above
    
    After grabbing one of the tx URBs, if the driver noticed that all
    of them are now taken, it stops the netif transmission queue.
    Such queue is worken up again only if an acknowedgment was received
    from the firmware on one of our earlier-sent frames.
    
    Meanwhile, upon channel close (#), the driver sends a CMD_STOP_CHIP
    to the firmware, effectively closing all further communication.  In
    the high traffic case, the atomic counter remains at MAX_TX_URBS,
    and all the URB contexts remain marked as active.  While opening
    the channel again (@), it cannot send any further frames since no
    more free tx URB contexts are available.
    
    Reset all tx URB contexts upon CAN channel close.
    
    (*) 50 parallel instances of `cangen0 -g 0 -ix`
    (#) `ifconfig can0 down`
    (@) `ifconfig can0 up`
    (%) "can: kvaser_usb: Don't free packets when tight on URBs"
    
    Signed-off-by: Ahmed S. Darwish <[email protected]>
    Cc: linux-stable <[email protected]>
    Signed-off-by: Marc Kleine-Budde <[email protected]>
    Ahmed S. Darwish authored and marckleinebudde committed Jan 15, 2015
    Configuration menu
    Copy the full SHA
    889b77f View commit details
    Browse the repository at this point in the history
  15. can: kvaser_usb: Don't send a RESET_CHIP for non-existing channels

    Recent Leaf firmware versions (>= 3.1.557) do not allow to send
    commands for non-existing channels.  If a command is sent for a
    non-existing channel, the firmware crashes.
    
    Reported-by: Christopher Storah <[email protected]>
    Signed-off-by: Olivier Sobrie <[email protected]>
    Signed-off-by: Ahmed S. Darwish <[email protected]>
    Cc: linux-stable <[email protected]>
    Signed-off-by: Marc Kleine-Budde <[email protected]>
    Ahmed S. Darwish authored and marckleinebudde committed Jan 15, 2015
    Configuration menu
    Copy the full SHA
    5e7e6e0 View commit details
    Browse the repository at this point in the history
  16. can: kvaser_usb: Don't dereference skb after a netif_rx()

    We should not touch the packet after a netif_rx: it might
    get freed behind our back.
    
    Suggested-by: Marc Kleine-Budde <[email protected]>
    Signed-off-by: Ahmed S. Darwish <[email protected]>
    Signed-off-by: Marc Kleine-Budde <[email protected]>
    Ahmed S. Darwish authored and marckleinebudde committed Jan 15, 2015
    Configuration menu
    Copy the full SHA
    a58518c View commit details
    Browse the repository at this point in the history
  17. gpio: sysfs: fix gpio-chip device-attribute leak

    The gpio-chip device attributes were never destroyed when the device was
    removed.
    
    Fix by using device_create_with_groups() to create the device attributes
    of the chip class device.
    
    Note that this also fixes the attribute-creation race with userspace.
    
    Fixes: d8f388d ("gpio: sysfs interface")
    Cc: stable <[email protected]>	# v2.6.27+
    Signed-off-by: Johan Hovold <[email protected]>
    Signed-off-by: Linus Walleij <[email protected]>
    jhovold authored and linusw committed Jan 15, 2015
    Configuration menu
    Copy the full SHA
    121b6a7 View commit details
    Browse the repository at this point in the history
  18. gpio: sysfs: fix gpio device-attribute leak

    The gpio device attributes were never destroyed when the gpio was
    unexported (or on export failures).
    
    Use device_create_with_groups() to create the default device attributes
    of the gpio class device. Note that this also fixes the
    attribute-creation race with userspace for these attributes.
    
    Remove contingent attributes in export error path and on unexport.
    
    Fixes: d8f388d ("gpio: sysfs interface")
    Cc: stable <[email protected]>	# v2.6.27+
    Signed-off-by: Johan Hovold <[email protected]>
    Signed-off-by: Linus Walleij <[email protected]>
    jhovold authored and linusw committed Jan 15, 2015
    Configuration menu
    Copy the full SHA
    0915e6f View commit details
    Browse the repository at this point in the history
  19. gpio: sysfs: fix gpio attribute-creation race

    Fix attribute-creation race with userspace by using the default group
    to create also the contingent gpio device attributes.
    
    Fixes: d8f388d ("gpio: sysfs interface")
    Signed-off-by: Johan Hovold <[email protected]>
    Signed-off-by: Linus Walleij <[email protected]>
    jhovold authored and linusw committed Jan 15, 2015
    Configuration menu
    Copy the full SHA
    ebbeba1 View commit details
    Browse the repository at this point in the history
  20. gpiolib: of: Correct error handling in of_get_named_gpiod_flags

    of_get_named_gpiod_flags fails with -EPROBE_DEFER in cases
    where the gpio chip is available and the GPIO translation fails.
    
    This causes drivers to be re-probed erroneusly, and hides the
    real problem(i.e. the GPIO number being out of range).
    
    Cc: Stable <[email protected]>
    Signed-off-by: Hans Holmberg <[email protected]>
    Reviewed-by: Alexandre Courbot <[email protected]>
    Signed-off-by: Linus Walleij <[email protected]>
    Hans Holmberg authored and linusw committed Jan 15, 2015
    Configuration menu
    Copy the full SHA
    7b8792b View commit details
    Browse the repository at this point in the history
  21. drivers: net: cpsw: fix cpsw hung with add vlan using vconfig

    while adding vlan in dual EMAC mode, only specific ports should be
    subscribed for the vlan, else it will lead to switching mode and
    if both ports connected to same switch cpsw will hung as it creates
    a network loop. Fixing this by adding only specific ports in case
    of dual EMAC.
    
    Signed-off-by: Mugunthan V N <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    mugunthanvnm authored and davem330 committed Jan 15, 2015
    Configuration menu
    Copy the full SHA
    9f6bd8f View commit details
    Browse the repository at this point in the history
  22. sh_eth: Fix addition of .trscer_err_mask to wrong SoC data

    commit b284fbe ("sh_eth: Fix access to TRSCER register") wanted
    to add a .trscer_err_mask value to the R-Car Gen2 family-specific data
    structure (r8a779x_data), but it was accidentally added to the
    SH7724-specific data structure (sh7724_data).
    
    Presumably this happened due to a patch conflict with commit
    d407bc0 ("sh-eth: Set fdr_value of R-Car SoCs"), which added
    another field at the same position.
    
    Move the field setting to fix this.
    
    Signed-off-by: Geert Uytterhoeven <[email protected]>
    Fixes: b284fbe ("sh_eth: Fix access to TRSCER register")
    Signed-off-by: David S. Miller <[email protected]>
    geertu authored and davem330 committed Jan 15, 2015
    Configuration menu
    Copy the full SHA
    01fbd3f View commit details
    Browse the repository at this point in the history

Commits on Jan 16, 2015

  1. net: sxgbe: Fix NULL dereferece when using DT

    When the MAC address is provided in the device tree file, the
    condition is true and kernel crashes due to NULL dereference.
    
    Signed-off-by: Girish K.S <[email protected]>
    Signed-off-by: Byungho An <[email protected]>
    Signed-off-by: Kukjin Kim <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    girishks2000 authored and davem330 committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    1c1832c View commit details
    Browse the repository at this point in the history
  2. net: sxgbe: Fix waring for double kfree()

    This patch fixes double kfree() calls at init_rx_ring() because
    it causes static checker warning.
    
    Reported-by: Dan Carpenter <[email protected]>
    Signed-off-by: Byungho An <[email protected]>
    Signed-off-by: Kukjin Kim <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    Byungho An authored and davem330 committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    f7d8555 View commit details
    Browse the repository at this point in the history
  3. Merge tag 'mac80211-for-davem-2015-01-15' of git://git.kernel.org/pub…

    …/scm/linux/kernel/git/jberg/mac80211
    
    Just two fixes - one for an uninialized variable and
    one for a deadlock in regulatory processing.
    
    Signed-off-by: David S. Miller <[email protected]>
    davem330 committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    aaef66b View commit details
    Browse the repository at this point in the history
  4. net/mlx4: Don't disable vxlan offloads under DMFS-A0 optimized steering

    Except for VXLAN steering rules, all offloads should work as they were
    under plain DMFS mode. Fix that by enabling all the offloads under
    DMFS-A0 mode, except for VXLAN steering rules.
    
    Fixes: d57febe "net/mlx4: Add A0 hybrid steering"
    Signed-off-by: Or Gerlitz <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    ogerlitz authored and davem330 committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    5eff6da View commit details
    Browse the repository at this point in the history
  5. Merge tag 'linux-can-fixes-for-3.19-20150115' of git://git.kernel.org…

    …/pub/scm/linux/kernel/git/mkl/linux-can
    
    Marc Kleine-Budde says:
    
    ====================
    pull-request: can 2015-01-15
    
    this is a pull request of 8 patches.
    
    Ahmed S. Darwish contributes 4 fixes for the kvaser_usb driver. The two patches
    by Oliver Hartkopp mark the m_can driver as non-ISO, as the CANFD standard was
    updated. Roger Quadros's patch for the c_can driver fixes the register access
    during RAMINIT. And one patch by my, which updates the MAINTAINERS file, as we
    moved the git repos to the kernel.org infrastructure.
    ====================
    
    Signed-off-by: David S. Miller <[email protected]>
    davem330 committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    4315ef8 View commit details
    Browse the repository at this point in the history
  6. ip: zero sockaddr returned on error queue

    The sockaddr is returned in IP(V6)_RECVERR as part of errhdr. That
    structure is defined and allocated on the stack as
    
        struct {
                struct sock_extended_err ee;
                struct sockaddr_in(6)    offender;
        } errhdr;
    
    The second part is only initialized for certain SO_EE_ORIGIN values.
    Always initialize it completely.
    
    An MTU exceeded error on a SOCK_RAW/IPPROTO_RAW is one example that
    would return uninitialized bytes.
    
    Signed-off-by: Willem de Bruijn <[email protected]>
    
    ----
    
    Also verified that there is no padding between errhdr.ee and
    errhdr.offender that could leak additional kernel data.
    Acked-by: Eric Dumazet <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    wdebruij authored and davem330 committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    f812116 View commit details
    Browse the repository at this point in the history
  7. Merge tag 'powerpc-3.19-4' of git://git.kernel.org/pub/scm/linux/kern…

    …el/git/mpe/linux
    
    Pull powerpc fixes from Michael Ellerman:
     "A few powerpc fixes"
    
    * tag 'powerpc-3.19-4' of git://git.kernel.org/pub/scm/linux/kernel/git/mpe/linux:
      powerpc: Work around gcc bug in current_thread_info()
      cxl: Fix issues when unmapping contexts
      powernv: Fix OPAL tracepoint code
    torvalds committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    3fa116e View commit details
    Browse the repository at this point in the history
  8. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/geert/linux-m68k
    
    Pull m68k fixlet from Geert Uytterhoeven.
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k:
      m68k: Wire up execveat
    torvalds committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    f8cb395 View commit details
    Browse the repository at this point in the history
  9. Merge tag 'mmc-v3.19-4' of git://git.linaro.org/people/ulf.hansson/mmc

    Pull MMC bugfix from Ulf Hansson:
     "Fix sdhci regulator regression for Qualcomm and Nvidia boards"
    
    * tag 'mmc-v3.19-4' of git://git.linaro.org/people/ulf.hansson/mmc:
      mmc: sdhci: Set SDHCI_POWER_ON with external vmmc
    torvalds committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    7b552bc View commit details
    Browse the repository at this point in the history
  10. Merge tag 'fbdev-fixes-3.19' of git://git.kernel.org/pub/scm/linux/ke…

    …rnel/git/tomba/linux
    
    Pull fbdev fixes from Tomi Valkeinen:
     - broadsheetfb: fix memory leak
     - simplefb: fix build failure on sparc
    
    * tag 'fbdev-fixes-3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux:
      fbdev/broadsheetfb: fix memory leak
      simplefb: Fix build failure on Sparc
    torvalds committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    0b6212e View commit details
    Browse the repository at this point in the history
  11. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/mszeredi/fuse
    
    Pull fuse fixes from Miklos Szeredi:
     "This fixes a regression in the latest fuse update plus a fix for a
      rather theoretical memory ordering issue"
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse:
      fuse: add memory barrier to INIT
      fuse: fix LOOKUP vs INIT compat handling
    torvalds committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    cb59670 View commit details
    Browse the repository at this point in the history
  12. net: davinci_emac: Fix hangs with interrupts

    On davinci_emac, we have pulse interrupts. This means that we need to
    clear the EOI bits when disabling interrupts as otherwise the interrupts
    keep happening. And we also need to not clear the EOI bits again when
    enabling the interrupts as otherwise we will get tons of:
    
    unexpected IRQ trap at vector 00
    
    These errors almost certainly mean that the omap-intc.c is signaling
    a spurious interrupt with the reserved irq 127 as we've seen earlier
    on omap3.
    
    Let's fix the issue by clearing the EOI bits when disabling the
    interrupts. Let's also keep the comment for "Rx Threshold and Misc
    interrupts are not enabled" for both enable and disable so people
    are aware of this when potentially adding more support.
    
    Note that eventually we should handle the RX and TX interrupts
    separately like cpsw is now doing. However, so far I have not seen
    any issues with this based on my testing, so it seems to behave a
    little different compared to the cpsw that had a similar issue.
    
    Cc: Brian Hutchinson <[email protected]>
    Reviewed-by: Felipe Balbi <[email protected]>
    Signed-off-by: Tony Lindgren <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    tmlind authored and davem330 committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    cd2d6d3 View commit details
    Browse the repository at this point in the history
  13. net: davinci_emac: Fix runtime pm calls for davinci_emac

    Commit 3ba9738 ("net: ethernet: davinci_emac: add pm_runtime support")
    added support for runtime PM, but it causes issues on omap3 related devices
    that actually gate the clocks:
    
    Unhandled fault: external abort on non-linefetch (0x1008)
    ...
    [<c04160f0>] (emac_dev_getnetstats) from [<c04d6a3c>] (dev_get_stats+0x78/0xc8)
    [<c04d6a3c>] (dev_get_stats) from [<c04e9ccc>] (rtnl_fill_ifinfo+0x3b8/0x938)
    [<c04e9ccc>] (rtnl_fill_ifinfo) from [<c04eade4>] (rtmsg_ifinfo+0x68/0xd8)
    [<c04eade4>] (rtmsg_ifinfo) from [<c04dd35c>] (register_netdevice+0x3a0/0x4ec)
    [<c04dd35c>] (register_netdevice) from [<c04dd4bc>] (register_netdev+0x14/0x24)
    [<c04dd4bc>] (register_netdev) from [<c041755c>] (davinci_emac_probe+0x408/0x5c8)
    [<c041755c>] (davinci_emac_probe) from [<c0396d78>] (platform_drv_probe+0x48/0xa4)
    
    Let's fix it by moving the pm_runtime_get() call earlier, and also add it to
    the emac_dev_getnetstats(). Also note that we want to use pm_runtime_get_sync()
    as we don't want to have deferred_resume happen. And let's also check the
    return value for pm_runtime_get_sync() as noted by Felipe Balbi <[email protected]>.
    
    Cc: Brian Hutchinson <[email protected]>
    Acked-by: Mark A. Greer <[email protected]>
    Reviewed-by: Felipe Balbi <[email protected]>
    Signed-off-by: Tony Lindgren <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    tmlind authored and davem330 committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    b5133e7 View commit details
    Browse the repository at this point in the history
  14. net: davinci_emac: Free clock after checking the frequency

    We only use clk_get() to get the frequency, the rest is done by
    the runtime PM calls. Let's free the clock too.
    
    Cc: Brian Hutchinson <[email protected]>
    Cc: Felipe Balbi <[email protected]>
    Signed-off-by: Tony Lindgren <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    tmlind authored and davem330 committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    0f53727 View commit details
    Browse the repository at this point in the history
  15. net: davinci_emac: Fix incomplete code for getting the phy from devic…

    …e tree
    
    Looks like the phy_id is never set up beyond getting the phandle.
    Note that we can remove the ifdef for phy_node as there is a stub
    for of_phy_connec() if CONFIG_OF is not set.
    
    Cc: Brian Hutchinson <[email protected]>
    Cc: Felipe Balbi <[email protected]>
    Signed-off-by: Tony Lindgren <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    tmlind authored and davem330 committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    1d82ffa View commit details
    Browse the repository at this point in the history
  16. net: davinci_emac: Fix ioremap for devices with MDIO within the EMAC …

    …address space
    
    Some devices like dm816x have the MDIO registers within the first EMAC
    instance address space. Let's fix the issue by allowing to pass an
    optional second IO range for the EMAC control register area.
    
    Cc: Brian Hutchinson <[email protected]>
    Cc: Felipe Balbi <[email protected]>
    Signed-off-by: Tony Lindgren <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    tmlind authored and davem330 committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    a159432 View commit details
    Browse the repository at this point in the history
  17. net: davinci_emac: Add support for emac on dm816x

    On dm816x we have two emac controllers with separate memory
    areas.
    
    Cc: Brian Hutchinson <[email protected]>
    Cc: Felipe Balbi <[email protected]>
    Signed-off-by: Tony Lindgren <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    tmlind authored and davem330 committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    de39008 View commit details
    Browse the repository at this point in the history
  18. Merge branch 'davinci_emac'

    Tony Lindgren says:
    
    ====================
    Fixes for davinci_emac
    
    Here's a repost of the fixes for davinci_emac with patches
    updated for comments and acks collected.
    ====================
    
    Signed-off-by: David S. Miller <[email protected]>
    davem330 committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    57d737c View commit details
    Browse the repository at this point in the history
  19. net: rps: fix cpu unplug

    softnet_data.input_pkt_queue is protected by a spinlock that
    we must hold when transferring packets from victim queue to an active
    one. This is because other cpus could still be trying to enqueue packets
    into victim queue.
    
    A second problem is that when we transfert the NAPI poll_list from
    victim to current cpu, we absolutely need to special case the percpu
    backlog, because we do not want to add complex locking to protect
    process_queue : Only owner cpu is allowed to manipulate it, unless cpu
    is offline.
    
    Based on initial patch from Prasad Sodagudi & Subash Abhinov
    Kasiviswanathan.
    
    This version is better because we do not slow down packet processing,
    only make migration safer.
    
    Reported-by: Prasad Sodagudi <[email protected]>
    Reported-by: Subash Abhinov Kasiviswanathan <[email protected]>
    Signed-off-by: Eric Dumazet <[email protected]>
    Cc: Tom Herbert <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    Eric Dumazet authored and davem330 committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    ac64da0 View commit details
    Browse the repository at this point in the history
  20. perf/rapl: Fix sysfs_show() initialization for RAPL PMU

    This patch fixes a problem with the initialization of the
    sysfs_show() routine for the RAPL PMU.
    
    The current code was wrongly relying on the EVENT_ATTR_STR()
    macro which uses the events_sysfs_show() function in the x86
    PMU code. That function itself was relying on the x86_pmu data
    structure. Yet RAPL and the core PMU (x86_pmu) have nothing to
    do with each other. They should therefore not interact with
    each other.
    
    The x86_pmu structure is initialized at boot time based on
    the host CPU model. When the host CPU is not supported, the
    x86_pmu remains uninitialized and some of the callbacks it
    contains are NULL.
    
    The false dependency with x86_pmu could potentially cause crashes
    in case the x86_pmu is not initialized while the RAPL PMU is. This
    may, for instance, be the case in virtualized environments.
    
    This patch fixes the problem by using a private sysfs_show()
    routine for exporting the RAPL PMU events.
    
    Signed-off-by: Stephane Eranian <[email protected]>
    Signed-off-by: Peter Zijlstra (Intel) <[email protected]>
    Link: http://lkml.kernel.org/r/20150113225953.GA21525@thinkpad
    Cc: [email protected]
    Cc: [email protected]
    Cc: Arnaldo Carvalho de Melo <[email protected]>
    Cc: Linus Torvalds <[email protected]>
    Signed-off-by: Ingo Molnar <[email protected]>
    Stephane Eranian authored and Ingo Molnar committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    433678b View commit details
    Browse the repository at this point in the history
  21. perf/x86/intel: Fix bug for "cycles:p" and "cycles:pp" on SLM

    cycles:p and cycles:pp do not work on SLM since commit:
    
       86a0446 ("perf/x86: Revamp PEBS event selection")
    
    UOPS_RETIRED.ALL is not a PEBS capable event, so it should not be used
    to count cycle number.
    
    Actually SLM calls intel_pebs_aliases_core2() which uses INST_RETIRED.ANY_P
    to count the number of cycles. It's a PEBS capable event. But inv and
    cmask must be set to count cycles.
    
    Considering SLM allows all events as PEBS with no flags, only
    INST_RETIRED.ANY_P, inv=1, cmask=16 needs to handled specially.
    
    Signed-off-by: Kan Liang <[email protected]>
    Signed-off-by: Peter Zijlstra (Intel) <[email protected]>
    Link: http://lkml.kernel.org/r/[email protected]
    Cc: Arnaldo Carvalho de Melo <[email protected]>
    Cc: Linus Torvalds <[email protected]>
    Signed-off-by: Ingo Molnar <[email protected]>
    kliang2 authored and Ingo Molnar committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    3363673 View commit details
    Browse the repository at this point in the history
  22. arm64: partially revert "ARM: 8167/1: extend the reserved memory for …

    …initrd to be page aligned"
    
    This patch partially reverts commit 421520b
    (only the arm64 part). There is no guarantee that the boot-loader places other
    images like dtb in a different page than initrd start/end, especially when the
    kernel is built with 64KB pages. When this happens, such pages must not be
    freed. The free_reserved_area() already takes care of rounding up "start" and
    rounding down "end" to avoid freeing partially used pages.
    
    Cc: <[email protected]> # 3.17+
    Reported-by: Peter Maydell <[email protected]>
    Signed-off-by: Catalin Marinas <[email protected]>
    Signed-off-by: Will Deacon <[email protected]>
    ctmarinas authored and wildea01 committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    0145058 View commit details
    Browse the repository at this point in the history
  23. Merge tag 'trace-fixes-v3.19-rc3' of git://git.kernel.org/pub/scm/lin…

    …ux/kernel/git/rostedt/linux-trace
    
    Pull ftrace fixes from Steven Rostedt:
     "This holds a few fixes to the ftrace infrastructure as well as the
      mixture of function graph tracing and kprobes.
    
      When jprobes and function graph tracing is enabled at the same time it
      will crash the system:
    
          # modprobe jprobe_example
          # echo function_graph > /sys/kernel/debug/tracing/current_tracer
    
      After the first fork (jprobe_example probes it), the system will
      crash.
    
      This is due to the way jprobes copies the stack frame and does not do
      a normal function return.  This messes up with the function graph
      tracing accounting which hijacks the return address from the stack and
      replaces it with a hook function.  It saves the return addresses in a
      separate stack to put back the correct return address when done.  But
      because the jprobe functions do not do a normal return, their stack
      addresses are not put back until the function they probe is called,
      which means that the probed function will get the return address of
      the jprobe handler instead of its own.
    
      The simple fix here was to disable function graph tracing while the
      jprobe handler is being called.
    
      While debugging this I found two minor bugs with the function graph
      tracing.
    
      The first was about the function graph tracer sharing its function
      hash with the function tracer (they both get filtered by the same
      input).  The changing of the set_ftrace_filter would not sync the
      function recording records after a change if the function tracer was
      disabled but the function graph tracer was enabled.  This was due to
      the update only checking one of the ops instead of the shared ops to
      see if they were enabled and should perform the sync.  This caused the
      ftrace accounting to break and a ftrace_bug() would be triggered,
      disabling ftrace until a reboot.
    
      The second was that the check to update records only checked one of
      the filter hashes.  It needs to test both the "filter" and "notrace"
      hashes.  The "filter" hash determines what functions to trace where as
      the "notrace" hash determines what functions not to trace (trace all
      but these).  Both hashes need to be passed to the update code to find
      out what change is being done during the update.  This also broke the
      ftrace record accounting and triggered a ftrace_bug().
    
      This patch set also include two more fixes that were reported
      separately from the kprobe issue.
    
      One was that init_ftrace_syscalls() was called twice at boot up.  This
      is not a major bug, but that call performed a rather large kmalloc
      (NR_syscalls * sizeof(*syscalls_metadata)).  The second call made the
      first one a memory leak, and wastes memory.
    
      The other fix is a regression caused by an update in the v3.19 merge
      window.  The moving to enable events early, moved the enabling before
      PID 1 was created.  The syscall events require setting the
      TIF_SYSCALL_TRACEPOINT for all tasks.  But for_each_process_thread()
      does not include the swapper task (PID 0), and ended up being a nop.
    
      A suggested fix was to add the init_task() to have its flag set, but I
      didn't really want to mess with PID 0 for this minor bug.  Instead I
      disable and re-enable events again at early_initcall() where it use to
      be enabled.  This also handles any other event that might have its own
      reg function that could break at early boot up"
    
    * tag 'trace-fixes-v3.19-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
      tracing: Fix enabling of syscall events on the command line
      tracing: Remove extra call to init_ftrace_syscalls()
      ftrace/jprobes/x86: Fix conflict between jprobes and function graph tracing
      ftrace: Check both notrace and filter for old hash
      ftrace: Fix updating of filters for shared global_ops filters
    torvalds committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    23aa4b4 View commit details
    Browse the repository at this point in the history
  24. Merge tag 'nfs-for-3.19-2' of git://git.linux-nfs.org/projects/trondm…

    …y/linux-nfs
    
    Pull NFS client bugfixes from Trond Myklebust:
     "Highlights include:
    
       - Stable fix for a NFSv3/lockd race
       - Fixes for several NFSv4.1 client id trunking bugs
       - Remove an incorrect test when checking for delegated opens"
    
    * tag 'nfs-for-3.19-2' of git://git.linux-nfs.org/projects/trondmy/linux-nfs:
      NFSv4: Remove incorrect check in can_open_delegated()
      NFS: Ignore transport protocol when detecting server trunking
      NFSv4/v4.1: Verify the client owner id during trunking detection
      NFSv4: Cache the NFSv4/v4.1 client owner_id in the struct nfs_client
      NFSv4.1: Fix client id trunking on Linux
      LOCKD: Fix a race when initialising nlmsvc_timeout
    torvalds committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    a2a32cd View commit details
    Browse the repository at this point in the history
  25. Merge tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/…

    …git/arm64/linux
    
    Pull arm64 fixes from Will Deacon:
     - Wire up compat_sys_execveat for compat (AArch32) tasks
     - Revert 421520b, as this breaks our side of the boot protocol
    
    * tag 'arm64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux:
      arm64: partially revert "ARM: 8167/1: extend the reserved memory for initrd to be page aligned"
      arm64: compat: wire up compat_sys_execveat
    torvalds committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    fa818dc View commit details
    Browse the repository at this point in the history
  26. Merge tag 'usb-3.19-rc5' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/gregkh/usb
    
    Pull USB fixes from Greg KH:
     "Here is a bunch of USB fixes for 3.19-rc5.
    
      Most of these are gadget driver fixes, along with the xhci driver fix
      that we both reported having problems with, as well as some new device
      ids and other tiny fixes.
    
      All have been in linux-next with no problems"
    
    * tag 'usb-3.19-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (43 commits)
      usb: dwc3: gadget: Stop TRB preparation after limit is reached
      usb: dwc3: gadget: Fix TRB preparation during SG
      usb: phy: mv-usb: fix usb_phy build errors
      usb: serial: handle -ENODEV quietly in generic_submit_read_urb
      usb: serial: silence all non-critical read errors
      USB: console: fix potential use after free
      USB: console: fix uninitialised ldisc semaphore
      usb: gadget: udc: atmel: fix possible oops when unloading module
      usb: gadget: gadgetfs: fix an oops in ep_write()
      usb: phy: Fix deferred probing
      OHCI: add a quirk for ULi M5237 blocking on reset
      uas: Add US_FL_NO_ATA_1X for 2 more Seagate disk enclosures
      uas: Do not blacklist ASM1153 disk enclosures
      usb: gadget: udc: avoid dereference before NULL check in ep_queue
      usb: host: ehci-tegra: request deferred probe when failing to get phy
      uas: disable UAS on Apricorn SATA dongles
      uas: Add US_FL_NO_REPORT_OPCODES for JMicron JMS566 with usb-id 0bc2:a013
      uas: Add US_FL_NO_ATA_1X for Seagate devices with usb-id 0bc2:a013
      xhci: Add broken-streams quirk for Fresco Logic FL1000G xhci controllers
      USB: EHCI: adjust error return code
      ...
    torvalds committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    79600d4 View commit details
    Browse the repository at this point in the history
  27. Merge tag 'staging-3.19-rc5' of git://git.kernel.org/pub/scm/linux/ke…

    …rnel/git/gregkh/staging
    
    Pull staging driver fixes from Greg KH:
     "Here are 6 staging driver fixes for 3.19-rc5.
    
      They fix some reported issues with some IIO drivers, as well as some
      issues with the vt6655 wireless driver.
    
      All have been in linux-next for a while"
    
    * tag 'staging-3.19-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
      staging: vt6655: fix sparse warning: argument type
      staging: vt6655: Fix loss of distant/weak access points on channel change.
      staging: vt6655: vnt_tx_packet Fix corrupted tx packets.
      staging: vt6655: fix sparse warnings: incorrect argument type
      iio: iio: Fix iio_channel_read return if channel havn't info
      iio: ad799x: Fix ad7991/ad7995/ad7999 config setup
    torvalds committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    937102f View commit details
    Browse the repository at this point in the history
  28. Merge tag 'tty-3.19-rc5' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/gregkh/tty
    
    Pull tty/serial driver fixes from Greg KH:
     "Here are some tty and serial driver fixes for 3.19-rc5 that resolve
      some reported issues, and add a new device id to the 8250 serial port
      driver.
    
      All have been in linux-next with no reported problems"
    
    * tag 'tty-3.19-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
      serial: samsung: Add the support for Exynos5433 SoC
      Revert "tty: Fix pty master poll() after slave closes v2"
      tty: Prevent hw state corruption in exclusive mode reopen
      tty: Add support for the WCH384 4S multi-IO card
      serial: fix parisc boot hang
    torvalds committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    7b78de8 View commit details
    Browse the repository at this point in the history
  29. Merge tag 'driver-core-3.19-rc5' of git://git.kernel.org/pub/scm/linu…

    …x/kernel/git/gregkh/driver-core
    
    Pull driver core fix from Greg KH:
     "Here is one kernfs fix for a reported issue for 3.19-rc5.
    
      It has been in linux-next for a while"
    
    * tag 'driver-core-3.19-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
      kernfs: Fix kernfs_name_compare
    torvalds committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    62b1530 View commit details
    Browse the repository at this point in the history
  30. Merge tag 'char-misc-3.19-rc5' of git://git.kernel.org/pub/scm/linux/…

    …kernel/git/gregkh/char-misc
    
    Pull char/misc driver fixes from Greg KH:
     "Here are three small driver fixes for reported issues for 3.19-rc5.
    
      All of these have been in linux-next for a while with no reported
      problems"
    
    * tag 'char-misc-3.19-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
      mcb: mcb-pci: Only remap the 1st 0x200 bytes of BAR 0
      mei: add ABI documentation for fw_status exported through sysfs
      mei: clean reset bit before reset
    torvalds committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    7ad4b4a View commit details
    Browse the repository at this point in the history
  31. workqueue: fix subtle pool management issue which can stall whole wor…

    …ker_pool
    
    A worker_pool's forward progress is guaranteed by the fact that the
    last idle worker assumes the manager role to create more workers and
    summon the rescuers if creating workers doesn't succeed in timely
    manner before proceeding to execute work items.
    
    This manager role is implemented in manage_workers(), which indicates
    whether the worker may proceed to work item execution with its return
    value.  This is necessary because multiple workers may contend for the
    manager role, and, if there already is a manager, others should
    proceed to work item execution.
    
    Unfortunately, the function also indicates that the worker may proceed
    to work item execution if need_to_create_worker() is false at the head
    of the function.  need_to_create_worker() tests the following
    conditions.
    
    	pending work items && !nr_running && !nr_idle
    
    The first and third conditions are protected by pool->lock and thus
    won't change while holding pool->lock; however, nr_running can change
    asynchronously as other workers block and resume and while it's likely
    to be zero, as someone woke this worker up in the first place, some
    other workers could have become runnable inbetween making it non-zero.
    
    If this happens, manage_worker() could return false even with zero
    nr_idle making the worker, the last idle one, proceed to execute work
    items.  If then all workers of the pool end up blocking on a resource
    which can only be released by a work item which is pending on that
    pool, the whole pool can deadlock as there's no one to create more
    workers or summon the rescuers.
    
    This patch fixes the problem by removing the early exit condition from
    maybe_create_worker() and making manage_workers() return false iff
    there's already another manager, which ensures that the last worker
    doesn't start executing work items.
    
    We can leave the early exit condition alone and just ignore the return
    value but the only reason it was put there is because the
    manage_workers() used to perform both creations and destructions of
    workers and thus the function may be invoked while the pool is trying
    to reduce the number of workers.  Now that manage_workers() is called
    only when more workers are needed, the only case this early exit
    condition is triggered is rare race conditions rendering it pointless.
    
    Tested with simulated workload and modified workqueue code which
    trigger the pool deadlock reliably without this patch.
    
    Signed-off-by: Tejun Heo <[email protected]>
    Reported-by: Eric Sandeen <[email protected]>
    Link: http://lkml.kernel.org/g/[email protected]
    Cc: Dave Chinner <[email protected]>
    Cc: Lai Jiangshan <[email protected]>
    Cc: [email protected]
    htejun committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    29187a9 View commit details
    Browse the repository at this point in the history
  32. perf probe: Propagate error code when write(2) failed

    When it failed to write probe commands to the probe_event file in
    debugfs, it needs to propagate the error code properly.  Current code
    blindly uses the return value of the write(2) so it always uses
    -1 (-EPERM) and it might confuse users.
    
    Signed-off-by: Namhyung Kim <[email protected]>
    Acked-by: Masami Hiramatsu <[email protected]>
    Cc: David Ahern <[email protected]>
    Cc: Ingo Molnar <[email protected]>
    Cc: Jiri Olsa <[email protected]>
    Cc: Masami Hiramatsu <[email protected]>
    Cc: Peter Zijlstra <[email protected]>
    Link: http://lkml.kernel.org/r/[email protected]
    Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
    namhyung authored and acmel committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    7949ba1 View commit details
    Browse the repository at this point in the history
  33. perf tools: Fix building error in x86_64 when dwarf unwind is on

    When build with 'make ARCH=x86' and dwarf unwind is on, there is a
    compiling error:
    
       CC       /home/wn/perf/arch/x86/util/unwind-libdw.o
       CC       /home/wn/perf/arch/x86/tests/regs_load.o
     arch/x86/tests/regs_load.S: Assembler messages:
     arch/x86/tests/regs_load.S:65: Error: operand type mismatch for `push'
     arch/x86/tests/regs_load.S:72: Error: operand type mismatch for `pop'
     make[1]: *** [/home/wn/perf/arch/x86/tests/regs_load.o] Error 1
     make[1]: INTERNAL: Exiting with 25 jobserver tokens available; should be 24!
     make: *** [all] Error 2
     ...
    
    Which is caused by incorrectly undefine macro HAVE_ARCH_X86_64_SUPPORT.
    'config/Makefile.arch' tests __x86_64__ only when 'ARCH=x86_64'.
    However, when building x86_64 kernel, ARCH=x86 is valid and commonly
    used. Build systems, such as yocto, uses x86_64 compiler with 'ARCH=x86'
    to build x86_64 perf, which causes mismatching.
    
    As __LP64__ is defined for x86_64 as well, we can consolidate the
    __x86_64__ check to the __LP64__ check and get rid of the IS_X86_64
    IMHO.
    
    (This patch is made by Namhyung Kim when replying my v1 patch:
    
    https://lkml.org/lkml/2015/1/7/17
    
    I modified the code to remove dependency on RAW_ARCH:
    
    https://lkml.org/lkml/2015/1/7/865
    
    Namhyung Kim didn't provide his SOB in his original email. I add
    mine only for my modification.)
    
    Signed-off-by: Namhyung Kim <[email protected]>
    Signed-off-by: Wang Nan <[email protected]>
    Acked-by: Jiri Olsa <[email protected]>
    Cc: Jiri Olsa <[email protected]>
    Cc: Li Zefan <[email protected]>
    Cc: Ingo Molnar <[email protected]>
    Cc: Namhyung Kim <[email protected]>
    Link: http://lkml.kernel.org/r/[email protected]
    [ Namhyung provided his S-o-B on a followup to this patch thread on lkml ]
    Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
    namhyung authored and acmel committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    c6e5e9f View commit details
    Browse the repository at this point in the history
  34. perf machine: Fix __machine__findnew_thread() error path

    When thread__init_map_groups() fails, a new thread should be removed
    from the rbtree since it's gonna be freed.  Also update last match cache
    only if the function succeeded.
    
    Reported-by: David Ahern <[email protected]>
    Signed-off-by: Namhyung Kim <[email protected]>
    Acked-by: Jiri Olsa <[email protected]>
    Cc: David Ahern <[email protected]>
    Cc: Ingo Molnar <[email protected]>
    Cc: Jiri Olsa <[email protected]>
    Cc: Peter Zijlstra <[email protected]>
    Link: http://lkml.kernel.org/r/[email protected]
    Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
    namhyung authored and acmel committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    260d819 View commit details
    Browse the repository at this point in the history
  35. tools: Remove bitops/hweight usage of bits in tools/perf

    We need to use lib/hweight.c for that, just like we do for lib/rbtree.c,
    so tools need to link hweight.o. For now do it directly, but we need to
    have a tools/lib/lk.a or .so that collects these goodies...
    
    Reported-by: Jan Beulich <[email protected]>
    Cc: Adrian Hunter <[email protected]>
    Cc: Borislav Petkov <[email protected]>
    Cc: David Ahern <[email protected]>
    Cc: Don Zickus <[email protected]>
    Cc: Frederic Weisbecker <[email protected]>
    Cc: Jiri Olsa <[email protected]>
    Cc: Mike Galbraith <[email protected]>
    Cc: Namhyung Kim <[email protected]>
    Cc: Paul Mackerras <[email protected]>
    Cc: Peter Zijlstra <[email protected]>
    Cc: Stephane Eranian <[email protected]>
    Link: http://lkml.kernel.org/n/[email protected]
    Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
    acmel committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    25cd480 View commit details
    Browse the repository at this point in the history
  36. perf tools: Fix statfs.f_type data type mismatch build error with uclibc

    ARC Linux uses the no legacy syscalls abi and corresponding uClibc headers
    statfs defines f_type to be U32 which causes perf build breakage
    
    http://git.uclibc.org/uClibc/tree/libc/sysdeps/linux/common-generic/bits/statfs.h
    
      ----------->8---------------
        CC       fs/fs.o
      fs/fs.c: In function 'fs__valid_mount':
      fs/fs.c:82:24: error: comparison between signed and unsigned integer
      expressions [-Werror=sign-compare]
        else if (st_fs.f_type != magic)
                              ^
      cc1: all warnings being treated as errors
      ----------->8---------------
    
    Signed-off-by: Alexey Brodkin <[email protected]>
    Acked-by: Jiri Olsa <[email protected]>
    Cc: Borislav Petkov <[email protected]>
    Cc: Cody P Schafer <[email protected]>
    Cc: Ingo Molnar <[email protected]>
    Cc: Jiri Olsa <[email protected]>
    Cc: Namhyung Kim <[email protected]>
    Cc: Peter Zijlstra <[email protected]>
    Cc: Vineet Gupta <[email protected]>
    Link: http://lkml.kernel.org/r/[email protected]
    Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
    abrodkin authored and acmel committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    db1806e View commit details
    Browse the repository at this point in the history
  37. perf tools: Elide strlcpy warning with uclibc

       ----------------->8------------------
      CC       bench/sched-pipe.o
    In file included from builtin-annotate.c:13:0:
    util/cache.h:76:15: warning: redundant redeclaration of 'strlcpy'
    [-Wredundant-decls]
     extern size_t strlcpy(char *dest, const char *src, size_t size);
                   ^
    In file included from util/util.h:55:0,
                     from builtin.h:4,
                     from builtin-annotate.c:8:
    ~/vineetg/arc/gnu/INSTALL_1412-arc-2014.12-rc1/arc-snps-linux-uclibc/sysroot/usr/include/string.h:396:15:
    note: previous declaration of 'strlcpy' was here
     extern size_t strlcpy(char *__restrict dst, const char *__restrict src,
       ----------------->8------------------
    
    Signed-off-by: Vineet Gupta <[email protected]>
    Cc: Alexey Brodkin <[email protected]>
    Cc: Ingo Molnar <[email protected]>
    Cc: Jiri Olsa <[email protected]>
    Cc: Namhyung Kim <[email protected]>
    Cc: Peter Zijlstra <[email protected]>
    Link: http://lkml.kernel.org/r/[email protected]
    Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
    Vineet Gupta authored and acmel committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    a83d869 View commit details
    Browse the repository at this point in the history
  38. perf tools: Avoid build splat for syscall numbers with uclibc

    This is due to duplicated unistd inclusion (via uClibc headers + kernel headers)
    Also seen on ARM uClibc based tools
    
       ------- ARC build ---------->8-------------
    
      CC       util/evlist.o
    In file included from
    ~/arc/k.org/arch/arc/include/uapi/asm/unistd.h:25:0,
                     from util/../perf-sys.h:10,
                     from util/../perf.h:15,
                     from util/event.h:7,
                     from util/event.c:3:
    ~/arc/k.org/include/uapi/asm-generic/unistd.h:906:0:
    warning: "__NR_fcntl64" redefined [enabled by default]
     #define __NR_fcntl64 __NR3264_fcntl
     ^
    In file included from
    ~/arc/gnu/INSTALL_1412-arc-2014.12-rc1/arc-snps-linux-uclibc/sysroot/usr/include/sys/syscall.h:24:0,
                     from util/../perf-sys.h:6,
       ----------------->8-------------------
    
       ------- ARM build ---------->8-------------
    
      CC FPIC  plugin_scsi.o
    In file included from util/../perf-sys.h:9:0,
                     from util/../perf.h:15,
                     from util/cache.h:7,
                     from perf.c:12:
    ~/arc/k.org/arch/arm/include/uapi/asm/unistd.h:28:0:
    warning: "__NR_restart_syscall" redefined [enabled by default]
    In file included from
    ~/buildroot/host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/include/sys/syscall.h:25:0,
                     from util/../perf-sys.h:6,
                     from util/../perf.h:15,
                     from util/cache.h:7,
                     from perf.c:12:
    ~/buildroot/host/usr/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/include/bits/sysnum.h:17:0:
    note: this is the location of the previous definition
       ----------------->8-------------------
    
    Signed-off-by: Vineet Gupta <[email protected]>
    Cc: Alexey Brodkin <[email protected]>
    Cc: Ingo Molnar <[email protected]>
    Cc: Jiri Olsa <[email protected]>
    Cc: Namhyung Kim <[email protected]>
    Cc: Peter Zijlstra <[email protected]>
    Link: http://lkml.kernel.org/r/[email protected]
    Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
    Vineet Gupta authored and acmel committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    ea1fe3a View commit details
    Browse the repository at this point in the history
  39. perf test: Fix dwarf unwind using libunwind.

    Perf tool fails to unwind user stack if the event raises in a shared
    object. This patch improves tests/dwarf-unwind.c to demonstrate the
    problem by utilizing commonly used glibc function "bsearch". If perf is
    not statically linked, the testcase will try to unwind a mixed call
    trace.
    
    By debugging libunwind I found that there is a bug in unwind-libunwind:
    it always passes 0 as segbase to libunwind, cause libunwind unable to
    locate debug_frame entry fir first level ip address (I add some more
    debugging output into libunwind to make things clear):
    
                   >_Uarm_dwarf_find_debug_frame: start_ip = 10be98, end_ip = 10c2a4
                   >_Uarm_dwarf_find_debug_frame: found debug_frame table `/lib/libc-2.18.so': segbase=0x0, len=7, gp=0x0, table_data=0x449388
                   >_Uarm_dwarf_search_unwind_table: call lookup:ip = b6cd3bcc, segbase = 0, rel_ip = b6cd3bcc
                   >lookup: e->start_ip_offset = bcf18 (rel_ip = b6cd3bcc)
                   >lookup: e->start_ip_offset = 6d314 (rel_ip = b6cd3bcc)
                   >lookup: e->start_ip_offset = 33d0c (rel_ip = b6cd3bcc)
                    ...
                   >lookup: e->start_ip_offset = 15d0c (rel_ip = b6cd3bcc)
                   >lookup: e->start_ip_offset = 15c40 (rel_ip = b6cd3bcc)
     >_Uarm_dwarf_search_unwind_table: IP b6cd3bcc inside range b6c12000-b6d4c000, but no explicit unwind info found
                    >put_rs_cache: unmasking signals/interrupts and releasing lock
                   >_Uarm_dwarf_step: returning -10
     >_Uarm_step: dwarf_step()=-10
    
    This patch passes map->start as segbase to dwarf_find_debug_frame(), so
    di will be initialized correctly.
    
    In addition, dso and executable are different when setting segbase. This
    patch first check whether the elf is executable, and pass segbase only
    for shared object.
    
    Signed-off-by: Wang Nan <[email protected]>
    Acked-by: Jiri Olsa <[email protected]>
    Cc: Ingo Molnar <[email protected]>
    Cc: Jiri Olsa <[email protected]>
    Cc: Li Zefan <[email protected]>
    Cc: Masami Hiramatsu <[email protected]>
    Cc: Namhyung Kim <[email protected]>
    Cc: Paul Mackerras <[email protected]>
    Cc: Peter Zijlstra <[email protected]>
    Link: http://lkml.kernel.org/r/[email protected]
    Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
    WangNan0 authored and acmel committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    b93b096 View commit details
    Browse the repository at this point in the history
  40. perf tools: Fix segfault for symbol annotation on TUI

    Currently the symbol structure is allocated with symbol_conf.priv_size
    to carry sideband information like annotation, map browser on TUI and
    sort-by-name tree node.  So retrieving these information from symbol
    needs to care about the details of such placement.
    
    However the annotation code just assumes that the symbol is placed after
    the struct annotation.  But actually there's other info between them.
    So accessing those struct will lead to an undefined behavior (usually a
    crash) after they write their info to the same location.
    
    To reproduce the problem, please follow the steps below:
    
      1. run perf report (TUI of course) with -v option
      2. open map browser (by pressing right arrow key for any entry)
      3. search any function (by pressing '/' key and input whatever..)
      4. return to the hist browser (by pressing 'q' or left arrow key)
      5. open annotation window for the same entry (by pressing 'a' key)
    
    Signed-off-by: Namhyung Kim <[email protected]>
    Cc: David Ahern <[email protected]>
    Cc: Ingo Molnar <[email protected]>
    Cc: Jiri Olsa <[email protected]>
    Cc: Masami Hiramatsu <[email protected]>
    Cc: Peter Zijlstra <[email protected]>
    Link: http://lkml.kernel.org/r/[email protected]
    Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
    namhyung authored and acmel committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    813ccd1 View commit details
    Browse the repository at this point in the history
  41. perf tools powerpc: Use dwfl_report_elf() instead of offline.

    dwfl_report_offline() works only when libraries are prelinked.
    
    Replace dwfl_report_offline() with dwfl_report_elf() so we correctly
    extract debug info even from libraries that are not prelinked.
    
    Reported-by: Jiri Olsa <[email protected]>
    Signed-off-by: Sukadev Bhattiprolu <[email protected]>
    Tested-by: Jiri Olsa <[email protected]>
    Cc: Jiri Olsa <[email protected]>
    Cc: Michael Ellerman <[email protected]>
    Link: http://lkml.kernel.org/r/[email protected]
    Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
    Sukadev Bhattiprolu authored and acmel committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    6bcf9c1 View commit details
    Browse the repository at this point in the history
  42. kernel: avoid overflow in cmp_range

    Avoid overflow possibility.
    
    [ The overflow is purely theoretical, since this is used for memory
      ranges that aren't even close to using the full 64 bits, but this is
      the right thing to do regardless.  - Linus ]
    
    Signed-off-by: Louis Langholtz <[email protected]>
    Cc: Yinghai Lu <[email protected]>
    Cc: Peter Anvin <[email protected]>
    Cc: Andrew Morton <[email protected]>
    Signed-off-by: Linus Torvalds <[email protected]>
    louis-langholtz authored and torvalds committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    fc7f0dd View commit details
    Browse the repository at this point in the history
  43. genetlink: document parallel_ops

    The kernel-doc for the parallel_ops family struct member is
    missing, add it.
    
    Signed-off-by: Johannes Berg <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    jmberg-intel authored and davem330 committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    f555f3d View commit details
    Browse the repository at this point in the history
  44. genetlink: disallow subscribing to unknown mcast groups

    Jeff Layton reported that he could trigger the multicast unbind warning
    in generic netlink using trinity. I originally thought it was a race
    condition between unregistering the generic netlink family and closing
    the socket, but there's a far simpler explanation: genetlink currently
    allows subscribing to groups that don't (yet) exist, and the warning is
    triggered when unsubscribing again while the group still doesn't exist.
    
    Originally, I had a warning in the subscribe case and accepted it out of
    userspace API concerns, but the warning was of course wrong and removed
    later.
    
    However, I now think that allowing userspace to subscribe to groups that
    don't exist is wrong and could possibly become a security problem:
    Consider a (new) genetlink family implementing a permission check in
    the mcast_bind() function similar to the like the audit code does today;
    it would be possible to bypass the permission check by guessing the ID
    and subscribing to the group it exists. This is only possible in case a
    family like that would be dynamically loaded, but it doesn't seem like a
    huge stretch, for example wireless may be loaded when you plug in a USB
    device.
    
    To avoid this reject such subscription attempts.
    
    If this ends up causing userspace issues we may need to add a workaround
    in af_netlink to deny such requests but not return an error.
    
    Reported-by: Jeff Layton <[email protected]>
    Signed-off-by: Johannes Berg <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    jmberg-intel authored and davem330 committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    5ad6300 View commit details
    Browse the repository at this point in the history
  45. genetlink: synchronize socket closing and family removal

    In addition to the problem Jeff Layton reported, I looked at the code
    and reproduced the same warning by subscribing and removing the genl
    family with a socket still open. This is a fairly tricky race which
    originates in the fact that generic netlink allows the family to go
    away while sockets are still open - unlike regular netlink which has
    a module refcount for every open socket so in general this cannot be
    triggered.
    
    Trying to resolve this issue by the obvious locking isn't possible as
    it will result in deadlocks between unregistration and group unbind
    notification (which incidentally lockdep doesn't find due to the home
    grown locking in the netlink table.)
    
    To really resolve this, introduce a "closing socket" reference counter
    (for generic netlink only, as it's the only affected family) in the
    core netlink code and use that in generic netlink to wait for all the
    sockets that are being closed at the same time as a generic netlink
    family is removed.
    
    This fixes the race that when a socket is closed, it will should call
    the unbind, but if the family is removed at the same time the unbind
    will not find it, leading to the warning. The real problem though is
    that in this case the unbind could actually find a new family that is
    registered to have a multicast group with the same ID, and call its
    mcast_unbind() leading to confusing.
    
    Also remove the warning since it would still trigger, but is now no
    longer a problem.
    
    This also moves the code in af_netlink.c to before unreferencing the
    module to avoid having the same problem in the normal non-genl case.
    
    Signed-off-by: Johannes Berg <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    jmberg-intel authored and davem330 committed Jan 16, 2015
    Configuration menu
    Copy the full SHA
    ee1c244 View commit details
    Browse the repository at this point in the history

Commits on Jan 17, 2015

  1. Merge tag 'v3.19-rockchip-dtsfixes1' of git://git.kernel.org/pub/scm/…

    …linux/kernel/git/mmind/linux-rockchip into fixes
    
    Merge "ARM: rockchip: dts fix for 3.19" from Heiko Stübner:
    
    Increase drive-strength to sdmmc pins on rk3288-evb to fix
    an issue with the fixed highspeed card detection.
    
    * tag 'v3.19-rockchip-dtsfixes1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip:
      ARM: dts: rockchip: bump sd card pin drive strength up on rk3288-evb
    
    Signed-off-by: Olof Johansson <[email protected]>
    olofj committed Jan 17, 2015
    Configuration menu
    Copy the full SHA
    1591dc4 View commit details
    Browse the repository at this point in the history
  2. Merge tag 'imx-fixes-3.19' of git://git.kernel.org/pub/scm/linux/kern…

    …el/git/shawnguo/linux into fixes
    
    Merge "ARM: imx: fixes for 3.19" from Shawn Guo:
    
    The i.MX fixes for 3.19:
     - One fix for incorrect i.MX25 SPI1 clock assignment in device tree,
       which causes system hang when accessing SPI1.
     - Correct i.MX6SX QSPI parent clock configuration to fix a kernel Oops.
     - Fix ULPI PHY reset modelling on imx51-babbage board to remove the
       dependency on bootloader for USB3317 ULPI PHY reset.
     - Correct video divider setting on i.MX6Q rev T0 1.0 to fix the issue
       that HDMI is not working at high resolution on T0 1.0.
     - One incremental fix for CODA960 VPU enabling in device tree to
       correct interrupt order.
     - LS1021A SCFG block works in BE mode, add device tree property
       big-endian to make it right.
    
    * tag 'imx-fixes-3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
      ARM: dts: imx51-babbage: Fix ULPI PHY reset modelling
      ARM: imx6sx: Set PLL2 as parent of QSPI clocks
      ARM: dts: imx25: Fix the SPI1 clocks
      ARM: clk-imx6q: fix video divider for rev T0 1.0
      ARM: dts: imx6qdl: Fix CODA960 interrupt order
      ARM: ls1021a: dtsi: add 'big-endian' property for scfg node
    
    Signed-off-by: Olof Johansson <[email protected]>
    olofj committed Jan 17, 2015
    Configuration menu
    Copy the full SHA
    3be8142 View commit details
    Browse the repository at this point in the history
  3. Merge tag 'omap-for-v3.19/fixes-rc1' of git://git.kernel.org/pub/scm/…

    …linux/kernel/git/tmlind/linux-omap into fixes
    
    Merge "omap fixes against v3.19-rc1" from Tony Lindgren:
    
    Fixes for omaps mostly to deal with dra7 timer issues
    and hypervisor mode. The other fixes are minor fixes for
    various boards. The summary of the fixes is:
    
    - Fix real-time counter rate typos for some frequencies
    - Fix counter frequency drift for am572x
    - Fix booting of secondary CPU in HYP mode
    - Fix n900 board name for legacy user space
    - Fix cpufreq in omap2plus_defconfig after Kconfig change
    - Fix dra7 qspi partitions
    
    And also, let's re-enable smc91x on some n900 boards that
    we have sitting in a few test boot systems after the boot
    loader dependencies got fixed.
    
    * tag 'omap-for-v3.19/fixes-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
      ARM: dts: Revert disabling of smc91x for n900
      ARM: dts: dra7-evm: fix qspi device tree partition size
      ARM: omap2plus_defconfig: use CONFIG_CPUFREQ_DT
      ARM: OMAP2+: Fix n900 board name for legacy user space
      ARM: omap5/dra7xx: Enable booting secondary CPU in HYP mode
      ARM: dra7xx: Fix counter frequency drift for AM572x errata i856
      ARM: omap5/dra7xx: Fix frequency typos
    
    Signed-off-by: Olof Johansson <[email protected]>
    olofj committed Jan 17, 2015
    Configuration menu
    Copy the full SHA
    e3db221 View commit details
    Browse the repository at this point in the history
  4. ARM: nomadik: fix up leftover device tree pins

    We altered the device tree bindings for the Nomadik family of
    pin controllers to be standard, this file was merged out-of-order
    so we missed fixing this. Fix it up.
    
    Signed-off-by: Linus Walleij <[email protected]>
    Signed-off-by: Olof Johansson <[email protected]>
    linusw authored and olofj committed Jan 17, 2015
    Configuration menu
    Copy the full SHA
    259e438 View commit details
    Browse the repository at this point in the history
  5. Merge tag 'berlin-fixes-for-3.19-1' of git://git.infradead.org/users/…

    …hesselba/linux-berlin into fixes
    
    Merge "ARM: berlin: Fixes for v3.19 (round 1)" from Sebastian Hesselbarth:
    
    Marvell Berlin fixes for v3.19 round 1:
    - SDHCI DT fixes for BG2Q and BG2Q reference board
    - BG2Q SM GPIO DT node relocation
    
    * tag 'berlin-fixes-for-3.19-1' of git://git.infradead.org/users/hesselba/linux-berlin:
      ARM: dts: berlin: correct BG2Q's SM GPIO location.
      ARM: dts: berlin: add broken-cd and set bus width for eMMC in Marvell DMP DT
      ARM: dts: berlin: fix io clk and add missing core clk for BG2Q sdhci2 host
    
    Signed-off-by: Olof Johansson <[email protected]>
    olofj committed Jan 17, 2015
    Configuration menu
    Copy the full SHA
    1dbb36b View commit details
    Browse the repository at this point in the history
  6. ARM: rockchip: disable jtag/sdmmc autoswitching on rk3288

    rk3288 SoCs have a function to automatically switch between jtag/sdmmc pinmux
    settings depending on the card state. This collides with a lot of assumptions.
    
    It only works when using the internal card-detect mechanism and breaks
    horribly when using either the normal card-detect via the slot-gpio function
    or via any other pin. Also there is of course no link between the mmc and jtag
    on the software-side, so the jtag clocks may very well be disabled when the
    card is ejected and the soc switches back to the jtag pinmux.
    
    Leaving the switching function enabled did result in mmc timeouts and rcu
    stalls thus hanging the system on 3.19-rc1. Therefore disable it in all cases,
    as we expect the devicetree to explicitly select either mmc or jtag pinmuxes
    anyway.
    
    Signed-off-by: Heiko Stuebner <[email protected]>
    Signed-off-by: Olof Johansson <[email protected]>
    mmind authored and olofj committed Jan 17, 2015
    Configuration menu
    Copy the full SHA
    c9b75d5 View commit details
    Browse the repository at this point in the history
  7. Merge tag 'at91-fixes' of git://git.kernel.org/pub/scm/linux/kernel/g…

    …it/nferre/linux-at91 into fixes
    
    Merge "at91: fixes for 3.19 #1 (ter)" from Nicolas Ferre:
    
    First fixes batch for AT91 on 3.19:
    - fix some DT entries
    - correct clock entry for the at91sam9263 LCD
    - add a phy_fixup for Eth1 on sama5d4
    
    * tag 'at91-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/nferre/linux-at91:
      ARM: at91: board-dt-sama5: add phy_fixup to override NAND_Tree
      ARM: at91/dt: sam9263: Add missing clocks to lcdc node
      ARM: at91: sama5d3: dt: correct the sound route
      ARM: at91/dt: sama5d4: fix the timer reg length
    
    Signed-off-by: Olof Johansson <[email protected]>
    olofj committed Jan 17, 2015
    Configuration menu
    Copy the full SHA
    6fda93b View commit details
    Browse the repository at this point in the history
  8. drivers: bus: check cci device tree node status

    The arm-cci driver completes the probe sequence even if the cci node is
    marked as disabled. Add a check in the driver to honour the cci status
    in the device tree.
    
    Signed-off-by: Abhilash Kesavan <[email protected]>
    Acked-by: Sudeep Holla <[email protected]>
    Acked-by: Nicolas Pitre <[email protected]>
    Tested-by: Sudeep Holla <[email protected]>
    Tested-by: Kevin Hilman <[email protected]>
    Signed-off-by: Olof Johansson <[email protected]>
    Abhilash Kesavan authored and olofj committed Jan 17, 2015
    Configuration menu
    Copy the full SHA
    896ddd6 View commit details
    Browse the repository at this point in the history
  9. ARM: dts: disable CCI on exynos5420 based arndale-octa

    The arndale-octa board was giving "imprecise external aborts" during
    boot-up with MCPM enabled. CCI enablement of the boot cluster was found
    to be the cause of these aborts (possibly because the secure f/w was not
    allowing it). Hence, disable CCI for the arndale-octa board.
    
    Signed-off-by: Abhilash Kesavan <[email protected]>
    Tested-by: Krzysztof Kozlowski <[email protected]>
    Tested-by: Kevin Hilman <[email protected]>
    Tested-by: Tyler Baker <[email protected]>
    Signed-off-by: Olof Johansson <[email protected]>
    Abhilash Kesavan authored and olofj committed Jan 17, 2015
    Configuration menu
    Copy the full SHA
    25217fe View commit details
    Browse the repository at this point in the history
  10. Merge tag 'renesas-soc-fixes-for-v3.19' of git://git.kernel.org/pub/s…

    …cm/linux/kernel/git/horms/renesas into fixes
    
    Merge "Renesas ARM Based SoC Fixes for v3.19" from Simon Horman:
    
    Renesas ARM Based SoC Fixes for v3.19
    
    This pull request is based on the last round of SoC updates for v3.19,
    Fourth Round of Renesas ARM Based SoC Updates for v3.19, tagged as
    renesas-soc3-for-v3.19, merged into your next/soc branch and included in
    v3.19-rc1.
    
    - ARM: shmobile: r8a7740: Instantiate GIC from C board code in legacy builds
    
      Set .control_parent for all irqpin instances for sh73a0 SoC when booting
      using legacy C.
    
    - ARM: shmobile: r8a7740: Instantiate GIC from C board code in legacy builds
    
      This fixes a long standing problem which has been present since
      the sh73a0 SoC started using the INTC External IRQ pin driver.
    
      The patch that introduced the problem is 341eb54 ("ARM:
      shmobile: INTC External IRQ pin driver on sh73a0") which was included
      in v3.10.
    
    * tag 'renesas-soc-fixes-for-v3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
      ARM: shmobile: sh73a0 legacy: Set .control_parent for all irqpin instances
      ARM: shmobile: r8a7740: Instantiate GIC from C board code in legacy builds
    olofj committed Jan 17, 2015
    Configuration menu
    Copy the full SHA
    a30e931 View commit details
    Browse the repository at this point in the history
  11. reset: sunxi: fix spinlock initialization

    Call spin_lock_init() before the spinlocks are used, both in early init
    and probe functions preventing a lockdep splat.
    
    I have been observing lockdep complaining [1] during boot on my a80 optimus [2]
    when CONFIG_PROVE_LOCKING has been enabled. This patch resolves the splat,
    and has been tested on a few other sunxi platforms without issue.
    
    [1] http://storage.kernelci.org/next/next-20150107/arm-multi_v7_defconfig+CONFIG_PROVE_LOCKING=y/lab-tbaker/boot-sun9i-a80-optimus.html
    [2] http://kernelci.org/boot/?a80-optimus
    
    Signed-off-by: Tyler Baker <[email protected]>
    Cc: <[email protected]>
    Acked-by: Philipp Zabel <[email protected]>
    Signed-off-by: Kevin Hilman <[email protected]>
    Signed-off-by: Olof Johansson <[email protected]>
    EmbeddedAndroid authored and olofj committed Jan 17, 2015
    Configuration menu
    Copy the full SHA
    41544f9 View commit details
    Browse the repository at this point in the history
  12. Merge tag 'samsung-fixes-3.19' of git://git.kernel.org/pub/scm/linux/…

    …kernel/git/kgene/linux-samsung into fixes
    
    Merge "Samsung fixes for v3.19" from Kukjin Kim:
    
    Samsung fixes for v3.19
    - exynos_defconfig: enable LM90 driver and display panel support
       - HWMON
       - SENSORS_LM90
       - Direct Rendering Manager (DRM)
       - DRM bridge registration and lookup framework
       - Parade ps8622/ps8625 eDP/LVDS bridge
       - NXP ptn3460 eDP/LVDS bridge
       - Exynos Fully Interactive Mobile Display controller (FIMD)
       - Panel registration and lookup framework
       - Simple panels
       - Backlight & LCD device support
    
    - use pmu_system_controller phandle for dp phy
      : DP PHY requires pmu_system_controller to handle PMU reg. now
    
    * tag 'samsung-fixes-3.19' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
      ARM: exynos_defconfig: Enable LM90 driver
      ARM: exynos_defconfig: Enable options for display panel support
      arm: dts: Use pmu_system_controller phandle for dp phy
    
    Signed-off-by: Olof Johansson <[email protected]>
    olofj committed Jan 17, 2015
    Configuration menu
    Copy the full SHA
    966903a View commit details
    Browse the repository at this point in the history
  13. Merge tag 'perf-urgent-for-mingo' of git://git.kernel.org/pub/scm/lin…

    …ux/kernel/git/acme/linux into perf/urgent
    
    Pull perf/urgent fixes from Arnaldo Carvalho de Melo:
    
      - Fix segfault when using both the map symtab viewer and annotation
        in the TUI (Namhyung Kim).
    
      - uClibc build fixes (Alexey Brodkin, Vineet Gupta).
    
      - bitops/hweight were moved from tools/perf/ too tools/include, move
        some leftovers (Arnaldo Carvalho de Melo)
    
      - Fix dwarf unwind x86_64 build error (Namhyung Kim)
    
      - Fix __machine__findnew_thread() error path (Namhyung Kim)
    
      - Propagate error code when write(2) failed in 'perf probe' (Namhyung Kim)
    
      - Use dwfl_report_elf() instead of offline in powerpc bits to
        properly handle non prelinked DSOs (Sukadev Bhattiprolu).
    
      - Fix dwarf unwind using libunwind in 'perf test' (Wang Nan)
    
    Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
    Signed-off-by: Ingo Molnar <[email protected]>
    Ingo Molnar committed Jan 17, 2015
    Configuration menu
    Copy the full SHA
    d01de23 View commit details
    Browse the repository at this point in the history
  14. Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/…

    …linux/kernel/git/tip/tip
    
    Pull perf fixes from Ingo Molnar:
     "Mostly tooling fixes, but also two PMU driver fixes"
    
    * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      perf tools powerpc: Use dwfl_report_elf() instead of offline.
      perf tools: Fix segfault for symbol annotation on TUI
      perf test: Fix dwarf unwind using libunwind.
      perf tools: Avoid build splat for syscall numbers with uclibc
      perf tools: Elide strlcpy warning with uclibc
      perf tools: Fix statfs.f_type data type mismatch build error with uclibc
      tools: Remove bitops/hweight usage of bits in tools/perf
      perf machine: Fix __machine__findnew_thread() error path
      perf tools: Fix building error in x86_64 when dwarf unwind is on
      perf probe: Propagate error code when write(2) failed
      perf/x86/intel: Fix bug for "cycles:p" and "cycles:pp" on SLM
      perf/rapl: Fix sysfs_show() initialization for RAPL PMU
    torvalds committed Jan 17, 2015
    Configuration menu
    Copy the full SHA
    59b2858 View commit details
    Browse the repository at this point in the history
  15. Merge branch 'fixes' of git://git.infradead.org/users/vkoul/slave-dma

    Pull dmaengine fixes from Vinod Koul:
     "Two patches, the first by Andy to fix dw dmac runtime pm and second
      one by me to fix the dmaengine headers in MAINTAINERS"
    
    * 'fixes' of git://git.infradead.org/users/vkoul/slave-dma:
      dmaengine: dw: balance PM runtime calls
      MAINTAINERS: dmaengine: fix the header file for dmaengine
    torvalds committed Jan 17, 2015
    Configuration menu
    Copy the full SHA
    298e320 View commit details
    Browse the repository at this point in the history
  16. clk: rockchip: fix deadlock possibility in cpuclk

    Lockdep reported a possible deadlock between the cpuclk lock and for example
    the i2c driver.
    
           CPU0                    CPU1
           ----                    ----
      lock(clk_lock);
                                   local_irq_disable();
                                   lock(&(&i2c->lock)->rlock);
                                   lock(clk_lock);
      <Interrupt>
        lock(&(&i2c->lock)->rlock);
    
     *** DEADLOCK ***
    
    The generic clock-types of the core ccf already use spin_lock_irqsave when
    touching clock registers, so do the same for the cpuclk.
    
    Signed-off-by: Heiko Stuebner <[email protected]>
    Reviewed-by: Doug Anderson <[email protected]>
    Signed-off-by: Michael Turquette <[email protected]>
    [[email protected]: removed initialization of "flags"]
    mmind authored and Michael Turquette committed Jan 17, 2015
    Configuration menu
    Copy the full SHA
    a5e1baf View commit details
    Browse the repository at this point in the history
  17. Revert "clk: ppc-corenet: Fix Section mismatch warning"

    This reverts commit da788ac.
    
    That commit tried to fix the section mismatch warning by moving the
    ppc_corenet_clk_driver struct to init section. This is definitely wrong
    because the kernel would free the memories occupied by this struct
    after boot while this driver is still registered in the driver core.
    The kernel would panic when accessing this driver struct.
    
    Cc: [email protected] # 3.17
    Signed-off-by: Kevin Hao <[email protected]>
    Acked-by: Scott Wood <[email protected]>
    Signed-off-by: Michael Turquette <[email protected]>
    haokexin authored and Michael Turquette committed Jan 17, 2015
    Configuration menu
    Copy the full SHA
    176a107 View commit details
    Browse the repository at this point in the history
  18. clk: fix possible null pointer dereference

    The commit 646cafc (clk: Change clk_ops->determine_rate to
    return a clk_hw as the best parent) opens a possibility for
    null pointer dereference, fix this.
    
    Signed-off-by: Stanimir Varbanov <[email protected]>
    Reviewed-by: Stephen Boyd <[email protected]>
    Signed-off-by: Michael Turquette <[email protected]>
    Stanimir Varbanov authored and Michael Turquette committed Jan 17, 2015
    Configuration menu
    Copy the full SHA
    c7662fc View commit details
    Browse the repository at this point in the history

Commits on Jan 18, 2015

  1. Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/g…

    …it/jejb/scsi
    
    Pull SCSI fixes from James Bottomley:
     "This is one fix for a Multiqueue sleeping in invalid context problem
      and a MAINTAINER file update for Qlogic"
    
    * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
      scsi: ->queue_rq can't sleep
      MAINTAINERS: Update maintainer list for qla4xxx
    torvalds committed Jan 18, 2015
    Configuration menu
    Copy the full SHA
    901b208 View commit details
    Browse the repository at this point in the history
  2. Merge tag 'clk-fixes-for-linus' of git://git.linaro.org/people/mike.t…

    …urquette/linux
    
    Pull clock driver fixes from Mike Turquette:
     "Small number of fixes for clock drivers and a single null pointer
      dereference fix in the framework core code.
    
      The driver fixes vary from fixing section mismatch warnings to
      preventing machines from hanging (and preventing developers from
      crying)"
    
    * tag 'clk-fixes-for-linus' of git://git.linaro.org/people/mike.turquette/linux:
      clk: fix possible null pointer dereference
      Revert "clk: ppc-corenet: Fix Section mismatch warning"
      clk: rockchip: fix deadlock possibility in cpuclk
      clk: berlin: bg2q: remove non-exist "smemc" gate clock
      clk: at91: keep slow clk enabled to prevent system hang
      clk: rockchip: fix rk3288 cpuclk core dividers
      clk: rockchip: fix rk3066 pll lock bit location
      clk: rockchip: Fix clock gate for rk3188 hclk_emem_peri
      clk: rockchip: add CLK_IGNORE_UNUSED flag to fix rk3066/rk3188 USB Host
    torvalds committed Jan 18, 2015
    Configuration menu
    Copy the full SHA
    12ba857 View commit details
    Browse the repository at this point in the history
  3. net: sctp: fix race for one-to-many sockets in sendmsg's auto associate

    I.e. one-to-many sockets in SCTP are not required to explicitly
    call into connect(2) or sctp_connectx(2) prior to data exchange.
    Instead, they can directly invoke sendmsg(2) and the SCTP stack
    will automatically trigger connection establishment through 4WHS
    via sctp_primitive_ASSOCIATE(). However, this in its current
    implementation is racy: INIT is being sent out immediately (as
    it cannot be bundled anyway) and the rest of the DATA chunks are
    queued up for later xmit when connection is established, meaning
    sendmsg(2) will return successfully. This behaviour can result
    in an undesired side-effect that the kernel made the application
    think the data has already been transmitted, although none of it
    has actually left the machine, worst case even after close(2)'ing
    the socket.
    
    Instead, when the association from client side has been shut down
    e.g. first gracefully through SCTP_EOF and then close(2), the
    client could afterwards still receive the server's INIT_ACK due
    to a connection with higher latency. This INIT_ACK is then considered
    out of the blue and hence responded with ABORT as there was no
    alive assoc found anymore. This can be easily reproduced f.e.
    with sctp_test application from lksctp. One way to fix this race
    is to wait for the handshake to actually complete.
    
    The fix defers waiting after sctp_primitive_ASSOCIATE() and
    sctp_primitive_SEND() succeeded, so that DATA chunks cooked up
    from sctp_sendmsg() have already been placed into the output
    queue through the side-effect interpreter, and therefore can then
    be bundeled together with COOKIE_ECHO control chunks.
    
    strace from example application (shortened):
    
    socket(PF_INET, SOCK_SEQPACKET, IPPROTO_SCTP) = 3
    sendmsg(3, {msg_name(28)={sa_family=AF_INET, sin_port=htons(8888), sin_addr=inet_addr("192.168.1.115")},
               msg_iov(1)=[{"hello", 5}], msg_controllen=0, msg_flags=0}, 0) = 5
    sendmsg(3, {msg_name(28)={sa_family=AF_INET, sin_port=htons(8888), sin_addr=inet_addr("192.168.1.115")},
               msg_iov(1)=[{"hello", 5}], msg_controllen=0, msg_flags=0}, 0) = 5
    sendmsg(3, {msg_name(28)={sa_family=AF_INET, sin_port=htons(8888), sin_addr=inet_addr("192.168.1.115")},
               msg_iov(1)=[{"hello", 5}], msg_controllen=0, msg_flags=0}, 0) = 5
    sendmsg(3, {msg_name(28)={sa_family=AF_INET, sin_port=htons(8888), sin_addr=inet_addr("192.168.1.115")},
               msg_iov(1)=[{"hello", 5}], msg_controllen=0, msg_flags=0}, 0) = 5
    sendmsg(3, {msg_name(28)={sa_family=AF_INET, sin_port=htons(8888), sin_addr=inet_addr("192.168.1.115")},
               msg_iov(0)=[], msg_controllen=48, {cmsg_len=48, cmsg_level=0x84 /* SOL_??? */, cmsg_type=, ...},
               msg_flags=0}, 0) = 0 // graceful shutdown for SOCK_SEQPACKET via SCTP_EOF
    close(3) = 0
    
    tcpdump before patch (fooling the application):
    
    22:33:36.306142 IP 192.168.1.114.41462 > 192.168.1.115.8888: sctp (1) [INIT] [init tag: 3879023686] [rwnd: 106496] [OS: 10] [MIS: 65535] [init TSN: 3139201684]
    22:33:36.316619 IP 192.168.1.115.8888 > 192.168.1.114.41462: sctp (1) [INIT ACK] [init tag: 3345394793] [rwnd: 106496] [OS: 10] [MIS: 10] [init TSN: 3380109591]
    22:33:36.317600 IP 192.168.1.114.41462 > 192.168.1.115.8888: sctp (1) [ABORT]
    
    tcpdump after patch:
    
    14:28:58.884116 IP 192.168.1.114.35846 > 192.168.1.115.8888: sctp (1) [INIT] [init tag: 438593213] [rwnd: 106496] [OS: 10] [MIS: 65535] [init TSN: 3092969729]
    14:28:58.888414 IP 192.168.1.115.8888 > 192.168.1.114.35846: sctp (1) [INIT ACK] [init tag: 381429855] [rwnd: 106496] [OS: 10] [MIS: 10] [init TSN: 2141904492]
    14:28:58.888638 IP 192.168.1.114.35846 > 192.168.1.115.8888: sctp (1) [COOKIE ECHO] , (2) [DATA] (B)(E) [TSN: 3092969729] [...]
    14:28:58.893278 IP 192.168.1.115.8888 > 192.168.1.114.35846: sctp (1) [COOKIE ACK] , (2) [SACK] [cum ack 3092969729] [a_rwnd 106491] [#gap acks 0] [#dup tsns 0]
    14:28:58.893591 IP 192.168.1.114.35846 > 192.168.1.115.8888: sctp (1) [DATA] (B)(E) [TSN: 3092969730] [...]
    14:28:59.096963 IP 192.168.1.115.8888 > 192.168.1.114.35846: sctp (1) [SACK] [cum ack 3092969730] [a_rwnd 106496] [#gap acks 0] [#dup tsns 0]
    14:28:59.097086 IP 192.168.1.114.35846 > 192.168.1.115.8888: sctp (1) [DATA] (B)(E) [TSN: 3092969731] [...] , (2) [DATA] (B)(E) [TSN: 3092969732] [...]
    14:28:59.103218 IP 192.168.1.115.8888 > 192.168.1.114.35846: sctp (1) [SACK] [cum ack 3092969732] [a_rwnd 106486] [#gap acks 0] [#dup tsns 0]
    14:28:59.103330 IP 192.168.1.114.35846 > 192.168.1.115.8888: sctp (1) [SHUTDOWN]
    14:28:59.107793 IP 192.168.1.115.8888 > 192.168.1.114.35846: sctp (1) [SHUTDOWN ACK]
    14:28:59.107890 IP 192.168.1.114.35846 > 192.168.1.115.8888: sctp (1) [SHUTDOWN COMPLETE]
    
    Looks like this bug is from the pre-git history museum. ;)
    
    Fixes: 08707d5 ("lksctp-2_5_31-0_5_1.patch")
    Signed-off-by: Daniel Borkmann <[email protected]>
    Acked-by: Vlad Yasevich <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    Daniel Borkmann authored and davem330 committed Jan 18, 2015
    Configuration menu
    Copy the full SHA
    2061dcd View commit details
    Browse the repository at this point in the history
  4. Merge tag 'armsoc-for-linus' of git://git.kernel.org/pub/scm/linux/ke…

    …rnel/git/arm/arm-soc
    
    Pull ARM SoC fixes from Olof Johansson:
     "We've been sitting on our fixes branch for a while, so this batch is
      unfortunately on the large side.
    
      A lot of these are tweaks and fixes to device trees, fixing various
      bugs around clocks, reg ranges, etc.  There's also a few defconfig
      updates (which are on the late side, no more of those).
    
      All in all the diffstat is bigger than ideal at this time, but nothing
      in here seems particularly risky"
    
    * tag 'armsoc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (31 commits)
      reset: sunxi: fix spinlock initialization
      ARM: dts: disable CCI on exynos5420 based arndale-octa
      drivers: bus: check cci device tree node status
      ARM: rockchip: disable jtag/sdmmc autoswitching on rk3288
      ARM: nomadik: fix up leftover device tree pins
      ARM: at91: board-dt-sama5: add phy_fixup to override NAND_Tree
      ARM: at91/dt: sam9263: Add missing clocks to lcdc node
      ARM: at91: sama5d3: dt: correct the sound route
      ARM: at91/dt: sama5d4: fix the timer reg length
      ARM: exynos_defconfig: Enable LM90 driver
      ARM: exynos_defconfig: Enable options for display panel support
      arm: dts: Use pmu_system_controller phandle for dp phy
      ARM: shmobile: sh73a0 legacy: Set .control_parent for all irqpin instances
      ARM: dts: berlin: correct BG2Q's SM GPIO location.
      ARM: dts: berlin: add broken-cd and set bus width for eMMC in Marvell DMP DT
      ARM: dts: berlin: fix io clk and add missing core clk for BG2Q sdhci2 host
      ARM: dts: Revert disabling of smc91x for n900
      ARM: dts: imx51-babbage: Fix ULPI PHY reset modelling
      ARM: dts: dra7-evm: fix qspi device tree partition size
      ARM: omap2plus_defconfig: use CONFIG_CPUFREQ_DT
      ...
    torvalds committed Jan 18, 2015
    Configuration menu
    Copy the full SHA
    d0ac5d8 View commit details
    Browse the repository at this point in the history
  5. Linux 3.19-rc5

    torvalds committed Jan 18, 2015
    Configuration menu
    Copy the full SHA
    ec6f34e View commit details
    Browse the repository at this point in the history
  6. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/dtor/input
    
    Pull input subsystem fixes from Dmitry Torokhov.
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
      Input: uinput - fix ioctl nr overflow for UI_GET_SYSNAME/VERSION
      Input: I8042 - add Acer Aspire 7738 to the nomux list
      Input: elantech - support new ICs types for version 4
      Input: i8042 - reset keyboard to fix Elantech touchpad detection
      MAINTAINERS: remove Dmitry Torokhov's alternate address
    torvalds committed Jan 18, 2015
    Configuration menu
    Copy the full SHA
    6689388 View commit details
    Browse the repository at this point in the history
  7. Merge tag 'gpio-v3.19-4' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/linusw/linux-gpio
    
    Pull GPIO fixes from Linus Walleij:
     "Here is a set of fixes that mainly appeared when Johan Hovold started
      exercising the removal path of the GPIO library, dealing with
      hotplugging of GPIO controllers. Details from tag:
    
      A slew of fixes dealing with some irritating bugs (non-regressions)
      that have been around forever in the GPIO subsystem, most of them also
      tagged for stable:
    
       - A large slew of fixes from Johan Hovold who is finally testing and
         reviewing the removal path of the GPIO drivers.
    
       - Fix of_get_named_gpiod_flags() so it works as expected.
    
       - Fix an IRQ handling bug in the crystalcove driver"
    
    * tag 'gpio-v3.19-4' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio:
      gpiolib: of: Correct error handling in of_get_named_gpiod_flags
      gpio: sysfs: fix gpio attribute-creation race
      gpio: sysfs: fix gpio device-attribute leak
      gpio: sysfs: fix gpio-chip device-attribute leak
      gpio: unregister gpiochip device before removing it
      gpio: fix sleep-while-atomic in gpiochip_remove
      gpio: fix memory leak and sleep-while-atomic
      gpio: clean up gpiochip_add error handling
      gpio: fix gpio-chip list corruption
      gpio: fix memory and reference leaks in gpiochip_add error path
      gpio: crystalcove: use handle_nested_irq
    torvalds committed Jan 18, 2015
    Configuration menu
    Copy the full SHA
    b62a9c2 View commit details
    Browse the repository at this point in the history

Commits on Jan 19, 2015

  1. pinctrl: qcom: Don't iterate past end of function array

    Timur reports that this code crashes if nfunctions is 0. Fix the
    loop iteration to only consider valid elements of the functions
    array.
    
    Reported-by: Timur Tabi <[email protected]>
    Cc: Pramod Gurav <[email protected]>
    Cc: Bjorn Andersson <[email protected]>
    Cc: Ivan T. Ivanov <[email protected]>
    Cc: Andy Gross <[email protected]>
    Fixes: 3274558 "pinctrl: qcom: Add support for reset for apq8064"
    Signed-off-by: Stephen Boyd <[email protected]>
    Signed-off-by: Linus Walleij <[email protected]>
    bebarino authored and linusw committed Jan 19, 2015
    Configuration menu
    Copy the full SHA
    bcd53f8 View commit details
    Browse the repository at this point in the history
  2. pinctrl: MAINTAINERS: add git tree reference

    Reference my pinctrl GIT tree @kernel.org
    
    Reported-by: Sergei Shtylyov <[email protected]>
    Signed-off-by: Linus Walleij <[email protected]>
    linusw committed Jan 19, 2015
    Configuration menu
    Copy the full SHA
    dbe752a View commit details
    Browse the repository at this point in the history
  3. libata: allow sata_sil24 to opt-out of tag ordered submission

    Ronny reports: https://bugzilla.kernel.org/show_bug.cgi?id=87101
        "Since commit 8a4aeec "libata/ahci: accommodate tag ordered
        controllers" the access to the harddisk on the first SATA-port is
        failing on its first access. The access to the harddisk on the
        second port is working normal.
    
        When reverting the above commit, access to both harddisks is working
        fine again."
    
    Maintain tag ordered submission as the default, but allow sata_sil24 to
    continue with the old behavior.
    
    Cc: <[email protected]>
    Cc: Tejun Heo <[email protected]>
    Reported-by: Ronny Hegewald <[email protected]>
    Signed-off-by: Dan Williams <[email protected]>
    Signed-off-by: Tejun Heo <[email protected]>
    djbw authored and htejun committed Jan 19, 2015
    Configuration menu
    Copy the full SHA
    72dd299 View commit details
    Browse the repository at this point in the history
  4. libata: prevent HSM state change race between ISR and PIO

    It is possible for ata_sff_flush_pio_task() to set ap->hsm_task_state to
    HSM_ST_IDLE in between the time __ata_sff_port_intr() checks for HSM_ST_IDLE
    and before it calls ata_sff_hsm_move() causing ata_sff_hsm_move() to BUG().
    
    This problem is hard to reproduce making this patch hard to verify, but this
    fix will prevent the race.
    
    I have not been able to reproduce the problem, but here is a crash dump from
    a 2.6.32 kernel.
    
    On examining the ata port's state, its hsm_task_state field has a value of HSM_ST_IDLE:
    
    crash> struct ata_port.hsm_task_state ffff881c1121c000
      hsm_task_state = 0
    
    Normally, this should not be possible as ata_sff_hsm_move() was called from ata_sff_host_intr(),
    which checks hsm_task_state and won't call ata_sff_hsm_move() if it has a HSM_ST_IDLE value.
    
    PID: 11053  TASK: ffff8816e846cae0  CPU: 0   COMMAND: "sshd"
     #0 [ffff88008ba03960] machine_kexec at ffffffff81038f3b
     #1 [ffff88008ba039c0] crash_kexec at ffffffff810c5d92
     #2 [ffff88008ba03a90] oops_end at ffffffff8152b510
     #3 [ffff88008ba03ac0] die at ffffffff81010e0b
     #4 [ffff88008ba03af0] do_trap at ffffffff8152ad74
     #5 [ffff88008ba03b50] do_invalid_op at ffffffff8100cf95
     #6 [ffff88008ba03bf0] invalid_op at ffffffff8100bf9b
        [exception RIP: ata_sff_hsm_move+317]
        RIP: ffffffff813a77ad  RSP: ffff88008ba03ca0  RFLAGS: 00010097
        RAX: 0000000000000000  RBX: ffff881c1121dc60  RCX: 0000000000000000
        RDX: ffff881c1121dd10  RSI: ffff881c1121dc60  RDI: ffff881c1121c000
        RBP: ffff88008ba03d00   R8: 0000000000000000   R9: 000000000000002e
        R10: 000000000001003f  R11: 000000000000009b  R12: ffff881c1121c000
        R13: 0000000000000000  R14: 0000000000000050  R15: ffff881c1121dd78
        ORIG_RAX: ffffffffffffffff  CS: 0010  SS: 0018
     #7 [ffff88008ba03d08] ata_sff_host_intr at ffffffff813a7fbd
     #8 [ffff88008ba03d38] ata_sff_interrupt at ffffffff813a821e
     #9 [ffff88008ba03d78] handle_IRQ_event at ffffffff810e6ec0
    --- <IRQ stack> ---
        [exception RIP: pipe_poll+48]
        RIP: ffffffff81192780  RSP: ffff880f26d459b8  RFLAGS: 00000246
        RAX: 0000000000000000  RBX: ffff880f26d459c8  RCX: 0000000000000000
        RDX: 0000000000000001  RSI: 0000000000000000  RDI: ffff881a0539fa80
        RBP: ffffffff8100bb8e   R8: ffff8803b23324a0   R9: 0000000000000000
        R10: ffff880f26d45dd0  R11: 0000000000000008  R12: ffffffff8109b646
        R13: ffff880f26d45948  R14: 0000000000000246  R15: 0000000000000246
        ORIG_RAX: ffffffffffffff10  CS: 0010  SS: 0018
        RIP: 00007f26017435c3  RSP: 00007fffe020c420  RFLAGS: 00000206
        RAX: 0000000000000017  RBX: ffffffff8100b072  RCX: 00007fffe020c45c
        RDX: 00007f2604a3f120  RSI: 00007f2604a3f140  RDI: 000000000000000d
        RBP: 0000000000000000   R8: 00007fffe020e570   R9: 0101010101010101
        R10: 0000000000000000  R11: 0000000000000246  R12: 00007fffe020e5f0
        R13: 00007fffe020e5f4  R14: 00007f26045f373c  R15: 00007fffe020e5e0
        ORIG_RAX: 0000000000000017  CS: 0033  SS: 002b
    
    Somewhere between the ata_sff_hsm_move() check and the ata_sff_host_intr() check, the value changed.
    On examining the other cpus to see what else was running, another cpu was running the error handler
    routines:
    
    PID: 326    TASK: ffff881c11014aa0  CPU: 1   COMMAND: "scsi_eh_1"
     #0 [ffff88008ba27e90] crash_nmi_callback at ffffffff8102fee6
     #1 [ffff88008ba27ea0] notifier_call_chain at ffffffff8152d515
     #2 [ffff88008ba27ee0] atomic_notifier_call_chain at ffffffff8152d57a
     #3 [ffff88008ba27ef0] notify_die at ffffffff810a154e
     #4 [ffff88008ba27f20] do_nmi at ffffffff8152b1db
     #5 [ffff88008ba27f50] nmi at ffffffff8152aaa0
        [exception RIP: _spin_lock_irqsave+47]
        RIP: ffffffff8152a1ff  RSP: ffff881c11a73aa0  RFLAGS: 00000006
        RAX: 0000000000000001  RBX: ffff881c1121deb8  RCX: 0000000000000000
        RDX: 0000000000000246  RSI: 0000000000000020  RDI: ffff881c122612d8
        RBP: ffff881c11a73aa0   R8: ffff881c17083800   R9: 0000000000000000
        R10: 0000000000000000  R11: 0000000000000000  R12: ffff881c1121c000
        R13: 000000000000001f  R14: ffff881c1121dd50  R15: ffff881c1121dc60
        ORIG_RAX: ffffffffffffffff  CS: 0010  SS: 0000
    --- <NMI exception stack> ---
     #6 [ffff881c11a73aa0] _spin_lock_irqsave at ffffffff8152a1ff
     #7 [ffff881c11a73aa8] ata_exec_internal_sg at ffffffff81396fb5
     #8 [ffff881c11a73b58] ata_exec_internal at ffffffff81397109
     #9 [ffff881c11a73bd8] atapi_eh_request_sense at ffffffff813a34eb
    
    Before it tried to acquire a spinlock, ata_exec_internal_sg() called ata_sff_flush_pio_task().
    This function will set ap->hsm_task_state to HSM_ST_IDLE, and has no locking around setting this
    value. ata_sff_flush_pio_task() can then race with the interrupt handler and potentially set
    HSM_ST_IDLE at a fatal moment, which will trigger a kernel BUG.
    
    v2: Fixup comment in ata_sff_flush_pio_task()
    
    tj: Further updated comment.  Use ap->lock instead of shost lock and
        use the [un]lock_irq variant instead of the irqsave/restore one.
    
    Signed-off-by: David Milburn <[email protected]>
    Signed-off-by: Tejun Heo <[email protected]>
    Cc: [email protected]
    David Jeffery authored and htejun committed Jan 19, 2015
    Configuration menu
    Copy the full SHA
    ce75145 View commit details
    Browse the repository at this point in the history
  5. ipv6: stop sending PTB packets for MTU < 1280

    Reduce the attack vector and stop generating IPv6 Fragment Header for
    paths with an MTU smaller than the minimum required IPv6 MTU
    size (1280 byte) - called atomic fragments.
    
    See IETF I-D "Deprecating the Generation of IPv6 Atomic Fragments" [1]
    for more information and how this "feature" can be misused.
    
    [1] https://tools.ietf.org/html/draft-ietf-6man-deprecate-atomfrag-generation-00
    
    Signed-off-by: Fernando Gont <[email protected]>
    Signed-off-by: Hagen Paul Pfeifer <[email protected]>
    Acked-by: Hannes Frederic Sowa <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    hgn authored and davem330 committed Jan 19, 2015
    Configuration menu
    Copy the full SHA
    9d28971 View commit details
    Browse the repository at this point in the history
  6. sh_eth: Fix promiscuous mode on chips without TSU

    Currently net_device_ops::set_rx_mode is only implemented for
    chips with a TSU (multiple address table).  However we do need
    to turn the PRM (promiscuous) flag on and off for other chips.
    
    - Remove the unlikely() from the TSU functions that we may safely
      call for chips without a TSU
    - Make setting of the MCT flag conditional on the tsu capability flag
    - Rename sh_eth_set_multicast_list() to sh_eth_set_rx_mode() and plumb
      it into both net_device_ops structures
    - Remove the previously-unreachable branch in sh_eth_rx_mode() that
      would otherwise reset the flags to defaults for non-TSU chips
    
    Signed-off-by: Ben Hutchings <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    bwh-ct authored and davem330 committed Jan 19, 2015
    Configuration menu
    Copy the full SHA
    b37feed View commit details
    Browse the repository at this point in the history
  7. sh_eth: Fix ethtool operation crash when net device is down

    The driver connects and disconnects the PHY device whenever the
    net device is brought up and down.  The ethtool get_settings,
    set_settings and nway_reset operations will dereference a null
    or dangling pointer if called while it is down.
    
    I think it would be preferable to keep the PHY connected, but there
    may be good reasons not to.
    
    As an immediate fix for this bug:
    - Set the phydev pointer to NULL after disconnecting the PHY
    - Change those three operations to return -ENODEV while the PHY is
      not connected
    
    Signed-off-by: Ben Hutchings <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    bwh-ct authored and davem330 committed Jan 19, 2015
    Configuration menu
    Copy the full SHA
    4f9dce2 View commit details
    Browse the repository at this point in the history
  8. Merge branch 'sh_eth'

    Ben Hutchings says:
    
    ====================
    sh_eth fixes
    
    I'm currently looking at Ethernet support on the R-Car H2 chip,
    reviewing and testing the sh_eth driver.  Here are fixes for two fairly
    obvious bugs in the driver; I will probably have some more later.
    
    These are not tested on any of the other supported chips.
    ====================
    
    Signed-off-by: David S. Miller <[email protected]>
    davem330 committed Jan 19, 2015
    Configuration menu
    Copy the full SHA
    852c5d9 View commit details
    Browse the repository at this point in the history
  9. bgmac: register napi before the device

    napi should get registered before the netdev and not after.
    
    Signed-off-by: Hauke Mehrtens <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    hauke authored and davem330 committed Jan 19, 2015
    Configuration menu
    Copy the full SHA
    6216642 View commit details
    Browse the repository at this point in the history
  10. bgmac: activate irqs only if there is nothing to poll

    IRQs should only get activated when there is nothing to poll in the
    queue any more and to after every poll.
    
    Signed-off-by: Hauke Mehrtens <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    hauke authored and davem330 committed Jan 19, 2015
    Configuration menu
    Copy the full SHA
    43f159c View commit details
    Browse the repository at this point in the history
  11. Merge branch 'bgmac'

    Hauke Mehrtens says:
    
    ====================
    bgmac: some fixes to napi usage
    
    I compared the napi documentation with the bgmac driver and found some
    problems in that driver. These two patches should fix the problems.
    ====================
    
    Signed-off-by: David S. Miller <[email protected]>
    davem330 committed Jan 19, 2015
    Configuration menu
    Copy the full SHA
    e60bf80 View commit details
    Browse the repository at this point in the history
  12. r8152: remove generic_ocp_read before writing

    For ocp_write_word() and ocp_write_byte(), there is a generic_ocp_read()
    which is used to read the whole 4 byte data, keep the unchanged bytes,
    and modify the expected bytes. However, the "byen" could be used to
    determine which bytes of the 4 bytes to write, so the action could be
    removed.
    
    Signed-off-by: Hayes Wang <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    hayesorz authored and davem330 committed Jan 19, 2015
    Configuration menu
    Copy the full SHA
    8cb3db2 View commit details
    Browse the repository at this point in the history
  13. r8152: remove sram_read

    Read OCP register 0xa43a~0xa43b would clear some flags which the hw
    would use, and it may let the device lost. However, the unit of
    reading is 4 bytes. That is, it would read 0xa438~0xa43b when calling
    sram_read() to read OCP_SRAM_DATA.
    
    Signed-off-by: Hayes Wang <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    hayesorz authored and davem330 committed Jan 19, 2015
    Configuration menu
    Copy the full SHA
    b4d99de View commit details
    Browse the repository at this point in the history
  14. Merge branch 'r8152'

    Hayes Wang says:
    
    ====================
    r8152: couldn't read OCP_SRAM_DATA
    
    Read OCP_SRAM_DATA would read additional bytes and may let
    the hw abnormal.
    ====================
    
    Signed-off-by: David S. Miller <[email protected]>
    davem330 committed Jan 19, 2015
    Configuration menu
    Copy the full SHA
    ef5a1ba View commit details
    Browse the repository at this point in the history

Commits on Jan 20, 2015

  1. s2io: use snprintf() as a safety feature

    "sp->desc[i]" has 25 characters.  "dev->name" has 15 characters.  If we
    used all 15 characters then the sprintf() would overflow.
    
    I changed the "sprintf(sp->name, "%s Neterion %s"" to snprintf(), as
    well, even though it can't overflow just to be consistent.
    
    Signed-off-by: Dan Carpenter <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    Dan Carpenter authored and davem330 committed Jan 20, 2015
    Configuration menu
    Copy the full SHA
    a8c1d28 View commit details
    Browse the repository at this point in the history
  2. Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6

    Pull crypto fix from Herbert Xu:
     "This fixes a regression that arose from the change to add a crypto
      prefix to module names which was done to prevent the loading of
      arbitrary modules through the Crypto API.
    
      In particular, a number of modules were missing the crypto prefix
      which meant that they could no longer be autoloaded"
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
      crypto: add missing crypto module aliases
    torvalds committed Jan 20, 2015
    Configuration menu
    Copy the full SHA
    2262889 View commit details
    Browse the repository at this point in the history
  3. Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net

    Pull networking fixes from David Miller:
    
     1) Socket addresses returned in the error queue need to be fully
        initialized before being passed on to userspace, fix from Willem de
        Bruijn.
    
     2) Interrupt handling fixes to davinci_emac driver from Tony Lindgren.
    
     3) Fix races between receive packet steering and cpu hotplug, from Eric
        Dumazet.
    
     4) Allowing netlink sockets to subscribe to unknown multicast groups
        leads to crashes, don't allow it.  From Johannes Berg.
    
     5) One to many socket races in SCTP fixed by Daniel Borkmann.
    
     6) Put in a guard against the mis-use of ipv6 atomic fragments, from
        Hagen Paul Pfeifer.
    
     7) Fix promisc mode and ethtool crashes in sh_eth driver, from Ben
        Hutchings.
    
     8) NULL deref and double kfree fix in sxgbe driver from Girish K.S and
        Byungho An.
    
     9) cfg80211 deadlock fix from Arik Nemtsov.
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (36 commits)
      s2io: use snprintf() as a safety feature
      r8152: remove sram_read
      r8152: remove generic_ocp_read before writing
      bgmac: activate irqs only if there is nothing to poll
      bgmac: register napi before the device
      sh_eth: Fix ethtool operation crash when net device is down
      sh_eth: Fix promiscuous mode on chips without TSU
      ipv6: stop sending PTB packets for MTU < 1280
      net: sctp: fix race for one-to-many sockets in sendmsg's auto associate
      genetlink: synchronize socket closing and family removal
      genetlink: disallow subscribing to unknown mcast groups
      genetlink: document parallel_ops
      net: rps: fix cpu unplug
      net: davinci_emac: Add support for emac on dm816x
      net: davinci_emac: Fix ioremap for devices with MDIO within the EMAC address space
      net: davinci_emac: Fix incomplete code for getting the phy from device tree
      net: davinci_emac: Free clock after checking the frequency
      net: davinci_emac: Fix runtime pm calls for davinci_emac
      net: davinci_emac: Fix hangs with interrupts
      ip: zero sockaddr returned on error queue
      ...
    torvalds committed Jan 20, 2015
    Configuration menu
    Copy the full SHA
    eef8f4c View commit details
    Browse the repository at this point in the history
  4. Merge tag 'pinctrl-v3.19-3' of git://git.kernel.org/pub/scm/linux/ker…

    …nel/git/linusw/linux-pinctrl
    
    Pull pin control fixes from Linus Walleij:
     "Here is a (hopefully final) slew of pin control fixes for the v3.19
      series.  The deadlock fix is kind of serious and tagged for stable,
      the rest is business as usual.
    
       - Fix two deadlocks around the pin control mutexes, a long-standing
         issue that manifest itself in plug/unplug of pin controllers.
         (Tagged for stable.)
    
       - Handle an error path with zero functions in the Qualcomm pin
         controller.
    
       - Drop a bogus second GPIO chip added in the Lantiq driver.
    
       - Fix sudden IRQ loss on Rockchip pin controllers.
    
       - Register the GIT tree in MAINTAINERS"
    
    * tag 'pinctrl-v3.19-3' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl:
      pinctrl: MAINTAINERS: add git tree reference
      pinctrl: qcom: Don't iterate past end of function array
      pinctrl: lantiq: remove bogus of_gpio_chip_add
      pinctrl: Fix two deadlocks
      pinctrl: rockchip: Avoid losing interrupts when supporting both edges
    torvalds committed Jan 20, 2015
    Configuration menu
    Copy the full SHA
    06efe0e View commit details
    Browse the repository at this point in the history
  5. Merge branch 'for-3.19-fixes' of git://git.kernel.org/pub/scm/linux/k…

    …ernel/git/tj/wq
    
    Pull workqueue fix from Tejun Heo:
     "The xfs folks have been running into weird and very rare lockups for
      some time now.  I didn't think this could have been from workqueue
      side because no one else was reporting it.  This time, Eric had a
      kdump which we looked into and it turned out this actually was a
      workqueue bug and the bug has been there since the beginning of
      concurrency managed workqueue.
    
      A worker pool ensures forward progress of the workqueues associated
      with it by always having at least one worker reserved from executing
      work items.  When the pool is under contention, the idle one tries to
      create more workers for the pool and if that doesn't succeed quickly
      enough, it calls the rescuers to the pool.
    
      This logic had a subtle race condition in an early exit path.  When a
      worker invokes this manager function, the function may return %false
      indicating that the caller may proceed to executing work items either
      because another worker is already performing the role or conditions
      have changed and the pool is no longer under contention.
    
      The latter part depended on the assumption that whether more workers
      are necessary or not remains stable while the pool is locked; however,
      pool->nr_running (concurrency count) may change asynchronously and it
      getting bumped from zero asynchronously could send off the last idle
      worker to execute work items.
    
      The race window is fairly narrow, and, even when it gets triggered,
      the pool deadlocks iff if all work items get blocked on pending work
      items of the pool, which is highly unlikely but can be triggered by
      xfs.
    
      The patch removes the race window by removing the early exit path,
      which doesn't server any purpose anymore anyway"
    
    * 'for-3.19-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
      workqueue: fix subtle pool management issue which can stall whole worker_pool
    torvalds committed Jan 20, 2015
    Configuration menu
    Copy the full SHA
    d4b2d00 View commit details
    Browse the repository at this point in the history
  6. Merge branch 'for-3.19-fixes' of git://git.kernel.org/pub/scm/linux/k…

    …ernel/git/tj/libata
    
    Pull libata fixes from Tejun Heo:
    
     - Bartlomiej will be co-maintaining PATA portion of libata.  git
       workflow will stay the same.
    
     - sata_sil24 wasn't happy with tag ordered submission.  An option to
       restore the old tag allocation behavior is implemented for sil24.
    
     - a very old race condition in PIO host state machine which can trigger
       BUG fixed.
    
     - other driver-specific changes
    
    * 'for-3.19-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata:
      libata: prevent HSM state change race between ISR and PIO
      libata: allow sata_sil24 to opt-out of tag ordered submission
      ata: pata_at91: depend on !ARCH_MULTIPLATFORM
      ahci: Remove Device ID for Intel Sunrise Point PCH
      ahci: Use dev_info() to inform about the lack of Device Sleep support
      libata: Whitelist SSDs that are known to properly return zeroes after TRIM
      sata_dwc_460ex: fix resource leak on error path
      ata: add MAINTAINERS entry for libata PATA drivers
      libata: clean up MAINTAINERS entries
      libata: export ata_get_cmd_descript()
      ahci_xgene: Fix the DMA state machine lockup for the ATA_CMD_PACKET PIO mode command.
      ahci_xgene: Fix the endianess issue in APM X-Gene SoC AHCI SATA controller driver.
    torvalds committed Jan 20, 2015
    Configuration menu
    Copy the full SHA
    b97f880 View commit details
    Browse the repository at this point in the history