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 up with Linus #88

Merged
merged 268 commits into from
Aug 5, 2015
Merged

Sync up with Linus #88

merged 268 commits into from
Aug 5, 2015
This pull request is big! We’re only showing the most recent 250 commits.

Commits on Jul 14, 2015

  1. ipvs: fix ipv6 route unreach panic

    Previously there was a trivial panic
    
    unshare -n /bin/bash <<EOF
    ip addr add dev lo face::1/128
    ipvsadm -A -t [face::1]:15213
    ipvsadm -a -t [face::1]:15213 -r b00c::1
    echo boom | nc face::1 15213
    EOF
    
    This patch allows us to replicate the net logic above and simply capture
    the skb_dst(skb)->dev and use that for the purpose of the invocation.
    
    Signed-off-by: Alex Gartrell <agartrell@fb.com>
    Acked-by: Julian Anastasov <ja@ssi.bg>
    Signed-off-by: Simon Horman <horms@verge.net.au>
    Alex Gartrell authored and horms committed Jul 14, 2015
    Configuration menu
    Copy the full SHA
    326bf17 View commit details
    Browse the repository at this point in the history
  2. ipvs: do not use random local source address for tunnels

    Michael Vallaly reports about wrong source address used
    in rare cases for tunneled traffic. Looks like
    __ip_vs_get_out_rt in 3.10+ is providing uninitialized
    dest_dst->dst_saddr.ip because ip_vs_dest_dst_alloc uses
    kmalloc. While we retry after seeing EINVAL from routing
    for data that does not look like valid local address, it
    still succeeded when this memory was previously used from
    other dests and with different local addresses. As result,
    we can use valid local address that is not suitable for
    our real server.
    
    Fix it by providing 0.0.0.0 every time our cache is refreshed.
    By this way we will get preferred source address from routing.
    
    Reported-by: Michael Vallaly <lvs@nolatency.com>
    Fixes: 026ace0 ("ipvs: optimize dst usage for real server")
    Signed-off-by: Julian Anastasov <ja@ssi.bg>
    Signed-off-by: Simon Horman <horms@verge.net.au>
    Julian Anastasov authored and horms committed Jul 14, 2015
    Configuration menu
    Copy the full SHA
    4754957 View commit details
    Browse the repository at this point in the history
  3. ipvs: fix crash if scheduler is changed

    I overlooked the svc->sched_data usage from schedulers
    when the services were converted to RCU in 3.10. Now
    the rare ipvsadm -E command can change the scheduler
    but due to the reverse order of ip_vs_bind_scheduler
    and ip_vs_unbind_scheduler we provide new sched_data
    to the old scheduler resulting in a crash.
    
    To fix it without changing the scheduler methods we
    have to use synchronize_rcu() only for the editing case.
    It means all svc->scheduler readers should expect a
    NULL value. To avoid breakage for the service listing
    and ipvsadm -R we can use the "none" name to indicate
    that scheduler is not assigned, a state when we drop
    new connections.
    
    Reported-by: Alexander Vasiliev <a.vasylev@404-group.com>
    Fixes: ceec4c3 ("ipvs: convert services to rcu")
    Signed-off-by: Julian Anastasov <ja@ssi.bg>
    Signed-off-by: Simon Horman <horms@verge.net.au>
    Julian Anastasov authored and horms committed Jul 14, 2015
    Configuration menu
    Copy the full SHA
    05f0050 View commit details
    Browse the repository at this point in the history
  4. ipvs: skb_orphan in case of forwarding

    It is possible that we bind against a local socket in early_demux when we
    are actually going to want to forward it.  In this case, the socket serves
    no purpose and only serves to confuse things (particularly functions which
    implicitly expect sk_fullsock to be true, like ip_local_out).
    Additionally, skb_set_owner_w is totally broken for non full-socks.
    
    Signed-off-by: Alex Gartrell <agartrell@fb.com>
    Fixes: 41063e9 ("ipv4: Early TCP socket demux.")
    Acked-by: Julian Anastasov <ja@ssi.bg>
    Signed-off-by: Simon Horman <horms@verge.net.au>
    Alex Gartrell authored and horms committed Jul 14, 2015
    Configuration menu
    Copy the full SHA
    71563f3 View commit details
    Browse the repository at this point in the history
  5. ipvs: fix crash with sync protocol v0 and FTP

    Fix crash in 3.5+ if FTP is used after switching
    sync_version to 0.
    
    Fixes: 749c42b ("ipvs: reduce sync rate with time thresholds")
    Signed-off-by: Julian Anastasov <ja@ssi.bg>
    Signed-off-by: Simon Horman <horms@verge.net.au>
    Julian Anastasov authored and horms committed Jul 14, 2015
    Configuration menu
    Copy the full SHA
    5618485 View commit details
    Browse the repository at this point in the history
  6. ipvs: call skb_sender_cpu_clear

    Reset XPS's sender_cpu on forwarding.
    
    Signed-off-by: Julian Anastasov <ja@ssi.bg>
    Fixes: 2bd8248 ("xps: fix xps for stacked devices")
    Signed-off-by: Simon Horman <horms@verge.net.au>
    Julian Anastasov authored and horms committed Jul 14, 2015
    Configuration menu
    Copy the full SHA
    e3895c0 View commit details
    Browse the repository at this point in the history
  7. ASoC: topology: Fix to add dapm mixer info

    Mixer control for widgets can't be created if the info is NULL. So assign
    the correct info for this.
    
    Signed-off-by: Jeeja KP <jeeja.kp@intel.com>
    Signed-off-by: Subhransu S. Prusty <subhransu.s.prusty@intel.com>
    Acked-by: Liam Girdwood <liam.r.girdwood@linux.intel.com>
    Signed-off-by: Mark Brown <broonie@kernel.org>
    kpjeeja authored and broonie committed Jul 14, 2015
    Configuration menu
    Copy the full SHA
    2c57d47 View commit details
    Browse the repository at this point in the history
  8. PCI: Restore PCI_MSIX_FLAGS_BIRMASK definition

    09a2c73 ("PCI: Remove unused PCI_MSIX_FLAGS_BIRMASK definition")
    removed PCI_MSIX_FLAGS_BIRMASK from an exported header because it was
    unused in the kernel.  But that breaks user programs that were using it
    (QEMU in particular).
    
    Restore the PCI_MSIX_FLAGS_BIRMASK definition.
    
    [bhelgaas: changelog]
    Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
    Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
    CC: stable@vger.kernel.org	# v3.13+
    mstsirkin authored and bjorn-helgaas committed Jul 14, 2015
    Configuration menu
    Copy the full SHA
    c9ddbac View commit details
    Browse the repository at this point in the history

Commits on Jul 15, 2015

  1. ASoC: Intel: Get correct usage_count value to load firmware

    The usage_count variable was read before it was set to the correct
    value, due to which the firmware load was failing. Because of this
    IPC messages sent to the firmware were timing out causing a delay
    of about 1 second while playing audio from the internal speakers.
    
    With this patch the usage_count is read after the function call
    pm_runtime_get_sync which will increment the usage_count variable
    and the firmware load is successful and all the IPC messages are
    processed correctly.
    
    Signed-off-by: Shilpa Sreeramalu <shilpa.sreeramalu@intel.com>
    Signed-off-by: Fang, Yang A <yang.a.fang@intel.com>
    Signed-off-by: Mark Brown <broonie@kernel.org>
    Cc: stable@vger.kernel.org
    shilpasreeramalu authored and broonie committed Jul 15, 2015
    Configuration menu
    Copy the full SHA
    412efa7 View commit details
    Browse the repository at this point in the history
  2. ARM: DRA7: hwmod: fix gpmc hwmod

    GPMC smart idle is not really broken but it does not support
    smart idle with wakeup.
    
    Fixes: 556708f ("ARM: OMAP: DRA7: hwmod: Make gpmc software supervised as the smart idle is broken")
    
    Signed-off-by: Roger Quadros <rogerq@ti.com>
    Reviewed-by: Paul Walmsley <paul@pwsan.com>
    Signed-off-by: Paul Walmsley <paul@pwsan.com>
    Roger Quadros authored and Paul Walmsley committed Jul 15, 2015
    Configuration menu
    Copy the full SHA
    91a5773 View commit details
    Browse the repository at this point in the history

Commits on Jul 17, 2015

  1. ASoC: rt5645: Check if codec is initialized in workqueue handler

    This fixes kernel panic on boot, if rt5645->codec is NULL when
    rt5645_jack_detect_work is first called.
    
    rt5645_jack_detect_work needs rt5645->codec to be initialized to setup
    dapm pins. Also, reporting jack events is useless, as the jacks cannot
    be set before the codec is ready.
    
    Since we manually call the interrupt handler in
    rt5645_set_jack_detect, the initial jack state will be reported
    correctly, and dapm pins will be setup at that time.
    
    Signed-off-by: Nicolas Boichat <drinkcat@chromium.org>
    Signed-off-by: Mark Brown <broonie@kernel.org>
    drinkcat authored and broonie committed Jul 17, 2015
    Configuration menu
    Copy the full SHA
    f2a5ded View commit details
    Browse the repository at this point in the history

