1. 04 Jan, 2018 4 commits
  2. 03 Jan, 2018 11 commits
    • Mauro Carvalho Chehab's avatar
      media: vb2: add a new warning about pending buffers · 6f0e5fd3
      Mauro Carvalho Chehab authored
      There's a logic at the VB2 core that produces a WARN_ON if
      there are still buffers waiting to be filled. However, it doesn't
      indicate what buffers are still opened, with makes harder to
      identify issues inside caller drivers.
      
      So, add a new pr_warn() pointing to such buffers. That, together
      with debug instrumentation inside the drivers can make easier to
      identify where the problem is.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      6f0e5fd3
    • Mauro Carvalho Chehab's avatar
      media: vb2: add pr_fmt() macro · 2e33dbb0
      Mauro Carvalho Chehab authored
      Simplify the pr_foo() macros by adding a pr_fmt() macro.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      Acked-by: default avatarSakari Ailus <sakari.ailus@linux.intel.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      2e33dbb0
    • Satendra Singh Thakur's avatar
      media: vb2: Fix a bug about unnecessary calls to queue cancel and free · ce468670
      Satendra Singh Thakur authored
      Currently, there's a logic with checks if *count is non-zero,
      q->num_buffers is zero and q->memory is different than memory.
      
      That's flawed when the device is initialized, or after the
      queues are freed, as it does, unnecessary calls to
      __vb2_queue_cancel() and  __vb2_queue_free().
      
      That can be avoided by making sure that q->memory is set to
      VB2_MEMORY_UNKNOWN at vb2_core_queue_init(), and adding such
      check at the loop.
      
      [mchehab@s-opensource.com: fix checkpatch issues and improve the
       patch, by setting q->memory to zero at vb2_core_queue_init]
      Signed-off-by: default avatarSatendra Singh Thakur <satendra.t@samsung.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      Acked-by: default avatarSakari Ailus <sakari.ailus@linux.intel.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      ce468670
    • Sakari Ailus's avatar
      media: vb2: Enforce VB2_MAX_FRAME in vb2_core_reqbufs better · 0097ff8e
      Sakari Ailus authored
      The check for the number of buffers requested against the maximum,
      VB2_MAX_FRAME, was performed before checking queue's minimum number of
      buffers. Reverse the order, thus ensuring that under no circumstances
      num_buffers exceeds VB2_MAX_FRAME here.
      
      Also add a warning of the condition.
      Signed-off-by: default avatarSakari Ailus <sakari.ailus@linux.intel.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      0097ff8e
    • Mauro Carvalho Chehab's avatar
      media: videobuf2-core: don't go out of the buffer range · df93dc61
      Mauro Carvalho Chehab authored
      Currently, there's no check if an invalid buffer range
      is passed. However, while testing DVB memory mapped apps,
      I got this:
      
         videobuf2_core: VB: num_buffers -2143943680, buffer 33, index -2143943647
         unable to handle kernel paging request at ffff888b773c0890
         IP: __vb2_queue_alloc+0x134/0x4e0 [videobuf2_core]
         PGD 4142c7067 P4D 4142c7067 PUD 0
         Oops: 0002 [#1] SMP
         Modules linked in: xt_CHECKSUM iptable_mangle ipt_MASQUERADE nf_nat_masquerade_ipv4 iptable_nat nf_nat_ipv4 nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 xt_conntrack nf_conntrack tun bridge stp llc ebtable_filter ebtables ip6table_filter ip6_tables bluetooth rfkill ecdh_generic binfmt_misc rc_dvbsky sp2 ts2020 intel_rapl x86_pkg_temp_thermal dvb_usb_dvbsky intel_powerclamp dvb_usb_v2 coretemp m88ds3103 kvm_intel i2c_mux dvb_core snd_hda_codec_hdmi crct10dif_pclmul crc32_pclmul videobuf2_vmalloc videobuf2_memops snd_hda_intel ghash_clmulni_intel videobuf2_core snd_hda_codec rc_core mei_me intel_cstate snd_hwdep snd_hda_core videodev intel_uncore snd_pcm mei media tpm_tis tpm_tis_core intel_rapl_perf tpm snd_timer lpc_ich snd soundcore kvm irqbypass libcrc32c i915 i2c_algo_bit drm_kms_helper
         e1000e ptp drm crc32c_intel video pps_core
         CPU: 3 PID: 1776 Comm: dvbv5-zap Not tainted 4.14.0+ #78
         Hardware name:                  /NUC5i7RYB, BIOS RYBDWi35.86A.0364.2017.0511.0949 05/11/2017
         task: ffff88877c73bc80 task.stack: ffffb7c402418000
         RIP: 0010:__vb2_queue_alloc+0x134/0x4e0 [videobuf2_core]
         RSP: 0018:ffffb7c40241bc60 EFLAGS: 00010246
         RAX: 0000000080360421 RBX: 0000000000000021 RCX: 000000000000000a
         RDX: ffffb7c40241bcf4 RSI: ffff888780362c60 RDI: ffff888796d8e130
         RBP: ffffb7c40241bcc8 R08: 0000000000000316 R09: 0000000000000004
         R10: ffff888780362c00 R11: 0000000000000001 R12: 000000000002f000
         R13: ffff8887758be700 R14: 0000000000021000 R15: 0000000000000001
         FS:  00007f2849024740(0000) GS:ffff888796d80000(0000) knlGS:0000000000000000
         CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
         CR2: ffff888b773c0890 CR3: 000000043beb2005 CR4: 00000000003606e0
         Call Trace:
          vb2_core_reqbufs+0x226/0x420 [videobuf2_core]
          dvb_vb2_reqbufs+0x2d/0xc0 [dvb_core]
          dvb_dvr_do_ioctl+0x98/0x1d0 [dvb_core]
          dvb_usercopy+0x53/0x1b0 [dvb_core]
          ? dvb_demux_ioctl+0x20/0x20 [dvb_core]
          ? tty_ldisc_deref+0x16/0x20
          ? tty_write+0x1f9/0x310
          ? process_echoes+0x70/0x70
          dvb_dvr_ioctl+0x15/0x20 [dvb_core]
          do_vfs_ioctl+0xa5/0x600
          SyS_ioctl+0x79/0x90
          entry_SYSCALL_64_fastpath+0x1a/0xa5
         RIP: 0033:0x7f28486f7ea7
         RSP: 002b:00007ffc13b2db18 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
         RAX: ffffffffffffffda RBX: 000055b10fc06130 RCX: 00007f28486f7ea7
         RDX: 00007ffc13b2db48 RSI: 00000000c0086f3c RDI: 0000000000000007
         RBP: 0000000000000203 R08: 000055b10df1e02c R09: 000000000000002e
         R10: 0036b42415108357 R11: 0000000000000246 R12: 0000000000000000
         R13: 00007f2849062f60 R14: 00000000000001f1 R15: 00007ffc13b2da54
         Code: 74 0a 60 8b 0a 48 83 c0 30 48 83 c2 04 89 48 d0 89 48 d4 48 39 f0 75 eb 41 8b 42 08 83 7d d4 01 41 c7 82 ec 01 00 00 ff ff ff ff <4d> 89 94 c5 88 00 00 00 74 14 83 c3 01 41 39 dc 0f 85 f1 fe ff
         RIP: __vb2_queue_alloc+0x134/0x4e0 [videobuf2_core] RSP: ffffb7c40241bc60
         CR2: ffff888b773c0890
      
      So, add a sanity check in order to prevent going past array.
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      Acked-by: default avatarSakari Ailus <sakari.ailus@linux.intel.com>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      df93dc61
    • Julia Lawall's avatar
      media: pvrusb2: drop unneeded newline · 510bb915
      Julia Lawall authored
      pvr2_trace prints a newline at the end of the message string, so the
      message string does not need to include a newline explicitly.  Done
      using Coccinelle.
      Signed-off-by: default avatarJulia Lawall <Julia.Lawall@lip6.fr>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      510bb915
    • Daniel Scheller's avatar
      media: dvb-frontends/stv0910: cleanup init_search_param() and enable PLS · 6392bc2e
      Daniel Scheller authored
      Cleanup the mess in init_search_param() by utilising the new register
      access macros and functions. And while at it, move the ISI and PLS setup
      into separate functions, and pass the new scrambling_sequence_index (aka.
      physical layer scrambling) value to set_pls.
      
      Picked up from the dddvb upstream, adapted to the different naming of the
      pls property (pls vs. scrambling_sequence_index).
      
      Cc: Ralph Metzler <rjkm@metzlerbros.de>
      Signed-off-by: default avatarDaniel Scheller <d.scheller@gmx.net>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      6392bc2e
    • Daniel Scheller's avatar
      media: dvb-frontends/stv0910: field and register access helpers · bdd7682b
      Daniel Scheller authored
      Add a write_field() function that acts as helper to update specific bits
      specified in the field defines (FSTV0910_*) in stv0910_regs.h, which was
      recently updated to carry the missing offset values. With that, add the
      SET_FIELD(), SET_REG() and GET_REG() macros that wrap the write_field(),
      write_reg() and read_reg() functions to allow for making all demod
      access code cleaner.
      
      The write_field() function is annotated with __maybe_unused temporarily
      to silence eventual compile warnings.
      
      Picked up from the dddvb upstream, with the macro names made uppercase
      so they are distinguishable as such.
      
      Cc: Ralph Metzler <rjkm@metzlerbros.de>
      Signed-off-by: default avatarDaniel Scheller <d.scheller@gmx.net>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      bdd7682b
    • Daniel Scheller's avatar
      media: dvb-frontends/stv0910: cleanup I2C access functions · 8042e98c
      Daniel Scheller authored
      write_reg() and i2c_write_reg16() only act as a proxy to i2c_write(), which
      isn't called from anywhere else throughout the driver. Clean this up by
      moving the message setup and the i2c_transfer() into write_reg() so it
      becomes the only I2C write function. While touching those parts, fix the
      error codes from EREMOTEIO to EIO.
      
      The I2C cleanup is picked from the upstream dddvb.
      
      Cc: Ralph Metzler <rjkm@metzlerbros.de>
      Signed-off-by: default avatarDaniel Scheller <d.scheller@gmx.net>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      8042e98c
    • Daniel Scheller's avatar
      media: dvb-frontends/stv0910: deduplicate writes in enable_puncture_rate() · 4b596bd7
      Daniel Scheller authored
      For all code rates, the same write is performed, only with a differing
      value. Clean this up by putting that value into a variable instead and
      perform the write at the end with that value.
      
      Picked up from the dddvb upstream.
      
      Cc: Ralph Metzler <rjkm@metzlerbros.de>
      Signed-off-by: default avatarDaniel Scheller <d.scheller@gmx.net>
      Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
      4b596bd7
    • Mauro Carvalho Chehab's avatar
      Merge tag 'v4.15-rc6' into patchwork · 3bdf481e
      Mauro Carvalho Chehab authored
      Linux 4.15-rc6
      
      * tag 'v4.15-rc6': (734 commits)
        Linux 4.15-rc6
        MAINTAINERS: mark arch/blackfin/ and its gubbins as orphaned
        x86/ldt: Make LDT pgtable free conditional
        x86/ldt: Plug memory leak in error path
        x86/mm: Remove preempt_disable/enable() from __native_flush_tlb()
        x86/smpboot: Remove stale TLB flush invocations
        objtool: Fix seg fault with clang-compiled objects
        objtool: Fix seg fault caused by missing parameter
        kbuild: add '-fno-stack-check' to kernel build options
        timerqueue: Document return values of timerqueue_add/del()
        timers: Invoke timer_start_debug() where it makes sense
        nohz: Prevent a timer interrupt storm in tick_nohz_stop_sched_tick()
        timers: Reinitialize per cpu bases on hotplug
        timers: Use deferrable base independent of base::nohz_active
        genirq/msi, x86/vector: Prevent reservation mode for non maskable MSI
        genirq/irqdomain: Rename early argument of irq_domain_activate_irq()
        x86/vector: Use IRQD_CAN_RESERVE flag
        genirq: Introduce IRQD_CAN_RESERVE flag
        genirq/msi: Handle reactivation only on success
        gpio: brcmstb: Make really use of the new lockdep class
        ...
      3bdf481e
  3. 31 Dec, 2017 20 commits
    • Linus Torvalds's avatar
      Linux 4.15-rc6 · 30a7acd5
      Linus Torvalds authored
      30a7acd5
    • Linus Torvalds's avatar
      Merge branch 'x86/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · f39d7d78
      Linus Torvalds authored
      Pull x86 fixes from Thomas Gleixner:
       "A couple of fixlets for x86:
      
         - Fix the ESPFIX double fault handling for 5-level pagetables
      
         - Fix the commandline parsing for 'apic=' on 32bit systems and update
           documentation
      
         - Make zombie stack traces reliable
      
         - Fix kexec with stack canary
      
         - Fix the delivery mode for APICs which was missed when the x86
           vector management was converted to single target delivery. Caused a
           regression due to the broken hardware which ignores affinity
           settings in lowest prio delivery mode.
      
         - Unbreak modules when AMD memory encryption is enabled
      
         - Remove an unused parameter of prepare_switch_to"
      
      * 'x86/urgent' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/apic: Switch all APICs to Fixed delivery mode
        x86/apic: Update the 'apic=' description of setting APIC driver
        x86/apic: Avoid wrong warning when parsing 'apic=' in X86-32 case
        x86-32: Fix kexec with stack canary (CONFIG_CC_STACKPROTECTOR)
        x86: Remove unused parameter of prepare_switch_to
        x86/stacktrace: Make zombie stack traces reliable
        x86/mm: Unbreak modules that use the DMA API
        x86/build: Make isoimage work on Debian
        x86/espfix/64: Fix espfix double-fault handling on 5-level systems
      f39d7d78
    • Linus Torvalds's avatar
      Merge branch 'x86-pti-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 52c90f2d
      Linus Torvalds authored
      Pull x86 page table isolation fixes from Thomas Gleixner:
       "Four patches addressing the PTI fallout as discussed and debugged
        yesterday:
      
         - Remove stale and pointless TLB flush invocations from the hotplug
           code
      
         - Remove stale preempt_disable/enable from __native_flush_tlb()
      
         - Plug the memory leak in the write_ldt() error path"
      
      * 'x86-pti-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/ldt: Make LDT pgtable free conditional
        x86/ldt: Plug memory leak in error path
        x86/mm: Remove preempt_disable/enable() from __native_flush_tlb()
        x86/smpboot: Remove stale TLB flush invocations
      52c90f2d
    • Linus Torvalds's avatar
      Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · cea92e84
      Linus Torvalds authored
      Pull timer fixes from Thomas Gleixner:
       "A pile of fixes for long standing issues with the timer wheel and the
        NOHZ code:
      
         - Prevent timer base confusion accross the nohz switch, which can
           cause unlocked access and data corruption
      
         - Reinitialize the stale base clock on cpu hotplug to prevent subtle
           side effects including rollovers on 32bit
      
         - Prevent an interrupt storm when the timer softirq is already
           pending caused by tick_nohz_stop_sched_tick()
      
         - Move the timer start tracepoint to a place where it actually makes
           sense
      
         - Add documentation to timerqueue functions as they caused confusion
           several times now"
      
      * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        timerqueue: Document return values of timerqueue_add/del()
        timers: Invoke timer_start_debug() where it makes sense
        nohz: Prevent a timer interrupt storm in tick_nohz_stop_sched_tick()
        timers: Reinitialize per cpu bases on hotplug
        timers: Use deferrable base independent of base::nohz_active
      cea92e84
    • Linus Torvalds's avatar
      Merge branch 'smp-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 8d517bdf
      Linus Torvalds authored
      Pull smp fixlet from Thomas Gleixner:
       "A trivial build warning fix for newer compilers"
      
      * 'smp-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        cpu/hotplug: Move inline keyword at the beginning of declaration
      8d517bdf
    • Linus Torvalds's avatar
      Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 4c470317
      Linus Torvalds authored
      Pull scheduler fixes from Thomas Gleixner:
       "Three patches addressing the fallout of the CPU_ISOLATION changes
        especially with NO_HZ_FULL plus documentation of boot parameter
        dependency"
      
      * 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched/isolation: Document boot parameters dependency on CONFIG_CPU_ISOLATION=y
        sched/isolation: Enable CONFIG_CPU_ISOLATION=y by default
        sched/isolation: Make CONFIG_NO_HZ_FULL select CONFIG_CPU_ISOLATION
      4c470317
    • Linus Torvalds's avatar
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e7c632fc
      Linus Torvalds authored
      Pull perf fixes from Thomas Gleixner:
      
       - plug a memory leak in the intel pmu init code
      
       - clang fixes
      
       - tooling fix to avoid including kernel headers
      
       - a fix for jvmti to generate correct debug information for inlined
         code
      
       - replace backtick with a regular shell function
      
       - fix the build in hardened environments
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf/x86/intel: Plug memory leak in intel_pmu_init()
        x86/asm: Allow again using asm.h when building for the 'bpf' clang target
        tools arch s390: Do not include header files from the kernel sources
        perf jvmti: Generate correct debug information for inlined code
        perf tools: Fix up build in hardened environments
        perf tools: Use shell function for perl cflags retrieval
      e7c632fc
    • Linus Torvalds's avatar
      Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 88fa025d
      Linus Torvalds authored
      Pull irq fixes from Thomas Gleixner:
       "A rather large update after the kaisered maintainer finally found time
        to handle regression reports.
      
         - The larger part addresses a regression caused by the x86 vector
           management rework.
      
           The reservation based model does not work reliably for MSI
           interrupts, if they cannot be masked (yes, yet another hw
           engineering trainwreck). The reason is that the reservation mode
           assigns a dummy vector when the interrupt is allocated and switches
           to a real vector when the interrupt is requested.
      
           If the MSI entry cannot be masked then the initialization might
           raise an interrupt before the interrupt is requested, which ends up
           as spurious interrupt and causes device malfunction and worse. The
           fix is to exclude MSI interrupts which do not support masking from
           reservation mode and assign a real vector right away.
      
         - Extend the extra lockdep class setup for nested interrupts with a
           class for the recently added irq_desc::request_mutex so lockdep can
           differeniate and does not emit false positive warnings.
      
         - A ratelimit guard for the bad irq printout so in case a bad irq
           comes back immediately the system does not drown in dmesg spam"
      
      * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        genirq/msi, x86/vector: Prevent reservation mode for non maskable MSI
        genirq/irqdomain: Rename early argument of irq_domain_activate_irq()
        x86/vector: Use IRQD_CAN_RESERVE flag
        genirq: Introduce IRQD_CAN_RESERVE flag
        genirq/msi: Handle reactivation only on success
        gpio: brcmstb: Make really use of the new lockdep class
        genirq: Guard handle_bad_irq log messages
        kernel/irq: Extend lockdep class for request mutex
      88fa025d
    • Linus Torvalds's avatar
      Merge branch 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 31336ed9
      Linus Torvalds authored
      Pull objtool fixes from Thomas Gleixner:
       "Three fixlets for objtool:
      
         - Address two segfaults related to missing parameter and clang
           objects
      
         - Make it compile clean with clang"
      
      * 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        objtool: Fix seg fault with clang-compiled objects
        objtool: Fix seg fault caused by missing parameter
        objtool: Fix Clang enum conversion warning
      31336ed9
    • Linus Torvalds's avatar
      Merge tag 'char-misc-4.15-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · 8371e5a0
      Linus Torvalds authored
      Pull char/misc fixes from Greg KH:
       "Here are six small fixes of some of the char/misc drivers that have
        been sent in to resolve reported issues.
      
        Nothing major, a binder use-after-free fix, some thunderbolt bugfixes,
        a hyper-v bugfix, and an nvmem driver fix. All of these have been in
        linux-next with no reported issues for a while"
      
      * tag 'char-misc-4.15-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc:
        nvmem: meson-mx-efuse: fix reading from an offset other than 0
        binder: fix proc->files use-after-free
        vmbus: unregister device_obj->channels_kset
        thunderbolt: Mask ring interrupt properly when polling starts
        MAINTAINERS: Add thunderbolt.rst to the Thunderbolt driver entry
        thunderbolt: Make pathname to force_power shorter
      8371e5a0
    • Linus Torvalds's avatar
      Merge tag 'driver-core-4.15-rc6' of... · 4288e6b4
      Linus Torvalds authored
      Merge tag 'driver-core-4.15-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
      
      Pull driver core fixes from Greg KH:
       "Here are two driver core fixes for 4.15-rc6, resolving some reported
        issues.
      
        The first is a cacheinfo fix for DT based systems to resolve a
        reported issue that has been around for a while, and the other is to
        resolve a regression in the kobject uevent code that showed up in
        4.15-rc1.
      
        Both have been in linux-next for a while with no reported issues"
      
      * tag 'driver-core-4.15-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core:
        kobject: fix suppressing modalias in uevents delivered over netlink
        drivers: base: cacheinfo: fix cache type for non-architected system cache
      4288e6b4
    • Linus Torvalds's avatar
      Merge tag 'staging-4.15-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · 29a9b000
      Linus Torvalds authored
      Pull staging fixes from Greg KH:
       "Here are three staging driver fixes for 4.15-rc6
      
        The first resolves a bug in the lustre driver that came about due to a
        broken cleanup patch, due to crazy list usage in that codebase.
      
        The remaining two are ion driver fixes, finally getting the CMA
        interaction to work properly, resolving two regressions in that area
        of the code.
      
        All have been in linux-next with no reported issues for a while"
      
      * tag 'staging-4.15-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging:
        staging: android: ion: Fix dma direction for dma_sync_sg_for_cpu/device
        staging: ion: Fix ion_cma_heap allocations
        staging: lustre: lnet: Fix recent breakage from list_for_each conversion
      29a9b000
    • Linus Torvalds's avatar
      Merge tag 'tty-4.15-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · bc7236fb
      Linus Torvalds authored
      Pull TTY fix from Greg KH:
       "Here is a single tty fix for a reported issue that you wrote the patch
        for :)
      
        It's been in linux-next for a week or so with no reported issues"
      
      * tag 'tty-4.15-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
        n_tty: fix EXTPROC vs ICANON interaction with TIOCINQ (aka FIONREAD)
      bc7236fb
    • Linus Torvalds's avatar
      Merge tag 'usb-4.15-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · a9746e40
      Linus Torvalds authored
      Pull USB/PHY fixes from Greg KH:
       "Here are a number of small USB and PHY driver fixes for 4.15-rc6.
      
        Nothing major, but there are a number of regression fixes in here that
        resolve issues that have been reported a bunch. There are also the
        usual xhci fixes as well as a number of new usb serial device ids.
      
        All of these have been in linux-next for a while with no reported
        issues"
      
      * tag 'usb-4.15-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb:
        usb: xhci: Add XHCI_TRUST_TX_LENGTH for Renesas uPD720201
        xhci: Fix use-after-free in xhci debugfs
        xhci: Fix xhci debugfs NULL pointer dereference in resume from hibernate
        USB: serial: ftdi_sio: add id for Airbus DS P8GR
        usb: Add device quirk for Logitech HD Pro Webcam C925e
        usb: add RESET_RESUME for ELSA MicroLink 56K
        usbip: fix usbip bind writing random string after command in match_busid
        usbip: stub_rx: fix static checker warning on unnecessary checks
        usbip: prevent leaking socket pointer address in messages
        usbip: stub: stop printing kernel pointer addresses in messages
        usbip: vhci: stop printing kernel pointer addresses in messages
        USB: Fix off by one in type-specific length check of BOS SSP capability
        USB: serial: option: adding support for YUGA CLM920-NC5
        phy: rcar-gen3-usb2: select USB_COMMON
        phy: rockchip-typec: add pm_runtime_disable in err case
        phy: cpcap-usb: Fix platform_get_irq_byname's error checking.
        phy: tegra: fix device-tree node lookups
        USB: serial: qcserial: add Sierra Wireless EM7565
        USB: serial: option: add support for Telit ME910 PID 0x1101
        USB: chipidea: msm: fix ulpi-node lookup
      a9746e40
    • Adam Borowski's avatar
      MAINTAINERS: mark arch/blackfin/ and its gubbins as orphaned · c0b23903
      Adam Borowski authored
      The blackfin architecture has seen no maintainer action of any kind since
      April 2015.  No new code, no pull requests, no acks to patches, no response
      to mails, nothing.
      
      The web site has an expired certificate (expiration Sep 2017, issued in
      2013), the mailing list sees no answers either, with one exception:
      
        https://sourceforge.net/p/adi-buildroot/mailman/adi-buildroot-devel/
        >
        > Steven is no longer working on this for ADI. Acked by me if this works. Thanks.
        >
        > Best regards,
        > Aaron Wu
        > Analog Devices Inc.
      
      But, Aaron doesn't seem to respond to queries either.
      Signed-off-by: default avatarAdam Borowski <kilobyte@angband.pl>
      Acked-by: default avatarLinus Walleij <linus.walleij@linaro.org>
      Cc: Arnd Bergmann <arnd@arndb.de>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      c0b23903
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc · 6bba94d0
      Linus Torvalds authored
      Pull sparc bugfix from David Miller.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc:
        sparc64: repair calling incorrect hweight function from stubs
      6bba94d0
    • Thomas Gleixner's avatar
      x86/ldt: Make LDT pgtable free conditional · 7f414195
      Thomas Gleixner authored
      Andy prefers to be paranoid about the pagetable free in the error path of
      write_ldt(). Make it conditional and warn whenever the installment of a
      secondary LDT fails.
      Requested-by: default avatarAndy Lutomirski <luto@amacapital.net>
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      7f414195
    • Thomas Gleixner's avatar
      x86/ldt: Plug memory leak in error path · a62d6985
      Thomas Gleixner authored
      The error path in write_ldt() tries to free 'old_ldt' instead of the newly
      allocated 'new_ldt', resulting in a memory leak. It also misses to clean up a
      half populated LDT pagetable, which is not a leak as it gets cleaned up
      when the process exits.
      
      Free both the potentially half populated LDT pagetable and the newly
      allocated LDT struct. This can be done unconditionally because once an LDT
      is mapped subsequent maps will succeed, because the PTE page is already
      populated and the two LDTs fit into that single page.
      Reported-by: default avatarMathieu Desnoyers <mathieu.desnoyers@efficios.com>
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Cc: Andy Lutomirski <luto@kernel.org>
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: Dave Hansen <dave.hansen@linux.intel.com>
      Cc: Dominik Brodowski <linux@dominikbrodowski.net>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Linus Torvalds <torvalds@linuxfoundation.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Fixes: f55f0501 ("x86/pti: Put the LDT in its own PGD if PTI is on")
      Link: http://lkml.kernel.org/r/alpine.DEB.2.20.1712311121340.1899@nanosSigned-off-by: default avatarIngo Molnar <mingo@kernel.org>
      a62d6985
    • Thomas Gleixner's avatar
      x86/mm: Remove preempt_disable/enable() from __native_flush_tlb() · decab088
      Thomas Gleixner authored
      The preempt_disable/enable() pair in __native_flush_tlb() was added in
      commit:
      
        5cf0791d ("x86/mm: Disable preemption during CR3 read+write")
      
      ... to protect the UP variant of flush_tlb_mm_range().
      
      That preempt_disable/enable() pair should have been added to the UP variant
      of flush_tlb_mm_range() instead.
      
      The UP variant was removed with commit:
      
        ce4a4e56 ("x86/mm: Remove the UP asm/tlbflush.h code, always use the (formerly) SMP code")
      
      ... but the preempt_disable/enable() pair stayed around.
      
      The latest change to __native_flush_tlb() in commit:
      
        6fd166aa ("x86/mm: Use/Fix PCID to optimize user/kernel switches")
      
      ... added an access to a per CPU variable outside the preempt disabled
      regions, which makes no sense at all. __native_flush_tlb() must always
      be called with at least preemption disabled.
      
      Remove the preempt_disable/enable() pair and add a WARN_ON_ONCE() to catch
      bad callers independent of the smp_processor_id() debugging.
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Cc: <stable@vger.kernel.org>
      Cc: Andy Lutomirski <luto@kernel.org>
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: Dave Hansen <dave.hansen@linux.intel.com>
      Cc: Dominik Brodowski <linux@dominikbrodowski.net>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Linus Torvalds <torvalds@linuxfoundation.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: http://lkml.kernel.org/r/20171230211829.679325424@linutronix.deSigned-off-by: default avatarIngo Molnar <mingo@kernel.org>
      decab088
    • Thomas Gleixner's avatar
      x86/smpboot: Remove stale TLB flush invocations · 322f8b8b
      Thomas Gleixner authored
      smpboot_setup_warm_reset_vector() and smpboot_restore_warm_reset_vector()
      invoke local_flush_tlb() for no obvious reason.
      
      Digging in history revealed that the original code in the 2.1 era added
      those because the code manipulated a swapper_pg_dir pagetable entry. The
      pagetable manipulation was removed long ago in the 2.3 timeframe, but the
      TLB flush invocations stayed around forever.
      
      Remove them along with the pointless pr_debug()s which come from the same 2.1
      change.
      Reported-by: default avatarDominik Brodowski <linux@dominikbrodowski.net>
      Signed-off-by: default avatarThomas Gleixner <tglx@linutronix.de>
      Cc: <stable@vger.kernel.org>
      Cc: Andy Lutomirski <luto@kernel.org>
      Cc: Borislav Petkov <bp@alien8.de>
      Cc: Dave Hansen <dave.hansen@linux.intel.com>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Linus Torvalds <torvalds@linuxfoundation.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: http://lkml.kernel.org/r/20171230211829.586548655@linutronix.deSigned-off-by: default avatarIngo Molnar <mingo@kernel.org>
      322f8b8b
  4. 30 Dec, 2017 5 commits