1. 19 Jan, 2018 2 commits
    • Tejun Heo's avatar
      string: drop __must_check from strscpy() and restore strscpy() usages in cgroup · 08a77676
      Tejun Heo authored
      e7fd37ba ("cgroup: avoid copying strings longer than the buffers")
      converted possibly unsafe strncpy() usages in cgroup to strscpy().
      However, although the callsites are completely fine with truncated
      copied, because strscpy() is marked __must_check, it led to the
      following warnings.
      
        kernel/cgroup/cgroup.c: In function ‘cgroup_file_name’:
        kernel/cgroup/cgroup.c:1400:10: warning: ignoring return value of ‘strscpy’, declared with attribute warn_unused_result [-Wunused-result]
           strscpy(buf, cft->name, CGROUP_FILE_NAME_MAX);
      	       ^
      
      To avoid the warnings, 50034ed4 ("cgroup: use strlcpy() instead of
      strscpy() to avoid spurious warning") switched them to strlcpy().
      
      strlcpy() is worse than strlcpy() because it unconditionally runs
      strlen() on the source string, and the only reason we switched to
      strlcpy() here was because it was lacking __must_check, which doesn't
      reflect any material differences between the two function.  It's just
      that someone added __must_check to strscpy() and not to strlcpy().
      
      These basic string copy operations are used in variety of ways, and
      one of not-so-uncommon use cases is safely handling truncated copies,
      where the caller naturally doesn't care about the return value.  The
      __must_check doesn't match the actual use cases and forces users to
      opt for inferior variants which lack __must_check by happenstance or
      spread ugly (void) casts.
      
      Remove __must_check from strscpy() and restore strscpy() usages in
      cgroup.
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      Suggested-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      Cc: Ma Shimiao <mashimiao.fnst@cn.fujitsu.com>
      Cc: Arnd Bergmann <arnd@arndb.de>
      Cc: Chris Metcalf <cmetcalf@ezchip.com>
      08a77676
    • Tejun Heo's avatar
      Merge branch 'for-4.15-fixes' into for-4.16 · 2c4736d9
      Tejun Heo authored
      2c4736d9
  2. 16 Jan, 2018 1 commit
    • Maciej S. Szmigiero's avatar
      cgroup, docs: document the root cgroup behavior of cpu and io controllers · c4e0842b
      Maciej S. Szmigiero authored
      Currently, cgroups v2 documentation contains only a generic remark that
      "How resource consumption in the root cgroup is governed is up to each
      controller", which isn't really telling users much, who need to dig in the
      code and / or commit messages to learn the exact behavior.
      
      In cgroups v1 at least the blkio controller had its operation with respect
      to competition between child threads and child cgroups documented in
      blkio-controller.txt, with references to cfq-iosched.txt.
      Also, cgroups v2 documentation describes v1 behavior of both cpu and
      blkio controllers in an "Issues with v1" section.
      
      Let's document this behavior also for cgroups v2 to make life easier for
      users.
      Signed-off-by: default avatarMaciej S. Szmigiero <mail@maciej.szmigiero.name>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      c4e0842b
  3. 10 Jan, 2018 1 commit
  4. 02 Jan, 2018 3 commits
  5. 20 Dec, 2017 1 commit
    • Tejun Heo's avatar
      cgroup: fix css_task_iter crash on CSS_TASK_ITER_PROC · 74d0833c
      Tejun Heo authored
      While teaching css_task_iter to handle skipping over tasks which
      aren't group leaders, bc2fb7ed ("cgroup: add @flags to
      css_task_iter_start() and implement CSS_TASK_ITER_PROCS") introduced a
      silly bug.
      
      CSS_TASK_ITER_PROCS is implemented by repeating
      css_task_iter_advance() while the advanced cursor is pointing to a
      non-leader thread.  However, the cursor variable, @l, wasn't updated
      when the iteration has to advance to the next css_set and the
      following repetition would operate on the terminal @l from the
      previous iteration which isn't pointing to a valid task leading to
      oopses like the following or infinite looping.
      
        BUG: unable to handle kernel NULL pointer dereference at 0000000000000254
        IP: __task_pid_nr_ns+0xc7/0xf0
        PGD 0 P4D 0
        Oops: 0000 [#1] SMP
        ...
        CPU: 2 PID: 1 Comm: systemd Not tainted 4.14.4-200.fc26.x86_64 #1
        Hardware name: System manufacturer System Product Name/PRIME B350M-A, BIOS 3203 11/09/2017
        task: ffff88c4baee8000 task.stack: ffff96d5c3158000
        RIP: 0010:__task_pid_nr_ns+0xc7/0xf0
        RSP: 0018:ffff96d5c315bd50 EFLAGS: 00010206
        RAX: 0000000000000000 RBX: ffff88c4b68c6000 RCX: 0000000000000250
        RDX: ffffffffa5e47960 RSI: 0000000000000000 RDI: ffff88c490f6ab00
        RBP: ffff96d5c315bd50 R08: 0000000000001000 R09: 0000000000000005
        R10: ffff88c4be006b80 R11: ffff88c42f1b8004 R12: ffff96d5c315bf18
        R13: ffff88c42d7dd200 R14: ffff88c490f6a510 R15: ffff88c4b68c6000
        FS:  00007f9446f8ea00(0000) GS:ffff88c4be680000(0000) knlGS:0000000000000000
        CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
        CR2: 0000000000000254 CR3: 00000007f956f000 CR4: 00000000003406e0
        Call Trace:
         cgroup_procs_show+0x19/0x30
         cgroup_seqfile_show+0x4c/0xb0
         kernfs_seq_show+0x21/0x30
         seq_read+0x2ec/0x3f0
         kernfs_fop_read+0x134/0x180
         __vfs_read+0x37/0x160
         ? security_file_permission+0x9b/0xc0
         vfs_read+0x8e/0x130
         SyS_read+0x55/0xc0
         entry_SYSCALL_64_fastpath+0x1a/0xa5
        RIP: 0033:0x7f94455f942d
        RSP: 002b:00007ffe81ba2d00 EFLAGS: 00000293 ORIG_RAX: 0000000000000000
        RAX: ffffffffffffffda RBX: 00005574e2233f00 RCX: 00007f94455f942d
        RDX: 0000000000001000 RSI: 00005574e2321a90 RDI: 000000000000002b
        RBP: 0000000000000000 R08: 00005574e2321a90 R09: 00005574e231de60
        R10: 00007f94458c8b38 R11: 0000000000000293 R12: 00007f94458c8ae0
        R13: 00007ffe81ba3800 R14: 0000000000000000 R15: 00005574e2116560
        Code: 04 74 0e 89 f6 48 8d 04 76 48 8d 04 c5 f0 05 00 00 48 8b bf b8 05 00 00 48 01 c7 31 c0 48 8b 0f 48 85 c9 74 18 8b b2 30 08 00 00 <3b> 71 04 77 0d 48 c1 e6 05 48 01 f1 48 3b 51 38 74 09 5d c3 8b
        RIP: __task_pid_nr_ns+0xc7/0xf0 RSP: ffff96d5c315bd50
      
      Fix it by moving the initialization of the cursor below the repeat
      label.  While at it, rename it to @next for readability.
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      Fixes: bc2fb7ed ("cgroup: add @flags to css_task_iter_start() and implement CSS_TASK_ITER_PROCS")
      Cc: stable@vger.kernel.org # v4.14+
      Reported-by: default avatarLaura Abbott <labbott@redhat.com>
      Reported-by: default avatarBronek Kozicki <brok@incorrekt.com>
      Reported-by: default avatarGeorge Amanakis <gamanakis@gmail.com>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      74d0833c
  6. 19 Dec, 2017 1 commit
    • Prateek Sood's avatar
      cgroup: Fix deadlock in cpu hotplug path · 116d2f74
      Prateek Sood authored
      Deadlock during cgroup migration from cpu hotplug path when a task T is
      being moved from source to destination cgroup.
      
      kworker/0:0
      cpuset_hotplug_workfn()
         cpuset_hotplug_update_tasks()
            hotplug_update_tasks_legacy()
              remove_tasks_in_empty_cpuset()
                cgroup_transfer_tasks() // stuck in iterator loop
                  cgroup_migrate()
                    cgroup_migrate_add_task()
      
      In cgroup_migrate_add_task() it checks for PF_EXITING flag of task T.
      Task T will not migrate to destination cgroup. css_task_iter_start()
      will keep pointing to task T in loop waiting for task T cg_list node
      to be removed.
      
      Task T
      do_exit()
        exit_signals() // sets PF_EXITING
        exit_task_namespaces()
          switch_task_namespaces()
            free_nsproxy()
              put_mnt_ns()
                drop_collected_mounts()
                  namespace_unlock()
                    synchronize_rcu()
                      _synchronize_rcu_expedited()
                        schedule_work() // on cpu0 low priority worker pool
                        wait_event() // waiting for work item to execute
      
      Task T inserted a work item in the worklist of cpu0 low priority
      worker pool. It is waiting for expedited grace period work item
      to execute. This work item will only be executed once kworker/0:0
      complete execution of cpuset_hotplug_workfn().
      
      kworker/0:0 ==> Task T ==>kworker/0:0
      
      In case of PF_EXITING task being migrated from source to destination
      cgroup, migrate next available task in source cgroup.
      Signed-off-by: default avatarPrateek Sood <prsood@codeaurora.org>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      116d2f74
  7. 15 Dec, 2017 1 commit
  8. 13 Dec, 2017 1 commit
  9. 12 Dec, 2017 1 commit
  10. 05 Dec, 2017 1 commit
  11. 04 Dec, 2017 2 commits
  12. 28 Nov, 2017 1 commit
  13. 27 Nov, 2017 4 commits
    • Wang Long's avatar
      debug cgroup: use task_css_set instead of rcu_dereference · ddf7005f
      Wang Long authored
      This macro `task_css_set` verifies that the caller is
      inside proper critical section if the kernel set CONFIG_PROVE_RCU=y.
      Signed-off-by: default avatarWang Long <wanglong19@meituan.com>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      ddf7005f
    • Prateek Sood's avatar
      cpuset: Make cpuset hotplug synchronous · 1599a185
      Prateek Sood authored
      Convert cpuset_hotplug_workfn() into synchronous call for cpu hotplug
      path. For memory hotplug path it still gets queued as a work item.
      
      Since cpuset_hotplug_workfn() can be made synchronous for cpu hotplug
      path, it is not required to wait for cpuset hotplug while thawing
      processes.
      Signed-off-by: default avatarPrateek Sood <prsood@codeaurora.org>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      1599a185
    • Prateek Sood's avatar
      cgroup/cpuset: remove circular dependency deadlock · aa24163b
      Prateek Sood authored
      Remove circular dependency deadlock in a scenario where hotplug of CPU is
      being done while there is updation in cgroup and cpuset triggered from
      userspace.
      
      Process A => kthreadd => Process B => Process C => Process A
      
      Process A
      cpu_subsys_offline();
        cpu_down();
          _cpu_down();
            percpu_down_write(&cpu_hotplug_lock); //held
            cpuhp_invoke_callback();
      	     workqueue_offline_cpu();
                  queue_work_on(); // unbind_work on system_highpri_wq
                     __queue_work();
                       insert_work();
                          wake_up_worker();
                  flush_work();
                     wait_for_completion();
      
      worker_thread();
         manage_workers();
            create_worker();
      	     kthread_create_on_node();
      		    wake_up_process(kthreadd_task);
      
      kthreadd
      kthreadd();
        kernel_thread();
          do_fork();
            copy_process();
              percpu_down_read(&cgroup_threadgroup_rwsem);
                __rwsem_down_read_failed_common(); //waiting
      
      Process B
      kernfs_fop_write();
        cgroup_file_write();
          cgroup_procs_write();
            percpu_down_write(&cgroup_threadgroup_rwsem); //held
            cgroup_attach_task();
              cgroup_migrate();
                cgroup_migrate_execute();
                  cpuset_can_attach();
                    mutex_lock(&cpuset_mutex); //waiting
      
      Process C
      kernfs_fop_write();
        cgroup_file_write();
          cpuset_write_resmask();
            mutex_lock(&cpuset_mutex); //held
            update_cpumask();
              update_cpumasks_hier();
                rebuild_sched_domains_locked();
                  get_online_cpus();
                    percpu_down_read(&cpu_hotplug_lock); //waiting
      
      Eliminating deadlock by reversing the locking order for cpuset_mutex and
      cpu_hotplug_lock.
      Signed-off-by: default avatarPrateek Sood <prsood@codeaurora.org>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      aa24163b
    • Linus Torvalds's avatar
      Linux 4.15-rc1 · 4fbd8d19
      Linus Torvalds authored
      4fbd8d19
  14. 26 Nov, 2017 8 commits
    • Linus Torvalds's avatar
      Merge branch 'fixes' of git://git.armlinux.org.uk/~rmk/linux-arm · bbecb1cf
      Linus Torvalds authored
      Pull ARM fixes from Russell King:
      
       - LPAE fixes for kernel-readonly regions
      
       - Fix for get_user_pages_fast on LPAE systems
      
       - avoid tying decompressor to a particular platform if DEBUG_LL is
         enabled
      
       - BUG if we attempt to return to userspace but the to-be-restored PSR
         value keeps us in privileged mode (defeating an issue that ftracetest
         found)
      
      * 'fixes' of git://git.armlinux.org.uk/~rmk/linux-arm:
        ARM: BUG if jumping to usermode address in kernel mode
        ARM: 8722/1: mm: make STRICT_KERNEL_RWX effective for LPAE
        ARM: 8721/1: mm: dump: check hardware RO bit for LPAE
        ARM: make decompressor debug output user selectable
        ARM: fix get_user_pages_fast
      bbecb1cf
    • Linus Torvalds's avatar
      Merge branch 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · dec0029a
      Linus Torvalds authored
      Pull irq fixes from Thomas Glexiner:
      
       - unbreak the irq trigger type check for legacy platforms
      
       - a handful fixes for ARM GIC v3/4 interrupt controllers
      
       - a few trivial fixes all over the place
      
      * 'irq-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        genirq/matrix: Make - vs ?: Precedence explicit
        irqchip/imgpdc: Use resource_size function on resource object
        irqchip/qcom: Fix u32 comparison with value less than zero
        irqchip/exiu: Fix return value check in exiu_init()
        irqchip/gic-v3-its: Remove artificial dependency on PCI
        irqchip/gic-v4: Add forward definition of struct irq_domain_ops
        irqchip/gic-v3: pr_err() strings should end with newlines
        irqchip/s3c24xx: pr_err() strings should end with newlines
        irqchip/gic-v3: Fix ppi-partitions lookup
        irqchip/gic-v4: Clear IRQ_DISABLE_UNLAZY again if mapping fails
        genirq: Track whether the trigger type has been set
      dec0029a
    • Linus Torvalds's avatar
      Merge branch 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 02fc87b1
      Linus Torvalds authored
      Pull misc x86 fixes from Ingo Molnar:
       - topology enumeration fixes
       - KASAN fix
       - two entry fixes (not yet the big series related to KASLR)
       - remove obsolete code
       - instruction decoder fix
       - better /dev/mem sanity checks, hopefully working better this time
       - pkeys fixes
       - two ACPI fixes
       - 5-level paging related fixes
       - UMIP fixes that should make application visible faults more debuggable
       - boot fix for weird virtualization environment
      
      * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (24 commits)
        x86/decoder: Add new TEST instruction pattern
        x86/PCI: Remove unused HyperTransport interrupt support
        x86/umip: Fix insn_get_code_seg_params()'s return value
        x86/boot/KASLR: Remove unused variable
        x86/entry/64: Add missing irqflags tracing to native_load_gs_index()
        x86/mm/kasan: Don't use vmemmap_populate() to initialize shadow
        x86/entry/64: Fix entry_SYSCALL_64_after_hwframe() IRQ tracing
        x86/pkeys/selftests: Fix protection keys write() warning
        x86/pkeys/selftests: Rename 'si_pkey' to 'siginfo_pkey'
        x86/mpx/selftests: Fix up weird arrays
        x86/pkeys: Update documentation about availability
        x86/umip: Print a warning into the syslog if UMIP-protected instructions are used
        x86/smpboot: Fix __max_logical_packages estimate
        x86/topology: Avoid wasting 128k for package id array
        perf/x86/intel/uncore: Cache logical pkg id in uncore driver
        x86/acpi: Reduce code duplication in mp_override_legacy_irq()
        x86/acpi: Handle SCI interrupts above legacy space gracefully
        x86/boot: Fix boot failure when SMP MP-table is based at 0
        x86/mm: Limit mmap() of /dev/mem to valid physical addresses
        x86/selftests: Add test for mapping placement for 5-level paging
        ...
      02fc87b1
    • Linus Torvalds's avatar
      Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 6830c8db
      Linus Torvalds authored
      Pull scheduler fixes from Ingo Molnar:
       "Misc fixes: a documentation fix, a Sparse warning fix and a debugging
        fix"
      
      * 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched/debug: Fix task state recording/printout
        sched/deadline: Don't use dubious signed bitfields
        sched/deadline: Fix the description of runtime accounting in the documentation
      6830c8db
    • Linus Torvalds's avatar
      Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 580e3d55
      Linus Torvalds authored
      Pull perf fixes from Ingo Molnar:
       "Misc fixes: two PMU driver fixes and a memory leak fix"
      
      * 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf/core: Fix memory leak triggered by perf --namespace
        perf/x86/intel/uncore: Add event constraint for BDX PCU
        perf/x86/intel: Hide TSX events when RTM is not supported
      580e3d55
    • Linus Torvalds's avatar
      Merge branch 'locking-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · cd4b5d5d
      Linus Torvalds authored
      Pull static key fix from Ingo Molnar:
       "Fix a boot warning related to bad init ordering of the static keys
        self-test"
      
      * 'locking-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        jump_label: Invoke jump_label_test() via early_initcall()
      cd4b5d5d
    • Linus Torvalds's avatar
      Merge branch 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · fcbc38b1
      Linus Torvalds authored
      Pull objtool fixes from Ingo Molnar:
       "A handful of objtool fixes, most of them related to making the UAPI
        header-syncing warnings easier to read and easier to act upon"
      
      * 'core-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        tools/headers: Sync objtool UAPI header
        objtool: Fix cross-build
        objtool: Move kernel headers/code sync check to a script
        objtool: Move synced files to their original relative locations
        objtool: Make unreachable annotation inline asms explicitly volatile
        objtool: Add a comment for the unreachable annotation macros
      fcbc38b1
    • Russell King's avatar
      ARM: BUG if jumping to usermode address in kernel mode · 8bafae20
      Russell King authored
      Detect if we are returning to usermode via the normal kernel exit paths
      but the saved PSR value indicates that we are in kernel mode.  This
      could occur due to corrupted stack state, which has been observed with
      "ftracetest".
      
      This ensures that we catch the problem case before we get to user code.
      Signed-off-by: default avatarRussell King <rmk+kernel@armlinux.org.uk>
      8bafae20
  15. 25 Nov, 2017 7 commits
    • Linus Torvalds's avatar
      Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 844056fd
      Linus Torvalds authored
      Pull timer updates from Thomas Gleixner:
      
       - The final conversion of timer wheel timers to timer_setup().
      
         A few manual conversions and a large coccinelle assisted sweep and
         the removal of the old initialization mechanisms and the related
         code.
      
       - Remove the now unused VSYSCALL update code
      
       - Fix permissions of /proc/timer_list. I still need to get rid of that
         file completely
      
       - Rename a misnomed clocksource function and remove a stale declaration
      
      * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (27 commits)
        m68k/macboing: Fix missed timer callback assignment
        treewide: Remove TIMER_FUNC_TYPE and TIMER_DATA_TYPE casts
        timer: Remove redundant __setup_timer*() macros
        timer: Pass function down to initialization routines
        timer: Remove unused data arguments from macros
        timer: Switch callback prototype to take struct timer_list * argument
        timer: Pass timer_list pointer to callbacks unconditionally
        Coccinelle: Remove setup_timer.cocci
        timer: Remove setup_*timer() interface
        timer: Remove init_timer() interface
        treewide: setup_timer() -> timer_setup() (2 field)
        treewide: setup_timer() -> timer_setup()
        treewide: init_timer() -> setup_timer()
        treewide: Switch DEFINE_TIMER callbacks to struct timer_list *
        s390: cmm: Convert timers to use timer_setup()
        lightnvm: Convert timers to use timer_setup()
        drivers/net: cris: Convert timers to use timer_setup()
        drm/vc4: Convert timers to use timer_setup()
        block/laptop_mode: Convert timers to use timer_setup()
        net/atm/mpc: Avoid open-coded assignment of timer callback function
        ...
      844056fd
    • Linus Torvalds's avatar
      Merge tag 'arc-4.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc · ca122fe3
      Linus Torvalds authored
      Pull ARC updates from Vineet Gupta:
      
       - more changes for HS48 cores: supporting MMUv5, detecting new
         micro-arch gizmos
      
       - axs10x platform wiring up reset driver merged in this cycle
      
       - ARC perf driver optimizations
      
      * tag 'arc-4.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc:
        ARC: perf: avoid vmalloc backed mmap
        ARCv2: perf: optimize given that num counters <= 32
        ARCv2: perf: tweak overflow interrupt
        ARC: [plat-axs10x] DTS: Add reset controller node to manage ethernet reset
        ARCv2: boot log: updates for HS48: dual-issue, ECC, Loop Buffer
        ARCv2: Accomodate HS48 MMUv5 by relaxing MMU ver checking
        ARC: [plat-axs10x] auto-select AXS101 or AXS103 given the  ISA config
      ca122fe3
    • Linus Torvalds's avatar
      Merge tag 'kbuild-v4.15-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild · 5e2fda47
      Linus Torvalds authored
      Pull more Kbuild updates from Masahiro Yamada:
      
       - use 'pwd' instead of '/bin/pwd' for portability
      
       - clean up Makefiles
      
       - fix ld-option for clang
      
       - fix malloc'ed data size in Kconfig
      
       - fix parallel building along with coccicheck
      
       - fix a minor issue of package building
      
       - prompt to use "rpm-pkg" instead of "rpm"
      
       - clean up *.i and *.lst patterns by "make clean"
      
      * tag 'kbuild-v4.15-2' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
        kbuild: drop $(extra-y) from real-objs-y
        kbuild: clean up *.i and *.lst patterns by make clean
        kbuild: rpm: prompt to use "rpm-pkg" if "rpm" target is used
        kbuild: pkg: use --transform option to prefix paths in tar
        coccinelle: fix parallel build with CHECK=scripts/coccicheck
        kconfig/symbol.c: use correct pointer type argument for sizeof
        kbuild: Set KBUILD_CFLAGS before incl. arch Makefile
        kbuild: remove all dummy assignments to obj-
        kbuild: create built-in.o automatically if parent directory wants it
        kbuild: /bin/pwd -> pwd
      5e2fda47
    • Linus Torvalds's avatar
      Merge tag 'afs-fixes-20171124' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs · f61ec2c9
      Linus Torvalds authored
      Pull AFS fixes from David Howells:
      
       - Make AFS file locking work again.
      
       - Don't write to a page that's being written out, but wait for it to
         complete.
      
       - Do d_drop() and d_add() in the right places.
      
       - Put keys on error paths.
      
       - Remove some redundant code.
      
      * tag 'afs-fixes-20171124' of git://git.kernel.org/pub/scm/linux/kernel/git/dhowells/linux-fs:
        afs: remove redundant assignment of dvnode to itself
        afs: cell: Remove unnecessary code in afs_lookup_cell
        afs: Fix signal handling in some file ops
        afs: Fix some dentry handling in dir ops and missing key_puts
        afs: Make afs_write_begin() avoid writing to a page that's being stored
        afs: Fix file locking
      f61ec2c9
    • Linus Torvalds's avatar
      Merge tag 'kvm-4.15-2' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 7753ea09
      Linus Torvalds authored
      Pull KVM updates from Radim Krčmář:
       "Trimmed second batch of KVM changes for Linux 4.15:
      
         - GICv4 Support for KVM/ARM
      
         - re-introduce support for CPUs without virtual NMI (cc stable) and
           allow testing of KVM without virtual NMI on available CPUs
      
         - fix long-standing performance issues with assigned devices on AMD
           (cc stable)"
      
      * tag 'kvm-4.15-2' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (30 commits)
        kvm: vmx: Allow disabling virtual NMI support
        kvm: vmx: Reinstate support for CPUs without virtual NMI
        KVM: SVM: obey guest PAT
        KVM: arm/arm64: Don't queue VLPIs on INV/INVALL
        KVM: arm/arm64: Fix GICv4 ITS initialization issues
        KVM: arm/arm64: GICv4: Theory of operations
        KVM: arm/arm64: GICv4: Enable VLPI support
        KVM: arm/arm64: GICv4: Prevent userspace from changing doorbell affinity
        KVM: arm/arm64: GICv4: Prevent a VM using GICv4 from being saved
        KVM: arm/arm64: GICv4: Enable virtual cpuif if VLPIs can be delivered
        KVM: arm/arm64: GICv4: Hook vPE scheduling into vgic flush/sync
        KVM: arm/arm64: GICv4: Use the doorbell interrupt as an unblocking source
        KVM: arm/arm64: GICv4: Add doorbell interrupt handling
        KVM: arm/arm64: GICv4: Use pending_last as a scheduling hint
        KVM: arm/arm64: GICv4: Handle INVALL applied to a vPE
        KVM: arm/arm64: GICv4: Propagate property updates to VLPIs
        KVM: arm/arm64: GICv4: Handle MOVALL applied to a vPE
        KVM: arm/arm64: GICv4: Handle CLEAR applied to a VLPI
        KVM: arm/arm64: GICv4: Propagate affinity changes to the physical ITS
        KVM: arm/arm64: GICv4: Unmap VLPI when freeing an LPI
        ...
      7753ea09
    • Linus Torvalds's avatar
      Merge tag 'powerpc-4.15-2' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux · 83ada031
      Linus Torvalds authored
      Pull powerpc fixes from Michael Ellerman:
       "A small batch of fixes, about 50% tagged for stable and the rest for
        recently merged code.
      
        There's one more fix for the >128T handling on hash. Once a process
        had requested a single mmap above 128T we would then always search
        above 128T. The correct behaviour is to consider the hint address in
        isolation for each mmap request.
      
        Then a couple of fixes for the IMC PMU, a missing EXPORT_SYMBOL in
        VAS, a fix for STRICT_KERNEL_RWX on 32-bit, and a fix to correctly
        identify P9 DD2.1 but in code that is currently not used by default.
      
        Thanks to: Aneesh Kumar K.V, Christophe Leroy, Madhavan Srinivasan,
        Sukadev Bhattiprolu"
      
      * tag 'powerpc-4.15-2' of git://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux:
        powerpc/64s: Fix Power9 DD2.1 logic in DT CPU features
        powerpc/perf: Fix IMC_MAX_PMU macro
        powerpc/perf: Fix pmu_count to count only nest imc pmus
        powerpc: Fix boot on BOOK3S_32 with CONFIG_STRICT_KERNEL_RWX
        powerpc/perf/imc: Use cpu_to_node() not topology_physical_package_id()
        powerpc/vas: Export chip_to_vas_id()
        powerpc/64s/slice: Use addr limit when computing slice mask
      83ada031
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending · eda5d471
      Linus Torvalds authored
      Pull SCSI target updates from Nicholas Bellinger:
      
       "This series is predominantly bug-fixes, with a few small improvements
        that have been outstanding over the last release cycle.
      
        As usual, the associated bug-fixes have CC' tags for stable.
      
        Also, things have been particularly quiet wrt new developments the
        last months, with most folks continuing to focus on stability atop 4.x
        stable kernels for their respective production configurations.
      
        Also at this point, the stable trees have been synced up with
        mainline. This will continue to be a priority, as production users
        tend to run exclusively atop stable kernels, a few releases behind
        mainline.
      
        The highlights include:
      
         - Fix PR PREEMPT_AND_ABORT null pointer dereference regression in
           v4.11+ (tangwenji)
      
         - Fix OOPs during removing TCMU device (Xiubo Li + Zhang Zhuoyu)
      
         - Add netlink command reply supported option for each device (Kenjiro
           Nakayama)
      
         - cxgbit: Abort the TCP connection in case of data out timeout (Varun
           Prakash)
      
         - Fix PR/ALUA file path truncation (David Disseldorp)
      
         - Fix double se_cmd completion during ->cmd_time_out (Mike Christie)
      
         - Fix QUEUE_FULL + SCSI task attribute handling in 4.1+ (Bryant Ly +
           nab)
      
         - Fix quiese during transport_write_pending_qf endless loop (nab)
      
         - Avoid early CMD_T_PRE_EXECUTE failures during ABORT_TASK in 3.14+
           (Don White + nab)"
      
      * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending: (35 commits)
        tcmu: Add a missing unlock on an error path
        tcmu: Fix some memory corruption
        iscsi-target: Fix non-immediate TMR reference leak
        iscsi-target: Make TASK_REASSIGN use proper se_cmd->cmd_kref
        target: Avoid early CMD_T_PRE_EXECUTE failures during ABORT_TASK
        target: Fix quiese during transport_write_pending_qf endless loop
        target: Fix caw_sem leak in transport_generic_request_failure
        target: Fix QUEUE_FULL + SCSI task attribute handling
        iSCSI-target: Use common error handling code in iscsi_decode_text_input()
        target/iscsi: Detect conn_cmd_list corruption early
        target/iscsi: Fix a race condition in iscsit_add_reject_from_cmd()
        target/iscsi: Modify iscsit_do_crypto_hash_buf() prototype
        target/iscsi: Fix endianness in an error message
        target/iscsi: Use min() in iscsit_dump_data_payload() instead of open-coding it
        target/iscsi: Define OFFLOAD_BUF_SIZE once
        target: Inline transport_put_cmd()
        target: Suppress gcc 7 fallthrough warnings
        target: Move a declaration of a global variable into a header file
        tcmu: fix double se_cmd completion
        target: return SAM_STAT_TASK_SET_FULL for TCM_OUT_OF_RESOURCES
        ...
      eda5d471
  16. 24 Nov, 2017 5 commits