Commits on Jul 20, 2015

  1. xen: release lock occasionally during ballooning

    When dom0 is being ballooned balloon_process() will hold the balloon
    mutex until it is finished. This will block e.g. creation of new
    domains as the device backends for the new domain need some
    autoballooned pages for the ring buffers.
    
    Avoid this by releasing the balloon mutex from time to time during
    ballooning. Adjust the comment above balloon_process() regarding
    multiple instances of balloon_process().
    
    Instead of open coding it, just use cond_resched().
    
    Signed-off-by: Juergen Gross <jgross@suse.com>
    Signed-off-by: David Vrabel <david.vrabel@citrix.com>
    jgross1 authored and David Vrabel committed Jul 20, 2015
    Configuration menu
    Copy the full SHA
    929423f View commit details
    Browse the repository at this point in the history
  2. netfilter: fix netns dependencies with conntrack templates

    Quoting Daniel Borkmann:
    
    "When adding connection tracking template rules to a netns, f.e. to
    configure netfilter zones, the kernel will endlessly busy-loop as soon
    as we try to delete the given netns in case there's at least one
    template present, which is problematic i.e. if there is such bravery that
    the priviledged user inside the netns is assumed untrusted.
    
    Minimal example:
    
      ip netns add foo
      ip netns exec foo iptables -t raw -A PREROUTING -d 1.2.3.4 -j CT --zone 1
      ip netns del foo
    
    What happens is that when nf_ct_iterate_cleanup() is being called from
    nf_conntrack_cleanup_net_list() for a provided netns, we always end up
    with a net->ct.count > 0 and thus jump back to i_see_dead_people. We
    don't get a soft-lockup as we still have a schedule() point, but the
    serving CPU spins on 100% from that point onwards.
    
    Since templates are normally allocated with nf_conntrack_alloc(), we
    also bump net->ct.count. The issue why they are not yet nf_ct_put() is
    because the per netns .exit() handler from x_tables (which would eventually
    invoke xt_CT's xt_ct_tg_destroy() that drops reference on info->ct) is
    called in the dependency chain at a *later* point in time than the per
    netns .exit() handler for the connection tracker.
    
    This is clearly a chicken'n'egg problem: after the connection tracker
    .exit() handler, we've teared down all the connection tracking
    infrastructure already, so rightfully, xt_ct_tg_destroy() cannot be
    invoked at a later point in time during the netns cleanup, as that would
    lead to a use-after-free. At the same time, we cannot make x_tables depend
    on the connection tracker module, so that the xt_ct_tg_destroy() would
    be invoked earlier in the cleanup chain."
    
    Daniel confirms this has to do with the order in which modules are loaded or
    having compiled nf_conntrack as modules while x_tables built-in. So we have no
    guarantees regarding the order in which netns callbacks are executed.
    
    Fix this by allocating the templates through kmalloc() from the respective
    SYNPROXY and CT targets, so they don't depend on the conntrack kmem cache.
    Then, release then via nf_ct_tmpl_free() from destroy_conntrack(). This branch
    is marked as unlikely since conntrack templates are rarely allocated and only
    from the configuration plane path.
    
    Note that templates are not kept in any list to avoid further dependencies with
    nf_conntrack anymore, thus, the tmpl larval list is removed.
    
    Reported-by: Daniel Borkmann <daniel@iogearbox.net>
    Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
    Tested-by: Daniel Borkmann <daniel@iogearbox.net>
    ummakynes committed Jul 20, 2015
    Configuration menu
    Copy the full SHA
    0838aa7 View commit details
    Browse the repository at this point in the history
  3. Merge tag 'ipvs-fixes-for-v4.2' of https://git.kernel.org/pub/scm/lin…

    …ux/kernel/git/horms/ipvs
    
    Simon Horman says:
    
    ====================
    IPVS Fixes for v4.2
    
    please consider this fix for v4.2.
    For reasons that are not clear to me it is a bumper crop.
    
    It seems to me that they are all relevant to stable.
    Please let me know if you need my help to get the fixes into stable.
    
    * ipvs: fix ipv6 route unreach panic
    
      This problem appears to be present since IPv6 support was added to
      IPVS in v2.6.28.
    
    * ipvs: skb_orphan in case of forwarding
    
      This appears to resolve a problem resulting from a side effect of
      41063e9 ("ipv4: Early TCP socket demux.") which was included in v3.6.
    
    * ipvs: do not use random local source address for tunnels
    
      This appears to resolve a problem introduced by
      026ace0 ("ipvs: optimize dst usage for real server") in v3.10.
    
    * ipvs: fix crash if scheduler is changed
    
      This appears to resolve a problem introduced by
      ceec4c3 ("ipvs: convert services to rcu") in v3.10.
    
      Julian has provided backports of the fix:
      * [PATCHv2 3.10.81] ipvs: fix crash if scheduler is changed
        http://www.spinics.net/lists/lvs-devel/msg04008.html
      * [PATCHv2 3.12.44,3.14.45,3.18.16,4.0.6] ipvs: fix crash if scheduler is changed
        http://www.spinics.net/lists/lvs-devel/msg04007.html
    
      Please let me know how you would like to handle guiding these
      backports into stable.
    
    * ipvs: fix crash with sync protocol v0 and FTP
    
      This appears to resolve a problem introduced by
      749c42b ("ipvs: reduce sync rate with time thresholds") in v3.5
    ====================
    
    Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
    ummakynes committed Jul 20, 2015
    Configuration menu
    Copy the full SHA
    b64f48d View commit details
    Browse the repository at this point in the history
  4. nfsd: Drop BUG_ON and ignore SECLABEL on absent filesystem

    On an absent filesystem (one served by another server), we need to be
    able to handle requests for certain attributest (like fs_locations, so
    the client can find out which server does have the filesystem), but
    others we can't.
    
    We forgot to take that into account when adding another attribute
    bitmask work for the SECURITY_LABEL attribute.
    
    There an export entry with the "refer" option can result in:
    
    [   88.414272] kernel BUG at fs/nfsd/nfs4xdr.c:2249!
    [   88.414828] invalid opcode: 0000 [#1] SMP
    [   88.415368] Modules linked in: rpcsec_gss_krb5 nfsv4 dns_resolver nfs fscache nfsd xfs libcrc32c iscsi_tcp libiscsi_tcp libiscsi scsi_transport_iscsi iosf_mbi ppdev btrfs coretemp crct10dif_pclmul crc32_pclmul crc32c_intel xor ghash_clmulni_intel raid6_pq vmw_balloon parport_pc parport i2c_piix4 shpchp vmw_vmci acpi_cpufreq auth_rpcgss nfs_acl lockd grace sunrpc vmwgfx drm_kms_helper ttm drm mptspi mptscsih serio_raw mptbase e1000 scsi_transport_spi ata_generic pata_acpi [last unloaded: nfsd]
    [   88.417827] CPU: 0 PID: 2116 Comm: nfsd Not tainted 4.0.7-300.fc22.x86_64 #1
    [   88.418448] Hardware name: VMware, Inc. VMware Virtual Platform/440BX Desktop Reference Platform, BIOS 6.00 05/20/2014
    [   88.419093] task: ffff880079146d50 ti: ffff8800785d8000 task.ti: ffff8800785d8000
    [   88.419729] RIP: 0010:[<ffffffffa04b3c10>]  [<ffffffffa04b3c10>] nfsd4_encode_fattr+0x820/0x1f00 [nfsd]
    [   88.420376] RSP: 0000:ffff8800785db998  EFLAGS: 00010206
    [   88.421027] RAX: 0000000000000001 RBX: 000000000018091a RCX: ffff88006668b980
    [   88.421676] RDX: 00000000fffef7fc RSI: 0000000000000000 RDI: ffff880078d05000
    [   88.422315] RBP: ffff8800785dbb58 R08: ffff880078d043f8 R09: ffff880078d4a000
    [   88.422968] R10: 0000000000010000 R11: 0000000000000002 R12: 0000000000b0a23a
    [   88.423612] R13: ffff880078d05000 R14: ffff880078683100 R15: ffff88006668b980
    [   88.424295] FS:  0000000000000000(0000) GS:ffff88007c600000(0000) knlGS:0000000000000000
    [   88.424944] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
    [   88.425597] CR2: 00007f40bc370f90 CR3: 0000000035af5000 CR4: 00000000001407f0
    [   88.426285] Stack:
    [   88.426921]  ffff8800785dbaa8 ffffffffa049e4af ffff8800785dba08 ffffffff813298f0
    [   88.427585]  ffff880078683300 ffff8800769b0de8 0000089d00000001 0000000087f805e0
    [   88.428228]  ffff880000000000 ffff880079434a00 0000000000000000 ffff88006668b980
    [   88.428877] Call Trace:
    [   88.429527]  [<ffffffffa049e4af>] ? exp_get_by_name+0x7f/0xb0 [nfsd]
    [   88.430168]  [<ffffffff813298f0>] ? inode_doinit_with_dentry+0x210/0x6a0
    [   88.430807]  [<ffffffff8123833e>] ? d_lookup+0x2e/0x60
    [   88.431449]  [<ffffffff81236133>] ? dput+0x33/0x230
    [   88.432097]  [<ffffffff8123f214>] ? mntput+0x24/0x40
    [   88.432719]  [<ffffffff812272b2>] ? path_put+0x22/0x30
    [   88.433340]  [<ffffffffa049ac87>] ? nfsd_cross_mnt+0xb7/0x1c0 [nfsd]
    [   88.433954]  [<ffffffffa04b54e0>] nfsd4_encode_dirent+0x1b0/0x3d0 [nfsd]
    [   88.434601]  [<ffffffffa04b5330>] ? nfsd4_encode_getattr+0x40/0x40 [nfsd]
    [   88.435172]  [<ffffffffa049c991>] nfsd_readdir+0x1c1/0x2a0 [nfsd]
    [   88.435710]  [<ffffffffa049a530>] ? nfsd_direct_splice_actor+0x20/0x20 [nfsd]
    [   88.436447]  [<ffffffffa04abf30>] nfsd4_encode_readdir+0x120/0x220 [nfsd]
    [   88.437011]  [<ffffffffa04b58cd>] nfsd4_encode_operation+0x7d/0x190 [nfsd]
    [   88.437566]  [<ffffffffa04aa6dd>] nfsd4_proc_compound+0x24d/0x6f0 [nfsd]
    [   88.438157]  [<ffffffffa0496103>] nfsd_dispatch+0xc3/0x220 [nfsd]
    [   88.438680]  [<ffffffffa006f0cb>] svc_process_common+0x43b/0x690 [sunrpc]
    [   88.439192]  [<ffffffffa0070493>] svc_process+0x103/0x1b0 [sunrpc]
    [   88.439694]  [<ffffffffa0495a57>] nfsd+0x117/0x190 [nfsd]
    [   88.440194]  [<ffffffffa0495940>] ? nfsd_destroy+0x90/0x90 [nfsd]
    [   88.440697]  [<ffffffff810bb728>] kthread+0xd8/0xf0
    [   88.441260]  [<ffffffff810bb650>] ? kthread_worker_fn+0x180/0x180
    [   88.441762]  [<ffffffff81789e58>] ret_from_fork+0x58/0x90
    [   88.442322]  [<ffffffff810bb650>] ? kthread_worker_fn+0x180/0x180
    [   88.442879] Code: 0f 84 93 05 00 00 83 f8 ea c7 85 a0 fe ff ff 00 00 27 30 0f 84 ba fe ff ff 85 c0 0f 85 a5 fe ff ff e9 e3 f9 ff ff 0f 1f 44 00 00 <0f> 0b 66 0f 1f 44 00 00 be 04 00 00 00 4c 89 ef 4c 89 8d 68 fe
    [   88.444052] RIP  [<ffffffffa04b3c10>] nfsd4_encode_fattr+0x820/0x1f00 [nfsd]
    [   88.444658]  RSP <ffff8800785db998>
    [   88.445232] ---[ end trace 6cb9d0487d94a29f ]---
    
    Signed-off-by: Kinglong Mee <kinglongmee@gmail.com>
    Cc: stable@vger.kernel.org
    Signed-off-by: J. Bruce Fields <bfields@redhat.com>
    kinglongmee authored and J. Bruce Fields committed Jul 20, 2015
    Configuration menu
    Copy the full SHA
    c2227a3 View commit details
    Browse the repository at this point in the history
  5. nfsd: Fix a file leak on nfsd4_layout_setlease failure

    If nfsd4_layout_setlease fails, nfsd will not put ls->ls_file.
    
    Fix commit c5c707f "nfsd: implement pNFS layout recalls".
    
    Signed-off-by: Kinglong Mee <kinglongmee@gmail.com>
    Signed-off-by: J. Bruce Fields <bfields@redhat.com>
    kinglongmee authored and J. Bruce Fields committed Jul 20, 2015
    Configuration menu
    Copy the full SHA
    1ca4b88 View commit details
    Browse the repository at this point in the history

Commits on Jul 21, 2015

  1. ARM: dts: Update video-phy node with syscon phandle for exynos3250

    As a follow-up to recent changes to Exynos mipi video phy driver,
    introducing support for PMU regmap in commit e4b3d38 ("phy:
    exynos-video-mipi: Fix regression by adding support for PMU regmap")
    add a syscon phandle to video-phy node to bring back to life both
    MIPI DSI display and MIPI CSIS-2 camera sensor on Exynos3250.
    
    Signed-off-by: Beata Michalska <b.michalska@samsung.com>
    Reviewed-by: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
    Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
    Signed-off-by: Kukjin Kim <kgene@kernel.org>
    Beata Michalska authored and Kukjin Kim committed Jul 21, 2015
    Configuration menu
    Copy the full SHA
    1342ff4 View commit details
    Browse the repository at this point in the history
  2. ARM: dts: add CPU OPP and regulator supply property for exynos4210

    For Exynos4210 platforms, add CPU operating points and CPU regulator
    supply properties for migrating from Exynos specific cpufreq driver
    to using generic cpufreq driver.
    
    Cc: Doug Anderson <dianders@chromium.org>
    Cc: Andreas Faerber <afaerber@suse.de>
    Cc: Sachin Kamat <sachin.kamat@linaro.org>
    Cc: Andreas Farber <afaerber@suse.de>
    Cc: Javier Martinez Canillas <javier.martinez@collabora.co.uk>
    Signed-off-by: Thomas Abraham <thomas.ab@samsung.com>
    [b.zolnierkie: removed exynos5250 and exynos5420 support for now]
    Signed-off-by: Bartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
    [k.kozlowski: Rebased, moved cpu nodes to alphabetical position]
    Signed-off-by: Krzysztof Kozlowski <k.kozlowski@samsung.com>
    Signed-off-by: Kukjin Kim <kgene@kernel.org>
    Thomas Abraham authored and Kukjin Kim committed Jul 21, 2015
    Configuration menu
    Copy the full SHA
    300bde7 View commit details
    Browse the repository at this point in the history
  3. ASoC: dapm: Don't add prefix to widget stream name

    Commit fdb6eb0 ("ASoC: dapm: Modify widget stream name according to
    prefix") fixed the case where a DAPM route between a DAI widget and a
    DAC/ADC/AIF widget with a matching stream name was not created when the
    DAPM context was using a prefix.
    
    Unfortunately the patch introduced a few issues on its own like leaking the
    dynamically allocated stream name memory and also not checking whether the
    allocation succeeded in the first place.
    
    It is also incomplete in that it still does not handle the case where
    stream name of the widget is a substring of the stream name of the DAI,
    which is explicitly allowed and works fine if no DAPM prefix is used.
    
    Revert the commit and take a slightly different approach to solving the
    issue. Instead of comparing the widget's stream name to the name of the DAI
    widget compare it to the stream name of the DAI widget. The stream name of
    the DAI widget is identical to the name of the DAI widget except that it
    wont have the DAPM prefix added. So this approach behaves identical
    regardless to whether the DAPM context uses a prefix or not.
    
    We don't have to worry about potentially matching with a widget with the
    same stream name, but from a different DAPM context with a different
    prefix, since the code already makes sure that both the DAI widget and the
    matched widget are from the same DAPM context.
    
    Fixes: fdb6eb0 ("ASoC: dapm: Modify widget stream name according to prefix")
    Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
    Signed-off-by: Mark Brown <broonie@kernel.org>
    Cc: stable@vger.kernel.org
    larsclausen authored and broonie committed Jul 21, 2015
    Configuration menu
    Copy the full SHA
    a798c24 View commit details
    Browse the repository at this point in the history
  4. Merge tag 'samsung-fixes-1' of git://git.kernel.org/pub/scm/linux/ker…

    …nel/git/kgene/linux-samsung into fixes
    
    Merge "Samsung fixes for v4.2" from Kukjin Kim:
    
    From Krzysztof Kozlowski:
    1. Fix exynos3250 MIPI DSI display and MIPI CSIS-2 camera sensorx
       after adding support for PMU regmap in exynos-video-mipi driver
       (issue introduced in v4.0).
    2. Bring back cpufreq for exynos4210 after incomplete switch to
       cpufreq-dt driver in 4.2 merge window. The necessary DT changes
       for exynos4210 cpufreq was not applied to the same tree as rest
       of patchset because of multiple conflicts between clk and arm-soc
       trees. Unfortunately without the change the exynos4210 boards
       loose cpufreq feature.
    
    * tag 'samsung-fixes-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
      ARM: dts: add CPU OPP and regulator supply property for exynos4210
      ARM: dts: Update video-phy node with syscon phandle for exynos3250
    
    Signed-off-by: Olof Johansson <olof@lixom.net>
    olofj committed Jul 21, 2015
    Configuration menu
    Copy the full SHA
    82567c8 View commit details
    Browse the repository at this point in the history

Commits on Jul 22, 2015

  1. ASoC: sgtl5000: Fix up define for SGTL5000_SMALL_POP

    Currently, below code actually does not update any bit because
    SGTL5000_SMALL_POP is 0.
    
    snd_soc_update_bits(codec, SGTL5000_CHIP_REF_CTRL, SGTL5000_SMALL_POP, 1);
    
    The SGTL5000_SMALL_POP should be BIT(0) rather than 0, fix it.
    
    Signed-off-by: Axel Lin <axel.lin@ingics.com>
    Acked-By: Alexander Stein <alexander.stein@systec-electronic.com>
    Signed-off-by: Mark Brown <broonie@kernel.org>
    AxelLin authored and broonie committed Jul 22, 2015
    Configuration menu
    Copy the full SHA
    b101acf View commit details
    Browse the repository at this point in the history
  2. ASoC: ssm4567: Keep TDM_BCLKS in ssm4567_set_dai_fmt

    The regmap_write in ssm4567_set_dai_fmt accidentally clears the
    TDM_BCLKS field which was set earlier by ssm4567_set_tdm_slot.
    
    This patch fixes it by using regmap_update_bits with proper mask.
    
    Signed-off-by: Ben Zhang <benzh@chromium.org>
    Acked-by: Lars-Peter Clausen <lars@metafoo.de>
    Acked-by: Anatol Pomozov <anatol.pomozov@gmail.com>
    Signed-off-by: Mark Brown <broonie@kernel.org>
    Cc: stable@vger.kernel.org
    bzhg authored and broonie committed Jul 22, 2015
    Configuration menu
    Copy the full SHA
    a6c2a32 View commit details
    Browse the repository at this point in the history
  3. netfilter: nf_conntrack: Support expectations in different zones

    When zones were originally introduced, the expectation functions were
    all extended to perform lookup using the zone. However, insertion was
    not modified to check the zone. This means that two expectations which
    are intended to apply for different connections that have the same tuple
    but exist in different zones cannot both be tracked.
    
    Fixes: 5d0aa2c (netfilter: nf_conntrack: add support for "conntrack zones")
    Signed-off-by: Joe Stringer <joestringer@nicira.com>
    Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
    joestringer authored and ummakynes committed Jul 22, 2015
    Configuration menu
    Copy the full SHA
    4b31814 View commit details
    Browse the repository at this point in the history
  4. kbuild: Do not pick up ARCH_{CPP,A,C}FLAGS from the environment

    Initialize the ARCH_* overrides before including the arch Makefile, to
    avoid picking up the values from the environment. The variables can
    still be overriden on the make command line, but this won't happen
    by accident.
    
    Signed-off-by: Michal Marek <mmarek@suse.com>
    Michal Marek committed Jul 22, 2015
    Configuration menu
    Copy the full SHA
    6dd3f13 View commit details
    Browse the repository at this point in the history
  5. Makefile: Force gzip and xz on module install

    Running `make modules_install` ordinarily will overwrite existing
    modules. This is the desired behavior, and is how pretty much every
    other `make install` target works.
    
    However, if CONFIG_MODULE_COMPRESS is enabled, modules are passed
    through gzip and xz which then do the file writing. Both gzip and xz
    will error out if the file already exists, unless -f is passed.
    
    This patch adds -f so that the behavior is uniform.
    
    Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
    Signed-off-by: Michal Marek <mmarek@suse.com>
    zx2c4 authored and Michal Marek committed Jul 22, 2015
    Configuration menu
    Copy the full SHA
    3d1450d View commit details
    Browse the repository at this point in the history

Commits on Jul 23, 2015

  1. btrfs: Fix lockdep warning of btrfs_run_delayed_iputs()

    Liu Bo <bo.li.liu@oracle.com> reported a lockdep warning of
    delayed_iput_sem in xfstests generic/241:
      [ 2061.345955] =============================================
      [ 2061.346027] [ INFO: possible recursive locking detected ]
      [ 2061.346027] 4.1.0+ #268 Tainted: G        W
      [ 2061.346027] ---------------------------------------------
      [ 2061.346027] btrfs-cleaner/3045 is trying to acquire lock:
      [ 2061.346027]  (&fs_info->delayed_iput_sem){++++..}, at:
      [<ffffffff814063ab>] btrfs_run_delayed_iputs+0x6b/0x100
      [ 2061.346027] but task is already holding lock:
      [ 2061.346027]  (&fs_info->delayed_iput_sem){++++..}, at: [<ffffffff814063ab>] btrfs_run_delayed_iputs+0x6b/0x100
      [ 2061.346027] other info that might help us debug this:
      [ 2061.346027]  Possible unsafe locking scenario:
    
      [ 2061.346027]        CPU0
      [ 2061.346027]        ----
      [ 2061.346027]   lock(&fs_info->delayed_iput_sem);
      [ 2061.346027]   lock(&fs_info->delayed_iput_sem);
      [ 2061.346027]
       *** DEADLOCK ***
    It is rarely happened, about 1/400 in my test env.
    
    The reason is recursion of btrfs_run_delayed_iputs():
      cleaner_kthread
      -> btrfs_run_delayed_iputs() *1
      -> get delayed_iput_sem lock *2
      -> iput()
      -> ...
      -> btrfs_commit_transaction()
      -> btrfs_run_delayed_iputs() *1
      -> get delayed_iput_sem lock (dead lock) *2
      *1: recursion of btrfs_run_delayed_iputs()
      *2: warning of lockdep about delayed_iput_sem
    
    When fs is in high stress, new iputs may added into fs_info->delayed_iputs
    list when btrfs_run_delayed_iputs() is running, which cause
    second btrfs_run_delayed_iputs() run into down_read(&fs_info->delayed_iput_sem)
    again, and cause above lockdep warning.
    
    Actually, it will not cause real problem because both locks are read lock,
    but to avoid lockdep warning, we can do a fix.
    
    Fix:
      Don't do btrfs_run_delayed_iputs() in btrfs_commit_transaction() for
      cleaner_kthread thread to break above recursion path.
      cleaner_kthread is calling btrfs_run_delayed_iputs() explicitly in code,
      and don't need to call btrfs_run_delayed_iputs() again in
      btrfs_commit_transaction(), it also give us a bonus to avoid stack overflow.
    
    Test:
      No above lockdep warning after patch in 1200 generic/241 tests.
    
    Reported-by: Liu Bo <bo.li.liu@oracle.com>
    Signed-off-by: Zhao Lei <zhaolei@cn.fujitsu.com>
    Reviewed-by: Liu Bo <bo.li.liu@oracle.com>
    Signed-off-by: Chris Mason <clm@fb.com>
    zhaoleidd authored and masoncl committed Jul 23, 2015
    Configuration menu
    Copy the full SHA
    8a73301 View commit details
    Browse the repository at this point in the history
  2. btrfs: Avoid NULL pointer dereference of free_extent_buffer when read…

    …_tree_block() fail
    
    When read_tree_block() failed, we can see following dmesg:
     [  134.371389] BUG: unable to handle kernel NULL pointer dereference at 0000000000000063
     [  134.372236] IP: [<ffffffff813a4a51>] free_extent_buffer+0x21/0x90
     [  134.372236] PGD 0
     [  134.372236] Oops: 0000 [#1] SMP
     [  134.372236] Modules linked in:
     [  134.372236] CPU: 0 PID: 2289 Comm: mount Not tainted 4.2.0-rc1_HEAD_c65b99f046843d2455aa231747b5a07a999a9f3d_+ #115
     [  134.372236] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.7.5.1-0-g8936dbb-20141113_115728-nilsson.home.kraxel.org 04/01/2014
     [  134.372236] task: ffff88003b6e1a00 ti: ffff880011e60000 task.ti: ffff880011e60000
     [  134.372236] RIP: 0010:[<ffffffff813a4a51>]  [<ffffffff813a4a51>] free_extent_buffer+0x21/0x90
     ...
     [  134.372236] Call Trace:
     [  134.372236]  [<ffffffff81379aa1>] free_root_extent_buffers+0x91/0xb0
     [  134.372236]  [<ffffffff81379c3d>] free_root_pointers+0x17d/0x190
     [  134.372236]  [<ffffffff813801b0>] open_ctree+0x1ca0/0x25b0
     [  134.372236]  [<ffffffff8144d017>] ? disk_name+0x97/0xb0
     [  134.372236]  [<ffffffff813558aa>] btrfs_mount+0x8fa/0xab0
     ...
    
    Reason:
     read_tree_block() changed to return error number on fail,
     and this value(not NULL) is set to tree_root->node, then subsequent
     code will run to:
      free_root_pointers()
      ->free_root_extent_buffers()
      ->free_extent_buffer()
      ->atomic_read((extent_buffer *)(-E_XXX)->refs);
     and trigger above error.
    
    Fix:
     Set tree_root->node to NULL on fail to make error_handle code
     happy.
    
    Signed-off-by: Zhao Lei <zhaolei@cn.fujitsu.com>
    Signed-off-by: Chris Mason <clm@fb.com>
    zhaoleidd authored and masoncl committed Jul 23, 2015
    Configuration menu
    Copy the full SHA
    95ab1f6 View commit details
    Browse the repository at this point in the history
  3. btrfs: its btrfs_err() instead of btrfs_error()

    sorry I indented to use btrfs_err() and I have no idea
    how btrfs_error() got there.
    infact I was thinking about these kind of oversights
    since these two func are too closely named.
    
    Signed-off-by: Anand Jain <anand.jain@oracle.com>
    Reviewed-by: Liu Bo <bo.li.liu@oracle.com>
    Reviewed-by: David Sterba <dsterba@suse.com>
    Signed-off-by: Chris Mason <clm@fb.com>
    asj authored and masoncl committed Jul 23, 2015
    Configuration menu
    Copy the full SHA
    3e303ea View commit details
    Browse the repository at this point in the history
  4. Btrfs: fix quick exhaustion of the system array in the superblock

    Omar reported that after commit 4fbcdf6 ("Btrfs: fix -ENOSPC when
    finishing block group creation"), introduced in 4.2-rc1, the following
    test was failing due to exhaustion of the system array in the superblock:
    
      #!/bin/bash
    
      truncate -s 100T big.img
      mkfs.btrfs big.img
      mount -o loop big.img /mnt/loop
    
      num=5
      sz=10T
      for ((i = 0; i < $num; i++)); do
          echo fallocate $i $sz
          fallocate -l $sz /mnt/loop/testfile$i
      done
      btrfs filesystem sync /mnt/loop
    
      for ((i = 0; i < $num; i++)); do
            echo rm $i
            rm /mnt/loop/testfile$i
            btrfs filesystem sync /mnt/loop
      done
      umount /mnt/loop
    
    This made btrfs_add_system_chunk() fail with -EFBIG due to excessive
    allocation of system block groups. This happened because the test creates
    a large number of data block groups per transaction and when committing
    the transaction we start the writeout of the block group caches for all
    the new new (dirty) block groups, which results in pre-allocating space
    for each block group's free space cache using the same transaction handle.
    That in turn often leads to creation of more block groups, and all get
    attached to the new_bgs list of the same transaction handle to the point
    of getting a list with over 1500 elements, and creation of new block groups
    leads to the need of reserving space in the chunk block reserve and often
    creating a new system block group too.
    
    So that made us quickly exhaust the chunk block reserve/system space info,
    because as of the commit mentioned before, we do reserve space for each
    new block group in the chunk block reserve, unlike before where we would
    not and would at most allocate one new system block group and therefore
    would only ensure that there was enough space in the system space info to
    allocate 1 new block group even if we ended up allocating thousands of
    new block groups using the same transaction handle. That worked most of
    the time because the computed required space at check_system_chunk() is
    very pessimistic (assumes a chunk tree height of BTRFS_MAX_LEVEL/8 and
    that all nodes/leafs in a path will be COWed and split) and since the
    updates to the chunk tree all happen at btrfs_create_pending_block_groups
    it is unlikely that a path needs to be COWed more than once (unless
    writepages() for the btree inode is called by mm in between) and that
    compensated for the need of creating any new nodes/leads in the chunk
    tree.
    
    So fix this by ensuring we don't accumulate a too large list of new block
    groups in a transaction's handles new_bgs list, inserting/updating the
    chunk tree for all accumulated new block groups and releasing the unused
    space from the chunk block reserve whenever the list becomes sufficiently
    large. This is a generic solution even though the problem currently can
    only happen when starting the writeout of the free space caches for all
    dirty block groups (btrfs_start_dirty_block_groups()).
    
    Reported-by: Omar Sandoval <osandov@fb.com>
    Signed-off-by: Filipe Manana <fdmanana@suse.com>
    Tested-by: Omar Sandoval <osandov@fb.com>
    Signed-off-by: Chris Mason <clm@fb.com>
    fdmanana authored and masoncl committed Jul 23, 2015
    Configuration menu
    Copy the full SHA
    00d80e3 View commit details
    Browse the repository at this point in the history
  5. powerpc/powernv/ioda2: Fix calculation for memory allocated for TCE t…

    …able
    
    The existing code stores the amount of memory allocated for a TCE table.
    At the moment it uses @offset which is a virtual offset in the TCE table
    which is only correct for a one level tables and it does not include
    memory allocated for intermediate levels. When multilevel TCE table is
    requested, WARN_ON in tce_iommu_create_table() prints a warning.
    
    This adds an additional counter to pnv_pci_ioda2_table_do_alloc_pages()
    to count actually allocated memory.
    
    Signed-off-by: Alexey Kardashevskiy <aik@ozlabs.ru>
    Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
    Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
    aik authored and mpe committed Jul 23, 2015
    Configuration menu
    Copy the full SHA
    3ba3a73 View commit details
    Browse the repository at this point in the history
  6. macintosh/ans-lcd: fix build failure after module_init/exit relocation

    After commit 0fd972a ("module: relocate module_init from init.h to module.h")
    ans-lcd module fails to build with:
    
    drivers/macintosh/ans-lcd.c:201:1: warning: data definition has no type or storage class [enabled by default]
     module_init(anslcd_init);
     ^
    drivers/macintosh/ans-lcd.c:201:1: error: type defaults to 'int' in declaration of 'module_init' [-Werror=implicit-int]
    drivers/macintosh/ans-lcd.c:201:1: warning: parameter names (without types) in function declaration [enabled by default]
    drivers/macintosh/ans-lcd.c:202:1: warning: data definition has no type or storage class [enabled by default]
     module_exit(anslcd_exit);
     ^
    drivers/macintosh/ans-lcd.c:202:1: error: type defaults to 'int' in declaration of 'module_exit' [-Werror=implicit-int]
    drivers/macintosh/ans-lcd.c:202:1: warning: parameter names (without types) in function declaration [enabled by default]
    drivers/macintosh/ans-lcd.c:155:1: warning: 'anslcd_init' defined but not used [-Wunused-function]
     anslcd_init(void)
     ^
    drivers/macintosh/ans-lcd.c:195:1: warning: 'anslcd_exit' defined but not used [-Wunused-function]
     anslcd_exit(void)
     ^
    
    This commit fixes it by replacing linux/init.h by linux/module.h.
    
    Fixes: 0fd972a ("module: relocate module_init from init.h to module.h")
    Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
    Acked-by: Paul Gortmaker <paul.gortmaker@windriver.com>
    Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
    Luis Henriques authored and mpe committed Jul 23, 2015
    Configuration menu
    Copy the full SHA
    120d200 View commit details
    Browse the repository at this point in the history
  7. crypto: qat - Fix invalid synchronization between register/unregister…

    … sym algs
    
    The synchronization method used atomic was bogus.
    Use a proper synchronization with mutex.
    
    Cc: stable@vger.kernel.org
    Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    tstruk authored and herbertx committed Jul 23, 2015
    Configuration menu
    Copy the full SHA
    6f043b5 View commit details
    Browse the repository at this point in the history
  8. crypto: ixp4xx - Remove bogus BUG_ON on scattered dst buffer

    This patch removes a bogus BUG_ON in the ablkcipher path that
    triggers when the destination buffer is different from the source
    buffer and is scattered.
    
    Cc: stable@vger.kernel.org
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    herbertx committed Jul 23, 2015
    Configuration menu
    Copy the full SHA
    f898c52 View commit details
    Browse the repository at this point in the history
  9. ARM: OMAP2+: hwmod: Fix _wait_target_ready() for hwmods without sysc

    For hwmods without sysc, _init_mpu_rt_base(oh) won't be called and so
    _find_mpu_rt_port(oh) will return NULL thus preventing ready state check
    on those modules after the module is enabled.
    
    This can potentially cause a bus access error if the module is accessed
    before the module is ready.
    
    Fix this by unconditionally calling _init_mpu_rt_base() during hwmod
    _init(). Do ioremap only if we need SYSC access.
    
    Eventhough _wait_target_ready() check doesn't really need MPU RT port but
    just the PRCM registers, we still mandate that the hwmod must have an
    MPU RT port if ready state check needs to be done. Else it would mean that
    the module is not accessible by MPU so there is no point in waiting
    for target to be ready.
    
    e.g. this fixes the below DCAN bus access error on AM437x-gp-evm.
    
    [   16.672978] ------------[ cut here ]------------
    [   16.677885] WARNING: CPU: 0 PID: 1580 at drivers/bus/omap_l3_noc.c:147 l3_interrupt_handler+0x234/0x35c()
    [   16.687946] 44000000.ocp:L3 Custom Error: MASTER M2 (64-bit) TARGET L4_PER_0 (Read): Data Access in User mode during Functional access
    [   16.700654] Modules linked in: xhci_hcd btwilink ti_vpfe dwc3 videobuf2_core ov2659 bluetooth v4l2_common videodev ti_am335x_adc kfifo_buf industrialio c_can_platform videobuf2_dma_contig media snd_soc_tlv320aic3x pixcir_i2c_ts c_can dc
    [   16.731144] CPU: 0 PID: 1580 Comm: rpc.statd Not tainted 3.14.26-02561-gf733aa036398 #180
    [   16.739747] Backtrace:
    [   16.742336] [<c0011108>] (dump_backtrace) from [<c00112a4>] (show_stack+0x18/0x1c)
    [   16.750285]  r6:00000093 r5:00000009 r4:eab5b8a8 r3:00000000
    [   16.756252] [<c001128c>] (show_stack) from [<c05a4418>] (dump_stack+0x20/0x28)
    [   16.763870] [<c05a43f8>] (dump_stack) from [<c0037120>] (warn_slowpath_common+0x6c/0x8c)
    [   16.772408] [<c00370b4>] (warn_slowpath_common) from [<c00371e4>] (warn_slowpath_fmt+0x38/0x40)
    [   16.781550]  r8:c05d1f90 r7:c0730844 r6:c0730448 r5:80080003 r4:ed0cd210
    [   16.788626] [<c00371b0>] (warn_slowpath_fmt) from [<c027fa94>] (l3_interrupt_handler+0x234/0x35c)
    [   16.797968]  r3:ed0cd480 r2:c0730508
    [   16.801747] [<c027f860>] (l3_interrupt_handler) from [<c0063758>] (handle_irq_event_percpu+0x54/0x1bc)
    [   16.811533]  r10:ed005600 r9:c084855b r8:0000002a r7:00000000 r6:00000000 r5:0000002a
    [   16.819780]  r4:ed0e6d80
    [   16.822453] [<c0063704>] (handle_irq_event_percpu) from [<c00638f0>] (handle_irq_event+0x30/0x40)
    [   16.831789]  r10:eb2b6938 r9:eb2b6960 r8:bf011420 r7:fa240100 r6:00000000 r5:0000002a
    [   16.840052]  r4:ed005600
    [   16.842744] [<c00638c0>] (handle_irq_event) from [<c00661d8>] (handle_fasteoi_irq+0x74/0x128)
    [   16.851702]  r4:ed005600 r3:00000000
    [   16.855479] [<c0066164>] (handle_fasteoi_irq) from [<c0063068>] (generic_handle_irq+0x28/0x38)
    [   16.864523]  r4:0000002a r3:c0066164
    [   16.868294] [<c0063040>] (generic_handle_irq) from [<c000ef60>] (handle_IRQ+0x38/0x8c)
    [   16.876612]  r4:c081c640 r3:00000202
    [   16.880380] [<c000ef28>] (handle_IRQ) from [<c00084f0>] (gic_handle_irq+0x30/0x5c)
    [   16.888328]  r6:eab5ba38 r5:c0804460 r4:fa24010c r3:00000100
    [   16.894303] [<c00084c0>] (gic_handle_irq) from [<c05a8d80>] (__irq_svc+0x40/0x50)
    [   16.902193] Exception stack(0xeab5ba38 to 0xeab5ba80)
    [   16.907499] ba20:                                                       00000000 00000006
    [   16.916108] ba40: fa1d0000 fa1d0008 ed3d3000 eab5bab4 ed3d3460 c0842af4 bf011420 eb2b6960
    [   16.924716] ba60: eb2b6938 eab5ba8c eab5ba90 eab5ba80 bf035220 bf07702c 600f0013 ffffffff
    [   16.933317]  r7:eab5ba6c r6:ffffffff r5:600f0013 r4:bf07702c
    [   16.939317] [<bf077000>] (c_can_plat_read_reg_aligned_to_16bit [c_can_platform]) from [<bf035220>] (c_can_get_berr_counter+0x38/0x64 [c_can])
    [   16.952696] [<bf0351e8>] (c_can_get_berr_counter [c_can]) from [<bf010294>] (can_fill_info+0x124/0x15c [can_dev])
    [   16.963480]  r5:ec8c9740 r4:ed3d3000
    [   16.967253] [<bf010170>] (can_fill_info [can_dev]) from [<c0502fa8>] (rtnl_fill_ifinfo+0x58c/0x8fc)
    [   16.976749]  r6:ec8c9740 r5:ed3d3000 r4:eb2b6780
    [   16.981613] [<c0502a1c>] (rtnl_fill_ifinfo) from [<c0503408>] (rtnl_dump_ifinfo+0xf0/0x1dc)
    [   16.990401]  r10:ec8c9740 r9:00000000 r8:00000000 r7:00000000 r6:ebd4d1b4 r5:ed3d3000
    [   16.998671]  r4:00000000
    [   17.001342] [<c0503318>] (rtnl_dump_ifinfo) from [<c050e6e4>] (netlink_dump+0xa8/0x1e0)
    [   17.009772]  r10:00000000 r9:00000000 r8:c0503318 r7:ebf3e6c0 r6:ebd4d1b4 r5:ec8c9740
    [   17.018050]  r4:ebd4d000
    [   17.020714] [<c050e63c>] (netlink_dump) from [<c050ec10>] (__netlink_dump_start+0x104/0x154)
    [   17.029591]  r6:eab5bd34 r5:ec8c9980 r4:ebd4d000
    [   17.034454] [<c050eb0c>] (__netlink_dump_start) from [<c0505604>] (rtnetlink_rcv_msg+0x110/0x1f4)
    [   17.043778]  r7:00000000 r6:ec8c9980 r5:00000f40 r4:ebf3e6c0
    [   17.049743] [<c05054f4>] (rtnetlink_rcv_msg) from [<c05108e8>] (netlink_rcv_skb+0xb4/0xc8)
    [   17.058449]  r8:eab5bdac r7:ec8c9980 r6:c05054f4 r5:ec8c9980 r4:ebf3e6c0
    [   17.065534] [<c0510834>] (netlink_rcv_skb) from [<c0504134>] (rtnetlink_rcv+0x24/0x2c)
    [   17.073854]  r6:ebd4d000 r5:00000014 r4:ec8c9980 r3:c0504110
    [   17.079846] [<c0504110>] (rtnetlink_rcv) from [<c05102ac>] (netlink_unicast+0x180/0x1ec)
    [   17.088363]  r4:ed0c6800 r3:c0504110
    [   17.092113] [<c051012c>] (netlink_unicast) from [<c0510670>] (netlink_sendmsg+0x2ac/0x380)
    [   17.100813]  r10:00000000 r8:00000008 r7:ec8c9980 r6:ebd4d000 r5:eab5be70 r4:eab5bee4
    [   17.109083] [<c05103c4>] (netlink_sendmsg) from [<c04dfdb4>] (sock_sendmsg+0x90/0xb0)
    [   17.117305]  r10:00000000 r9:eab5a000 r8:becdda3c r7:0000000c r6:ea978400 r5:eab5be70
    [   17.125563]  r4:c05103c4
    [   17.128225] [<c04dfd24>] (sock_sendmsg) from [<c04e1c28>] (SyS_sendto+0xb8/0xdc)
    [   17.136001]  r6:becdda5c r5:00000014 r4:ecd37040
    [   17.140876] [<c04e1b70>] (SyS_sendto) from [<c000e680>] (ret_fast_syscall+0x0/0x30)
    [   17.148923]  r10:00000000 r8:c000e804 r7:00000122 r6:becdda5c r5:0000000c r4:becdda5c
    [   17.157169] ---[ end trace 2b71e15b38f58bad ]---
    
    Fixes: 6423d6d ("ARM: OMAP2+: hwmod: check for module address space during init")
    Signed-off-by: Roger Quadros <rogerq@ti.com>
    Signed-off-by: Paul Walmsley <paul@pwsan.com>
    Cc: <stable@vger.kernel.org>
    Roger Quadros authored and Paul Walmsley committed Jul 23, 2015
    Configuration menu
    Copy the full SHA
    9a258af View commit details
    Browse the repository at this point in the history
  10. Bluetooth: Fix NULL pointer dereference in smp_conn_security

    The l2cap_conn->smp pointer may be NULL for various valid reasons where SMP has
    failed to initialize properly. One such scenario is when crypto support is
    missing, another when the adapter has been powered on through a legacy method.
    The smp_conn_security() function should have the appropriate check for this
    situation to avoid NULL pointer dereferences.
    
    Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
    Signed-off-by: Marcel Holtmann <marcel@holtmann.org>
    Cc: stable@vger.kernel.org # 4.0+
    Johan Hedberg authored and holtmann committed Jul 23, 2015
    Configuration menu
    Copy the full SHA
    25ba265 View commit details
    Browse the repository at this point in the history

Commits on Jul 24, 2015

  1. ASoC: pcm1681: Fix setting de-emphasis sampling rate selection

    The de-emphasis sampling rate selection is controlled by BIT[3:4] of
    PCM1681_DEEMPH_CONTROL register. Do proper left shift to set it.
    
    Signed-off-by: Axel Lin <axel.lin@ingics.com>
    Acked-by: Marek Belisko <marek.belisko@streamunlimited.com>
    Signed-off-by: Mark Brown <broonie@kernel.org>
    Cc: stable@vger.kernel.org
    AxelLin authored and broonie committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    fa8173a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    61710a6 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    66874cc View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    51126f6 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    5c851ba View commit details
    Browse the repository at this point in the history
  6. Merge remote-tracking branches 'asoc/fix/fsl-ssi', 'asoc/fix/intel', …

    …'asoc/fix/intel-kconfig' and 'asoc/fix/mediatek' into asoc-linus
    broonie committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    c8a075a View commit details
    Browse the repository at this point in the history
  7. Merge remote-tracking branches 'asoc/fix/sgtl5000', 'asoc/fix/topolog…

    …y' and 'asoc/fix/zx' into asoc-linus
    broonie committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    996034b View commit details
    Browse the repository at this point in the history
  8. Merge tag 'asoc-fix-v4.2-rc3' of git://git.kernel.org/pub/scm/linux/k…

    …ernel/git/broonie/sound into for-linus
    
    ASoC: Fixes for v4.2
    
    A lot of small fixes here, a few to the core:
    
     - Fix for binding DAPM stream widgets on devices with prefixes assigned
       to them
     - Minor fixes for the newly added topology interfaces
     - Locking and memory leak fixes for DAPM
     - Driver specific fixes
    tiwai committed Jul 24, 2015
    Configuration menu
    Copy the full SHA
    43cbf02 View commit details
    Browse the repository at this point in the history

Commits on Jul 25, 2015

  1. ARM: dts: i.MX35: Fix can support.

    Since commit 3d42a37
    ("can: flexcan: add 2nd clock to support imx53 and newer")
    the can driver requires a dt nodes to have a second clock.
    Add them to imx35 to fix probing the flex can driver on the
    respective platforms.
    
    Signed-off-by: Denis Carikli <denis@eukrea.com>
    Cc: <stable@vger.kernel.org>
    Signed-off-by: Shawn Guo <shawnguo@kernel.org>
    denis-eukrea authored and Shawn Guo committed Jul 25, 2015
    Configuration menu
    Copy the full SHA
    e053f96 View commit details
    Browse the repository at this point in the history
  2. ipv4: fib_select_default should match the prefix

    fib_trie starting from 4.1 can link fib aliases from
    different prefixes in same list. Make sure the alternative
    gateways are in same table and for same prefix (0) by
    checking tb_id and fa_slen.
    
    Fixes: 79e5ad2 ("fib_trie: Remove leaf_info")
    Signed-off-by: Julian Anastasov <ja@ssi.bg>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Julian Anastasov authored and davem330 committed Jul 25, 2015
    Configuration menu
    Copy the full SHA
    18a912e View commit details
    Browse the repository at this point in the history
  3. ipv4: consider TOS in fib_select_default

    fib_select_default considers alternative routes only when
    res->fi is for the first alias in res->fa_head. In the
    common case this can happen only when the initial lookup
    matches the first alias with highest TOS value. This
    prevents the alternative routes to require specific TOS.
    
    This patch solves the problem as follows:
    
    - routes that require specific TOS should be returned by
    fib_select_default only when TOS matches, as already done
    in fib_table_lookup. This rule implies that depending on the
    TOS we can have many different lists of alternative gateways
    and we have to keep the last used gateway (fa_default) in first
    alias for the TOS instead of using single tb_default value.
    
    - as the aliases are ordered by many keys (TOS desc,
    fib_priority asc), we restrict the possible results to
    routes with matching TOS and lowest metric (fib_priority)
    and routes that match any TOS, again with lowest metric.
    
    For example, packet with TOS 8 can not use gw3 (not lowest
    metric), gw4 (different TOS) and gw6 (not lowest metric),
    all other gateways can be used:
    
    tos 8 via gw1 metric 2 <--- res->fa_head and res->fi
    tos 8 via gw2 metric 2
    tos 8 via gw3 metric 3
    tos 4 via gw4
    tos 0 via gw5
    tos 0 via gw6 metric 1
    
    Reported-by: Hagen Paul Pfeifer <hagen@jauu.net>
    Signed-off-by: Julian Anastasov <ja@ssi.bg>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Julian Anastasov authored and davem330 committed Jul 25, 2015
    Configuration menu
    Copy the full SHA
    2392deb View commit details
    Browse the repository at this point in the history
  4. Merge branch 'fib_select_default-fixes'

    Julian Anastasov says:
    
    ====================
    ipv4: fib_select_default changes
    
    This patchset contains 2 changes for the alternative routes,
    one to add tb_id/fa_slen check needed after the recent
    fib_trie optimizations for fib aliases and the second
    change attempts to support alternative routes with TOS
    requirement.
    
    	Sorry that I don't have access to the original
    report from Hagen Paul Pfeifer. I hope he will see this
    change.
    
    	The second change adds fa_default field to the
    fib aliases (which can be many) and if the feature to
    filter the alternative routes by TOS is not worth it,
    this second patch can be scrapped.
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Jul 25, 2015
    Configuration menu
    Copy the full SHA
    c42a6e8 View commit details
    Browse the repository at this point in the history
  5. sch_plug: purge buffered packets during reset

    Otherwise the skbuff related structures are not correctly
    refcount'ed.
    
    Cc: Jamal Hadi Salim <jhs@mojatatu.com>
    Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    congwang authored and davem330 committed Jul 25, 2015
    Configuration menu
    Copy the full SHA
    fe6bea7 View commit details
    Browse the repository at this point in the history
  6. sch_choke: drop all packets in queue during reset

    Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    congwang authored and davem330 committed Jul 25, 2015
    Configuration menu
    Copy the full SHA
    77e62da View commit details
    Browse the repository at this point in the history
  7. ALSA: hda - fix cs4210_spdif_automute()

    Smatch complains that we have nested checks for "spdif_present".  It
    turns out the current behavior isn't correct, we should remove the first
    check and keep the second.
    
    Fixes: 1077a02 ('ALSA: hda - Use generic parser for Cirrus codec driver')
    Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Dan Carpenter authored and tiwai committed Jul 25, 2015
    Configuration menu
    Copy the full SHA
    44008f0 View commit details
    Browse the repository at this point in the history
  8. ALSA: hda - Fix the headset mic that will not work on Dell desktop ma…

    …chine
    
    When the headset was plugged in the Dell desktop, the mic of headset
    can't be detected and workable.
    According to the alsa-info, we found the differece between alsa and
    init_pin_configs on the machine, so we need to add the pin configs to
    make headset work.
    
    Codec: Realtek ALC3234
    Vendor Id: 0x10ec0255
    Subsystem Id: 0x102806bb
    
    BugLink: https://bugs.launchpad.net/bugs/1477900
    Signed-off-by: Woodrow Shen <woodrow.shen@canonical.com>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Woodrow Shen authored and tiwai committed Jul 25, 2015
    Configuration menu
    Copy the full SHA
    e9c28e1 View commit details
    Browse the repository at this point in the history
  9. cgroup: net_cls: fix false-positive "suspicious RCU usage"

    In dev_queue_xmit() net_cls protected with rcu-bh.
    
    [  270.730026] ===============================
    [  270.730029] [ INFO: suspicious RCU usage. ]
    [  270.730033] 4.2.0-rc3+ #2 Not tainted
    [  270.730036] -------------------------------
    [  270.730040] include/linux/cgroup.h:353 suspicious rcu_dereference_check() usage!
    [  270.730041] other info that might help us debug this:
    [  270.730043] rcu_scheduler_active = 1, debug_locks = 1
    [  270.730045] 2 locks held by dhclient/748:
    [  270.730046]  #0:  (rcu_read_lock_bh){......}, at: [<ffffffff81682b70>] __dev_queue_xmit+0x50/0x960
    [  270.730085]  #1:  (&qdisc_tx_lock){+.....}, at: [<ffffffff81682d60>] __dev_queue_xmit+0x240/0x960
    [  270.730090] stack backtrace:
    [  270.730096] CPU: 0 PID: 748 Comm: dhclient Not tainted 4.2.0-rc3+ #2
    [  270.730098] Hardware name: OpenStack Foundation OpenStack Nova, BIOS Bochs 01/01/2011
    [  270.730100]  0000000000000001 ffff8800bafeba58 ffffffff817ad487 0000000000000007
    [  270.730103]  ffff880232a0a780 ffff8800bafeba88 ffffffff810ca4f2 ffff88022fb23e00
    [  270.730105]  ffff880232a0a780 ffff8800bafebb68 ffff8800bafebb68 ffff8800bafebaa8
    [  270.730108] Call Trace:
    [  270.730121]  [<ffffffff817ad487>] dump_stack+0x4c/0x65
    [  270.730148]  [<ffffffff810ca4f2>] lockdep_rcu_suspicious+0xe2/0x120
    [  270.730153]  [<ffffffff816a62d2>] task_cls_state+0x92/0xa0
    [  270.730158]  [<ffffffffa00b534f>] cls_cgroup_classify+0x4f/0x120 [cls_cgroup]
    [  270.730164]  [<ffffffff816aac74>] tc_classify_compat+0x74/0xc0
    [  270.730166]  [<ffffffff816ab573>] tc_classify+0x33/0x90
    [  270.730170]  [<ffffffffa00bcb0a>] htb_enqueue+0xaa/0x4a0 [sch_htb]
    [  270.730172]  [<ffffffff81682e26>] __dev_queue_xmit+0x306/0x960
    [  270.730174]  [<ffffffff81682b70>] ? __dev_queue_xmit+0x50/0x960
    [  270.730176]  [<ffffffff816834a3>] dev_queue_xmit_sk+0x13/0x20
    [  270.730185]  [<ffffffff81787770>] dev_queue_xmit+0x10/0x20
    [  270.730187]  [<ffffffff8178b91c>] packet_snd.isra.62+0x54c/0x760
    [  270.730190]  [<ffffffff8178be25>] packet_sendmsg+0x2f5/0x3f0
    [  270.730203]  [<ffffffff81665245>] ? sock_def_readable+0x5/0x190
    [  270.730210]  [<ffffffff817b64bb>] ? _raw_spin_unlock+0x2b/0x40
    [  270.730216]  [<ffffffff8173bcbc>] ? unix_dgram_sendmsg+0x5cc/0x640
    [  270.730219]  [<ffffffff8165f367>] sock_sendmsg+0x47/0x50
    [  270.730221]  [<ffffffff8165f42f>] sock_write_iter+0x7f/0xd0
    [  270.730232]  [<ffffffff811fd4c7>] __vfs_write+0xa7/0xf0
    [  270.730234]  [<ffffffff811fe5b8>] vfs_write+0xb8/0x190
    [  270.730236]  [<ffffffff811fe8c2>] SyS_write+0x52/0xb0
    [  270.730239]  [<ffffffff817b6bae>] entry_SYSCALL_64_fastpath+0x12/0x76
    
    Signed-off-by: Konstantin Khlebnikov <khlebnikov@yandex-team.ru>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    koct9i authored and davem330 committed Jul 25, 2015
    Configuration menu
    Copy the full SHA
    cc9f4da View commit details
    Browse the repository at this point in the history
  10. 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 ten Netfilter/IPVS fixes, they are:
    
    1) Address refcount leak when creating an expectation from the ctnetlink
       interface.
    
    2) Fix bug splat in the IDLETIMER target related to sysfs, from Dmitry
       Torokhov.
    
    3) Resolve panic for unreachable route in IPVS with locally generated
       traffic in the output path, from Alex Gartrell.
    
    4) Fix wrong source address in rare cases for tunneled traffic in IPVS,
       from Julian Anastasov.
    
    5) Fix crash if scheduler is changed via ipvsadm -E, again from Julian.
    
    6) Make sure skb->sk is unset for forwarded traffic through IPVS, again from
       Alex Gartrell.
    
    7) Fix crash with IPVS sync protocol v0 and FTP, from Julian.
    
    8) Reset sender cpu for forwarded traffic in IPVS, also from Julian.
    
    9) Allocate template conntracks through kmalloc() to resolve netns dependency
       problems with the conntrack kmem_cache.
    
    10) Fix zones with expectations that clash using the same tuple, from Joe
        Stringer.
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Jul 25, 2015
    Configuration menu
    Copy the full SHA
    4851643 View commit details
    Browse the repository at this point in the history

