1. 17 Nov, 2016 7 commits
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · bec1b089
      Linus Torvalds authored
      Pull vfs fixes from Al Viro:
       "A couple of regression fixes"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        fix iov_iter_advance() for ITER_PIPE
        xattr: Fix setting security xattrs on sockfs
      bec1b089
    • Linus Torvalds's avatar
      Merge tag 'for-linus-4.9-rc5-ofs-1' of git://git.kernel.org/pub/scm/linux/kernel/git/hubcap/linux · d46bc34d
      Linus Torvalds authored
      Pull orangefs fix from Mike Marshall:
       "orangefs: add .owner to debugfs file_operations
      
        Without ".owner = THIS_MODULE" it is possible to crash the kernel by
        unloading the Orangefs module while someone is reading debugfs files"
      
      * tag 'for-linus-4.9-rc5-ofs-1' of git://git.kernel.org/pub/scm/linux/kernel/git/hubcap/linux:
        orangefs: add .owner to debugfs file_operations
      d46bc34d
    • Aaron Lu's avatar
      mremap: fix race between mremap() and page cleanning · 5d190420
      Aaron Lu authored
      Prior to 3.15, there was a race between zap_pte_range() and
      page_mkclean() where writes to a page could be lost.  Dave Hansen
      discovered by inspection that there is a similar race between
      move_ptes() and page_mkclean().
      
      We've been able to reproduce the issue by enlarging the race window with
      a msleep(), but have not been able to hit it without modifying the code.
      So, we think it's a real issue, but is difficult or impossible to hit in
      practice.
      
      The zap_pte_range() issue is fixed by commit 1cf35d47("mm: split
      'tlb_flush_mmu()' into tlb flushing and memory freeing parts").  And
      this patch is to fix the race between page_mkclean() and mremap().
      
      Here is one possible way to hit the race: suppose a process mmapped a
      file with READ | WRITE and SHARED, it has two threads and they are bound
      to 2 different CPUs, e.g.  CPU1 and CPU2.  mmap returned X, then thread
      1 did a write to addr X so that CPU1 now has a writable TLB for addr X
      on it.  Thread 2 starts mremaping from addr X to Y while thread 1
      cleaned the page and then did another write to the old addr X again.
      The 2nd write from thread 1 could succeed but the value will get lost.
      
              thread 1                           thread 2
           (bound to CPU1)                    (bound to CPU2)
      
        1: write 1 to addr X to get a
           writeable TLB on this CPU
      
                                              2: mremap starts
      
                                              3: move_ptes emptied PTE for addr X
                                                 and setup new PTE for addr Y and
                                                 then dropped PTL for X and Y
      
        4: page laundering for N by doing
           fadvise FADV_DONTNEED. When done,
           pageframe N is deemed clean.
      
        5: *write 2 to addr X
      
                                              6: tlb flush for addr X
      
        7: munmap (Y, pagesize) to make the
           page unmapped
      
        8: fadvise with FADV_DONTNEED again
           to kick the page off the pagecache
      
        9: pread the page from file to verify
           the value. If 1 is there, it means
           we have lost the written 2.
      
        *the write may or may not cause segmentation fault, it depends on
        if the TLB is still on the CPU.
      
      Please note that this is only one specific way of how the race could
      occur, it didn't mean that the race could only occur in exact the above
      config, e.g. more than 2 threads could be involved and fadvise() could
      be done in another thread, etc.
      
      For anonymous pages, they could race between mremap() and page reclaim:
      THP: a huge PMD is moved by mremap to a new huge PMD, then the new huge
      PMD gets unmapped/splitted/pagedout before the flush tlb happened for
      the old huge PMD in move_page_tables() and we could still write data to
      it.  The normal anonymous page has similar situation.
      
      To fix this, check for any dirty PTE in move_ptes()/move_huge_pmd() and
      if any, did the flush before dropping the PTL.  If we did the flush for
      every move_ptes()/move_huge_pmd() call then we do not need to do the
      flush in move_pages_tables() for the whole range.  But if we didn't, we
      still need to do the whole range flush.
      
      Alternatively, we can track which part of the range is flushed in
      move_ptes()/move_huge_pmd() and which didn't to avoid flushing the whole
      range in move_page_tables().  But that would require multiple tlb
      flushes for the different sub-ranges and should be less efficient than
      the single whole range flush.
      
      KBuild test on my Sandybridge desktop doesn't show any noticeable change.
      v4.9-rc4:
        real    5m14.048s
        user    32m19.800s
        sys     4m50.320s
      
      With this commit:
        real    5m13.888s
        user    32m19.330s
        sys     4m51.200s
      Reported-by: default avatarDave Hansen <dave.hansen@intel.com>
      Signed-off-by: default avatarAaron Lu <aaron.lu@intel.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      5d190420
    • Abhi Das's avatar
      fix iov_iter_advance() for ITER_PIPE · 680bb946
      Abhi Das authored
      iov_iter_advance() needs to decrement iter->count by the number of
      bytes we'd moved beyond.  Normal flavours do that, but ITER_PIPE
      doesn't and ITER_PIPE generic_file_read_iter() for O_DIRECT files
      ends up with a bogus fallback to page cache read, resulting in incorrect
      values for file offset and bytes read.
      Signed-off-by: default avatarAbhi Das <adas@redhat.com>
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      680bb946
    • Andreas Gruenbacher's avatar
      xattr: Fix setting security xattrs on sockfs · 4a590153
      Andreas Gruenbacher authored
      The IOP_XATTR flag is set on sockfs because sockfs supports getting the
      "system.sockprotoname" xattr.  Since commit 6c6ef9f2, this flag is checked for
      setxattr support as well.  This is wrong on sockfs because security xattr
      support there is supposed to be provided by security_inode_setsecurity.  The
      smack security module relies on socket labels (xattrs).
      
      Fix this by adding a security xattr handler on sockfs that returns
      -EAGAIN, and by checking for -EAGAIN in setxattr.
      
      We cannot simply check for -EOPNOTSUPP in setxattr because there are
      filesystems that neither have direct security xattr support nor support
      via security_inode_setsecurity.  A more proper fix might be to move the
      call to security_inode_setsecurity into sockfs, but it's not clear to me
      if that is safe: we would end up calling security_inode_post_setxattr after
      that as well.
      Signed-off-by: default avatarAndreas Gruenbacher <agruenba@redhat.com>
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      4a590153
    • Linus Torvalds's avatar
      Merge tag 'drm-fixes-for-v4.9-rc6' of git://people.freedesktop.org/~airlied/linux · 961b708e
      Linus Torvalds authored
      Pull drm fixes fr9om Dave Airlie:
       "Fixes for amdgpu, and a bunch of arm drivers.
      
        There seems to be an uptick in the ARM drivers sending things for
        fixes which is good, so I've decided to dequeue a bit early, more
        stuff may arrive before the weekend.
      
        This contains mediatek, arcpgu, sunxi, fsl-dcu display controller
        fixes along with 3 amdgpu fixes, one for a fencing issue with
        secondary GPUs"
      
      * tag 'drm-fixes-for-v4.9-rc6' of git://people.freedesktop.org/~airlied/linux:
        drm/amdgpu:fix vpost_needed routine
        drm/amdgpu/powerplay: drop a redundant NULL check
        drm/amdgpu: Attach exclusive fence to prime exported bo's. (v5)
        drm/arcpgu: Accommodate adv7511 switch to DRM bridge
        drm/fsl-dcu: disable planes before disabling CRTC
        drm/fsl-dcu: update all registers on flush
        drm/fsl-dcu: do not update when modifying irq registers
        drm/sun4i: Propagate error to the caller
        drm/sun4i: Fix error handling
        drm/mediatek: modify the factor to make the pll_rate set in the 1G-2G range
        drm/mediatek: enhance the HDMI driving current
        drm/mediatek: do mtk_hdmi_send_infoframe after HDMI clock enable
        drm/mediatek: clear IRQ status before enable OVL interrupt
        drm/mediatek: set vblank_disable_allowed to true
        drm/mediatek: fix a typo of OD_CFG to OD_RELAYMODE
        drm/sun4i: rgb: Remove the bridge enable/disable functions
        drm/sun4i: rgb: Enable panel after controller
      961b708e
    • Linus Torvalds's avatar
      Merge tag 'xtensa-20161116' of git://github.com/jcmvbkbc/linux-xtensa · 5fd0f1ca
      Linus Torvalds authored
      Pull Xtensa fixes from Max Filippov:
      
       - fix register dumps, stack dumps and stack traces that got torn due to
         recent printk changes
      
       - wire up pkey_{mprotect,alloc,free} syscalls
      
      * tag 'xtensa-20161116' of git://github.com/jcmvbkbc/linux-xtensa:
        xtensa: wire up new pkey_{mprotect,alloc,free} syscalls
        xtensa: clean up printk usage for boot/crash logging
      5fd0f1ca
  2. 16 Nov, 2016 10 commits
  3. 15 Nov, 2016 6 commits
  4. 14 Nov, 2016 17 commits
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · e76d21c4
      Linus Torvalds authored
      Pull networking fixes from David Miller:
      
       1) Fix off by one wrt. indexing when dumping /proc/net/route entries,
          from Alexander Duyck.
      
       2) Fix lockdep splats in iwlwifi, from Johannes Berg.
      
       3) Cure panic when inserting certain netfilter rules when NFT_SET_HASH
          is disabled, from Liping Zhang.
      
       4) Memory leak when nft_expr_clone() fails, also from Liping Zhang.
      
       5) Disable UFO when path will apply IPSEC tranformations, from Jakub
          Sitnicki.
      
       6) Don't bogusly double cwnd in dctcp module, from Florian Westphal.
      
       7) skb_checksum_help() should never actually use the value "0" for the
          resulting checksum, that has a special meaning, use CSUM_MANGLED_0
          instead. From Eric Dumazet.
      
       8) Per-tx/rx queue statistic strings are wrong in qed driver, fix from
          Yuval MIntz.
      
       9) Fix SCTP reference counting of associations and transports in
          sctp_diag. From Xin Long.
      
      10) When we hit ip6tunnel_xmit() we could have come from an ipv4 path in
          a previous layer or similar, so explicitly clear the ipv6 control
          block in the skb. From Eli Cooper.
      
      11) Fix bogus sleeping inside of inet_wait_for_connect(), from WANG
          Cong.
      
      12) Correct deivce ID of T6 adapter in cxgb4 driver, from Hariprasad
          Shenai.
      
      13) Fix potential access past the end of the skb page frag array in
          tcp_sendmsg(). From Eric Dumazet.
      
      14) 'skb' can legitimately be NULL in inet{,6}_exact_dif_match(). Fix
          from David Ahern.
      
      15) Don't return an error in tcp_sendmsg() if we wronte any bytes
          successfully, from Eric Dumazet.
      
      16) Extraneous unlocks in netlink_diag_dump(), we removed the locking
          but forgot to purge these unlock calls. From Eric Dumazet.
      
      17) Fix memory leak in error path of __genl_register_family(). We leak
          the attrbuf, from WANG Cong.
      
      18) cgroupstats netlink policy table is mis-sized, from WANG Cong.
      
      19) Several XDP bug fixes in mlx5, from Saeed Mahameed.
      
      20) Fix several device refcount leaks in network drivers, from Johan
          Hovold.
      
      21) icmp6_send() should use skb dst device not skb->dev to determine L3
          routing domain. From David Ahern.
      
      22) ip_vs_genl_family sets maxattr incorrectly, from WANG Cong.
      
      23) We leak new macvlan port in some cases of maclan_common_netlink()
          errors. Fix from Gao Feng.
      
      24) Similar to the icmp6_send() fix, icmp_route_lookup() should
          determine L3 routing domain using skb_dst(skb)->dev not skb->dev.
          Also from David Ahern.
      
      25) Several fixes for route offloading and FIB notification handling in
          mlxsw driver, from Jiri Pirko.
      
      26) Properly cap __skb_flow_dissect()'s return value, from Eric Dumazet.
      
      27) Fix long standing regression in ipv4 redirect handling, wrt.
          validating the new neighbour's reachability. From Stephen Suryaputra
          Lin.
      
      28) If sk_filter() trims the packet excessively, handle it reasonably in
          tcp input instead of exploding. From Eric Dumazet.
      
      29) Fix handling of napi hash state when copying channels in sfc driver,
          from Bert Kenward.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (121 commits)
        mlxsw: spectrum_router: Flush FIB tables during fini
        net: stmmac: Fix lack of link transition for fixed PHYs
        sctp: change sk state only when it has assocs in sctp_shutdown
        bnx2: Wait for in-flight DMA to complete at probe stage
        Revert "bnx2: Reset device during driver initialization"
        ps3_gelic: fix spelling mistake in debug message
        net: ethernet: ixp4xx_eth: fix spelling mistake in debug message
        ibmvnic: Fix size of debugfs name buffer
        ibmvnic: Unmap ibmvnic_statistics structure
        sfc: clear napi_hash state when copying channels
        mlxsw: spectrum_router: Correctly dump neighbour activity
        mlxsw: spectrum: Fix refcount bug on span entries
        bnxt_en: Fix VF virtual link state.
        bnxt_en: Fix ring arithmetic in bnxt_setup_tc().
        Revert "include/uapi/linux/atm_zatm.h: include linux/time.h"
        tcp: take care of truncations done by sk_filter()
        ipv4: use new_gw for redirect neigh lookup
        r8152: Fix error path in open function
        net: bpqether.h: remove if_ether.h guard
        net: __skb_flow_dissect() must cap its return value
        ...
      e76d21c4
    • Linus Torvalds's avatar
      Merge branch 'stable' of git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile · d4b95323
      Linus Torvalds authored
      Pull arch/tile bugfix from Chris Metcalf:
       "This just fixes an incompatibility with tile __ro_after_init"
      
      * 'stable' of git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:
        tile: handle __ro_after_init like parisc does
      d4b95323
    • Linus Torvalds's avatar
      Merge tag 'rtc-4.9-2' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux · ac38126b
      Linus Torvalds authored
      Pull RTC fixes from Alexandre Belloni:
       "Here are a few driver fixes for 4.9. It has been calm for a while so I
        don't expect more for this cycle.
      
        Drivers:
         - asm9260: fix module autoload
         - cmos: fix crashes
         - omap: fix clock handling"
      
      * tag 'rtc-4.9-2' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux:
        rtc: omap: prevent disabling of clock/module during suspend
        rtc: omap: Fix selecting external osc
        rtc: cmos: Don't enable interrupts in the middle of the interrupt handler
        rtc: cmos: remove all __exit_p annotations
        rtc: asm9260: fix module autoload
      ac38126b
    • Chris Metcalf's avatar
      tile: handle __ro_after_init like parisc does · e123386b
      Chris Metcalf authored
      The tile architecture already marks RO_DATA as read-only in
      the kernel, so grouping RO_AFTER_INIT_DATA with RO_DATA, as is
      done by default, means the kernel faults in init when it tries
      to write to RO_AFTER_INIT_DATA.  For now, just arrange that
      __ro_after_init is handled like __write_once, i.e. __read_mostly.
      Reviewed-by: default avatarKees Cook <keescook@chromium.org>
      Signed-off-by: default avatarChris Metcalf <cmetcalf@mellanox.com>
      e123386b
    • Ido Schimmel's avatar
      mlxsw: spectrum_router: Flush FIB tables during fini · ac571de9
      Ido Schimmel authored
      Since commit b45f64d1 ("mlxsw: spectrum_router: Use FIB notifications
      instead of switchdev calls") we reflect to the device the entire FIB
      table and not only FIBs that point to netdevs created by the driver.
      
      During module removal, FIBs of the second type are removed following
      NETDEV_UNREGISTER events sent. The other FIBs are still present in both
      the driver's cache and the device's table.
      
      Fix this by iterating over all the FIB tables in the device and flush
      them. There's no need to take locks, as we're the only writer.
      
      Fixes: b45f64d1 ("mlxsw: spectrum_router: Use FIB notifications instead of switchdev calls")
      Signed-off-by: default avatarIdo Schimmel <idosch@mellanox.com>
      Signed-off-by: default avatarJiri Pirko <jiri@mellanox.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      ac571de9
    • Florian Fainelli's avatar
      net: stmmac: Fix lack of link transition for fixed PHYs · c51e424d
      Florian Fainelli authored
      Commit 52f95bbf ("stmmac: fix adjust link call in case of a switch
      is attached") added some logic to avoid polling the fixed PHY and
      therefore invoking the adjust_link callback more than once, since this
      is a fixed PHY and link events won't be generated.
      
      This works fine the first time, because we start with phydev->irq =
      PHY_POLL, so we call adjust_link, then we set phydev->irq =
      PHY_IGNORE_INTERRUPT and we stop polling the PHY.
      
      Now, if we called ndo_close(), which calls both phy_stop() and does an
      explicit netif_carrier_off(), we end up with a link down. Upon calling
      ndo_open() again, despite starting the PHY state machine, we have
      PHY_IGNORE_INTERRUPT set, and we generate no link event at all, so the
      link is permanently down.
      
      Fixes: 52f95bbf ("stmmac: fix adjust link call in case of a switch is attached")
      Signed-off-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
      Acked-by: default avatarGiuseppe Cavallaro <peppe.cavallaro@st.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      c51e424d
    • Steven Rostedt (Red Hat)'s avatar
      ftrace: Add more checks for FTRACE_FL_DISABLED in processing ip records · 546fece4
      Steven Rostedt (Red Hat) authored
      When a module is first loaded and its function ip records are added to the
      ftrace list of functions to modify, they are set to DISABLED, as their text
      is still in a read only state. When the module is fully loaded, and can be
      updated, the flag is cleared, and if their's any functions that should be
      tracing them, it is updated at that moment.
      
      But there's several locations that do record accounting and should ignore
      records that are marked as disabled, or they can cause issues.
      
      Alexei already fixed one location, but others need to be addressed.
      
      Cc: stable@vger.kernel.org
      Fixes: b7ffffbb "ftrace: Add infrastructure for delayed enabling of module functions"
      Reported-by: default avatarAlexei Starovoitov <ast@kernel.org>
      Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
      546fece4
    • Alexei Starovoitov's avatar
      ftrace: Ignore FTRACE_FL_DISABLED while walking dyn_ftrace records · 977c1f9c
      Alexei Starovoitov authored
      ftrace_shutdown() checks for sanity of ftrace records
      and if dyn_ftrace->flags is not zero, it will warn.
      It can happen that 'flags' are set to FTRACE_FL_DISABLED at this point,
      since some module was loaded, but before ftrace_module_enable()
      cleared the flags for this module.
      
      In other words the module.c is doing:
      ftrace_module_init(mod); // calls ftrace_update_code() that sets flags=FTRACE_FL_DISABLED
      ... // here ftrace_shutdown() is called that warns, since
      err = prepare_coming_module(mod); // didn't have a chance to clear FTRACE_FL_DISABLED
      
      Fix it by ignoring disabled records.
      It's similar to what __ftrace_hash_rec_update() is already doing.
      
      Link: http://lkml.kernel.org/r/1478560460-3818619-1-git-send-email-ast@fb.com
      
      Cc: stable@vger.kernel.org
      Fixes: b7ffffbb "ftrace: Add infrastructure for delayed enabling of module functions"
      Signed-off-by: default avatarAlexei Starovoitov <ast@kernel.org>
      Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
      977c1f9c
    • Xin Long's avatar
      sctp: change sk state only when it has assocs in sctp_shutdown · 5bf35ddf
      Xin Long authored
      Now when users shutdown a sock with SEND_SHUTDOWN in sctp, even if
      this sock has no connection (assoc), sk state would be changed to
      SCTP_SS_CLOSING, which is not as we expect.
      
      Besides, after that if users try to listen on this sock, kernel
      could even panic when it dereference sctp_sk(sk)->bind_hash in
      sctp_inet_listen, as bind_hash is null when sock has no assoc.
      
      This patch is to move sk state change after checking sk assocs
      is not empty, and also merge these two if() conditions and reduce
      indent level.
      
      Fixes: d46e416c ("sctp: sctp should change socket state when shutdown is received")
      Reported-by: default avatarAndrey Konovalov <andreyknvl@google.com>
      Tested-by: default avatarAndrey Konovalov <andreyknvl@google.com>
      Signed-off-by: default avatarXin Long <lucien.xin@gmail.com>
      Acked-by: default avatarMarcelo Ricardo Leitner <marcelo.leitner@gmail.com>
      Acked-by: default avatarNeil Horman <nhorman@tuxdriver.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      5bf35ddf
    • David S. Miller's avatar
      Merge branch 'bnx2-kdump-fix' · 193f5122
      David S. Miller authored
      Baoquan He says:
      
      ====================
      bnx2: Wait for in-flight DMA to complete at probe stage
      
      This is v2 post.
      
      In commit 3e1be7ad ("bnx2: Reset device during driver initialization"),
      firmware requesting code was moved from open stage to probe stage.
      The reason is in kdump kernel hardware iommu need device be reset in
      driver probe stage, otherwise those in-flight DMA from 1st kernel
      will continue going and look up into the newly created io-page tables.
      However bnx2 chip resetting involves firmware requesting issue, that
      need be done in open stage.
      
      Michale Chan suggested we can just wait for the old in-flight DMA to
      complete at probe stage, then though without device resetting, we
      don't need to worry the old in-flight DMA could continue looking up
      the newly created io-page tables.
      
      v1->v2:
          Michael suggested to wait for the in-flight DMA to complete at probe
          stage. So give up the old method of trying to reset chip at probe
          stage, take the new way accordingly.
      ====================
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      193f5122
    • Baoquan He's avatar
      bnx2: Wait for in-flight DMA to complete at probe stage · 6df77862
      Baoquan He authored
      In-flight DMA from 1st kernel could continue going in kdump kernel.
      New io-page table has been created before bnx2 does reset at open stage.
      We have to wait for the in-flight DMA to complete to avoid it look up
      into the newly created io-page table at probe stage.
      Suggested-by: default avatarMichael Chan <michael.chan@broadcom.com>
      Signed-off-by: default avatarBaoquan He <bhe@redhat.com>
      Acked-by: default avatarMichael Chan <michael.chan@broadcom.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      6df77862
    • Baoquan He's avatar
      Revert "bnx2: Reset device during driver initialization" · 5d0d4b91
      Baoquan He authored
      This reverts commit 3e1be7ad.
      
      When people build bnx2 driver into kernel, it will fail to detect
      and load firmware because firmware is contained in initramfs and
      initramfs has not been uncompressed yet during do_initcalls. So
      revert commit 3e1be7ad and work out a new way in the later patch.
      Signed-off-by: default avatarBaoquan He <bhe@redhat.com>
      Acked-by: default avatarPaul Menzel <pmenzel@molgen.mpg.de>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      5d0d4b91
    • Max Filippov's avatar
      709fb1f9
    • Colin Ian King's avatar
      ps3_gelic: fix spelling mistake in debug message · 7020637b
      Colin Ian King authored
      Trivial fix to spelling mistake "unmached" to "unmatched" in
      debug message.
      Signed-off-by: default avatarColin Ian King <colin.king@canonical.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      7020637b
    • Linus Torvalds's avatar
      ASoC: lpass-platform: fix uninitialized variable · ee2bd216
      Linus Torvalds authored
      In commit 022d00ee ("ASoC: lpass-platform: Fix broken pcm data
      usage") the stream specific information initialization was broken, with
      the dma channel information not being initialized if there was no
      alloc_dma_channel() helper function.
      
      Before that, the DMA channel number was implicitly initialized to zero
      because the backing store was allocated with devm_kzalloc().  When the
      init code was rewritten, that implicit initialization was lost, and gcc
      rightfully complains about an uninitialized variable being used.
      
      Cc: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
      Cc: Mark Brown <broonie@kernel.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      ee2bd216
    • Linus Torvalds's avatar
      Revert "printk: make reading the kernel log flush pending lines" · f5c9f9c7
      Linus Torvalds authored
      This reverts commit bfd8d3f2.
      
      It turns out that this flushes things much too aggressiverly, and causes
      lines to break up when the system logger races with new continuation
      lines being printed.
      
      There's a pending patch to make printk() flushing much more
      straightforward, but it's too invasive for 4.9, so in the meantime let's
      just not make the system message logging flush continuation lines.
      They'll be flushed by the final newline anyway.
      Suggested-by: default avatarPetr Mladek <pmladek@suse.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      f5c9f9c7
    • Mauro Carvalho Chehab's avatar
      gp8psk-fe: add missing MODULE_foo() macros · b15efc38
      Mauro Carvalho Chehab authored
      This file was converted to a separate module at commit 7a0786c1
      ("gp8psk: Fix DVB frontend attach"), because the DVB attach routines
      require it to work.  However, I forgot to copy the MODULE_foo() macros
      from the original module, causing this warning:
      
          WARNING: modpost: missing MODULE_LICENSE() in drivers/media/dvb-frontends/gp8psk-fe.o
      Reported-by: default avatarStephen Rothwell <sfr@canb.auug.org.au>
      Fixes: 7a0786c1 ("gp8psk: Fix DVB frontend attach")
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      b15efc38