Commits on Jul 26, 2015

  1. Merge tag 'for-v4.2-rc/omap-fixes-a' of git://git.kernel.org/pub/scm/…

    …linux/kernel/git/pjw/omap-pending into fixes
    
    Merge "ARM: OMAP2+: hwmod fixes for v4.2-rc" from Paul Walmsley:
    
    ARM: OMAP2+: hwmod fixes for v4.2-rc
    
    Two fixes against v4.2-rc1.  The first, for DRA7xx platforms,
    corrects some incorrect GPMC hardware description data.  The
    second one will ensure that the hwmod code will wait for any
    module with CPU-accessible registers to become ready before
    attempting to access it.
    
    Basic build, boot, and PM test logs are available here:
    
    http://www.pwsan.com/omap/testlogs/omap-hwmod-a-for-v4.2-rc/20150723065408/
    
    Note that I do not have a DRA7xx or AM43xx board, and therefore
    cannot test on those platforms.
    
    * tag 'for-v4.2-rc/omap-fixes-a' of git://git.kernel.org/pub/scm/linux/kernel/git/pjw/omap-pending:
      ARM: OMAP2+: hwmod: Fix _wait_target_ready() for hwmods without sysc
      ARM: DRA7: hwmod: fix gpmc hwmod
    
    Signed-off-by: Olof Johansson <olof@lixom.net>
    olofj committed Jul 26, 2015
    Configuration menu
    Copy the full SHA
    ee5d35e View commit details
    Browse the repository at this point in the history
  2. ARM: nomadik: disable UART0 on Nomadik boards

    The UART0 is not used on these boards, yet active and blocking
    other use. Fix this by disabling UART0 and setting port aliases
    to maintain port enumeration to userspace.
    
    Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
    Signed-off-by: Olof Johansson <olof@lixom.net>
    linusw authored and olofj committed Jul 26, 2015
    Configuration menu
    Copy the full SHA
    a153790 View commit details
    Browse the repository at this point in the history
  3. bridge: netlink: fix slave_changelink/br_setport race conditions

    Since slave_changelink support was added there have been a few race
    conditions when using br_setport() since some of the port functions it
    uses require the bridge lock. It is very easy to trigger a lockup due to
    some internal spin_lock() usage without bh disabled, also it's possible to
    get the bridge into an inconsistent state.
    
    Signed-off-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com>
    Fixes: 3ac636b ("bridge: implement rtnl_link_ops->slave_changelink")
    Reviewed-by: Jiri Pirko <jiri@resnulli.us>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Nikolay Aleksandrov authored and davem330 committed Jul 26, 2015
    Configuration menu
    Copy the full SHA
    963ad94 View commit details
    Browse the repository at this point in the history
  4. net/mlx4_core: Use sink counter for the VF default as fallback

    Some old PF drivers don't let VFs allocate counters, in that case, use
    the sink counter so the VF can load and operate properly.
    
    Fixes: 6de5f7f ('net/mlx4_core: Allocate default counter per port')
    Reported-by: Sebastian Ott <sebott@linux.vnet.ibm.com>
    Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com>
    Signed-off-by: Eran Ben Elisha <eranbe@mellanox.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    ogerlitz authored and davem330 committed Jul 26, 2015
    Configuration menu
    Copy the full SHA
    178d23e View commit details
    Browse the repository at this point in the history
  5. net/mlx4_core: Fix wrong index in propagating port change event to VFs

    The port-change event processing in procedure mlx4_eq_int() uses "slave"
    as the vf_oper array index. Since the value of "slave" is the PF function
    index, the result is that the PF link state is used for deciding to
    propagate the event for all the VFs. The VF link state should be used,
    so the VF function index should be used here.
    
    Fixes: 948e306 ('net/mlx4: Add VF link state support')
    Signed-off-by: Jack Morgenstein <jackm@dev.mellanox.co.il>
    Signed-off-by: Matan Barak <matanb@mellanox.com>
    Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Jack Morgenstein authored and davem330 committed Jul 26, 2015
    Configuration menu
    Copy the full SHA
    1c1bf34 View commit details
    Browse the repository at this point in the history
  6. net/mlx4_core: Relieve cpu load average on the port sending flow

    When a port is not attached, the FW requires a longer than usual time to
    execute the SENSE_PORT command. In the command flow, the
    wait_for_completion_timeout call used in mlx4_cmd_wait puts the kernel
    thread into the uninterruptible state during this time. This, in turn,
    due to the computation method, causes the CPU load average to increase.
    
    Fix this by using wait_for_completion_interruptible_timeout() for the
    SENSE_PORT command, which puts the thread in the interruptible state.
    In this state, the thread does not contribute to the CPU load average.
    
    Treat the interrupted case as if the SENSE_PORT command returned
    port_type = NONE.
    
    Fix suggested by Gideon Naim <gideonn@mellanox.com> and
    Bart Van Assche <bart.vanassche@sandisk.com>.
    
    Signed-off-by: Jack Morgenstein <jackm@dev.mellanox.co.il>
    Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Jack Morgenstein authored and davem330 committed Jul 26, 2015
    Configuration menu
    Copy the full SHA
    9f5b031 View commit details
    Browse the repository at this point in the history
  7. net/mlx4_en: Remove BUG_ON assert when checking if ring is full

    In mlx4_en_is_ring_empty we check if ring surpassed its size.
    Since the prod and cons indicators are u32, there might be a state where
    prod wrapped around and cons, making this assert false, although no
    actual bug exists (other code segment can cope with this state).
    
    Signed-off-by: Ido Shamay <idos@mellanox.com>
    Signed-off-by: Eugenia Emantayev <eugenia@mellanox.com>
    Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    shamoya authored and davem330 committed Jul 26, 2015
    Configuration menu
    Copy the full SHA
    62e4c9b View commit details
    Browse the repository at this point in the history
  8. Merge branch 'mlx4-fixes'

    Or Gerlitz says:
    
    ====================
    mlx4 driver fixes, July 22nd 2015
    
    Just few mlx4 fixes.. the fix related to propagating port state
    changes to VF should go to -stable of >= 3.11, all the rest just
    to 4.2-rc
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Jul 26, 2015
    Configuration menu
    Copy the full SHA
    10e59ee View commit details
    Browse the repository at this point in the history
  9. net: sctp: stop spamming klog with rfc6458, 5.3.2. deprecation warnings

    Back then when we added support for SCTP_SNDINFO/SCTP_RCVINFO from
    RFC6458 5.3.4/5.3.5, we decided to add a deprecation warning for the
    (as per RFC deprecated) SCTP_SNDRCV via commit bbbea41 ("net:
    sctp: deprecate rfc6458, 5.3.2. SCTP_SNDRCV support"), see [1].
    
    Imho, it was not a good idea, and we should just revert that message
    for a couple of reasons:
    
      1) It's uapi and therefore set in stone forever.
    
      2) To be able to run on older and newer kernels, an SCTP application
         would need to probe for both, SCTP_SNDRCV, but also SCTP_SNDINFO/
         SCTP_RCVINFO support, so that on older kernels, it can make use
         of SCTP_SNDRCV, and on newer kernels SCTP_SNDINFO/SCTP_RCVINFO.
         In my (limited) experience, a lot of SCTP appliances are migrating
         to newer kernels only ve(ee)ry slowly.
    
      3) Some people don't have the chance to change their applications,
         f.e. due to proprietary legacy stuff. So, they'll hit this warning
         in fast path and are stuck with older kernels.
    
    But i.e. due to point 1) I really fail to see the benefit of a warning.
    So just revert that for now, the issue was reported up Jamal.
    
      [1] http://thread.gmane.org/gmane.linux.network/321960/
    
    Reported-by: Jamal Hadi Salim <jhs@mojatatu.com>
    Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
    Cc: Michael Tuexen <tuexen@fh-muenster.de>
    Acked-by: Jamal Hadi Salim <jhs@mojatatu.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    borkmann authored and davem330 committed Jul 26, 2015
    Configuration menu
    Copy the full SHA
    81296fc View commit details
    Browse the repository at this point in the history

Commits on Jul 27, 2015

  1. inet: frag: don't re-use chainlist for evictor

    commit 65ba1f1 ("inet: frags: fix a race between inet_evict_bucket
    and inet_frag_kill") describes the bug, but the fix doesn't work reliably.
    
    Problem is that ->flags member can be set on other cpu without chainlock
    being held by that task, i.e. the RMW-Cycle can clear INET_FRAG_EVICTED
    bit after we put the element on the evictor private list.
    
    We can crash when walking the 'private' evictor list since an element can
    be deleted from list underneath the evictor.
    
    Join work with Nikolay Alexandrov.
    
    Fixes: b13d3cb ("inet: frag: move eviction of queues to work queue")
    Reported-by: Johan Schuijt <johan@transip.nl>
    Tested-by: Frank Schreuder <fschreuder@transip.nl>
    Signed-off-by: Nikolay Alexandrov <nikolay@cumulusnetworks.com>
    Signed-off-by: Florian Westphal <fw@strlen.de>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Florian Westphal authored and davem330 committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    d1fe194 View commit details
    Browse the repository at this point in the history
  2. inet: frag: change *_frag_mem_limit functions to take netns_frags as …

    …argument
    
    Followup patch will call it after inet_frag_queue was freed, so q->net
    doesn't work anymore (but netf = q->net; free(q); mem_limit(netf) would).
    
    Tested-by: Frank Schreuder <fschreuder@transip.nl>
    Signed-off-by: Florian Westphal <fw@strlen.de>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Florian Westphal authored and davem330 committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    0e60d24 View commit details
    Browse the repository at this point in the history
  3. inet: frag: don't wait for timer deletion when evicting

    Frank reports 'NMI watchdog: BUG: soft lockup' errors when
    load is high.  Instead of (potentially) unbounded restarts of the
    eviction process, just skip to the next entry.
    
    One caveat is that, when a netns is exiting, a timer may still be running
    by the time inet_evict_bucket returns.
    
    We use the frag memory accounting to wait for outstanding timers,
    so that when we free the percpu counter we can be sure no running
    timer will trip over it.
    
    Reported-and-tested-by: Frank Schreuder <fschreuder@transip.nl>
    Signed-off-by: Florian Westphal <fw@strlen.de>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Florian Westphal authored and davem330 committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    5719b29 View commit details
    Browse the repository at this point in the history
  4. inet: frags: remove INET_FRAG_EVICTED and use list_evictor for the test

    We can simply remove the INET_FRAG_EVICTED flag to avoid all the flags
    race conditions with the evictor and use a participation test for the
    evictor list, when we're at that point (after inet_frag_kill) in the
    timer there're 2 possible cases:
    
    1. The evictor added the entry to its evictor list while the timer was
    waiting for the chainlock
    or
    2. The timer unchained the entry and the evictor won't see it
    
    In both cases we should be able to see list_evictor correctly due
    to the sync on the chainlock.
    
    Joint work with Florian Westphal.
    
    Tested-by: Frank Schreuder <fschreuder@transip.nl>
    Signed-off-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com>
    Signed-off-by: Florian Westphal <fw@strlen.de>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Nikolay Aleksandrov authored and davem330 committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    caaecdd View commit details
    Browse the repository at this point in the history
  5. Merge branch 'inet-frag-fixes'

    Florian Westphal says:
    
    ====================
    inet: ip defrag bug fixes
    
    Johan Schuijt and Frank Schreuder reported crash and softlockup after the
    inet workqueue eviction change:
    
    general protection fault: 0000 [#1] SMP
    CPU: 0 PID: 4 Comm: kworker/0:0 Not tainted 3.18.18-transip-1.5 #1
    Workqueue: events inet_frag_worker
    task: ffff880224935130 ti: ffff880224938000 task.ti: ffff880224938000
    RIP: 0010:[<ffffffff8149288c>] [<ffffffff8149288c>] inet_evict_bucket+0xfc/0x160
    RSP: 0018:ffff88022493bd58  EFLAGS: 00010286
    RAX: ffff88021f4f3e80 RBX: dead000000100100 RCX: 000000000000006b
    RDX: 000000000000006c RSI: ffff88021f4f3e80 RDI: dead0000001000a8
    RBP: 0000000000000002 R08: ffff880222273900 R09: ffff880036e49200
    R10: ffff8800c6e86500 R11: ffff880036f45500 R12: ffffffff81a87100
    R13: ffff88022493bd70 R14: 0000000000000000 R15: ffff8800c9b26280
    [..]
    Call Trace:
     [<ffffffff814929e0>] ? inet_frag_worker+0x60/0x210
     [<ffffffff8107e3a2>] ? process_one_work+0x142/0x3b0
     [<ffffffff8107eb94>] ? worker_thread+0x114/0x440
    [..]
    
    A second issue results in softlockup since the evictor may restart the
    eviction loop for a (potentially) unlimited number of times while local
    softirqs are disabled.
    
    Frank reports that test system remained stable for 14 hours of testing
    (before, crash occured within half an hour in their setup).
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    64b892a View commit details
    Browse the repository at this point in the history
  6. niu: don't count tx error twice in case of headroom realloc fails

    Fixes: a3138df ("[NIU]: Add Sun Neptune ethernet driver.")
    Signed-off-by: Jiri Pirko <jiri@resnulli.us>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    jpirko authored and davem330 committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    4228883 View commit details
    Browse the repository at this point in the history
  7. net: fec: use managed DMA API functions to allocate BD ring

    So it gets freed when the device is going away.
    This fixes a DMA memory leak on driver probe() fail and driver
    remove().
    
    Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    lynxeye-dev authored and davem330 committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    c0a1a0a View commit details
    Browse the repository at this point in the history
  8. net: fec: introduce fec_ptp_stop and use in probe fail path

    This function frees resources and cancels delayed work item that
    have been initialized in fec_ptp_init().
    
    Use this to do proper error handling if something goes wrong in
    probe function after fec_ptp_init has been called.
    
    Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
    Acked-by: Fugang Duan <B38611@freescale.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    lynxeye-dev authored and davem330 committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    32cba57 View commit details
    Browse the repository at this point in the history
  9. Merge branch 'for-upstream' of git://git.kernel.org/pub/scm/linux/ker…

    …nel/git/bluetooth/bluetooth
    
    Johan Hedberg says:
    
    ====================
    pull request: bluetooth 2015-07-23
    
    Here's another one-patch pull request for 4.2 which targets a potential
    NULL pointer dereference in the LE Security Manager code that can be
    triggered by using older user space tools. The issue has been there
    since 4.0 so there's the appropriate "Cc: stable" in place.
    
    Let me know if there are any issues pulling. Thanks.
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    03de104 View commit details
    Browse the repository at this point in the history
  10. r8152: fix the issue about U1/U2

    - Disable U1/U2 during initialization.
    - Disable lpm when linking is on, and enable it when linking is off.
    - Disable U1/U2 when enabling runtime suspend.
    
    It is possible to let hw stop working, if the U1/U2 request occurs
    during some situations. The patch is used to avoid it.
    
    Signed-off-by: Hayes Wang <hayeswang@realtek.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    hayesorz authored and davem330 committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    b214396 View commit details
    Browse the repository at this point in the history
  11. r8152: fix wakeup settings

    Avoid the driver to enable WOL if the device doesn't support it.
    
    Signed-off-by: Hayes Wang <hayeswang@realtek.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    hayesorz authored and davem330 committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    7daed8d View commit details
    Browse the repository at this point in the history
  12. r8152: don't enable napi before rx ready

    Adjust napi_disable() and napi_enable() to avoid r8152_poll() start
    working before rx ready. Otherwise, it may have race condition for
    rx_agg.
    
    Signed-off-by: Hayes Wang <hayeswang@realtek.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    hayesorz authored and davem330 committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    41cec84 View commit details
    Browse the repository at this point in the history
  13. Merge branch 'r8152-fixes'

    Hayes Wang says:
    
    ====================
    r8152: issues fix
    
    v2:
    Replace patch #2 with "r8152: fix wakeup settings".
    
    v1:
    These patches are used to fix issues.
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    3d3af88 View commit details
    Browse the repository at this point in the history
  14. tcp: fix recv with flags MSG_WAITALL | MSG_PEEK

    Currently, tcp_recvmsg enters a busy loop in sk_wait_data if called
    with flags = MSG_WAITALL | MSG_PEEK.
    
    sk_wait_data waits for sk_receive_queue not empty, but in this case,
    the receive queue is not empty, but does not contain any skb that we
    can use.
    
    Add a "last skb seen on receive queue" argument to sk_wait_data, so
    that it sleeps until the receive queue has new skbs.
    
    Link: https://bugzilla.kernel.org/show_bug.cgi?id=99461
    Link: https://sourceware.org/bugzilla/show_bug.cgi?id=18493
    Link: https://bugzilla.redhat.com/show_bug.cgi?id=1205258
    Reported-by: Enrico Scholz <rh-bugzilla@ensc.de>
    Reported-by: Dan Searle <dan@censornet.com>
    Signed-off-by: Sabrina Dubroca <sd@queasysnail.net>
    Acked-by: Eric Dumazet <edumazet@google.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    qsn authored and davem330 committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    dfbafc9 View commit details
    Browse the repository at this point in the history
  15. net/macb: improve big endian CPU support

    The commit a50dad3 (net: macb: Add big endian CPU support) converted I/O
    accessors to readl_relaxed() and writel_relaxed() and consequentially broke
    MACB driver on AVR32 platforms such as ATNGW100.
    
    This patch improves I/O access by checking endiannes first and use the
    corresponding methods.
    
    Fixes: a50dad3 (net: macb: Add big endian CPU support)
    Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    andy-shev authored and davem330 committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    f2ce8a9 View commit details
    Browse the repository at this point in the history
  16. net/macb: check if macb_config present

    The commit 98b5a0f introduces jumbo frame support, but also it assumes
    that macb_config present which is not always true.
    
    The configuration without macb_config fails to boot.
    
     Unable to handle kernel NULL pointer dereference at virtual address 00000010
     ptbr = 90350000 pgd = 00000000
     Oops: Kernel access of bad area, sig: 11 [#1]
     FRAME_POINTER chip: 0x01f:0x1e82 rev 2
     Modules linked in:
     CPU: 0 PID: 1 Comm: swapper Not tainted 4.2.0-rc3-next-20150723+ #13
     task: 91c26000 ti: 91c28000 task.ti: 91c28000
     PC is at macb_probe+0x140/0x61c
    
    Fixes: 98b5a0f (net: macb: Add support for jumbo frames)
    Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    andy-shev authored and davem330 committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    f36dbe6 View commit details
    Browse the repository at this point in the history
  17. net/macb: use dev_*() when netdev is not yet registered

    To avoid messages like
    
    macb macb.0 (unnamed net_device) (uninitialized): Cadence caps 0x00000000
    macb macb.0 (unnamed net_device) (uninitialized): invalid hw address, using random
    
    let's use dev_*() macros.
    
    Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    andy-shev authored and davem330 committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    a35919e View commit details
    Browse the repository at this point in the history
  18. net/macb: suppress compiler warnings

    This patch fixes the following warnings:
    drivers/net/ethernet/cadence/macb.c: In function ‘macb_handle_link_change’:
    drivers/net/ethernet/cadence/macb.c:266: warning: comparison between signed and unsigned
    drivers/net/ethernet/cadence/macb.c:267: warning: comparison between signed and unsigned
    drivers/net/ethernet/cadence/macb.c:291: warning: comparison between signed and unsigned
    drivers/net/ethernet/cadence/macb.c: In function ‘gem_update_stats’:
    drivers/net/ethernet/cadence/macb.c:1908: warning: comparison between signed and unsigned
    drivers/net/ethernet/cadence/macb.c: In function ‘gem_get_ethtool_strings’:
    drivers/net/ethernet/cadence/macb.c:1988: warning: comparison between signed and unsigned
    
    Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    andy-shev authored and davem330 committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    8bcbf82 View commit details
    Browse the repository at this point in the history
  19. net/macb: replace macb_count_tx_descriptors() by DIV_ROUND_UP()

    macb_count_tx_descriptors() repeats the generic macro DIV_ROUND_UP(). The patch
    does a replacement.
    
    There is no functional change.
    
    Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    andy-shev authored and davem330 committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    94b295e View commit details
    Browse the repository at this point in the history
  20. net/macb: convert to kernel doc

    This patch coverts struct description to the kernel doc format. There is no
    functional change.
    
    Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    andy-shev authored and davem330 committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    e018a0c View commit details
    Browse the repository at this point in the history
  21. Merge branch 'macb-fixes'

    Andy Shevchenko says:
    
    ====================
    net/macb: fix for AVR32 and clean up
    
    It seems no one had tested recently the driver on AVR32 platforms such as
    ATNGW100. This series bring it back to work.
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    54109da View commit details
    Browse the repository at this point in the history
  22. ALSA: fireworks: add support for AudioFire2 quirk

    Fireworks uses TSB43CB43(IceLynx-Micro) as its IEC 61883-1/6 interface.
    This chip includes ARM7 core, and loads and runs program. The firmware
    is stored in on-board memory and loaded every powering-on.
    
    Echo Audio ships several versions of firmwares for each model. These
    firmwares have each quirk and the quirk changes a sequence of packets.
    
    AudioFire2 has a quirk to transfer a first packet with non-zero in
    its dbc field. This causes ALSA Fireworks driver to detect discontinuity.
    As long as I investigated, firmware 5.7, 5.7.6 and 5.8 have this quirk.
    
    This commit adds a support for the quirk to handle AudioFire2 packets.
    For safe, CIP_SKIP_INIT_DBC_CHECK is applied to all versions of
    AudioFire2's firmwares.
    
    02 00050002 90ffffff <-
    42 0005000a 90013000
    42 00050012 90014400
    42 0005001a 90015800
    02 0005001a 90ffffff
    42 00050022 90019000
    42 0005002a 9001a400
    42 00050032 9001b800
    02 00050032 90ffffff
    42 0005003a 9001d000
    42 00050042 9001e400
    42 0005004a 9001f800
    02 0005004a 90ffffff
    
    Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    takaswie authored and tiwai committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    9c6893e View commit details
    Browse the repository at this point in the history
  23. net: netcp: Fixes SGMII reset on network interface shutdown

    This patch asserts SGMII RTRESET, i.e. resetting the SGMII Tx/Rx
    logic,  during network interface shutdown to avoid having the
    hardware wedge when shutting down with high incoming traffic rates.
    This is cleared (brought out of RTRESET) when the interface is
    brought back up.
    
    Signed-off-by: WingMan Kwok <w-kwok2@ti.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    wingmankwok authored and davem330 committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    7025e88 View commit details
    Browse the repository at this point in the history
  24. ALSA: hda - Apply fixup for another Toshiba Satellite S50D

    Toshiba Satellite S50D has another model with a different PCI SSID
    (1179:fa93) while the previous fixup was for 1179:fa91.  Adjust the
    fixup entry with SND_PCI_QUIRK_MASK() to match with both devices.
    
    Reported-by: Tim Sample <timsample@gmail.com>
    Cc: <stable@vger.kernel.org>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    tiwai committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    b9d9c9e View commit details
    Browse the repository at this point in the history
  25. net: fec: Ensure clocks are enabled while using mdio bus

    When a switch is attached to the mdio bus, the mdio bus can be used
    while the interface is not open. If the IPG clock is not enabled, MDIO
    reads/writes will simply time out.
    
    Add support for runtime PM to control this clock. Enable/disable this
    clock using runtime PM, with open()/close() and mdio read()/write()
    function triggering runtime PM operations. Since PM is optional, the
    IPG clock is enabled at probe and is no longer modified by
    fec_enet_clk_enable(), thus if PM is not enabled in the kernel, it is
    guaranteed the clock is running when MDIO operations are performed.
    
    Signed-off-by: Andrew Lunn <andrew@lunn.ch>
    Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
    Cc: tyler.baker@linaro.org
    Cc: fabio.estevam@freescale.com
    Cc: shawn.guo@linaro.org
    Tested-by: Fabio Estevam <fabio.estevam@freescale.com>
    Tested-by: Tyler Baker <tyler.baker@linaro.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    lunn authored and davem330 committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    8fff755 View commit details
    Browse the repository at this point in the history
  26. drm/nouveau: hold mutex when calling nouveau_abi16_fini()

    This was the only access to cli->abi16 without holding the mutex.
    
    Signed-off-by: Kamil Dudka <kdudka@redhat.com>
    kdudka authored and Ben Skeggs committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    ac8c793 View commit details
    Browse the repository at this point in the history
  27. drm/nouveau/drm/nv04-nv40/instmem: protect access to priv->heap by mutex

    This fixes the list_del corruption reported
    at <https://bugzilla.redhat.com/1205985>.
    
    Signed-off-by: Kamil Dudka <kdudka@redhat.com>
    kdudka authored and Ben Skeggs committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    7512223 View commit details
    Browse the repository at this point in the history
  28. drm/nouveau/clk/gt215: u32->s32 for difference in req. and set clock

    This difference can of course be negative too...
    
    Signed-off-by: Roy Spliet <rspliet@eclipso.eu>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
    RSpliet authored and Ben Skeggs committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    9694554 View commit details
    Browse the repository at this point in the history
  29. drm/nouveau: Do not leak client objects

    The memory allocated for a nouveau_cli object in nouveau_cli_create() is
    never freed. Free the memory in nouveau_cli_destroy() to plug this leak.
    
    kmemleak recorded this after running a couple of nouveau test programs.
    Note that kmemleak points at drm_open_helper() because for some reason
    it thinks that skipping the first two stack frames is a good idea.
    
    Signed-off-by: Thierry Reding <treding@nvidia.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
    thierryreding authored and Ben Skeggs committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    f5654d9 View commit details
    Browse the repository at this point in the history
  30. drm/nouveau/platform: fix compile error if !CONFIG_IOMMU

    The lack of IOMMU API support can make nouveau_platform_probe_iommu()
    fail to compile because struct iommu_ops is then empty. Fix this by
    skipping IOMMU probe in that case - lack of IOMMU on platform devices
    is sub-optimal, but is not an error.
    
    Signed-off-by: Alexandre Courbot <acourbot@nvidia.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
    Gnurou authored and Ben Skeggs committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    a67e14b View commit details
    Browse the repository at this point in the history
  31. drm/nouveau/ibus/gk20a: increase SM wait timeout

    Increase clock timeout for SYS, FPB and GPC in order to avoid operation
    failure at high gpcclk rate.
    
    Signed-off-by: Alexandre Courbot <acourbot@nvidia.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
    Gnurou authored and Ben Skeggs committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    9c56be4 View commit details
    Browse the repository at this point in the history
  32. drm/nouveau/fifo/gk104: kick channels when deactivating them

    Kicking channels is part of their deactivation process. Maxwell chips
    are particularly sensitive to this, and can start fetching the previous
    pushbuffer of a recycled channel if this is not done.
    
    While we are at it, improve the channel preemption code to only wait for
    bit 20 of 0x002634 to turn to 0, as it is the bit indicating a
    preempt is pending.
    
    Signed-off-by: Alexandre Courbot <acourbot@nvidia.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
    Gnurou authored and Ben Skeggs committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    1addc12 View commit details
    Browse the repository at this point in the history
  33. drm/nouveau/gr/gf100: wait on bottom half of FE's pipeline

    When emitting the ICMD bundle, wait on the bottom half (bit 3 of the
    GR_STATUS register) instead of upper half (bit 2) to make sure methods
    are effectively emitted.
    
    Signed-off-by: Alexandre Courbot <acourbot@nvidia.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
    Gnurou authored and Ben Skeggs committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    19bf09c View commit details
    Browse the repository at this point in the history
  34. drm/nouveau/gr/gf100: wait for GR idle after GO_IDLE bundle

    After submitting a GO_IDLE bundle, one must wait for GR to effectively
    be idle before submitting the next bundle. Failure to do so may result
    in undefined behavior in some rare cases.
    
    Signed-off-by: Alexandre Courbot <acourbot@nvidia.com>
    Reported-by: Kary Jin <karyj@nvidia.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
    Gnurou authored and Ben Skeggs committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    4a8cf45 View commit details
    Browse the repository at this point in the history
  35. drm/nouveau/pm: prevent freeing the wrong engine context

    This fixes a crash when multiple PM engine contexts are created.
    
    Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
    Reviewed-by: Martin Peres <martin.peres@free.fr>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
    hakzsam authored and Ben Skeggs committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    3693d54 View commit details
    Browse the repository at this point in the history
  36. drm/nouveau/pm: fix a potential race condition when creating an engin…

    …e context
    
    There is always the possiblity that the ppm->context pointer would get
    partially updated and accidentally would equal ctx. This would allow two
    contexts to co-exist, which is not acceptable. Moving the test to the
    critical section takes care of this problem.
    
    Signed-off-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
    Signed-off-by: Martin Peres <martin.peres@free.fr>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
    hakzsam authored and Ben Skeggs committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    305c195 View commit details
    Browse the repository at this point in the history
  37. drm/nouveau/disp: Use NULL for pointers

    The return type of exec_lookup() is struct nvkm_output *, so it should
    return NULL rather than 0.
    
    Signed-off-by: Thierry Reding <treding@nvidia.com>
    Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
    thierryreding authored and Ben Skeggs committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    1196bcf View commit details
    Browse the repository at this point in the history
  38. drm/nouveau/bios: add 0x59 and 0x5a opcodes

    Opcode 0x5a is a register write for data looked up from another part of
    the VBIOS image. 0x59 is a more complex opcode, but we may as well
    recognize it. These occur on a single known instance of Riva TNT2
    hardware.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91025
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
    imirkin authored and Ben Skeggs committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    360ccb8 View commit details
    Browse the repository at this point in the history
  39. drm/nouveau/bios: add proper support for opcode 0x59

    More analysis shows that this is identical to 0x79 except that it loads
    the frequency indirectly from elsewhere in the VBIOS.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91025
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
    imirkin authored and Ben Skeggs committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    d31b11d View commit details
    Browse the repository at this point in the history
  40. drm/nouveau/fbcon/nv11-: correctly account for ring space usage

    The RING_SPACE macro accounts how much space is used up so it's
    important to ask it for the right amount. Incorrect accounting of this
    can cause page faults down the line as writes are attempted outside of
    the ring.
    
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
    Cc: stable@vger.kernel.org
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
    imirkin authored and Ben Skeggs committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    d108142 View commit details
    Browse the repository at this point in the history
  41. drm/nouveau/fbcon/gf100-: reduce RING_SPACE allocation

    We only emit 58 words to the ring, not 60.
    
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
    imirkin authored and Ben Skeggs committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    4fd26cb View commit details
    Browse the repository at this point in the history
  42. drm/nouveau/fbcon/g80: reduce PUSH_SPACE alloc, fire ring on accel init

    Only 58 words get written to the ring, not 59. Also, normalize the accel
    init wrt nvc0 and nv04 fbcon impls by firing the ring at accel init time
    rather than waiting until "later".
    
    Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
    imirkin authored and Ben Skeggs committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    b7eea2d View commit details
    Browse the repository at this point in the history
  43. ALSA: hda - Add pin quirk for the headset mic jack detection on Dell …

    …laptop
    
    The new Dell laptop with codec 256 can't detect headset mic when
    headset was inserted on the machine. From alsa-info, we check
    init_pin_configs and need to define the new register value for pin
    0x1d & 0x1e because the original macro ALC256_STANDARD_PINS can't
    match pin definition. Also, the macro ALC256_STANDARD_PINS is
    simplified by removing them. This makes headset mic works on laptop.
    
    Codec: Realtek ALC256
    Vendor Id: 0x10ec0256
    Subsystem Id: 0x102806f2
    
    BugLink: https://bugs.launchpad.net/bugs/1478497
    Signed-off-by: Woodrow Shen <woodrow.shen@canonical.com>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Woodrow Shen authored and tiwai committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    5ce000b View commit details
    Browse the repository at this point in the history
  44. macb: Fix build with macro'ized readl/writel.

    If an architecture defines readl/writel using CPP macros, we
    get the following kinds of build failure:
    
    > > > drivers/net/ethernet/cadence/macb.c:164:1: error: macro "writel"
    > > > passed 3 arguments, but takes just 2
    >      macb_or_gem_writel(bp, SA1B, bottom);
    >     ^
    
    Rename the methods so that this doesn't happen.
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    7a6e070 View commit details
    Browse the repository at this point in the history
  45. fib_trie: Drop unnecessary calls to leaf_pull_suffix

    It was reported that update_suffix was taking a long time on systems where
    a large number of leaves were attached to a single node.  As it turns out
    fib_table_flush was calling update_suffix for each leaf that didn't have all
    of the aliases stripped from it.  As a result, on this large node removing
    one leaf would result in us calling update_suffix for every other leaf on
    the node.
    
    The fix is to just remove the calls to leaf_pull_suffix since they are
    redundant as we already have a call in resize that will go through and
    update the suffix length for the node before we exit out of
    fib_table_flush or fib_table_flush_external.
    
    Reported-by: David Ahern <dsa@cumulusnetworks.com>
    Signed-off-by: Alexander Duyck <alexander.h.duyck@redhat.com>
    Tested-by: David Ahern <dsa@cumulusnetworks.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Alexander Duyck authored and davem330 committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    1513069 View commit details
    Browse the repository at this point in the history
  46. macvtap: fix network header pointer for VLAN tagged pkts

    Network header is set with offset ETH_HLEN but it is not true for VLAN
    (multiple-)tagged and results in checksum issues in lower devices.
    
    v2: leave skb->protocol untouched (thx Vlad), comment added
    v3: moved after skb_probe_transport_header() call (thx Toshiaki)
    
    Signed-off-by: Ivan Vecera <ivecera@redhat.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Ivan Vecera authored and davem330 committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    c5c62f1 View commit details
    Browse the repository at this point in the history
  47. packet: missing dev_put() in packet_do_bind()

    When binding a PF_PACKET socket, the use count of the bound interface is
    always increased with dev_hold in dev_get_by_{index,name}.  However,
    when rebound with the same protocol and device as in the previous bind
    the use count of the interface was not decreased.  Ultimately, this
    caused the deletion of the interface to fail with the following message:
    
    unregister_netdevice: waiting for dummy0 to become free. Usage count = 1
    
    This patch moves the dev_put out of the conditional part that was only
    executed when either the protocol or device changed on a bind.
    
    Fixes: 902fefb ('packet: improve socket create/bind latency in some cases')
    Signed-off-by: Lars Westerhoff <lars.westerhoff@newtec.eu>
    Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
    Reviewed-by: Daniel Borkmann <dborkman@redhat.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Lars Westerhoff authored and davem330 committed Jul 27, 2015
    Configuration menu
    Copy the full SHA
    158cd4a View commit details
    Browse the repository at this point in the history

Commits on Jul 28, 2015

  1. Merge branch 'linux-4.2' of git://anongit.freedesktop.org/git/nouveau…

    …/linux-2.6 into drm-fixes
    
    Various minor fixes all over the place, nothing too scary.
    
    * 'linux-4.2' of git://anongit.freedesktop.org/git/nouveau/linux-2.6:
      drm/nouveau/fbcon/g80: reduce PUSH_SPACE alloc, fire ring on accel init
      drm/nouveau/fbcon/gf100-: reduce RING_SPACE allocation
      drm/nouveau/fbcon/nv11-: correctly account for ring space usage
      drm/nouveau/bios: add proper support for opcode 0x59
      drm/nouveau/bios: add 0x59 and 0x5a opcodes
      drm/nouveau/disp: Use NULL for pointers
      drm/nouveau/pm: fix a potential race condition when creating an engine context
      drm/nouveau/pm: prevent freeing the wrong engine context
      drm/nouveau/gr/gf100: wait for GR idle after GO_IDLE bundle
      drm/nouveau/gr/gf100: wait on bottom half of FE's pipeline
      drm/nouveau/fifo/gk104: kick channels when deactivating them
      drm/nouveau/ibus/gk20a: increase SM wait timeout
      drm/nouveau/platform: fix compile error if !CONFIG_IOMMU
      drm/nouveau: Do not leak client objects
      drm/nouveau/clk/gt215: u32->s32 for difference in req. and set clock
      drm/nouveau/drm/nv04-nv40/instmem: protect access to priv->heap by mutex
      drm/nouveau: hold mutex when calling nouveau_abi16_fini()
    airlied committed Jul 28, 2015
    Configuration menu
    Copy the full SHA
    eb8bb77 View commit details
    Browse the repository at this point in the history
  2. hwrng: core - correct error check of kthread_run call

    The kthread_run() function can return two different error values
    but the hwrng core only checks for -ENOMEM. If the other error
    value -EINTR is returned it is assigned to hwrng_fill and later
    used on a kthread_stop() call which naturally crashes.
    
    Cc: stable@vger.kernel.org
    Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
    Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
    Martin Schwidefsky authored and herbertx committed Jul 28, 2015
    Configuration menu
    Copy the full SHA
    17fb874 View commit details
    Browse the repository at this point in the history
  3. drm/nouveau/kms/nv50-: guard against enabling cursor on disabled heads

    Userspace has started doing this, which upsets the display class hw
    error checking in various unpleasant ways.
    
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
    Ben Skeggs committed Jul 28, 2015
    Configuration menu
    Copy the full SHA
    697bb72 View commit details
    Browse the repository at this point in the history
  4. drm/nouveau/nouveau/ttm: fix tiled system memory with Maxwell

    Add Maxwell to the switch statement that sets node->memtype, otherwise
    all tiling information is ignored for buffers in system memory.
    
    While we are at it, make that switch statement explicitly complain the
    next time we meet a non-handled card family.
    
    Signed-off-by: Alexandre Courbot <acourbot@nvidia.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
    Gnurou authored and Ben Skeggs committed Jul 28, 2015
    Configuration menu
    Copy the full SHA
    eb48b12 View commit details
    Browse the repository at this point in the history
  5. Merge tag 'imx-fixes-4.2-2' of git://git.kernel.org/pub/scm/linux/ker…

    …nel/git/shawnguo/linux into fixes
    
    The i.MX fixes for 4.2, 2nd round:
     - Add the required second clock for i.MX35 FlexCAN in device tree,
       so that the device can be probed by kernel successfully.
    
    * tag 'imx-fixes-4.2-2' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
      ARM: dts: i.MX35: Fix can support.
    
    Signed-off-by: Olof Johansson <olof@lixom.net>
    olofj committed Jul 28, 2015
    Configuration menu
    Copy the full SHA
    a7dae15 View commit details
    Browse the repository at this point in the history
  6. module: weaken locking assertion for oops path.

    We don't actually hold the module_mutex when calling find_module_all
    from module_kallsyms_lookup_name: that's because it's used by the oops
    code and we don't want to deadlock.
    
    However, access to the list read-only is safe if preempt is disabled,
    so we can weaken the assertion.  Keep a strong version for external
    callers though.
    
    Fixes: 0be964b ("module: Sanitize RCU usage and locking")
    Reported-by: He Kuang <hekuang@huawei.com>
    Cc: stable@kernel.org
    Acked-by: Peter Zijlstra (Intel) <peterz@infradead.org>
    Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
    rustyrussell committed Jul 28, 2015
    Configuration menu
    Copy the full SHA
    fe0d34d View commit details
    Browse the repository at this point in the history

Commits on Jul 29, 2015

  1. bridge: stp: when using userspace stp stop kernel hello and hold timers

    These should be handled only by the respective STP which is in control.
    They become problematic for devices with limited resources with many
    ports because the hold_timer is per port and fires each second and the
    hello timer fires each 2 seconds even though it's global. While in
    user-space STP mode these timers are completely unnecessary so it's better
    to keep them off.
    Also ensure that when the bridge is up these timers are started only when
    running with kernel STP.
    
    Signed-off-by: Satish Ashok <sashok@cumulusnetworks.com>
    Signed-off-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    NikAleksandrov authored and davem330 committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    76b91c3 View commit details
    Browse the repository at this point in the history
  2. net/ipv4: suppress NETDEV_UP notification on address lifetime update

    This notification causes the FIB to be updated, which is not needed
    because the address already exists, and more importantly it may undo
    intentional changes that were made to the FIB after the address was
    originally added. (As a point of comparison, when an address becomes
    deprecated because its preferred lifetime expired, a notification on
    this chain is not generated.)
    
    The motivation for this commit is fixing an incompatibility between
    DHCP clients which set and update the address lifetime according to
    the lease, and a commercial VPN client which replaces kernel routes
    in a way that outbound traffic is sent only through the tunnel (and
    disconnects if any further route changes are detected via netlink).
    
    Signed-off-by: David Ward <david.ward@ll.mit.edu>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    dpward authored and davem330 committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    865b804 View commit details
    Browse the repository at this point in the history
  3. arp: filter NOARP neighbours for SIOCGARP

    When arp is off on a device, and ioctl(SIOCGARP) is queried,
    a buggy answer is given with MAC address of the device, instead
    of the mac address of the destination/gateway.
    
    We filter out NUD_NOARP neighbours for /proc/net/arp,
    we must do the same for SIOCGARP ioctl.
    
    Tested:
    
    lpaa23:~# ./arp 10.246.7.190
    MAC=00:01:e8:22:cb:1d      // correct answer
    
    lpaa23:~# ip link set dev eth0 arp off
    lpaa23:~# cat /proc/net/arp   # check arp table is now 'empty'
    IP address       HW type     Flags       HW address    Mask     Device
    lpaa23:~# ./arp 10.246.7.190
    MAC=00:1a:11:c3:0d:7f   // buggy answer before patch (this is eth0 mac)
    
    After patch :
    
    lpaa23:~# ip link set dev eth0 arp off
    lpaa23:~# ./arp 10.246.7.190
    ioctl(SIOCGARP) failed: No such device or address
    
    Signed-off-by: Eric Dumazet <edumazet@google.com>
    Reported-by: Vytautas Valancius <valas@google.com>
    Cc: Willem de Bruijn <willemb@google.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Eric Dumazet authored and davem330 committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    11c91ef View commit details
    Browse the repository at this point in the history
  4. ALSA: hda - Apply a fixup to Dell Vostro 5480

    Dell Vostro 5480 (1028:069a) needs the very same quirk used for Vostro
    5470 model to make bass speakers properly working.
    
    Reported-and-tested-by: Paulo Roberto de Oliveira Castro <p.oliveira.castro@gmail.com>
    Cc: <stable@vger.kernel.org>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    tiwai committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    3a05d12 View commit details
    Browse the repository at this point in the history
  5. packet: tpacket_snd(): fix signed/unsigned comparison

    tpacket_fill_skb() can return a negative value (-errno) which
    is stored in tp_len variable. In that case the following
    condition will be (but shouldn't be) true:
    
    tp_len > dev->mtu + dev->hard_header_len
    
    as dev->mtu and dev->hard_header_len are both unsigned.
    
    That may lead to just returning an incorrect EMSGSIZE errno
    to the user.
    
    Fixes: 52f1454 ("packet: allow to transmit +4 byte in TX_RING slot for VLAN case")
    Signed-off-by: Alexander Drozdov <al.drozdov@gmail.com>
    Acked-by: Daniel Borkmann <daniel@iogearbox.net>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    sorc1 authored and davem330 committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    dbd46ab View commit details
    Browse the repository at this point in the history
  6. Merge branch 'linux-4.2' of git://anongit.freedesktop.org/git/nouveau…

    …/linux-2.6 into drm-fixes
    
    Two more nouveau fixes.
    
    * 'linux-4.2' of git://anongit.freedesktop.org/git/nouveau/linux-2.6:
      drm/nouveau/nouveau/ttm: fix tiled system memory with Maxwell
      drm/nouveau/kms/nv50-: guard against enabling cursor on disabled heads
    airlied committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    520e8bf View commit details
    Browse the repository at this point in the history
  7. ALSA: usb-audio: add dB range mapping for some devices

    Add the correct dB ranges of Bose Companion 5 and Drangonfly DAC 1.2.
    
    Signed-off-by: Yao-Wen Mao <yaowen@google.com>
    Cc: <stable@vger.kernel.org>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Yao-Wen Mao authored and tiwai committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    2d1cb7f View commit details
    Browse the repository at this point in the history
  8. drm/i915: Replace WARN inside I915_READ64_2x32 with retry loop

    Since we may conceivably encounter situations where the upper part of the
    64bit register changes between reads, for example when a timestamp
    counter overflows, change the WARN into a retry loop.
    
    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
    Cc: Michał Winiarski <michal.winiarski@intel.com>
    Cc: stable@vger.kernel.org
    Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
    ickle authored and danvet committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    ee0a227 View commit details
    Browse the repository at this point in the history
  9. ALSA: hda - Fix race between PM ops and HDA init/probe

    PM ops could be triggered before HDA is done initializing
    and cause PM to set HDA controller to D3Hot.  This can result
    in "CORB reset timeout#2, CORBRP = 65535" and "no codecs
    initialized".  Additionally, PM ops can be triggered before
    azx_probe_continue finishes (async probe).  This can result
    in a NULL deref kernel crash.
    
    To fix this, avoid PM ops if !chip->running.
    
    Signed-off-by: U. Artie Eoff <ullysses.a.eoff@intel.com>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    uartie authored and tiwai committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    342e844 View commit details
    Browse the repository at this point in the history
  10. bridge: Fix network header pointer for vlan tagged packets

    There are several devices that can receive vlan tagged packets with
    CHECKSUM_PARTIAL like tap, possibly veth and xennet.
    When (multiple) vlan tagged packets with CHECKSUM_PARTIAL are forwarded
    by bridge to a device with the IP_CSUM feature, they end up with checksum
    error because before entering bridge, the network header is set to
    ETH_HLEN (not including vlan header length) in __netif_receive_skb_core(),
    get_rps_cpu(), or drivers' rx functions, and nobody fixes the pointer later.
    
    Since the network header is exepected to be ETH_HLEN in flow-dissection
    and hash-calculation in RPS in rx path, and since the header pointer fix
    is needed only in tx path, set the appropriate network header on forwarding
    packets.
    
    Signed-off-by: Toshiaki Makita <makita.toshiaki@lab.ntt.co.jp>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Toshiaki Makita authored and davem330 committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    df356d5 View commit details
    Browse the repository at this point in the history
  11. drm/radeon: Drop drm/ prefix for including drm.h in radeon_drm.h

    This allows radeon_drm.h to be reused verbatim in libdrm.
    
    Reviewed-by: Christian König <christian.koenig@amd.com>
    Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
    Michel Dänzer authored and alexdeucher committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    e13af53 View commit details
    Browse the repository at this point in the history
  12. drm/amdgpu: Drop drm/ prefix for including drm.h in amdgpu_drm.h

    This allows amdgpu_drm.h to be reused verbatim in libdrm.
    
    Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
    Reviewed-by: Christian König <christian.koenig@amd.com>
    Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
    Michel Dänzer authored and alexdeucher committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    b3fcf36 View commit details
    Browse the repository at this point in the history
  13. drm/radeon: rework audio detect (v4)

    1. Always assign audio function pointers even if the display does
    not support audio.  We need to properly disable the audio stream
    when when using a non-audio capable monitor.  Fixes purple line
    on some hdmi monitors.
    
    2. Check if a pin is in use by another encoder before disabling
    it.
    
    v2: make sure we've fetched the edid before checking audio and
        look up the encoder before calling audio_detect since
        connector->encoder may not be assigned yet.  Separate
        pin and afmt.  They are allocated at different times and
        have no dependency on eachother.
    v3: fix connector fetching in encoder functions
    v4: fix missed dig->pin check in dce6_afmt_write_latency_fields
    
    bugs:
    https://bugzilla.kernel.org/show_bug.cgi?id=93701
    https://bugzilla.redhat.com/show_bug.cgi?id=1236337
    https://bugs.freedesktop.org/show_bug.cgi?id=91041
    
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Cc: stable@vger.kernel.org
    alexdeucher committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    d0ea397 View commit details
    Browse the repository at this point in the history
  14. drm/radeon: rework audio modeset to handle non-audio hdmi features

    Need to setup the deep color and avi packets regardless of
    audio setup.
    
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    alexdeucher committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    7726e72 View commit details
    Browse the repository at this point in the history
  15. drm/radeon/combios: add some validation of lvds values

    Fixes a broken hsync start value uncovered by:
    abc0b14
    (drm: Perform basic sanity checks on probed modes)
    
    The driver handled the bad hsync start elsewhere, but
    the above commit prevented it from getting added.
    
    bug:
    https://bugs.freedesktop.org/show_bug.cgi?id=91401
    
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Cc: stable@vger.kernel.org
    alexdeucher committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    0a90a0c View commit details
    Browse the repository at this point in the history
  16. drm/amdgpu: clean up init sequence for failures

    If we fail during device init, record what state each
    block is in so that we can tear down clearly.
    
    Fixes various problems on device init failure.
    
    Reviewed-by: Christian König <christian.koenig@amd.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    alexdeucher committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    8faf0e0 View commit details
    Browse the repository at this point in the history
  17. drm/amdgpu: information leak in amdgpu_info_ioctl()

    We recently changed the drm_amdgpu_info_device struct so now there is
    a 4 byte hole at the end.  We need to initialize it so we don't disclose
    secret information from the stack.
    
    Fixes: fa92754 ('drm/amdgpu: add VCE harvesting instance query')
    Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
    Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
    Dan Carpenter authored and alexdeucher committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    c193fa9 View commit details
    Browse the repository at this point in the history
  18. drm/amdgpu: different emit_ib for gfx and compute

    compute ring didn't use const engine byfar, so ignore CE things in
    compute routine
    
    Signed-off-by: monk.liu <monk.liu@amd.com>
    Reviewed-by: Christian König <christian.koenig@amd.com>
    ljymonk authored and alexdeucher committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    9332313 View commit details
    Browse the repository at this point in the history
  19. drm/amdgpu: hdp_flush is not needed for inside IB

    hdp flush is not needed for IBs that dispatched from kernel inside
    because there is no video memory host access
    
    Signed-off-by: monk.liu <monk.liu@amd.com>
    Reviewed-by: Christian König <christian.koenig@amd.com>
    ljymonk authored and alexdeucher committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    e722b71 View commit details
    Browse the repository at this point in the history
  20. drm/amdgpu: add new parameter to seperate map and unmap

    Signed-off-by: monk.liu <monk.liu@amd.com>
    Reviewed-by: Christian König <christian.koenig@amd.com>
    ljymonk authored and alexdeucher committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    194a336 View commit details
    Browse the repository at this point in the history
  21. drm/msm: fix msm_gem_prime_get_sg_table()

    We need to return a new sgt, since the caller takes ownership of it.
    
    Reported-by: Stanimir Varbanov <svarbanov@mm-sol.com>
    Signed-off-by: Rob Clark <robdclark@gmail.com>
    robclark committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    ac45146 View commit details
    Browse the repository at this point in the history
  22. drm/msm: mdp4: Fix drm_framebuffer dereference crash

    mdp4_get_frame_format() can dereference a drm_framebuffer when it's NULL.
    Call it in mdp4_plane_mode_set only when we know fb is non-NULL.
    
    Signed-off-by: Archit Taneja <architt@codeaurora.org>
    Signed-off-by: Rob Clark <robdclark@gmail.com>
    boddob authored and robclark committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    a1c3e3e View commit details
    Browse the repository at this point in the history
  23. drm/msm: change to uninterruptible wait in atomic commit

    The atomic commit cannot easily undo and return an error once the
    state is swapped. Change to uninterruptible wait, and ignore the
    timeout error.
    
    Signed-off-by: Wentao Xu <wentaox@codeaurora.org>
    Signed-off-by: Rob Clark <robdclark@gmail.com>
    Wentao Xu authored and robclark committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    99fc1bc View commit details
    Browse the repository at this point in the history
  24. drm/msm/mdp5: release SMB (shared memory blocks) in various cases

    Release all blocks after the pipe is disabled, even when vsync
    didn't happen in some error cases. Allow requesting SMB multiple
    times before configuring to hardware, by releasing blocks not
    programmed to hardware yet for shrinking case.
    
    This fixes a potential leak of shared memory pool blocks.
    
    Signed-off-by: Wentao Xu <wentaox@codeaurora.org>
    Tested-by: Archit Taneja <architt@codeaurora.org>
    Signed-off-by: Rob Clark <robdclark@gmail.com>
    Wentao Xu authored and robclark committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    b4cba04 View commit details
    Browse the repository at this point in the history
  25. bridge: mcast: give fast leave precedence over multicast router and q…

    …uerier
    
    When fast leave is configured on a bridge port and an IGMP leave is
    received for a group, the group is not deleted immediately if there is
    a router detected or if multicast querier is configured.
    Ideally the group should be deleted immediately when fast leave is
    configured.
    
    Signed-off-by: Satish Ashok <sashok@cumulusnetworks.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Satish Ashok authored and davem330 committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    544586f View commit details
    Browse the repository at this point in the history
  26. bridge: mdb: fix delmdb state in the notification

    Since mdb states were introduced when deleting an entry the state was
    left as it was set in the delete request from the user which leads to
    the following output when doing a monitor (for example):
    $ bridge mdb add dev br0 port eth3 grp 239.0.0.1 permanent
    (monitor) dev br0 port eth3 grp 239.0.0.1 permanent
    $ bridge mdb del dev br0 port eth3 grp 239.0.0.1 permanent
    (monitor) dev br0 port eth3 grp 239.0.0.1 temp
    ^^^
    Note the "temp" state in the delete notification which is wrong since
    the entry was permanent, the state in a delete is always reported as
    "temp" regardless of the real state of the entry.
    
    After this patch:
    $ bridge mdb add dev br0 port eth3 grp 239.0.0.1 permanent
    (monitor) dev br0 port eth3 grp 239.0.0.1 permanent
    $ bridge mdb del dev br0 port eth3 grp 239.0.0.1 permanent
    (monitor) dev br0 port eth3 grp 239.0.0.1 permanent
    
    There's one important note to make here that the state is actually not
    matched when doing a delete, so one can delete a permanent entry by
    stating "temp" in the end of the command, I've chosen this fix in order
    not to break user-space tools which rely on this (incorrect) behaviour.
    
    So to give an example after this patch and using the wrong state:
    $ bridge mdb add dev br0 port eth3 grp 239.0.0.1 permanent
    (monitor) dev br0 port eth3 grp 239.0.0.1 permanent
    $ bridge mdb del dev br0 port eth3 grp 239.0.0.1 temp
    (monitor) dev br0 port eth3 grp 239.0.0.1 permanent
    
    Note the state of the entry that got deleted is correct in the
    notification.
    
    Signed-off-by: Nikolay Aleksandrov <nikolay@cumulusnetworks.com>
    Fixes: ccb1c31 ("bridge: add flags to distinguish permanent mdb entires")
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Nikolay Aleksandrov authored and davem330 committed Jul 29, 2015
    Configuration menu
    Copy the full SHA
    7ae90a4 View commit details
    Browse the repository at this point in the history

Commits on Jul 30, 2015

  1. ebpf, x86: fix general protection fault when tail call is invoked

    With eBPF JIT compiler enabled on x86_64, I was able to reliably trigger
    the following general protection fault out of an eBPF program with a simple
    tail call, f.e. tracex5 (or a stripped down version of it):
    
      [  927.097918] general protection fault: 0000 [#1] SMP DEBUG_PAGEALLOC
      [...]
      [  927.100870] task: ffff8801f228b780 ti: ffff880016a64000 task.ti: ffff880016a64000
      [  927.102096] RIP: 0010:[<ffffffffa002440d>]  [<ffffffffa002440d>] 0xffffffffa002440d
      [  927.103390] RSP: 0018:ffff880016a67a68  EFLAGS: 00010006
      [  927.104683] RAX: 5a5a5a5a5a5a5a5a RBX: 0000000000000000 RCX: 0000000000000001
      [  927.105921] RDX: 0000000000000000 RSI: ffff88014e438000 RDI: ffff880016a67e00
      [  927.107137] RBP: ffff880016a67c90 R08: 0000000000000000 R09: 0000000000000001
      [  927.108351] R10: 0000000000000000 R11: 0000000000000000 R12: ffff880016a67e00
      [  927.109567] R13: 0000000000000000 R14: ffff88026500e460 R15: ffff880220a81520
      [  927.110787] FS:  00007fe7d5c1f740(0000) GS:ffff880265000000(0000) knlGS:0000000000000000
      [  927.112021] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      [  927.113255] CR2: 0000003e7bbb91a0 CR3: 000000006e04b000 CR4: 00000000001407e0
      [  927.114500] Stack:
      [  927.115737]  ffffc90008cdb000 ffff880016a67e00 ffff88026500e460 ffff880220a81520
      [  927.117005]  0000000100000000 000000000000001b ffff880016a67aa8 ffffffff8106c548
      [  927.118276]  00007ffcdaf22e58 0000000000000000 0000000000000000 ffff880016a67ff0
      [  927.119543] Call Trace:
      [  927.120797]  [<ffffffff8106c548>] ? lookup_address+0x28/0x30
      [  927.122058]  [<ffffffff8113d176>] ? __module_text_address+0x16/0x70
      [  927.123314]  [<ffffffff8117bf0e>] ? is_ftrace_trampoline+0x3e/0x70
      [  927.124562]  [<ffffffff810c1a0f>] ? __kernel_text_address+0x5f/0x80
      [  927.125806]  [<ffffffff8102086f>] ? print_context_stack+0x7f/0xf0
      [  927.127033]  [<ffffffff810f7852>] ? __lock_acquire+0x572/0x2050
      [  927.128254]  [<ffffffff810f7852>] ? __lock_acquire+0x572/0x2050
      [  927.129461]  [<ffffffff8119edfa>] ? trace_call_bpf+0x3a/0x140
      [  927.130654]  [<ffffffff8119ee4a>] trace_call_bpf+0x8a/0x140
      [  927.131837]  [<ffffffff8119edfa>] ? trace_call_bpf+0x3a/0x140
      [  927.133015]  [<ffffffff8119f008>] kprobe_perf_func+0x28/0x220
      [  927.134195]  [<ffffffff811a1668>] kprobe_dispatcher+0x38/0x60
      [  927.135367]  [<ffffffff81174b91>] ? seccomp_phase1+0x1/0x230
      [  927.136523]  [<ffffffff81061400>] kprobe_ftrace_handler+0xf0/0x150
      [  927.137666]  [<ffffffff81174b95>] ? seccomp_phase1+0x5/0x230
      [  927.138802]  [<ffffffff8117950c>] ftrace_ops_recurs_func+0x5c/0xb0
      [  927.139934]  [<ffffffffa022b0d5>] 0xffffffffa022b0d5
      [  927.141066]  [<ffffffff81174b91>] ? seccomp_phase1+0x1/0x230
      [  927.142199]  [<ffffffff81174b95>] seccomp_phase1+0x5/0x230
      [  927.143323]  [<ffffffff8102c0a4>] syscall_trace_enter_phase1+0xc4/0x150
      [  927.144450]  [<ffffffff81174b95>] ? seccomp_phase1+0x5/0x230
      [  927.145572]  [<ffffffff8102c0a4>] ? syscall_trace_enter_phase1+0xc4/0x150
      [  927.146666]  [<ffffffff817f9a9f>] tracesys+0xd/0x44
      [  927.147723] Code: 48 8b 46 10 48 39 d0 76 2c 8b 85 fc fd ff ff 83 f8 20 77 21 83
                           c0 01 89 85 fc fd ff ff 48 8d 44 d6 80 48 8b 00 48 83 f8 00 74
                           0a <48> 8b 40 20 48 83 c0 33 ff e0 48 89 d8 48 8b 9d d8 fd ff
                           ff 4c
      [  927.150046] RIP  [<ffffffffa002440d>] 0xffffffffa002440d
    
    The code section with the instructions that traps points into the eBPF JIT
    image of the root program (the one invoking the tail call instruction).
    
    Using bpf_jit_disasm -o on the eBPF root program image:
    
      [...]
      4e:   mov    -0x204(%rbp),%eax
            8b 85 fc fd ff ff
      54:   cmp    $0x20,%eax               <--- if (tail_call_cnt > MAX_TAIL_CALL_CNT)
            83 f8 20
      57:   ja     0x000000000000007a
            77 21
      59:   add    $0x1,%eax                <--- tail_call_cnt++
            83 c0 01
      5c:   mov    %eax,-0x204(%rbp)
            89 85 fc fd ff ff
      62:   lea    -0x80(%rsi,%rdx,8),%rax  <--- prog = array->prog[index]
            48 8d 44 d6 80
      67:   mov    (%rax),%rax
            48 8b 00
      6a:   cmp    $0x0,%rax                <--- check for NULL
            48 83 f8 00
      6e:   je     0x000000000000007a
            74 0a
      70:   mov    0x20(%rax),%rax          <--- GPF triggered here! fetch of bpf_func
            48 8b 40 20                              [ matches <48> 8b 40 20 ... from above ]
      74:   add    $0x33,%rax               <--- prologue skip of new prog
            48 83 c0 33
      78:   jmpq   *%rax                    <--- jump to new prog insns
            ff e0
      [...]
    
    The problem is that rax has 5a5a5a5a5a5a5a5a, which suggests a tail call
    jump to map slot 0 is pointing to a poisoned page. The issue is the following:
    
    lea instruction has a wrong offset, i.e. it should be ...
    
      lea    0x80(%rsi,%rdx,8),%rax
    
    ... but it actually seems to be ...
    
      lea   -0x80(%rsi,%rdx,8),%rax
    
    ... where 0x80 is offsetof(struct bpf_array, prog), thus the offset needs
    to be positive instead of negative. Disassembling the interpreter, we btw
    similarly do:
    
      [...]
      c88:  lea     0x80(%rax,%rdx,8),%rax  <--- prog = array->prog[index]
            48 8d 84 d0 80 00 00 00
      c90:  add     $0x1,%r13d
            41 83 c5 01
      c94:  mov     (%rax),%rax
            48 8b 00
      [...]
    
    Now the other interesting fact is that this panic triggers only when things
    like CONFIG_LOCKDEP are being used. In that case offsetof(struct bpf_array,
    prog) starts at offset 0x80 and in non-CONFIG_LOCKDEP case at offset 0x50.
    Reason is that the work_struct inside struct bpf_map grows by 48 bytes in my
    case due to the lockdep_map member (which also has CONFIG_LOCK_STAT enabled
    members).
    
    Changing the emitter to always use the 4 byte displacement in the lea
    instruction fixes the panic on my side. It increases the tail call instruction
    emission by 3 more byte, but it should cover us from various combinations
    (and perhaps other future increases on related structures).
    
    After patch, disassembly:
    
      [...]
      9e:   lea    0x80(%rsi,%rdx,8),%rax   <--- CONFIG_LOCKDEP/CONFIG_LOCK_STAT
            48 8d 84 d6 80 00 00 00
      a6:   mov    (%rax),%rax
            48 8b 00
      [...]
    
      [...]
      9e:   lea    0x50(%rsi,%rdx,8),%rax   <--- No CONFIG_LOCKDEP
            48 8d 84 d6 50 00 00 00
      a6:   mov    (%rax),%rax
            48 8b 00
      [...]
    
    Fixes: b52f00e ("x86: bpf_jit: implement bpf_tail_call() helper")
    Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
    Acked-by: Alexei Starovoitov <ast@plumgrid.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    borkmann authored and davem330 committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    2482abb View commit details
    Browse the repository at this point in the history
  2. net: netcp: fix cleanup interface list in netcp_remove()

    Currently if user do rmmod keystone_netcp.ko following warning is
    seen :-
    
    [   59.035891] ------------[ cut here ]------------
    [   59.040535] WARNING: CPU: 2 PID: 1619 at drivers/net/ethernet/ti/
    netcp_core.c:2127 netcp_remove)
    
    This is because the interface list is not cleaned up in netcp_remove.
    This patch fixes this. Also fix some checkpatch related warnings.
    
    Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Karicheri, Muralidharan authored and davem330 committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    01a0309 View commit details
    Browse the repository at this point in the history
  3. net: netcp: ethss: fix up incorrect use of list api

    The code seems to assume a null is returned when the list is empty
    from first_sec_slave() to break the loop which is incorrect. Fix the
    code by using list_empty().
    
    Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Karicheri, Muralidharan authored and davem330 committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    c20afae View commit details
    Browse the repository at this point in the history
  4. net: netcp: ethss: cleanup gbe_probe() and gbe_remove() functions

    This patch clean up error handle code to use goto label properly. In some
    cases, the code unnecessarily use goto instead of just returning the error
    code.  Code also make explicit calls to devm_* APIs on error which is
    not necessary. In the gbe_remove() also it makes similar calls which is
    also unnecessary.
    
    Also fix few checkpatch warnings
    
    Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Karicheri, Muralidharan authored and davem330 committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    31a184b View commit details
    Browse the repository at this point in the history
  5. Merge branch 'netcp-fixes'

    Murali Karicheri says:
    
    ====================
    net: netcp: bug fixes for dynamic module support
    
    This series fixes few bugs to allow keystone netcp modules to be
    dynamically loaded and removed. Currently it allows following
    sequence multiple times
    
     insmod cpsw_ale.ko
     insmod davinci_mdio.ko
     insmod keystone_netcp.ko
     insmod keystone_netcp_ethss.ko
     ifup eth0
     ifup eth1
     ping <hosts on eth0>
     ping <hosts on eth1>
     ifdown eth1
     ifdown eth0
     rmmod keystone_netcp_ethss.ko
     rmmod keystone_netcp.ko
     rmmod davinci_mdio.ko
     rmmod cpsw_ale.ko
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    b2428f9 View commit details
    Browse the repository at this point in the history
  6. Merge branch 'drm-fixes-4.2' of git://people.freedesktop.org/~agd5f/l…

    …inux into drm-fixes
    
    Radeon and amdgpu fixes for 4.2.  The audio fix ended up being more
    invasive than I would have liked, but this should finally fix up the
    last of the regressions since DP audio support was added.
    
    * 'drm-fixes-4.2' of git://people.freedesktop.org/~agd5f/linux:
      drm/amdgpu: add new parameter to seperate map and unmap
      drm/amdgpu: hdp_flush is not needed for inside IB
      drm/amdgpu: different emit_ib for gfx and compute
      drm/amdgpu: information leak in amdgpu_info_ioctl()
      drm/amdgpu: clean up init sequence for failures
      drm/radeon/combios: add some validation of lvds values
      drm/radeon: rework audio modeset to handle non-audio hdmi features
      drm/radeon: rework audio detect (v4)
      drm/amdgpu: Drop drm/ prefix for including drm.h in amdgpu_drm.h
      drm/radeon: Drop drm/ prefix for including drm.h in radeon_drm.h
    airlied committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    d698291 View commit details
    Browse the repository at this point in the history
  7. Merge branch 'msm-fixes-4.2' of git://people.freedesktop.org/~robclar…

    …k/linux into drm-fixes
    
    Fix for nasty crash on mdp4 in disable path, fix for dma-buf export,
    smb leak on mdp5 which could result in intermittent modeset fails, and
    don't let interrupted system call disturb atomic commit once we are
    past the point of no return.
    
    * 'msm-fixes-4.2' of git://people.freedesktop.org/~robclark/linux:
      drm/msm/mdp5: release SMB (shared memory blocks) in various cases
      drm/msm: change to uninterruptible wait in atomic commit
      drm/msm: mdp4: Fix drm_framebuffer dereference crash
      drm/msm: fix msm_gem_prime_get_sg_table()
    airlied committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    bdce3e7 View commit details
    Browse the repository at this point in the history
  8. ipv6: flush nd cache on IFF_NOARP change

    This patch is the IPv6 equivalent of commit
    6c8b4e3 ("arp: flush arp cache on IFF_NOARP change")
    
    Without it, we keep buggy neighbours in the cache, with destination
    MAC address equal to our own MAC address.
    
    Tested:
     tcpdump -i eth0 -s 0 ip6 -n -e &
     ip link set dev eth0 arp off
     ping6 remote   // sends buggy frames
     ip link set dev eth0 arp on
     ping6 remote   // should work once kernel is patched
    
    Signed-off-by: Eric Dumazet <edumazet@google.com>
    Reported-by: Mario Fanelli <mariofanelli@google.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Eric Dumazet authored and davem330 committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    c8507fb View commit details
    Browse the repository at this point in the history
  9. net: thunderx: Fix data integrity issues with LDWB

    Switching back to LDD transactions from LDWB.
    
    While transmitting packets out with LDWB transactions
    data integrity issues are seen very frequently.
    hence switching back to LDD.
    
    Signed-off-by: Sunil Goutham <sgoutham@cavium.com>
    Signed-off-by: Robert Richter <rrichter@cavium.com>
    Signed-off-by: Aleksey Makarov <aleksey.makarov@caviumnetworks.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Sunil Goutham authored and davem330 committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    4b561c1 View commit details
    Browse the repository at this point in the history
  10. net: thunderx: Fix memory leak while tearing down interface

    Fixed 'tso_hdrs' memory not being freed properly.
    Also fixed SQ skbuff maintenance issues.
    
    Signed-off-by: Sunil Goutham <sgoutham@cavium.com>
    Signed-off-by: Aleksey Makarov <aleksey.makarov@caviumnetworks.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Sunil Goutham authored and davem330 committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    143ceb0 View commit details
    Browse the repository at this point in the history
  11. net: thunderx: Fix RQ_DROP miscalculation

    With earlier configured value sufficient number of CQEs are not
    being reserved for transmitted packets. Hence under heavy incoming
    traffic load, receive notifications will take away most of the CQ
    thus transmit notifications will be lost resulting in tx skbs not
    being freed.
    
    Finally SQ will be full and it will be stopped, watchdog timer
    will kick in. After this fix receive notifications will not take
    morethan half of CQ reserving the rest for transmit notifications.
    
    Also changed CQ & SQ sizes from 16k to 4k.
    This is also due to the receive notifications taking first half of
    CQ under heavy load and time taken by NAPI to clear transmit notifications
    will increase with higher queue sizes. Again results in SQ being stopped.
    
    Signed-off-by: Sunil Goutham <sgoutham@cavium.com>
    Signed-off-by: Aleksey Makarov <aleksey.makarov@caviumnetworks.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Sunil Goutham authored and davem330 committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    32c1b96 View commit details
    Browse the repository at this point in the history
  12. net: thunderx: Fix memory leak when changing queue count

    Fix for memory leak when changing queue/channel count via ethtool
    
    Signed-off-by: Sunil Goutham <sgoutham@cavium.com>
    Signed-off-by: Aleksey Makarov <aleksey.makarov@caviumnetworks.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Sunil Goutham authored and davem330 committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    c62cd3c View commit details
    Browse the repository at this point in the history
  13. net: thunderx: Fix TSO packet statistic

    Fixing TSO packages not being counted.
    
    Signed-off-by: Sunil Goutham <sgoutham@cavium.com>
    Signed-off-by: Aleksey Makarov <aleksey.makarov@caviumnetworks.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Sunil Goutham authored and davem330 committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    2cb468e View commit details
    Browse the repository at this point in the history
  14. net: thunderx: Suppress alloc_pages() failure warnings

    Suppressing standard alloc_pages() warnings. Some kernel configs limit
    alloc size and the network driver may fail. Do not drop a kernel
    warning in this case, instead just drop a oneliner that the network
    driver could not be loaded since the buffer could not be allocated.
    
    Signed-off-by: Sunil Goutham <sgoutham@cavium.com>
    Signed-off-by: Aleksey Makarov <aleksey.makarov@caviumnetworks.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Sunil Goutham authored and davem330 committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    f8ce966 View commit details
    Browse the repository at this point in the history
  15. net: thunderx: Wakeup TXQ only if CQE_TX are processed

    Previously TXQ is wakedup whenever napi is executed
    and irrespective of if any CQE_TX are processed or not.
    Added 'txq_stop' and 'txq_wake' counters to aid in debugging
    if there are any future issues.
    
    Signed-off-by: Sunil Goutham <sgoutham@cavium.com>
    Signed-off-by: Aleksey Makarov <aleksey.makarov@caviumnetworks.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Sunil Goutham authored and davem330 committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    74840b8 View commit details
    Browse the repository at this point in the history
  16. net: thunderx: Set watchdog timeout value

    If a txq (SQ) remains in stopped state after this timeout its
    considered as stuck and interface is reinited.
    
    Signed-off-by: Sunil Goutham <sgoutham@cavium.com>
    Signed-off-by: Aleksey Makarov <aleksey.makarov@caviumnetworks.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Sunil Goutham authored and davem330 committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    3d7a8aa View commit details
    Browse the repository at this point in the history
  17. net: thunderx: Fix crash when changing rss with mutliple traffic flows

    This fixes a crash when changing rss with multiple traffic flows.
    
    While interface teardown, disable tx queues after all NAPI threads
    are done. If done otherwise tx queues might be woken up inside NAPI
    if any CQE_TX are processed.
    
    Signed-off-by: Sunil Goutham <sgoutham@cavium.com>
    Signed-off-by: Aleksey Makarov <aleksey.makarov@caviumnetworks.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Sunil Goutham authored and davem330 committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    b49087d View commit details
    Browse the repository at this point in the history
  18. net: thunderx: Add PCI driver shutdown routine

    Signed-off-by: Sunil Goutham <sgoutham@cavium.com>
    Signed-off-by: Aleksey Makarov <aleksey.makarov@caviumnetworks.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Sunil Goutham authored and davem330 committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    4adf435 View commit details
    Browse the repository at this point in the history
  19. net: thunderx: Fix for crash while BGX teardown

    Cortina phy does not have kernel driver and we don't attach
    device with phy layer for intefaces like XFI, XLAUI etc,
    Hence check for interface type before calling disconnect.
    
    Signed-off-by: Thanneeru Srinivasulu <tsrinivasulu@caviumnetworks.com>
    Signed-off-by: Aleksey Makarov <aleksey.makarov@caviumnetworks.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Thanneeru Srinivasulu authored and davem330 committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    60f83c8 View commit details
    Browse the repository at this point in the history
  20. Merge branch 'thunderx-fixes'

    Aleksey Makarov says:
    
    ====================
    net: thunderx: Misc fixes
    
    Miscellaneous fixes for the ThunderX VNIC driver
    
    All the patches can be applied individually.
    It's ok to drop some if the maintainer feels uncomfortable
    with applying for 4.2.
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    f68b123 View commit details
    Browse the repository at this point in the history
  21. act_bpf: fix memory leaks when replacing bpf programs

    We currently trigger multiple memory leaks when replacing bpf
    actions, besides others:
    
      comm "tc", pid 1909, jiffies 4294851310 (age 1602.796s)
      hex dump (first 32 bytes):
        01 00 00 00 03 00 00 00 00 00 00 00 00 00 00 00  ................
        18 b0 98 6d 00 88 ff ff 00 00 00 00 00 00 00 00  ...m............
      backtrace:
        [<ffffffff817e623e>] kmemleak_alloc+0x4e/0xb0
        [<ffffffff8120a22d>] __vmalloc_node_range+0x1bd/0x2c0
        [<ffffffff8120a37a>] __vmalloc+0x4a/0x50
        [<ffffffff811a8d0a>] bpf_prog_alloc+0x3a/0xa0
        [<ffffffff816c0684>] bpf_prog_create+0x44/0xa0
        [<ffffffffa09ba4eb>] tcf_bpf_init+0x28b/0x3c0 [act_bpf]
        [<ffffffff816d7001>] tcf_action_init_1+0x191/0x1b0
        [<ffffffff816d70a2>] tcf_action_init+0x82/0xf0
        [<ffffffff816d4d12>] tcf_exts_validate+0xb2/0xc0
        [<ffffffffa09b5838>] cls_bpf_modify_existing+0x98/0x340 [cls_bpf]
        [<ffffffffa09b5cd6>] cls_bpf_change+0x1a6/0x274 [cls_bpf]
        [<ffffffff816d56e5>] tc_ctl_tfilter+0x335/0x910
        [<ffffffff816b9145>] rtnetlink_rcv_msg+0x95/0x240
        [<ffffffff816df34f>] netlink_rcv_skb+0xaf/0xc0
        [<ffffffff816b909e>] rtnetlink_rcv+0x2e/0x40
        [<ffffffff816deaaf>] netlink_unicast+0xef/0x1b0
    
    Issue is that the old content from tcf_bpf is allocated and needs
    to be released when we replace it. We seem to do that since the
    beginning of act_bpf on the filter and insns, later on the name as
    well.
    
    Example test case, after patch:
    
      # FOO="1,6 0 0 4294967295,"
      # BAR="1,6 0 0 4294967294,"
      # tc actions add action bpf bytecode "$FOO" index 2
      # tc actions show action bpf
       action order 0: bpf bytecode '1,6 0 0 4294967295' default-action pipe
       index 2 ref 1 bind 0
      # tc actions replace action bpf bytecode "$BAR" index 2
      # tc actions show action bpf
       action order 0: bpf bytecode '1,6 0 0 4294967294' default-action pipe
       index 2 ref 1 bind 0
      # tc actions replace action bpf bytecode "$FOO" index 2
      # tc actions show action bpf
       action order 0: bpf bytecode '1,6 0 0 4294967295' default-action pipe
       index 2 ref 1 bind 0
      # tc actions del action bpf index 2
      [...]
      # echo "scan" > /sys/kernel/debug/kmemleak
      # cat /sys/kernel/debug/kmemleak | grep "comm \"tc\"" | wc -l
      0
    
    Fixes: d23b8ad ("tc: add BPF based action")
    Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    borkmann authored and davem330 committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    f4eaed2 View commit details
    Browse the repository at this point in the history
  22. qlcnic: Fix corruption while copying

    Use proper typecasting while performing byte-by-byte copy
    
    Signed-off-by: Shahed Shaikh <shahed.shaikh@qlogic.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Shahed Shaikh authored and davem330 committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    15f1bb1 View commit details
    Browse the repository at this point in the history
  23. iommu/amd: Use iommu_attach_group()

    Since the conversion to default domains the
    iommu_attach_device function only works for devices with
    their own group. But this isn't always true for current
    IOMMUv2 capable devices, so use iommu_attach_group instead.
    
    Signed-off-by: Joerg Roedel <jroedel@suse.de>
    joergroedel committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    55c99a4 View commit details
    Browse the repository at this point in the history
  24. iommu/amd: Use iommu core for passthrough mode

    Remove the AMD IOMMU driver implementation for passthrough
    mode and rely on the new iommu core features for that.
    
    Signed-off-by: Joerg Roedel <jroedel@suse.de>
    joergroedel committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    1e6a7b0 View commit details
    Browse the repository at this point in the history
  25. iommu/amd: Allow non-IOMMUv2 devices in IOMMUv2 domains

    Since devices with IOMMUv2 functionality might be in the
    same group as devices without it, allow those devices in
    IOMMUv2 domains too.
    Otherwise attaching the group with the IOMMUv2 device to the
    domain will fail.
    
    Signed-off-by: Joerg Roedel <jroedel@suse.de>
    joergroedel committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    02ca202 View commit details
    Browse the repository at this point in the history
  26. iommu/amd: Use swiotlb in passthrough mode

    In passthrough mode (iommu=pt) all devices are identity
    mapped. If a device does not support 64bit DMA it might
    still need remapping. Make sure swiotlb is initialized to
    provide this remapping.
    
    Signed-off-by: Joerg Roedel <jroedel@suse.de>
    joergroedel committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    3230232 View commit details
    Browse the repository at this point in the history
  27. iommu/amd: Set global dma_ops if swiotlb is disabled

    Some AMD systems also have non-PCI devices which can do DMA.
    Those can't be handled by the AMD IOMMU, as the hardware can
    only handle PCI. These devices would end up with no dma_ops,
    as neither the per-device nor the global dma_ops will get
    set. SWIOTLB provides global dma_ops when it is active, so
    make sure there are global dma_ops too when swiotlb is
    disabled.
    
    Signed-off-by: Joerg Roedel <jroedel@suse.de>
    joergroedel committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    5271782 View commit details
    Browse the repository at this point in the history
  28. powerpc/eeh-powernv: Fix unbalanced IRQ warning

    pnv_eeh_next_error() re-enables the eeh opal event interrupt but it
    gets called from a loop if there are more outstanding events to
    process, resulting in a warning due to enabling an already enabled
    interrupt. Instead the interrupt should only be re-enabled once the
    last outstanding event has been processed.
    
    Tested-by: Daniel Axtens <dja@axtens.net>
    Reported-by: Daniel Axtens <dja@axtens.net>
    Signed-off-by: Alistair Popple <alistair@popple.id.au>
    Acked-by: Gavin Shan <gwshan@linux.vnet.ibm.com>
    Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
    apopple authored and mpe committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    b8d65e9 View commit details
    Browse the repository at this point in the history
  29. drm/i915: Mark PIN_USER binding as GLOBAL_BIND without the aliasing p…

    …pgtt
    
    If the device does not support the aliasing ppgtt, we must translate
    user bind requests (PIN_USER) from LOCAL_BIND to a GLOBAL_BIND. However,
    since this is device specific we cannot do this conveniently in the
    upper layers and so must manage the vma->bound flags in the backend.
    
    Partial revert of commit 75d04a3 [4.2-rc1]
    Author: Mika Kuoppala <mika.kuoppala@linux.intel.com>
    Date:   Tue Apr 28 17:56:17 2015 +0300
    
        drm/i915/gtt: Allocate va range only if vma is not bound
    
    Note this was spotted by Daniel originally, but we dropped the ball in
    getting the fix in before the bug going wild. Sorry all.
    
    Reported-by: Vincent Legoll vincent.legoll@gmail.com
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91133
    References: https://bugs.freedesktop.org/show_bug.cgi?id=90224
    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
    Cc: Michel Thierry <michel.thierry@intel.com>
    Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
    Cc: Mika Kuoppala <mika.kuoppala@intel.com>
    Cc: Jani Nikula <jani.nikula@intel.com>
    Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
    ickle authored and danvet committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    d0e30ad View commit details
    Browse the repository at this point in the history
  30. drm/i915: Declare the swizzling unknown for L-shaped configurations

    The old style of memory interleaving swizzled upto the end of the
    first even bank of memory, and then used the remainder as unswizzled on
    the unpaired bank - i.e. swizzling is not constant for all memory. This
    causes problems when we try to migrate memory and so the kernel prevents
    migration at all when we detect L-shaped inconsistent swizzling.
    However, this issue also extends to userspace who try to manually detile
    into memory as the swizzling for an individual page is unknown (it
    depends on its physical address only known to the kernel), userspace
    cannot correctly swizzle.
    
    Note that this is a new attempt for the previously merged one,
    reverted in
    
    commit d82c0ba
    Author: Daniel Vetter <daniel.vetter@ffwll.ch>
    Date:   Tue Jul 14 12:29:27 2015 +0200
    
        Revert "drm/i915: Declare the swizzling unknown for L-shaped configurations"
    
    This is cc: stable since we need it to fix up troubles with wc cpu
    mmaps that userspace recently started to use widely.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=91105
    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
    Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
    Cc: stable@vger.kernel.org
    [danvet: Add note about previous (failed attempt).]
    Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
    ickle authored and danvet committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    5eb3e5a View commit details
    Browse the repository at this point in the history
  31. x86/efi: Use all 64 bit of efi_memmap in setup_e820()

    The efi_info structure stores low 32 bits of memory map
    in efi_memmap and high 32 bits in efi_memmap_hi.
    
    While constructing pointer in the setup_e820(), need
    to take into account all 64 bit of the pointer.
    
    It is because on 64bit machine the function
    efi_get_memory_map() may return full 64bit pointer and before
    the patch that pointer was truncated.
    
    The issue is triggered on Parallles virtual machine and
    fixed with this patch.
    
    Signed-off-by: Dmitry Skorodumov <sdmitry@parallels.com>
    Cc: Denis V. Lunev <den@openvz.org>
    Cc: <stable@vger.kernel.org>
    Signed-off-by: Matt Fleming <matt.fleming@intel.com>
    dskr99 authored and Matt Fleming committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    7cc03e4 View commit details
    Browse the repository at this point in the history
  32. efi: Check for NULL efi kernel parameters

    Even though it is documented how to specifiy efi parameters, it is
    possible to cause a kernel panic due to a dereference of a NULL pointer when
    parsing such parameters if "efi" alone is given:
    
    PANIC: early exception 0e rip 10:ffffffff812fb361 error 0 cr2 0
    [ 0.000000] CPU: 0 PID: 0 Comm: swapper Not tainted 4.2.0-rc1+ #450
    [ 0.000000]  ffffffff81fe20a9 ffffffff81e03d50 ffffffff8184bb0f 00000000000003f8
    [ 0.000000]  0000000000000000 ffffffff81e03e08 ffffffff81f371a1 64656c62616e6520
    [ 0.000000]  0000000000000069 000000000000005f 0000000000000000 0000000000000000
    [ 0.000000] Call Trace:
    [ 0.000000]  [<ffffffff8184bb0f>] dump_stack+0x45/0x57
    [ 0.000000]  [<ffffffff81f371a1>] early_idt_handler_common+0x81/0xae
    [ 0.000000]  [<ffffffff812fb361>] ? parse_option_str+0x11/0x90
    [ 0.000000]  [<ffffffff81f4dd69>] arch_parse_efi_cmdline+0x15/0x42
    [ 0.000000]  [<ffffffff81f376e1>] do_early_param+0x50/0x8a
    [ 0.000000]  [<ffffffff8106b1b3>] parse_args+0x1e3/0x400
    [ 0.000000]  [<ffffffff81f37a43>] parse_early_options+0x24/0x28
    [ 0.000000]  [<ffffffff81f37691>] ? loglevel+0x31/0x31
    [ 0.000000]  [<ffffffff81f37a78>] parse_early_param+0x31/0x3d
    [ 0.000000]  [<ffffffff81f3ae98>] setup_arch+0x2de/0xc08
    [ 0.000000]  [<ffffffff8109629a>] ? vprintk_default+0x1a/0x20
    [ 0.000000]  [<ffffffff81f37b20>] start_kernel+0x90/0x423
    [ 0.000000]  [<ffffffff81f37495>] x86_64_start_reservations+0x2a/0x2c
    [ 0.000000]  [<ffffffff81f37582>] x86_64_start_kernel+0xeb/0xef
    [ 0.000000] RIP 0xffffffff81ba2efc
    
    This panic is not reproducible with "efi=" as this will result in a non-NULL
    zero-length string.
    
    Thus, verify that the pointer to the parameter string is not NULL. This is
    consistent with other parameter-parsing functions which check for NULL pointers.
    
    Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
    Cc: Dave Young <dyoung@redhat.com>
    Cc: <stable@vger.kernel.org>
    Signed-off-by: Matt Fleming <matt.fleming@intel.com>
    ricardon authored and Matt Fleming committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    9115c75 View commit details
    Browse the repository at this point in the history
  33. ipr: Fix locking for unit attention handling

    Make sure we have the host lock held when calling scsi_report_bus_reset. Fixes
    a crash seen as the __devices list in the scsi host was changing as we were
    iterating through it.
    
    Cc: <stable@vger.kernel.org>
    Reviewed-by: Wen Xiong <wenxiong@linux.vnet.ibm.com>
    Reviewed-by: Gabriel Krisman Bertazi <krisman@linux.vnet.ibm.com>
    Signed-off-by: Brian King <brking@linux.vnet.ibm.com>
    Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com>
    Signed-off-by: James Bottomley <JBottomley@Odin.com>
    bjking1 authored and James Bottomley committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    36b8e18 View commit details
    Browse the repository at this point in the history
  34. ipr: Fix incorrect trace indexing

    When ipr's internal driver trace was changed to an atomic, a signed/unsigned
    bug slipped in which results in us indexing backwards in our memory buffer
    writing on memory that does not belong to us. This patch fixes this by removing
    the modulo and instead just mask off the low bits.
    
    Cc: <stable@vger.kernel.org>
    Tested-by: Wen Xiong <wenxiong@linux.vnet.ibm.com>
    Reviewed-by: Wen Xiong <wenxiong@linux.vnet.ibm.com>
    Reviewed-by: Gabriel Krisman Bertazi <krisman@linux.vnet.ibm.com>
    Signed-off-by: Brian King <brking@linux.vnet.ibm.com>
    Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com>
    Signed-off-by: James Bottomley <JBottomley@Odin.com>
    bjking1 authored and James Bottomley committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    bb7c543 View commit details
    Browse the repository at this point in the history
  35. ipr: Fix invalid array indexing for HRRQ

    Fixes another signed / unsigned array indexing bug in the ipr driver.
    Currently, when hrrq_index wraps, it becomes a negative number. We
    do the modulo, but still have a negative number, so we end up indexing
    backwards in the array. Given where the hrrq array is located in memory,
    we probably won't actually reference memory we don't own, but nonetheless
    ipr is still looking at data within struct ipr_ioa_cfg and interpreting it as
    struct ipr_hrr_queue data, so bad things could certainly happen.
    
    Each ipr adapter has anywhere from 1 to 16 HRRQs. By default, we use 2 on new
    adapters.  Let's take an example:
    
    Assume ioa_cfg->hrrq_index=0x7fffffffe and ioa_cfg->hrrq_num=4:
    
    The atomic_add_return will then return -1. We mod this with 3 and get -2, add
    one and get -1 for an array index.
    
    On adapters which support more than a single HRRQ, we dedicate HRRQ to adapter
    initialization and error interrupts so that we can optimize the other queues
    for fast path I/O. So all normal I/O uses HRRQ 1-15. So we want to spread the
    I/O requests across those HRRQs.
    
    With the default module parameter settings, this bug won't hit, only when
    someone sets the ipr.number_of_msix parameter to a value larger than 3 is when
    bad things start to happen.
    
    Cc: <stable@vger.kernel.org>
    Tested-by: Wen Xiong <wenxiong@linux.vnet.ibm.com>
    Reviewed-by: Wen Xiong <wenxiong@linux.vnet.ibm.com>
    Reviewed-by: Gabriel Krisman Bertazi <krisman@linux.vnet.ibm.com>
    Signed-off-by: Brian King <brking@linux.vnet.ibm.com>
    Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com>
    Signed-off-by: James Bottomley <JBottomley@Odin.com>
    bjking1 authored and James Bottomley committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    3f1c058 View commit details
    Browse the repository at this point in the history
  36. scsi: fix memory leak with scsi-mq

    Fix a memory leak with scsi-mq triggered by commands with large data
    transfer length.
    
    __sg_alloc_table() sets both table->nents and table->orig_nents to the
    same value.  When the scatterlist is DMA-mapped, table->nents is
    overwritten with the (possibly smaller) size of the DMA-mapped
    scatterlist, while table->orig_nents retains the original size of the
    allocated scatterlist.  scsi_free_sgtable() should therefore check
    orig_nents instead of nents, and all code that initializes sdb->table
    without calling __sg_alloc_table() should set both nents and orig_nents.
    
    Fixes: d285203 ("scsi: add support for a blk-mq based I/O path.")
    Cc: <stable@vger.kernel.org> # 3.17+
    Signed-off-by: Tony Battersby <tonyb@cybernetics.com>
    Reviewed-by: Christoph Hellwig <hch@lst.de>
    Reviewed-by: Ewan D. Milne <emilne@redhat.com>
    Signed-off-by: James Bottomley <JBottomley@Odin.com>
    abattersby authored and James Bottomley committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    0c958ec View commit details
    Browse the repository at this point in the history
  37. x86/irq: Use the caller provided polarity setting in mp_check_pin_attr()

    Commit d32932d ("x86/irq: Convert IOAPIC to use hierarchical
    irqdomain interfaces") introduced a regression which causes
    malfunction of interrupt lines.
    
    The reason is that the conversion of mp_check_pin_attr() missed to
    update the polarity selection of the interrupt pin with the caller
    provided setting and instead uses a stale attribute value. That in
    turn results in chosing the wrong interrupt flow handler.
    
    Use the caller supplied setting to configure the pin correctly which
    also choses the correct interrupt flow handler.
    
    This restores the original behaviour and on the affected
    machine/driver (Surface Pro 3, i2c controller) all IOAPIC IRQ
    configuration are identical to v4.1.
    
    Fixes: d32932d ("x86/irq: Convert IOAPIC to use hierarchical irqdomain interfaces")
    Reported-and-tested-by: Matt Fleming <matt@codeblueprint.co.uk>
    Reported-and-tested-by: Chen Yu <yu.c.chen@intel.com>
    Signed-off-by: Jiang Liu <jiang.liu@linux.intel.com>
    Cc: Tony Luck <tony.luck@intel.com>
    Cc: Chen Yu <yu.c.chen@intel.com>
    Cc: Yinghai Lu <yinghai@kernel.org>
    Link: http://lkml.kernel.org/r/1438242695-23531-1-git-send-email-jiang.liu@linux.intel.com
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
    Jiang Liu authored and KAGA-KOKO committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    646c4b7 View commit details
    Browse the repository at this point in the history
  38. MAINTAINERS: Appoint Marc Zyngier as irqchips co-maintainer

    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
    Acked-by: Jason Cooper <jason@lakedaemon.net>
    Cc: Marc Zyngier <marc.zyngier@arm.com>
    KAGA-KOKO committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    54d9ffc View commit details
    Browse the repository at this point in the history
  39. MAINTAINERS: Appoint Jiang and Marc as irqdomain maintainers

    Ben was pretty surprised that he is still listed as the maintainer and
    he has no objections against transferring the duty to those who
    rumaged in and revamped that code in the recent past.
    
    Add kernel/irq/msi.c to the affected files as it's part of the shiny
    new hierarchical irqdomain machinery.
    
    Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
    Acked-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
    Cc: Jiang Liu <jiang.liu@linux.intel.com>
    Cc: Marc Zyngier <marc.zyngier@arm.com>
    Cc: Grant Likely <grant.likely@linaro.org>
    KAGA-KOKO committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    b09dec2 View commit details
    Browse the repository at this point in the history
  40. ALSA: hda - Fix MacBook Pro 5,2 quirk

    MacBook Pro 5,2 with ALC889 codec had already a fixup entry, but this
    seems not working correctly, a fix for pin NID 0x15 is needed in
    addition.  It's equivalent with the fixup for MacBook Air 1,1, so use
    this instead.
    
    Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=102131
    Reported-and-tested-by: Jeffery Miller <jefferym@gmail.com>
    Cc: <stable@vger.kernel.org>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    tiwai committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    649ccd0 View commit details
    Browse the repository at this point in the history
  41. r8152: add pre_reset and post_reset

    Add rtl8152_pre_reset() and rtl8152_post_reset() which are used when
    calling usb_reset_device(). The two functions could reduce the time
    of reset when calling usb_reset_device() after probe().
    
    Signed-off-by: Hayes Wang <hayeswang@realtek.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    hayesorz authored and davem330 committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    e501139 View commit details
    Browse the repository at this point in the history
  42. r8152: reset device when tx timeout

    The device reset is necessary if the hw becomes abnormal and stops
    transmitting packets.
    
    Signed-off-by: Hayes Wang <hayeswang@realtek.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    hayesorz authored and davem330 committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    37608f3 View commit details
    Browse the repository at this point in the history
  43. Merge branch 'r8152-fixes'

    Hayes Wang says:
    
    ====================
    r8152: device reset
    
    v3:
    For patch #2, remove cancel_delayed_work().
    
    v2:
    For patch #1, remove usb_autopm_get_interface(), usb_autopm_put_interface(), and
    the checking of intf->condition.
    
    For patch #2, replace the original method with usb_queue_reset_device() to reset
    the device.
    
    v1:
    Although the driver works normally, we find the device may get all 0xff data when
    transmitting packets on certain platforms. It would break the device and no packet
    could be transmitted. The reset is necessary to recover the hw for this situation.
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    990c9b3 View commit details
    Browse the repository at this point in the history
  44. net: sched: fix refcount imbalance in actions

    Since commit 55334a5 ("net_sched: act: refuse to remove bound action
    outside"), we end up with a wrong reference count for a tc action.
    
    Test case 1:
    
      FOO="1,6 0 0 4294967295,"
      BAR="1,6 0 0 4294967294,"
      tc filter add dev foo parent 1: bpf bytecode "$FOO" flowid 1:1 \
         action bpf bytecode "$FOO"
      tc actions show action bpf
        action order 0: bpf bytecode '1,6 0 0 4294967295' default-action pipe
        index 1 ref 1 bind 1
      tc actions replace action bpf bytecode "$BAR" index 1
      tc actions show action bpf
        action order 0: bpf bytecode '1,6 0 0 4294967294' default-action pipe
        index 1 ref 2 bind 1
      tc actions replace action bpf bytecode "$FOO" index 1
      tc actions show action bpf
        action order 0: bpf bytecode '1,6 0 0 4294967295' default-action pipe
        index 1 ref 3 bind 1
    
    Test case 2:
    
      FOO="1,6 0 0 4294967295,"
      tc filter add dev foo parent 1: bpf bytecode "$FOO" flowid 1:1 action ok
      tc actions show action gact
        action order 0: gact action pass
        random type none pass val 0
         index 1 ref 1 bind 1
      tc actions add action drop index 1
        RTNETLINK answers: File exists [...]
      tc actions show action gact
        action order 0: gact action pass
         random type none pass val 0
         index 1 ref 2 bind 1
      tc actions add action drop index 1
        RTNETLINK answers: File exists [...]
      tc actions show action gact
        action order 0: gact action pass
         random type none pass val 0
         index 1 ref 3 bind 1
    
    What happens is that in tcf_hash_check(), we check tcf_common for a given
    index and increase tcfc_refcnt and conditionally tcfc_bindcnt when we've
    found an existing action. Now there are the following cases:
    
      1) We do a late binding of an action. In that case, we leave the
         tcfc_refcnt/tcfc_bindcnt increased and are done with the ->init()
         handler. This is correctly handeled.
    
      2) We replace the given action, or we try to add one without replacing
         and find out that the action at a specific index already exists
         (thus, we go out with error in that case).
    
    In case of 2), we have to undo the reference count increase from
    tcf_hash_check() in the tcf_hash_check() function. Currently, we fail to
    do so because of the 'tcfc_bindcnt > 0' check which bails out early with
    an -EPERM error.
    
    Now, while commit 55334a5 prevents 'tc actions del action ...' on an
    already classifier-bound action to drop the reference count (which could
    then become negative, wrap around etc), this restriction only accounts for
    invocations outside a specific action's ->init() handler.
    
    One possible solution would be to add a flag thus we possibly trigger
    the -EPERM ony in situations where it is indeed relevant.
    
    After the patch, above test cases have correct reference count again.
    
    Fixes: 55334a5 ("net_sched: act: refuse to remove bound action outside")
    Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
    Reviewed-by: Cong Wang <cwang@twopensource.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    borkmann authored and davem330 committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    28e6b67 View commit details
    Browse the repository at this point in the history
  45. net: sk_clone_lock() should only do get_net() if the parent is not a …

    …kernel socket
    
    The newsk returned by sk_clone_lock should hold a get_net()
    reference if, and only if, the parent is not a kernel socket
    (making this similar to sk_alloc()).
    
    E.g,. for the SYN_RECV path, tcp_v4_syn_recv_sock->..inet_csk_clone_lock
    sets up the syn_recv newsk from sk_clone_lock. When the parent (listen)
    socket is a kernel socket (defined in sk_alloc() as having
    sk_net_refcnt == 0), then the newsk should also have a 0 sk_net_refcnt
    and should not hold a get_net() reference.
    
    Fixes: 26abe14 ("net: Modify sk_alloc to not reference count the
          netns of kernel sockets.")
    Acked-by: Eric Dumazet <edumazet@google.com>
    Cc: Eric W. Biederman <ebiederm@xmission.com>
    Signed-off-by: Sowmini Varadhan <sowmini.varadhan@oracle.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    sowminiv authored and davem330 committed Jul 30, 2015
    Configuration menu
    Copy the full SHA
    8a68173 View commit details
    Browse the repository at this point in the history

Commits on Jul 31, 2015

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

    …it/mfleming/efi into x86/urgent
    
    Pull EFI fixes from Matt Fleming:
    
     * Fix an EFI boot issue preventing a Parallels virtual machine from
       booting because the upper 32-bits of the EFI memmap pointer were
       being discarded in setup_e820(). (Dmitry Skorodumov)
    
     * Validate that the "efi" kernel parameter gets used with an argument,
       otherwise we will oops. (Ricardo Neri)
    
    Signed-off-by: Ingo Molnar <mingo@kernel.org>
    Ingo Molnar committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    1adb912 View commit details
    Browse the repository at this point in the history
  2. x86/xen: Probe target addresses in set_aliased_prot() before the hype…

    …rcall
    
    The update_va_mapping hypercall can fail if the VA isn't present
    in the guest's page tables.  Under certain loads, this can
    result in an OOPS when the target address is in unpopulated vmap
    space.
    
    While we're at it, add comments to help explain what's going on.
    
    This isn't a great long-term fix.  This code should probably be
    changed to use something like set_memory_ro.
    
    Signed-off-by: Andy Lutomirski <luto@kernel.org>
    Cc: Andrew Cooper <andrew.cooper3@citrix.com>
    Cc: Andy Lutomirski <luto@amacapital.net>
    Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>
    Cc: Borislav Petkov <bp@alien8.de>
    Cc: Brian Gerst <brgerst@gmail.com>
    Cc: David Vrabel <dvrabel@cantab.net>
    Cc: Denys Vlasenko <dvlasenk@redhat.com>
    Cc: H. Peter Anvin <hpa@zytor.com>
    Cc: Jan Beulich <jbeulich@suse.com>
    Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
    Cc: Linus Torvalds <torvalds@linux-foundation.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Sasha Levin <sasha.levin@oracle.com>
    Cc: Steven Rostedt <rostedt@goodmis.org>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: security@kernel.org <security@kernel.org>
    Cc: <stable@vger.kernel.org>
    Cc: xen-devel <xen-devel@lists.xen.org>
    Link: http://lkml.kernel.org/r/0b0e55b995cda11e7829f140b833ef932fcabe3a.1438291540.git.luto@kernel.org
    Signed-off-by: Ingo Molnar <mingo@kernel.org>
    amluto authored and Ingo Molnar committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    aa1acff View commit details
    Browse the repository at this point in the history
  3. x86/ldt: Make modify_ldt synchronous

    modify_ldt() has questionable locking and does not synchronize
    threads.  Improve it: redesign the locking and synchronize all
    threads' LDTs using an IPI on all modifications.
    
    This will dramatically slow down modify_ldt in multithreaded
    programs, but there shouldn't be any multithreaded programs that
    care about modify_ldt's performance in the first place.
    
    This fixes some fallout from the CVE-2015-5157 fixes.
    
    Signed-off-by: Andy Lutomirski <luto@kernel.org>
    Reviewed-by: Borislav Petkov <bp@suse.de>
    Cc: Andrew Cooper <andrew.cooper3@citrix.com>
    Cc: Andy Lutomirski <luto@amacapital.net>
    Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>
    Cc: Borislav Petkov <bp@alien8.de>
    Cc: Brian Gerst <brgerst@gmail.com>
    Cc: Denys Vlasenko <dvlasenk@redhat.com>
    Cc: H. Peter Anvin <hpa@zytor.com>
    Cc: Jan Beulich <jbeulich@suse.com>
    Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
    Cc: Linus Torvalds <torvalds@linux-foundation.org>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Sasha Levin <sasha.levin@oracle.com>
    Cc: Steven Rostedt <rostedt@goodmis.org>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: security@kernel.org <security@kernel.org>
    Cc: <stable@vger.kernel.org>
    Cc: xen-devel <xen-devel@lists.xen.org>
    Link: http://lkml.kernel.org/r/4c6978476782160600471bd865b318db34c7b628.1438291540.git.luto@kernel.org
    Signed-off-by: Ingo Molnar <mingo@kernel.org>
    amluto authored and Ingo Molnar committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    37868fe View commit details
    Browse the repository at this point in the history
  4. ceph: fix ceph_encode_locks_to_buffer()

    posix locks should be in ctx->flc_posix list
    
    Signed-off-by: Yan, Zheng <zyan@redhat.com>
    Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
    ukernel authored and idryomov committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    f6762cb View commit details
    Browse the repository at this point in the history
  5. ceph: always re-send cap flushes when MDS recovers

    commit e548e9b makes the kclient
    only re-send cap flush once during MDS failover. If the kclient sends
    a cap flush after MDS enters reconnect stage but before MDS recovers.
    The kclient will skip re-sending the same cap flush when MDS recovers.
    
    This causes problem for newly created inode. The MDS handles cap
    flushes before replaying unsafe requests, so it's possible that MDS
    find corresponding inode is missing when handling cap flush. The fix
    is reverting to old behaviour: always re-send when MDS recovers
    
    Signed-off-by: Yan, Zheng <zyan@redhat.com>
    Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
    ukernel authored and idryomov committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    fc927cd View commit details
    Browse the repository at this point in the history
  6. rbd: fix copyup completion race

    For write/discard obj_requests that involved a copyup method call, the
    opcode of the first op is CEPH_OSD_OP_CALL and the ->callback is
    rbd_img_obj_copyup_callback().  The latter frees copyup pages, sets
    ->xferred and delegates to rbd_img_obj_callback(), the "normal" image
    object callback, for reporting to block layer and putting refs.
    
    rbd_osd_req_callback() however treats CEPH_OSD_OP_CALL as a trivial op,
    which means obj_request is marked done in rbd_osd_trivial_callback(),
    *before* ->callback is invoked and rbd_img_obj_copyup_callback() has
    a chance to run.  Marking obj_request done essentially means giving
    rbd_img_obj_callback() a license to end it at any moment, so if another
    obj_request from the same img_request is being completed concurrently,
    rbd_img_obj_end_request() may very well be called on such prematurally
    marked done request:
    
    <obj_request-1/2 reply>
    handle_reply()
      rbd_osd_req_callback()
        rbd_osd_trivial_callback()
        rbd_obj_request_complete()
        rbd_img_obj_copyup_callback()
        rbd_img_obj_callback()
                                        <obj_request-2/2 reply>
                                        handle_reply()
                                          rbd_osd_req_callback()
                                            rbd_osd_trivial_callback()
          for_each_obj_request(obj_request->img_request) {
            rbd_img_obj_end_request(obj_request-1/2)
            rbd_img_obj_end_request(obj_request-2/2) <--
          }
    
    Calling rbd_img_obj_end_request() on such a request leads to trouble,
    in particular because its ->xfferred is 0.  We report 0 to the block
    layer with blk_update_request(), get back 1 for "this request has more
    data in flight" and then trip on
    
        rbd_assert(more ^ (which == img_request->obj_request_count));
    
    with rhs (which == ...) being 1 because rbd_img_obj_end_request() has
    been called for both requests and lhs (more) being 1 because we haven't
    got a chance to set ->xfferred in rbd_img_obj_copyup_callback() yet.
    
    To fix this, leverage that rbd wants to call class methods in only two
    cases: one is a generic method call wrapper (obj_request is standalone)
    and the other is a copyup (obj_request is part of an img_request).  So
    make a dedicated handler for CEPH_OSD_OP_CALL and directly invoke
    rbd_img_obj_copyup_callback() from it if obj_request is part of an
    img_request, similar to how CEPH_OSD_OP_READ handler invokes
    rbd_img_obj_request_read_callback().
    
    Since rbd_img_obj_copyup_callback() is now being called from the OSD
    request callback (only), it is renamed to rbd_osd_copyup_callback().
    
    Cc: Alex Elder <elder@linaro.org>
    Cc: stable@vger.kernel.org # 3.10+, needs backporting for < 3.18
    Signed-off-by: Ilya Dryomov <idryomov@gmail.com>
    Reviewed-by: Alex Elder <elder@linaro.org>
    idryomov committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    2761713 View commit details
    Browse the repository at this point in the history
  7. i2c: slave eeprom: clean up sysfs bin attribute read()/write()

    The change removes redundant sysfs binary file boundary checks,
    since this task is already done on caller side in fs/sysfs/file.c
    
    Note, on file size overflow read() now returns 0, and this is a
    correct and expected EOF notification according to POSIX.
    
    Signed-off-by: Vladimir Zapolskiy <vz@mleia.com>
    Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
    vzapolskiy authored and Wolfram Sang committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    1f02329 View commit details
    Browse the repository at this point in the history
  8. misc: eeprom: at24: clean up at24_bin_write()

    The change removes redundant sysfs binary file boundary check, since
    this task is already done on caller side in fs/sysfs/file.c
    
    Signed-off-by: Vladimir Zapolskiy <vz@mleia.com>
    Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
    vzapolskiy authored and Wolfram Sang committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    d12c0aa View commit details
    Browse the repository at this point in the history
  9. i2c: core: only use set_scl for bus recovery after calling prepare_re…

    …covery
    
    Using set_scl may be ineffective before calling the driver specific
    prepare_recovery callback, which might change into a test mode. So
    instead of setting SCL in i2c_generic_scl_recovery, move it to
    i2c_generic_recovery (after the optional prepare_recovery).
    
    Signed-off-by: Jan Luebbe <jlu@pengutronix.de>
    Acked-by: Alexander Sverdlin <alexander.sverdlin@nokia.com>
    Tested-by: Alexander Sverdlin <alexander.sverdlin@gmail.com>
    Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
    jluebbe authored and Wolfram Sang committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    8b06260 View commit details
    Browse the repository at this point in the history
  10. i2c: omap: fix bus recovery setup

    At least on the AM335x, enabling OMAP_I2C_SYSTEST_ST_EN is not enough to
    allow direct access to the SCL and SDA pins. In addition to ST_EN, we
    need to set the TMODE to 0b11 (Loop back & SDA/SCL IO mode select).
    Also, as the reset values of SCL_O and SDA_O are 0 (which means "drive
    low level"), we need to set them to 1 (which means "high-impedance") to
    avoid unwanted changes on the pins.
    
    As a precaution, reset all these bits to their default values after
    recovery is complete.
    
    Signed-off-by: Jan Luebbe <jlu@pengutronix.de>
    Tested-by: Alexander Sverdlin <alexander.sverdlin@gmail.com>
    Reviewed-by: Grygorii Strashko <grygorii.strashko@ti.com>
    Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
    jluebbe authored and Wolfram Sang committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    828e66c View commit details
    Browse the repository at this point in the history
  11. i2c: Fix typo in i2c-bfin-twi.c

    This patch fix some typos found in a printk message and
    MODULE_DESCRIPTION.
    
    Signed-off-by: Masanari Iida <standby24x7@gmail.com>
    Acked-by: Sonic Zhang <sonic.zhang@analog.com>
    Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
    standby24x7 authored and Wolfram Sang committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    e952849 View commit details
    Browse the repository at this point in the history
  12. iommu/amd: Allow non-ATS devices in IOMMUv2 domains

    With the grouping of multi-function devices a non-ATS
    capable device might also end up in the same domain as an
    IOMMUv2 capable device.
    So handle this situation gracefully and don't consider it a
    bug anymore.
    
    Tested-by: Oded Gabbay <oded.gabbay@gmail.com>
    Signed-off-by: Joerg Roedel <jroedel@suse.de>
    joergroedel committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    1c1cc45 View commit details
    Browse the repository at this point in the history
  13. dmaengine: at_xdmac: fix bug about channel configuration

    When using descriptor view 2 or higher, we don't write the configuration
    into AT_XDMAC_CC register because this configuration will be fetch from
    the descriptor. Unfortunately, the PROT bit is not updated with this
    method, we have to do it manually before enabling the channel.
    
    Signed-off-by: Ludovic Desroches <ludovic.desroches@atmel.com>
    Signed-off-by: Vinod Koul <vinod.koul@intel.com>
    ldesroches authored and Vinod Koul committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    20cadcb View commit details
    Browse the repository at this point in the history
  14. dmaengine: at_hdmac: fix residue computation

    As claimed by the programmer datasheet and confirmed by the IP designer,
    the Block Transfer Size (BTSIZE) bitfield of the Channel x Control A
    Register (CTRLAx) always refers to a number of Source Width (SRC_WIDTH)
    transfers.
    
    Both the SRC_WIDTH and BTSIZE bitfields can be extacted from the CTRLAx
    register to compute the DMA residue. So the 'tx_width' field is useless
    and can be removed from the struct at_desc.
    
    Before this patch, atc_prep_slave_sg() was not consistent: BTSIZE was
    correctly initialized according to the SRC_WIDTH but 'tx_width' was always
    set to reg_width, which was incorrect for MEM_TO_DEV transfers. It led to
    bad DMA residue when 'tx_width' != SRC_WIDTH.
    
    Also the 'tx_width' field was mostly set only in the first and last
    descriptors. Depending on the kind of DMA transfer, this field remained
    uninitialized for intermediate descriptors. The accurate DMA residue was
    computed only when the currently processed descriptor was the first or the
    last of the chain. This algorithm was a little bit odd. An accurate DMA
    residue can always be computed using the SRC_WIDTH and BTSIZE bitfields
    in the CTRLAx register.
    
    Finally, the test to check whether the currently processed descriptor is
    the last of the chain was wrong: for cyclic transfer, last_desc->lli.dscr
    is NOT equal to zero, since set_desc_eol() is never called, but logically
    equal to first_desc->txd.phys. This bug has a side effect on the
    drivers/tty/serial/atmel_serial.c driver, which uses cyclic DMA transfer
    to receive data. Since the DMA residue was wrong each time the DMA
    transfer reaches the second (and last) period of the transfer, no more
    data were received by the USART driver till the cyclic DMA transfer loops
    back to the first period.
    
    Signed-off-by: Cyrille Pitchen <cyrille.pitchen@atmel.com>
    Acked-by: Torsten Fleischer <torfl6749@gmail.com>
    Tested-by: Jirí Prchal <jiri.prchal@aksignal.cz>
    Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>
    Signed-off-by: Vinod Koul <vinod.koul@intel.com>
    Cyrille Pitchen authored and Vinod Koul committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    93dce3a View commit details
    Browse the repository at this point in the history
  15. dmaengine: at_xdmac: fix transfer data width in at_xdmac_prep_slave_sg()

    This patch adds the missing update of the transfer data width in
    at_xdmac_prep_slave_sg().
    
    Indeed, for each item in the scatter-gather list, we check whether the
    transfer length is aligned with the data width provided by
    dmaengine_slave_config(). If so, we directly use this data width for the
    current part of the transfer we are preparing. Otherwise, the data width
    is reduced to 8 bits (1 byte). Of course, the actual number of register
    accesses must also be updated to match the new data width.
    
    So one chunk was missing in the original patch (see Fixes tag below): the
    number of register accesses was correctly set to (len >> fixed_dwidth) in
    mbr_ubc but the real data width was not updated in mbr_cfg. Since mbr_cfg
    may change for each part of the scatter-gather transfer this also explains
    why the original patch used the Descriptor View 2 instead of the
    Descriptor View 1.
    
    Let's take the example of a DMA transfer to write 8bit data into an Atmel
    USART with FIFOs. When FIFOs are enabled in the USART, its Transmit
    Holding Register (THR) works in multidata mode, that is to say that up to
    4 8bit data can be written into the THR in a single 32bit access and it is
    still possible to write only one data with a 8bit access. To take
    advantage of this new feature, the DMA driver was modified to allow
    multiple dwidths when doing slave transfers.
    For instance, when the total length is 22 bytes, the USART driver splits
    the transfer into 2 parts:
    
    First part: 20 bytes transferred through 5 32bit writes into THR
    Second part: 2 bytes transferred though 2 8bit writes into THR
    
    For the second part, the data width was first set to 4_BYTES by the USART
    driver thanks to dmaengine_slave_config() then at_xdmac_prep_slave_sg()
    reduces this data width to 1_BYTE because the 2 byte length is not aligned
    with the original 4_BYTES data width. Since the data width is modified,
    the actual number of writes into THR must be set accordingly.
    
    Signed-off-by: Cyrille Pitchen <cyrille.pitchen@atmel.com>
    Fixes: 6d3a7d9 ("dmaengine: at_xdmac: allow muliple dwidths when doing slave transfers")
    Cc: stable@vger.kernel.org #4.0 and later
    Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com>
    Acked-by: Ludovic Desroches <ludovic.desroches@atmel.com>
    Signed-off-by: Vinod Koul <vinod.koul@intel.com>
    Cyrille Pitchen authored and Vinod Koul committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    1c8a38b View commit details
    Browse the repository at this point in the history
  16. dmaengine: xgene-dma: Fix the resource map to handle overlapping

    There is an overlap in dma ring cmd csr region due to sharing of ethernet
    ring cmd csr region. This patch fix the resource overlapping by mapping
    the entire dma ring cmd csr region.
    
    Signed-off-by: Rameshwar Prasad Sahu <rsahu@apm.com>
    Signed-off-by: Vinod Koul <vinod.koul@intel.com>
    Rameshwar Prasad Sahu authored and Vinod Koul committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    cda8e93 View commit details
    Browse the repository at this point in the history
  17. dmaengine: mv_xor: fix big endian operation in register mode

    Commit 6f16631 ("dmaengine: mv_xor: add support for a38x command
    in descriptor mode") introduced the support for a feature that
    appeared in Armada 38x: specifying the operation to be performed in a
    per-descriptor basis rather than globally per channel.
    
    However, when doing so, it changed the function mv_chan_set_mode() to
    use:
    
      if (IS_ENABLED(__BIG_ENDIAN))
    
    instead of:
    
      #if defined(__BIG_ENDIAN)
    
    While IS_ENABLED() is perfectly fine for CONFIG_* symbols, it is not
    for other symbols such as __BIG_ENDIAN that is provided directly by
    the compiler. Consequently, the commit broke support for big-endian,
    as the XOR_DESCRIPTOR_SWAP flag was not set in the XOR channel
    configuration register.
    
    The primarily visible effect was some nasty warnings and failures
    appearing during the self-test of the XOR unit:
    
    [    1.197368] mv_xor d0060900.xor: error on chan 0. intr cause 0x00000082
    [    1.197393] mv_xor d0060900.xor: config       0x00008440
    [    1.197410] mv_xor d0060900.xor: activation   0x00000000
    [    1.197427] mv_xor d0060900.xor: intr cause   0x00000082
    [    1.197443] mv_xor d0060900.xor: intr mask    0x000003f7
    [    1.197460] mv_xor d0060900.xor: error cause  0x00000000
    [    1.197477] mv_xor d0060900.xor: error addr   0x00000000
    [    1.197491] ------------[ cut here ]------------
    [    1.197513] WARNING: CPU: 0 PID: 1 at ../drivers/dma/mv_xor.c:664 mv_xor_interrupt_handler+0x14c/0x170()
    
    See also:
    
      http://storage.kernelci.org/next/next-20150617/arm-mvebu_v7_defconfig+CONFIG_CPU_BIG_ENDIAN=y/lab-khilman/boot-armada-xp-openblocks-ax3-4.txt
    
    Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
    Fixes: 6f16631 ("dmaengine: mv_xor: add support for a38x command in descriptor mode")
    Reviewed-by: Maxime Ripard <maxime.ripard@free-electrons.com>
    Signed-off-by: Vinod Koul <vinod.koul@intel.com>
    tpetazzoni authored and Vinod Koul committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    0ec9ebc View commit details
    Browse the repository at this point in the history
  18. Revert "dmaengine: virt-dma: don't always free descriptor upon comple…

    …tion"
    
    This reverts commit b9855f0.
    The patch break existing DMA usage case. For example, audio SOC
    dmaengine never release channel and cause virt-dma to cache too
    much memory in descriptor to exhaust system memory.
    
    Signed-off-by: Vinod Koul <vinod.koul@intel.com>
    niej authored and Vinod Koul committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    8c8fe97 View commit details
    Browse the repository at this point in the history
  19. Merge branch 'drm-fixes' of git://people.freedesktop.org/~airlied/linux

    Pull drm fixes from Dave Airlie:
     "This has a bunch of nouveau fixes, as Ben has been hibernating and has
      lots of small fixes for lots of bugs across nouveau.
    
      Radeon has one major fix for hdmi/dp audio regression that is larger
      than Alex would like, but seems to fix up a fair few bugs, along with
      some misc fixes.
    
      And a few msm fixes, one of which is also a bit large.
    
      But nothing in here seems insane or crazy for this stage, just more
      than I'd like"
    
    * 'drm-fixes' of git://people.freedesktop.org/~airlied/linux: (33 commits)
      drm/msm/mdp5: release SMB (shared memory blocks) in various cases
      drm/msm: change to uninterruptible wait in atomic commit
      drm/msm: mdp4: Fix drm_framebuffer dereference crash
      drm/msm: fix msm_gem_prime_get_sg_table()
      drm/amdgpu: add new parameter to seperate map and unmap
      drm/amdgpu: hdp_flush is not needed for inside IB
      drm/amdgpu: different emit_ib for gfx and compute
      drm/amdgpu: information leak in amdgpu_info_ioctl()
      drm/amdgpu: clean up init sequence for failures
      drm/radeon/combios: add some validation of lvds values
      drm/radeon: rework audio modeset to handle non-audio hdmi features
      drm/radeon: rework audio detect (v4)
      drm/amdgpu: Drop drm/ prefix for including drm.h in amdgpu_drm.h
      drm/radeon: Drop drm/ prefix for including drm.h in radeon_drm.h
      drm/nouveau/nouveau/ttm: fix tiled system memory with Maxwell
      drm/nouveau/kms/nv50-: guard against enabling cursor on disabled heads
      drm/nouveau/fbcon/g80: reduce PUSH_SPACE alloc, fire ring on accel init
      drm/nouveau/fbcon/gf100-: reduce RING_SPACE allocation
      drm/nouveau/fbcon/nv11-: correctly account for ring space usage
      drm/nouveau/bios: add proper support for opcode 0x59
      ...
    torvalds committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    fd56d1d View commit details
    Browse the repository at this point in the history
  20. Merge tag 'drm-intel-fixes-2015-07-31' of git://anongit.freedesktop.o…

    …rg/drm-intel
    
    Pull drm intel fixes from Daniel Vetter:
     "I delayed my -fixes pull a bit hoping that I could include a fix for
      the dp mst stuff but looks a bit more nasty than that.  So just 3
      other regression fixes, one 4.2 other two cc: stable"
    
    * tag 'drm-intel-fixes-2015-07-31' of git://anongit.freedesktop.org/drm-intel:
      drm/i915: Declare the swizzling unknown for L-shaped configurations
      drm/i915: Mark PIN_USER binding as GLOBAL_BIND without the aliasing ppgtt
      drm/i915: Replace WARN inside I915_READ64_2x32 with retry loop
    torvalds committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    23ff9e1 View commit details
    Browse the repository at this point in the history
  21. Merge tag 'iommu-fixes-v4.2-rc4' of git://git.kernel.org/pub/scm/linu…

    …x/kernel/git/joro/iommu
    
    Pull IOMMU fixes from Joerg Roedel:
     "These fixes are all for the AMD IOMMU driver:
    
       - A regression with HSA caused by the conversion of the driver to
         default domains.  The fixes make sure that an HSA device can still
         be attached to an IOMMUv2 domain and that these domains also allow
         non-IOMMUv2 capable devices.
    
       - Fix iommu=pt mode which did not work because the dma_ops where set
         to nommu_ops, which breaks devices that can only do 32bit DMA.
    
       - Fix an issue with non-PCI devices not working, because there are no
         dma_ops for them.  This issue was discovered recently as new AMD
         x86 platforms have non-PCI devices too"
    
    * tag 'iommu-fixes-v4.2-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/joro/iommu:
      iommu/amd: Allow non-ATS devices in IOMMUv2 domains
      iommu/amd: Set global dma_ops if swiotlb is disabled
      iommu/amd: Use swiotlb in passthrough mode
      iommu/amd: Allow non-IOMMUv2 devices in IOMMUv2 domains
      iommu/amd: Use iommu core for passthrough mode
      iommu/amd: Use iommu_attach_group()
    torvalds committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    5e49e0b View commit details
    Browse the repository at this point in the history
  22. ARM: dts: keystone: fix dt bindings to use post div register for mainpll

    All of the keystone devices have a separate register to hold post
    divider value for main pll clock. Currently the fixed-postdiv
    value used for k2hk/l/e SoCs works by sheer luck as u-boot happens to
    use a value of 2 for this. Now that we have fixed this in the pll
    clock driver change the dt bindings for the same.
    
    Signed-off-by: Murali Karicheri <m-karicheri2@ti.com>
    Acked-by: Santosh Shilimkar <ssantosh@kernel.org>
    Signed-off-by: Olof Johansson <olof@lixom.net>
    Murali Karicheri authored and olofj committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    c1bfa98 View commit details
    Browse the repository at this point in the history
  23. nfsd: do nfs4_check_fh in nfs4_check_file instead of nfs4_check_olsta…

    …teid
    
    Currently, preprocess_stateid_op calls nfs4_check_olstateid which
    verifies that the open stateid corresponds to the current filehandle in the
    call by calling nfs4_check_fh.
    
    If the stateid is a NFS4_DELEG_STID however, then no such check is done.
    This could cause incorrect enforcement of permissions, because the
    nfsd_permission() call in nfs4_check_file uses current the current
    filehandle, but any subsequent IO operation will use the file descriptor
    in the stateid.
    
    Move the call to nfs4_check_fh into nfs4_check_file instead so that it
    can be done for all stateid types.
    
    Signed-off-by: Jeff Layton <jeff.layton@primarydata.com>
    Cc: stable@vger.kernel.org
    [bfields: moved fh check to avoid NULL deref in special stateid case]
    Signed-off-by: J. Bruce Fields <bfields@redhat.com>
    jtlayton authored and J. Bruce Fields committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    8fcd461 View commit details
    Browse the repository at this point in the history
  24. act_pedit: check binding before calling tcf_hash_release()

    When we share an action within a filter, the bind refcnt
    should increase, therefore we should not call tcf_hash_release().
    
    Fixes: 1a29321 ("net_sched: act: Dont increment refcnt on replace")
    Cc: Jamal Hadi Salim <jhs@mojatatu.com>
    Cc: Daniel Borkmann <daniel@iogearbox.net>
    Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
    Signed-off-by: Cong Wang <cwang@twopensource.com>
    Acked-by: Daniel Borkmann <daniel@iogearbox.net>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    congwang authored and davem330 committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    5175f71 View commit details
    Browse the repository at this point in the history
  25. gianfar: Fix warning when CONFIG_PM off

    CC      drivers/net/ethernet/freescale/gianfar.o
    drivers/net/ethernet/freescale/gianfar.c:568:13: warning: 'lock_tx_qs'
    defined but not used [-Wunused-function]
     static void lock_tx_qs(struct gfar_private *priv)
                 ^
    drivers/net/ethernet/freescale/gianfar.c:576:13: warning: 'unlock_tx_qs'
    defined but not used [-Wunused-function]
     static void unlock_tx_qs(struct gfar_private *priv)
                 ^
    
    Reported-by: Scott Wood <scottwood@freescale.com>
    Signed-off-by: Claudiu Manoil <claudiu.manoil@freescale.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    claudiu-m authored and davem330 committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    8486830 View commit details
    Browse the repository at this point in the history
  26. gianfar: Fix suspend/resume for wol magic packet

    If we disable NAPI in the first place we can mask the device's
    interrupts (and halt it) without fearing that imask may be
    concurrently accessed from interrupt context, so there's
    no need to do local_irq_save() around gfar_halt_nodisable().
    lock_rx_qs()/unlock_tx_qs() are just obsoleted and potentially
    buggy routines.  The txlock is currently used in the driver only
    to manage TX congestion, it has nothing to do with halting the
    device.  With these changes, the TX processing is stopped before
    gfar_halt().
    
    Compact gfar_halt() is used instead of gfar_halt_nodisable(),
    as it disables Rx/TX DMA h/w blocks and the Rx/TX h/w queues.
    gfar_start() re-enables all these blocks on resume.  Enabling
    the magic-packet mode remains the same, note that the RX block
    is re-enabled just before entering sleep mode.
    
    Add IRQF_NO_SUSPEND flag for the error interrupt line, to signal
    that the interrupt line must remain active during sleep in order
    to wake the system by magic packet (MAG) reception interrupt.
    (On some systems the MAG interrupt did trigger w/o this flag
    as well, but on others it didn't.)
    
    Without these fixes, when suspended during fair Tx traffic the
    interface occasionally failed to be woken up by magic packet.
    
    Signed-off-by: Claudiu Manoil <claudiu.manoil@freescale.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    claudiu-m authored and davem330 committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    614b424 View commit details
    Browse the repository at this point in the history
  27. gianfar: Enable device wakeup when appropriate

    The wol_en flag is 0 by default anyway, and we have the
    following inconsistency: a MAGIC packet wol capable eth
    interface is registered as a wake-up source but unable
    to wake-up the system as wol_en is 0 (wake-on flag set to 'd').
    Calling set_wakeup_enable() at netdev open is just redundant
    because wol_en is 0 by default.
    Let only ethtool call set_wakeup_enable() for now.
    
    The bflock is obviously obsoleted, its utility has been corroded
    over time.  The bitfield flags used today in gianfar are accessed
    only on the init/ config path, with no real possibility of
    concurrency - nothing that would justify smth. like bflock.
    
    Signed-off-by: Claudiu Manoil <claudiu.manoil@freescale.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    claudiu-m authored and davem330 committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    b0734b6 View commit details
    Browse the repository at this point in the history
  28. Merge branch 'gianfar-wol-fixes'

    Claudiu Manoil says:
    
    ====================
    gianfar: wol magic packet fixes
    
    These changes were already validated as part of FSL SDK.
    Patch 2 fixes occasional wake-on magic packet failures during
    traffic, probably due to incorrect traffic stop/ device halt
    sequence and incorrect usage of txlock.
    ====================
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    davem330 committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    ef1f436 View commit details
    Browse the repository at this point in the history
  29. stmmac: fix missing MODULE_LICENSE in stmmac_platform

    Commit 50649ab ("stmmac: drop driver from stmmac platform code")
    was a bit overzealous in removing code and dropped the MODULE_*
    macro's that are still needed since stmmac_platform can be a module.
    Fix this by putting the macro's remvoed in 50649ab back.
    
    This fixes the following errors when used as a module:
      stmmac_platform: module license 'unspecified' taints kernel.
      Disabling lock debugging due to kernel taint
      stmmac_platform: Unknown symbol devm_kmalloc (err 0)
      stmmac_platform: Unknown symbol stmmac_suspend (err 0)
      stmmac_platform: Unknown symbol platform_get_irq_byname (err 0)
      stmmac_platform: Unknown symbol stmmac_dvr_remove (err 0)
      stmmac_platform: Unknown symbol platform_get_resource (err 0)
      stmmac_platform: Unknown symbol of_get_phy_mode (err 0)
      stmmac_platform: Unknown symbol of_property_read_u32_array (err 0)
      stmmac_platform: Unknown symbol of_alias_get_id (err 0)
      stmmac_platform: Unknown symbol stmmac_resume (err 0)
      stmmac_platform: Unknown symbol stmmac_dvr_probe (err 0)
    
    Fixes: 50649ab ("stmmac: drop driver from stmmac platform code")
    Reported-by: Igor Gnatenko <i.gnatenko.brain@gmail.com>
    Signed-off-by: Joachim Eastwood <manabian@gmail.com>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    manabian authored and davem330 committed Jul 31, 2015
    Configuration menu
    Copy the full SHA
    ea11154 View commit details
    Browse the repository at this point in the history

Commits on Aug 1, 2015

  1. Merge tag 'sound-4.2-rc5' of git://git.kernel.org/pub/scm/linux/kerne…

    …l/git/tiwai/sound
    
    Pull sound fixes from Takashi Iwai:
     "This became a relative big update as it includes the collected ASoC
      fixes.  There are a few fixes in ASoC core side, mostly for DAPM and
      the new topology API.  The rest are various ASoC driver-specific
      fixes, as well as the usual HD-audio and USB-audio quirks"
    
    * tag 'sound-4.2-rc5' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (29 commits)
      ALSA: hda - Fix MacBook Pro 5,2 quirk
      ALSA: hda - Fix race between PM ops and HDA init/probe
      ALSA: usb-audio: add dB range mapping for some devices
      ALSA: hda - Apply a fixup to Dell Vostro 5480
      ALSA: hda - Add pin quirk for the headset mic jack detection on Dell laptop
      ALSA: hda - Apply fixup for another Toshiba Satellite S50D
      ALSA: fireworks: add support for AudioFire2 quirk
      ALSA: hda - Fix the headset mic that will not work on Dell desktop machine
      ALSA: hda - fix cs4210_spdif_automute()
      ASoC: pcm1681: Fix setting de-emphasis sampling rate selection
      ASoC: ssm4567: Keep TDM_BCLKS in ssm4567_set_dai_fmt
      ASoC: sgtl5000: Fix up define for SGTL5000_SMALL_POP
      ASoC: dapm: Don't add prefix to widget stream name
      ASoC: rt5645: Check if codec is initialized in workqueue handler
      ASoC: Intel: Get correct usage_count value to load firmware
      ASoC: topology: Fix to add dapm mixer info
      ASoC: zx: spdif: Fix devm_ioremap_resource return value check
      ASoC: zx: i2s: Fix devm_ioremap_resource return value check
      ASoC: mediatek: Use platform_of_node for machine drivers
      ASoC: Free card DAPM context on snd_soc_instantiate_card() error path
      ...
    torvalds committed Aug 1, 2015
    Configuration menu
    Copy the full SHA
    c6fd4fc View commit details
    Browse the repository at this point in the history
  2. Merge branch 'for-linus-4.2' of git://git.kernel.org/pub/scm/linux/ke…

    …rnel/git/mason/linux-btrfs
    
    Pull btrfs fixes from Chris Mason:
     "Filipe fixed up a hard to trigger ENOSPC regression from our merge
      window pull, and we have a few other smaller fixes"
    
    * 'for-linus-4.2' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs:
      Btrfs: fix quick exhaustion of the system array in the superblock
      btrfs: its btrfs_err() instead of btrfs_error()
      btrfs: Avoid NULL pointer dereference of free_extent_buffer when read_tree_block() fail
      btrfs: Fix lockdep warning of btrfs_run_delayed_iputs()
    torvalds committed Aug 1, 2015
    Configuration menu
    Copy the full SHA
    acea568 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) Must teardown SR-IOV before unregistering netdev in igb driver, from
        Alex Williamson.
    
     2) Fix ipv6 route unreachable crash in IPVS, from Alex Gartrell.
    
     3) Default route selection in ipv4 should take the prefix length, table
        ID, and TOS into account, from Julian Anastasov.
    
     4) sch_plug must have a reset method in order to purge all buffered
        packets when the qdisc is reset, likewise for sch_choke, from WANG
        Cong.
    
     5) Fix deadlock and races in slave_changelink/br_setport in bridging.
        From Nikolay Aleksandrov.
    
     6) mlx4 bug fixes (wrong index in port even propagation to VFs,
        overzealous BUG_ON assertion, etc.) from Ido Shamay, Jack
        Morgenstein, and Or Gerlitz.
    
     7) Turn off klog message about SCTP userspace interface compat that
        makes no sense at all, from Daniel Borkmann.
    
     8) Fix unbounded restarts of inet frag eviction process, causing NMI
        watchdog soft lockup messages, from Florian Westphal.
    
     9) Suspend/resume fixes for r8152 from Hayes Wang.
    
    10) Fix busy loop when MSG_WAITALL|MSG_PEEK is used in TCP recv, from
        Sabrina Dubroca.
    
    11) Fix performance regression when removing a lot of routes from the
        ipv4 routing tables, from Alexander Duyck.
    
    12) Fix device leak in AF_PACKET, from Lars Westerhoff.
    
    13) AF_PACKET also has a header length comparison bug due to signedness,
        from Alexander Drozdov.
    
    14) Fix bug in EBPF tail call generation on x86, from Daniel Borkmann.
    
    15) Memory leaks, TSO stats, watchdog timeout and other fixes to
        thunderx driver from Sunil Goutham and Thanneeru Srinivasulu.
    
    16) act_bpf can leak memory when replacing programs, from Daniel
        Borkmann.
    
    17) WOL packet fixes in gianfar driver, from Claudiu Manoil.
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (79 commits)
      stmmac: fix missing MODULE_LICENSE in stmmac_platform
      gianfar: Enable device wakeup when appropriate
      gianfar: Fix suspend/resume for wol magic packet
      gianfar: Fix warning when CONFIG_PM off
      act_pedit: check binding before calling tcf_hash_release()
      net: sk_clone_lock() should only do get_net() if the parent is not a kernel socket
      net: sched: fix refcount imbalance in actions
      r8152: reset device when tx timeout
      r8152: add pre_reset and post_reset
      qlcnic: Fix corruption while copying
      act_bpf: fix memory leaks when replacing bpf programs
      net: thunderx: Fix for crash while BGX teardown
      net: thunderx: Add PCI driver shutdown routine
      net: thunderx: Fix crash when changing rss with mutliple traffic flows
      net: thunderx: Set watchdog timeout value
      net: thunderx: Wakeup TXQ only if CQE_TX are processed
      net: thunderx: Suppress alloc_pages() failure warnings
      net: thunderx: Fix TSO packet statistic
      net: thunderx: Fix memory leak when changing queue count
      net: thunderx: Fix RQ_DROP miscalculation
      ...
    torvalds committed Aug 1, 2015
    Configuration menu
    Copy the full SHA
    7c764ce View commit details
    Browse the repository at this point in the history
  4. i2c: fix leaked device refcount on of_find_i2c_* error path

    If of_find_i2c_device_by_node() or of_find_i2c_adapter_by_node() find
    a device by node, but its type does not match, a reference to that
    device is still held. This change fixes the problem.
    
    Signed-off-by: Vladimir Zapolskiy <vladimir_zapolskiy@mentor.com>
    Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
    Vladimir Zapolskiy authored and Wolfram Sang committed Aug 1, 2015
    Configuration menu
    Copy the full SHA
    e331146 View commit details
    Browse the repository at this point in the history
  5. Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/l…

    …inux/kernel/git/tip/tip
    
    Pull x86 fixes from Ingo Molnar:
     "Fallout from the recent NMI fixes: make x86 LDT handling more robust.
    
      Also some EFI fixes"
    
    * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      x86/ldt: Make modify_ldt synchronous
      x86/xen: Probe target addresses in set_aliased_prot() before the hypercall
      x86/irq: Use the caller provided polarity setting in mp_check_pin_attr()
      efi: Check for NULL efi kernel parameters
      x86/efi: Use all 64 bit of efi_memmap in setup_e820()
    torvalds committed Aug 1, 2015
    Configuration menu
    Copy the full SHA
    51d2e09 View commit details
    Browse the repository at this point in the history
  6. Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/l…

    …inux/kernel/git/tip/tip
    
    Pull irq fixlets from Thomas Gleixner:
     "Just two updates to the maintainers file"
    
    * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
      MAINTAINERS: Appoint Jiang and Marc as irqdomain maintainers
      MAINTAINERS: Appoint Marc Zyngier as irqchips co-maintainer
    torvalds committed Aug 1, 2015
    Configuration menu
    Copy the full SHA
    3270c8e View commit details
    Browse the repository at this point in the history
  7. Merge tag 'dmaengine-fix-4.2-rc5' of git://git.infradead.org/users/vk…

    …oul/slave-dma
    
    Pull dmaengine fixes from Vinod Koul:
     "We had a regression due to reuse of descriptor so we have reverted
      that.
    
      The rest are driver fixes:
    
       - at_hdmac and at_xdmac for residue, trannfer width, and channel config
       - pl330 final fix for dma fails and overflow issue
       - xgene resouce map fix
       - mv_xor big endian op fix"
    
    * tag 'dmaengine-fix-4.2-rc5' of git://git.infradead.org/users/vkoul/slave-dma:
      Revert "dmaengine: virt-dma: don't always free descriptor upon completion"
      dmaengine: mv_xor: fix big endian operation in register mode
      dmaengine: xgene-dma: Fix the resource map to handle overlapping
      dmaengine: at_xdmac: fix transfer data width in at_xdmac_prep_slave_sg()
      dmaengine: at_hdmac: fix residue computation
      dmaengine: at_xdmac: fix bug about channel configuration
      dmaengine: pl330: Really fix choppy sound because of wrong residue calculation
      dmaengine: pl330: Fix overflow when reporting residue in memcpy
    torvalds committed Aug 1, 2015
    Configuration menu
    Copy the full SHA
    3f6d9e0 View commit details
    Browse the repository at this point in the history

Commits on Aug 2, 2015

  1. link_path_walk(): be careful when failing with ENOTDIR

    In RCU mode we might end up with dentry evicted just we check
    that it's a directory.  In such case we should return ECHILD
    rather than ENOTDIR, so that pathwalk would be retries in non-RCU
    mode.
    
    Breakage had been introduced in commit b18825a - prior to that
    we were looking at nd->inode, which had been fetched before
    verifying that ->d_seq was still valid.  That form of check
    would only be satisfied if at some point the pathname prefix
    would indeed have resolved to a non-directory.  The fix consists
    of checking ->d_seq after we'd run into a non-directory dentry,
    and failing with ECHILD in case of mismatch.
    
    Note that all branches since 3.12 have that problem...
    
    Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
    Al Viro committed Aug 2, 2015
    Configuration menu
    Copy the full SHA
    97242f9 View commit details
    Browse the repository at this point in the history
  2. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/viro/vfs
    
    Pull VFS fix from Al Viro:
     "Spurious ENOTDIR fix"
    
    This should fix the problems reported by Dominique Martinet and Hugh
    Dickins.
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
      link_path_walk(): be careful when failing with ENOTDIR
    torvalds committed Aug 2, 2015
    Configuration menu
    Copy the full SHA
    0118360 View commit details
    Browse the repository at this point in the history
  3. 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:
     "Things are calming down nicely here w.r.t. fixes.  This batch
      includes two week's worth since I missed to send before -rc4.
    
      Nothing particularly scary to point out, smaller fixes here and there.
      Shortlog describes it pretty well"
    
    * tag 'armsoc-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
      ARM: dts: keystone: fix dt bindings to use post div register for mainpll
      ARM: nomadik: disable UART0 on Nomadik boards
      ARM: dts: i.MX35: Fix can support.
      ARM: OMAP2+: hwmod: Fix _wait_target_ready() for hwmods without sysc
      ARM: dts: add CPU OPP and regulator supply property for exynos4210
      ARM: dts: Update video-phy node with syscon phandle for exynos3250
      ARM: DRA7: hwmod: fix gpmc hwmod
    torvalds committed Aug 2, 2015
    Configuration menu
    Copy the full SHA
    30c7b56 View commit details
    Browse the repository at this point in the history
  4. Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/g…

    …it/jejb/scsi
    
    Pull SCSI fixes from James Bottomley:
     "A set of three fixes for the ipr driver and one fairly major one for
      memory leaks in the mq path of SCSI"
    
    * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
      scsi: fix memory leak with scsi-mq
      ipr: Fix invalid array indexing for HRRQ
      ipr: Fix incorrect trace indexing
      ipr: Fix locking for unit attention handling
    torvalds committed Aug 2, 2015
    Configuration menu
    Copy the full SHA
    d4edea4 View commit details
    Browse the repository at this point in the history
  5. i915: temporary fix for DP MST docking station NULL pointer dereference

    Ted Ts'o reports that his Lenovo T540p ThinkPad crashes at boot if
    attached to the docking station.  This is a regression that he was able
    to bisect to commit 8c7b5cc: "drm/i915: Use atomic helpers for
    computing changed flags:"
    
    The reason seems to be the new call to drm_atomic_helper_check_modeset()
    added to intel_modeset_compute_config(), which in turn calls
    update_connector_routing(), and somehow ends up picking a NULL crtc for
    the connector state, causing the subsequent drm_crtc_index() to OOPS.
    
    Daniel Vetter says that the fundamental issue seems to be confusion in
    the encoder selection, and this isn't the right fix, but while he chases
    down the proper fix, this at least avoids the NULL pointer dereference
    and makes Ted's docking station work again.
    
    Reported-bisected-and-tested-by: Theodore Ts'o <tytso@mit.edu>
    Cc: Daniel Vetter <daniel.vetter@intel.com>
    Cc: Mani Nikula <jani.nikula@linux.intel.com>
    Cc: Dave Airlie <airlied@gmail.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    torvalds committed Aug 2, 2015
    Configuration menu
    Copy the full SHA
    27667f4 View commit details
    Browse the repository at this point in the history

Commits on Aug 3, 2015

  1. Merge tag 'powerpc-4.2-3' of git://git.kernel.org/pub/scm/linux/kerne…

    …l/git/powerpc/linux
    
    Pull powerpc fixes from Michael Ellerman:
     - TCE table memory calculation fix from Alexey
     - Build fix for ans-lcd from Luis
     - Unbalanced IRQ warning fix from Alistair
    
    * tag 'powerpc-4.2-3' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
      powerpc/eeh-powernv: Fix unbalanced IRQ warning
      macintosh/ans-lcd: fix build failure after module_init/exit relocation
      powerpc/powernv/ioda2: Fix calculation for memory allocated for TCE table
    torvalds committed Aug 3, 2015
    Configuration menu
    Copy the full SHA
    d08c318 View commit details
    Browse the repository at this point in the history
  2. Linux 4.2-rc5

    torvalds committed Aug 3, 2015
    Configuration menu
    Copy the full SHA
    74d3329 View commit details
    Browse the repository at this point in the history
  3. md/raid1: extend spinlock to protect raid1_end_read_request against i…

    …nconsistencies
    
    raid1_end_read_request() assumes that the In_sync bits are consistent
    with the ->degaded count.
    raid1_spare_active updates the In_sync bit before the ->degraded count
    and so exposes an inconsistency, as does error()
    So extend the spinlock in raid1_spare_active() and error() to hide those
    inconsistencies.
    
    This should probably be part of
      Commit: 34cab6f ("md/raid1: fix test for 'was read error from
      last working device'.")
    as it addresses the same issue.  It fixes the same bug and should go
    to -stable for same reasons.
    
    Fixes: 7607305 ("md/raid1: clean up read_balance.")
    Cc: stable@vger.kernel.org (v3.0+)
    Signed-off-by: NeilBrown <neilb@suse.com>
    NeilBrown committed Aug 3, 2015
    Configuration menu
    Copy the full SHA
    423f04d View commit details
    Browse the repository at this point in the history
  4. md: use kzalloc() when bitmap is disabled

    In drivers/md/md.c get_bitmap_file() uses kmalloc() for creating a
    mdu_bitmap_file_t called "file".
    
    5769         file = kmalloc(sizeof(*file), GFP_NOIO);
    5770         if (!file)
    5771                 return -ENOMEM;
    
    This structure is copied to user space at the end of the function.
    
    5786         if (err == 0 &&
    5787             copy_to_user(arg, file, sizeof(*file)))
    5788                 err = -EFAULT
    
    But if bitmap is disabled only the first byte of "file" is initialized
    with zero, so it's possible to read some bytes (up to 4095) of kernel
    space memory from user space. This is an information leak.
    
    5775         /* bitmap disabled, zero the first byte and copy out */
    5776         if (!mddev->bitmap_info.file)
    5777                 file->pathname[0] = '\0';
    
    Signed-off-by: Benjamin Randazzo <benjamin@randazzo.fr>
    Signed-off-by: NeilBrown <neilb@suse.com>
    benjamin-42 authored and NeilBrown committed Aug 3, 2015
    Configuration menu
    Copy the full SHA
    b6878d9 View commit details
    Browse the repository at this point in the history
  5. md/raid5: don't let shrink_slab shrink too far.

    I have a report of drop_one_stripe() called from
    raid5_cache_scan() apparently finding ->max_nr_stripes == 0.
    
    This should not be allowed.
    
    So add a test to keep max_nr_stripes above min_nr_stripes.
    
    Also use a 'mask' rather than a 'mod' in drop_one_stripe
    to ensure 'hash' is valid even if max_nr_stripes does reach zero.
    
    
    Fixes: edbe83a ("md/raid5: allow the stripe_cache to grow and shrink.")
    Cc: stable@vger.kernel.org (4.1 - please release with 2d5b569)
    Reported-by: Tomas Papan <tomas.papan@gmail.com>
    Signed-off-by: NeilBrown <neilb@suse.com>
    NeilBrown committed Aug 3, 2015
    Configuration menu
    Copy the full SHA
    49895bc View commit details
    Browse the repository at this point in the history
  6. Adding YAMA hooks also when YAMA is not stacked.

    Without this patch YAMA will not work at all if it is chosen
    as the primary LSM instead of being "stacked".
    
    Signed-off-by: Salvatore Mesoraca <s.mesoraca16@gmail.com>
    Acked-by: Kees Cook <keescook@chromium.org>
    Signed-off-by: James Morris <james.l.morris@oracle.com>
    smeso authored and James Morris committed Aug 3, 2015
    Configuration menu
    Copy the full SHA
    5413fcd View commit details
    Browse the repository at this point in the history
  7. Merge tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/ker…

    …nel/git/rusty/linux
    
    Pull module fix from Rusty Russell:
     "Single overzealous locking assertion fix"
    
    * tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux:
      module: weaken locking assertion for oops path.
    torvalds committed Aug 3, 2015
    Configuration menu
    Copy the full SHA
    5b2a0ee View commit details
    Browse the repository at this point in the history
  8. Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6

    Pull crypto fixes from Herbert Xu:
     "This fixes the following issues:
    
       - a bogus BUG_ON in ixp4xx that can be triggered by a dst buffer that
         is an SG list.
    
       - the error handling in hwrngd may cause a crash in case of an error.
    
       - fix a race condition in qat registration when multiple devices are
         present"
    
    * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
      hwrng: core - correct error check of kthread_run call
      crypto: ixp4xx - Remove bogus BUG_ON on scattered dst buffer
      crypto: qat - Fix invalid synchronization between register/unregister sym algs
    torvalds committed Aug 3, 2015
    Configuration menu
    Copy the full SHA
    abeb4f5 View commit details
    Browse the repository at this point in the history
  9. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/jmorris/linux-security
    
    Pull security layer fix from James Morris:
     "Yama initialization fix"
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security:
      Adding YAMA hooks also when YAMA is not stacked.
    torvalds committed Aug 3, 2015
    Configuration menu
    Copy the full SHA
    665aadc View commit details
    Browse the repository at this point in the history
  10. Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel…

    …/git/sage/ceph-client
    
    Pull Ceph fixes from Sage Weil:
     "There are two critical regression fixes for CephFS from Zheng, and an
      RBD completion fix for layered images from Ilya"
    
    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client:
      rbd: fix copyup completion race
      ceph: always re-send cap flushes when MDS recovers
      ceph: fix ceph_encode_locks_to_buffer()
    torvalds committed Aug 3, 2015
    Configuration menu
    Copy the full SHA
    7e88447 View commit details
    Browse the repository at this point in the history
  11. Merge branch 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/…

    …kernel/git/wsa/linux
    
    Pull i2c fixes from Wolfram Sang:
     "A refcounting bugfix for the i2c-core, bugfixes for the generic bus
      recovery algorithm and for its omap-user, making binary file
      attributes for EEPROMs behave POSIX compliant, and a small typo fix
      while we are here"
    
    * 'i2c/for-current' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux:
      i2c: fix leaked device refcount on of_find_i2c_* error path
      i2c: Fix typo in i2c-bfin-twi.c
      i2c: omap: fix bus recovery setup
      i2c: core: only use set_scl for bus recovery after calling prepare_recovery
      misc: eeprom: at24: clean up at24_bin_write()
      i2c: slave eeprom: clean up sysfs bin attribute read()/write()
    torvalds committed Aug 3, 2015
    Configuration menu
    Copy the full SHA
    c2f3ba7 View commit details
    Browse the repository at this point in the history

Commits on Aug 4, 2015

  1. drm/atomic-helper: Add an atomice best_encoder callback

    With legacy helpers all the routing was already set up when calling
    best_encoder and so could be inspected. But with atomic it's staged,
    hence we need a new atomic compliant callback for drivers which need
    to inspect the requested state and can't just decided the best encoder
    statically.
    
    This is needed to fix up i915 dp mst where we need to pick the right
    encoder depending upon the requested CRTC for the connector.
    
    v2: Don't forget to amend the kerneldoc
    
    Cc: Chris Wilson <chris@chris-wilson.co.uk>
    Cc: Linus Torvalds <torvalds@linux-foundation.org>
    Cc: Theodore Ts'o <tytso@mit.edu>
    Acked-by: Thierry Reding <treding@nvidia.com>
    Reviewed-by: Ander Conselvan de Oliveira <conselvan2@gmail.com>
    Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
    danvet committed Aug 4, 2015
    Configuration menu
    Copy the full SHA
    3b8a684 View commit details
    Browse the repository at this point in the history
  2. drm/i915: Fixup dp mst encoder selection

    In
    
    commit 8c7b5cc
    Author: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira@intel.com>
    Date:   Tue Apr 21 17:13:19 2015 +0300
    
        drm/i915: Use atomic helpers for computing changed flags
    
    we've switched over to the atomic version to compute the
    crtc->encoder->connector routing from the i915 variant. That one
    relies upon the ->best_encoder callback, but the i915-private version
    relied upon intel_find_encoder. Which didn't matter except for dp mst,
    where the encoder depends upon the selected crtc.
    
    Fix this functional bug by implemented a correct atomic-state based
    encoder selector for dp mst.
    
    Note that we can't get rid of the legacy best_encoder callback since
    the fbdev emulation uses that still. That means it's incorrect there
    still, but that's been the case ever since i915 dp mst support was
    merged so not a regression. Best to fix that by converting fbdev over
    to atomic too.
    
    Cc: Chris Wilson <chris@chris-wilson.co.uk>
    Cc: Linus Torvalds <torvalds@linux-foundation.org>
    Cc: Theodore Ts'o <tytso@mit.edu>
    Reviewed-by: Ander Conselvan de Oliveira <conselvan2@gmail.com>
    Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
    danvet committed Aug 4, 2015
    Configuration menu
    Copy the full SHA
    459485a View commit details
    Browse the repository at this point in the history
  3. drm/dp-mst: Remove debug WARN_ON

    Apparently been in there since forever and fairly easy to hit when
    hotplugging really fast. I can do that since my mst hub has a manual
    button to flick the hpd line for reprobing. The resulting WARNING spam
    isn't pretty.
    
    Cc: Dave Airlie <airlied@gmail.com>
    Cc: stable@vger.kernel.org
    Reviewed-by: Thierry Reding <treding@nvidia.com>
    Reviewed-by: Ander Conselvan de Oliveira <conselvan2@gmail.com>
    Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
    danvet committed Aug 4, 2015
    Configuration menu
    Copy the full SHA
    42639ba View commit details
    Browse the repository at this point in the history
  4. drm/atomic-helpers: Make encoder picking more robust

    We've had a few issues with atomic where subtle bugs in the encoder
    picking logic lead to accidental self-stealing of the encoder,
    resulting in a NULL connector_state->crtc in update_connector_routing
    and subsequent.
    
    Linus applied some duct-tape for an mst regression in
    
    commit 27667f4
    Author: Linus Torvalds <torvalds@linux-foundation.org>
    Date:   Wed Jul 29 22:18:16 2015 -0700
    
        i915: temporary fix for DP MST docking station NULL pointer dereference
    
    But that was incomplete (the code will still oops when debuggin is
    enabled) and mangled the state even further. So instead WARN and bail
    out as the more future-proof option.
    
    Cc: Theodore Ts'o <tytso@mit.edu>
    Cc: Linus Torvalds <torvalds@linux-foundation.org>
    Reviewed-by: Thierry Reding <treding@nvidia.com>
    Reviewed-by: Ander Conselvan de Oliveira <conselvan2@gmail.com>
    Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
    danvet committed Aug 4, 2015
    Configuration menu
    Copy the full SHA
    6ea76f3 View commit details
    Browse the repository at this point in the history
  5. Merge branch 'rc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/…

    …git/mmarek/kbuild
    
    Pull kbuild fixes from Michal Marek:
     "Two fixes for kbuild:
    
       - The new ARCH_{CPP,A,C}FLAGS variables are reset before including
         the arch Makefile
    
       - Fix calling make modules_install twice when module compression is
         enabled"
    
    * 'rc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild:
      Makefile: Force gzip and xz on module install
      kbuild: Do not pick up ARCH_{CPP,A,C}FLAGS from the environment
    torvalds committed Aug 4, 2015
    Configuration menu
    Copy the full SHA
    ed8bbba View commit details
    Browse the repository at this point in the history
  6. xen/events/fifo: Handle linked events when closing a port

    An event channel bound to a CPU that was offlined may still be linked
    on that CPU's queue.  If this event channel is closed and reused,
    subsequent events will be lost because the event channel is never
    unlinked and thus cannot be linked onto the correct queue.
    
    When a channel is closed and the event is still linked into a queue,
    ensure that it is unlinked before completing.
    
    If the CPU to which the event channel bound is online, spin until the
    event is handled by that CPU. If that CPU is offline, it can't handle
    the event, so clear the event queue during the close, dropping the
    events.
    
    This fixes the missing interrupts (and subsequent disk stalls etc.)
    when offlining a CPU.
    
    Signed-off-by: Ross Lagerwall <ross.lagerwall@citrix.com>
    Cc: <stable@vger.kernel.org>
    Signed-off-by: David Vrabel <david.vrabel@citrix.com>
    rosslagerwall authored and David Vrabel committed Aug 4, 2015
    Configuration menu
    Copy the full SHA
    fcdf31a View commit details
    Browse the repository at this point in the history
  7. Merge tag 'for-linus-4.2-rc5-tag' of git://git.kernel.org/pub/scm/lin…

    …ux/kernel/git/xen/tip
    
    Pull xen bug fixes from David Vrabel:
    
     - don't lose interrupts when offlining CPUs
    
     - fix gntdev oops during unmap
    
     - drop the balloon lock occasionally to allow domain create/destroy
    
    * tag 'for-linus-4.2-rc5-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
      xen/events/fifo: Handle linked events when closing a port
      xen: release lock occasionally during ballooning
      xen/gntdevt: Fix race condition in gntdev_release()
    torvalds committed Aug 4, 2015
    Configuration menu
    Copy the full SHA
    1ddc6dd View commit details
    Browse the repository at this point in the history
  8. Merge tag 'topic/mst-fixes-2015-08-04' of git://anongit.freedesktop.o…

    …rg/drm-intel
    
    Pull drm mst fixes from Daniel Vetter:
     "Special pull request for mst fixes since most of the patches touch
      code outside of i915 proper.  DRM parts have also been reviewed by
      Thierry (nvidia) since Dave's enjoying vacations"
    
    * tag 'topic/mst-fixes-2015-08-04' of git://anongit.freedesktop.org/drm-intel:
      drm/atomic-helpers: Make encoder picking more robust
      drm/dp-mst: Remove debug WARN_ON
      drm/i915: Fixup dp mst encoder selection
      drm/atomic-helper: Add an atomice best_encoder callback
    torvalds committed Aug 4, 2015
    Configuration menu
    Copy the full SHA
    50d091b View commit details
    Browse the repository at this point in the history
  9. Merge tag 'pci-v4.2-fixes-1' of git://git.kernel.org/pub/scm/linux/ke…

    …rnel/git/helgaas/pci
    
    Pull PCI fix from Bjorn Helgaas:
     "This is a trivial fix for a change that broke user program compilation
      (QEMU in this case)"
    
    * tag 'pci-v4.2-fixes-1' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci:
      PCI: Restore PCI_MSIX_FLAGS_BIRMASK definition
    torvalds committed Aug 4, 2015
    Configuration menu
    Copy the full SHA
    6c84461 View commit details
    Browse the repository at this point in the history

Commits on Aug 5, 2015

  1. mm, vmscan: Do not wait for page writeback for GFP_NOFS allocations

    Nikolay has reported a hang when a memcg reclaim got stuck with the
    following backtrace:
    
    PID: 18308  TASK: ffff883d7c9b0a30  CPU: 1   COMMAND: "rsync"
      #0 __schedule at ffffffff815ab152
      #1 schedule at ffffffff815ab76e
      #2 schedule_timeout at ffffffff815ae5e5
      #3 io_schedule_timeout at ffffffff815aad6a
      #4 bit_wait_io at ffffffff815abfc6
      #5 __wait_on_bit at ffffffff815abda5
      #6 wait_on_page_bit at ffffffff8111fd4f
      #7 shrink_page_list at ffffffff81135445
      #8 shrink_inactive_list at ffffffff81135845
      #9 shrink_lruvec at ffffffff81135ead
     #10 shrink_zone at ffffffff811360c3
     #11 shrink_zones at ffffffff81136eff
     #12 do_try_to_free_pages at ffffffff8113712f
     #13 try_to_free_mem_cgroup_pages at ffffffff811372be
     #14 try_charge at ffffffff81189423
     #15 mem_cgroup_try_charge at ffffffff8118c6f5
     #16 __add_to_page_cache_locked at ffffffff8112137d
     #17 add_to_page_cache_lru at ffffffff81121618
     #18 pagecache_get_page at ffffffff8112170b
     #19 grow_dev_page at ffffffff811c8297
     #20 __getblk_slow at ffffffff811c91d6
     #21 __getblk_gfp at ffffffff811c92c1
     #22 ext4_ext_grow_indepth at ffffffff8124565c
     #23 ext4_ext_create_new_leaf at ffffffff81246ca8
     #24 ext4_ext_insert_extent at ffffffff81246f09
     #25 ext4_ext_map_blocks at ffffffff8124a848
     #26 ext4_map_blocks at ffffffff8121a5b7
     #27 mpage_map_one_extent at ffffffff8121b1fa
     #28 mpage_map_and_submit_extent at ffffffff8121f07b
     #29 ext4_writepages at ffffffff8121f6d5
     #30 do_writepages at ffffffff8112c490
     #31 __filemap_fdatawrite_range at ffffffff81120199
     #32 filemap_flush at ffffffff8112041c
     #33 ext4_alloc_da_blocks at ffffffff81219da1
     #34 ext4_rename at ffffffff81229b91
     #35 ext4_rename2 at ffffffff81229e32
     #36 vfs_rename at ffffffff811a08a5
     #37 SYSC_renameat2 at ffffffff811a3ffc
     #38 sys_renameat2 at ffffffff811a408e
     #39 sys_rename at ffffffff8119e51e
     #40 system_call_fastpath at ffffffff815afa89
    
    Dave Chinner has properly pointed out that this is a deadlock in the
    reclaim code because ext4 doesn't submit pages which are marked by
    PG_writeback right away.
    
    The heuristic was introduced by commit e62e384 ("memcg: prevent OOM
    with too many dirty pages") and it was applied only when may_enter_fs
    was specified.  The code has been changed by c3b94f4 ("memcg:
    further prevent OOM with too many dirty pages") which has removed the
    __GFP_FS restriction with a reasoning that we do not get into the fs
    code.  But this is not sufficient apparently because the fs doesn't
    necessarily submit pages marked PG_writeback for IO right away.
    
    ext4_bio_write_page calls io_submit_add_bh but that doesn't necessarily
    submit the bio.  Instead it tries to map more pages into the bio and
    mpage_map_one_extent might trigger memcg charge which might end up
    waiting on a page which is marked PG_writeback but hasn't been submitted
    yet so we would end up waiting for something that never finishes.
    
    Fix this issue by replacing __GFP_IO by may_enter_fs check (for case 2)
    before we go to wait on the writeback.  The page fault path, which is
    the only path that triggers memcg oom killer since 3.12, shouldn't
    require GFP_NOFS and so we shouldn't reintroduce the premature OOM
    killer issue which was originally addressed by the heuristic.
    
    As per David Chinner the xfs is doing similar thing since 2.6.15 already
    so ext4 is not the only affected filesystem.  Moreover he notes:
    
    : For example: IO completion might require unwritten extent conversion
    : which executes filesystem transactions and GFP_NOFS allocations. The
    : writeback flag on the pages can not be cleared until unwritten
    : extent conversion completes. Hence memory reclaim cannot wait on
    : page writeback to complete in GFP_NOFS context because it is not
    : safe to do so, memcg reclaim or otherwise.
    
    Cc: stable@vger.kernel.org # 3.9+
    [tytso@mit.edu: corrected the control flow]
    Fixes: c3b94f4 ("memcg: further prevent OOM with too many dirty pages")
    Reported-by: Nikolay Borisov <kernel@kyup.com>
    Signed-off-by: Michal Hocko <mhocko@suse.cz>
    Signed-off-by: Hugh Dickins <hughd@google.com>
    Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
    Michal Hocko authored and torvalds committed Aug 5, 2015
    Configuration menu
    Copy the full SHA
    ecf5fc6 View commit details
    Browse the repository at this point in the history
  2. Merge branch 'for-4.2' of git://linux-nfs.org/~bfields/linux

    Pull nfsd fixes from Bruce Fields.
    
    * 'for-4.2' of git://linux-nfs.org/~bfields/linux:
      nfsd: do nfs4_check_fh in nfs4_check_file instead of nfs4_check_olstateid
      nfsd: Fix a file leak on nfsd4_layout_setlease failure
      nfsd: Drop BUG_ON and ignore SECLABEL on absent filesystem
    torvalds committed Aug 5, 2015
    Configuration menu
    Copy the full SHA
    9e91edc View commit details
    Browse the repository at this point in the history
  3. Merge tag 'md/4.2-rc5-fixes' of git://neil.brown.name/md

    Pull md fixes from Neil Brown:
     "Three more fixes for md in 4.2
    
      Mostly corner-case stuff.
    
      One of these patches is for a CVE: CVE-2015-5697
    
      I'm not convinced it is serious (data leak from CAP_SYS_ADMIN ioctl)
      but as people seem to want to back-port it, I've included a minimal
      version here.  The remainder of that patch from Benjamin is
      code-cleanup and will arrive in the 4.3 merge window"
    
    * tag 'md/4.2-rc5-fixes' of git://neil.brown.name/md:
      md/raid5: don't let shrink_slab shrink too far.
      md: use kzalloc() when bitmap is disabled
      md/raid1: extend spinlock to protect raid1_end_read_request against inconsistencies
    torvalds committed Aug 5, 2015
    Configuration menu
    Copy the full SHA
    4e6b6ee View commit details
    Browse the repository at this point in the history