1. 12 Feb, 2020 16 commits
    • Christian Brauner's avatar
      clone3: allow spawning processes into cgroups · ef2c41cf
      Christian Brauner authored
      This adds support for creating a process in a different cgroup than its
      parent. Callers can limit and account processes and threads right from
      the moment they are spawned:
      - A service manager can directly spawn new services into dedicated
        cgroups.
      - A process can be directly created in a frozen cgroup and will be
        frozen as well.
      - The initial accounting jitter experienced by process supervisors and
        daemons is eliminated with this.
      - Threaded applications or even thread implementations can choose to
        create a specific cgroup layout where each thread is spawned
        directly into a dedicated cgroup.
      
      This feature is limited to the unified hierarchy. Callers need to pass
      a directory file descriptor for the target cgroup. The caller can
      choose to pass an O_PATH file descriptor. All usual migration
      restrictions apply, i.e. there can be no processes in inner nodes. In
      general, creating a process directly in a target cgroup adheres to all
      migration restrictions.
      
      One of the biggest advantages of this feature is that CLONE_INTO_GROUP does
      not need to grab the write side of the cgroup cgroup_threadgroup_rwsem.
      This global lock makes moving tasks/threads around super expensive. With
      clone3() this lock is avoided.
      
      Cc: Tejun Heo <tj@kernel.org>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Oleg Nesterov <oleg@redhat.com>
      Cc: Johannes Weiner <hannes@cmpxchg.org>
      Cc: Li Zefan <lizefan@huawei.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: cgroups@vger.kernel.org
      Signed-off-by: default avatarChristian Brauner <christian.brauner@ubuntu.com>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      ef2c41cf
    • Christian Brauner's avatar
      cgroup: add cgroup_may_write() helper · f3553220
      Christian Brauner authored
      Add a cgroup_may_write() helper which we can use in the
      CLONE_INTO_CGROUP patch series to verify that we can write to the
      destination cgroup.
      
      Cc: Tejun Heo <tj@kernel.org>
      Cc: Johannes Weiner <hannes@cmpxchg.org>
      Cc: Li Zefan <lizefan@huawei.com>
      Cc: cgroups@vger.kernel.org
      Signed-off-by: default avatarChristian Brauner <christian.brauner@ubuntu.com>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      f3553220
    • Christian Brauner's avatar
      cgroup: refactor fork helpers · 5a5cf5cb
      Christian Brauner authored
      This refactors the fork helpers so they can be easily modified in the
      next patches. The patch just moves the cgroup threadgroup rwsem grab and
      release into the helpers. They don't need to be directly exposed in fork.c.
      
      Cc: Tejun Heo <tj@kernel.org>
      Cc: Johannes Weiner <hannes@cmpxchg.org>
      Cc: Li Zefan <lizefan@huawei.com>
      Cc: cgroups@vger.kernel.org
      Acked-by: default avatarMichal Koutný <mkoutny@suse.com>
      Signed-off-by: default avatarChristian Brauner <christian.brauner@ubuntu.com>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      5a5cf5cb
    • Christian Brauner's avatar
      cgroup: add cgroup_get_from_file() helper · 17703097
      Christian Brauner authored
      Add a helper cgroup_get_from_file(). The helper will be used in
      subsequent patches to retrieve a cgroup while holding a reference to the
      struct file it was taken from.
      
      Cc: Tejun Heo <tj@kernel.org>
      Cc: Johannes Weiner <hannes@cmpxchg.org>
      Cc: Li Zefan <lizefan@huawei.com>
      Cc: cgroups@vger.kernel.org
      Acked-by: default avatarMichal Koutný <mkoutny@suse.com>
      Signed-off-by: default avatarChristian Brauner <christian.brauner@ubuntu.com>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      17703097
    • Christian Brauner's avatar
      cgroup: unify attach permission checking · 6df970e4
      Christian Brauner authored
      The core codepaths to check whether a process can be attached to a
      cgroup are the same for threads and thread-group leaders. Only a small
      piece of code verifying that source and destination cgroup are in the
      same domain differentiates the thread permission checking from
      thread-group leader permission checking.
      Since cgroup_migrate_vet_dst() only matters cgroup2 - it is a noop on
      cgroup1 - we can move it out of cgroup_attach_task().
      All checks can now be consolidated into a new helper
      cgroup_attach_permissions() callable from both cgroup_procs_write() and
      cgroup_threads_write().
      
      Cc: Tejun Heo <tj@kernel.org>
      Cc: Li Zefan <lizefan@huawei.com>
      Cc: Johannes Weiner <hannes@cmpxchg.org>
      Cc: cgroups@vger.kernel.org
      Acked-by: default avatarMichal Koutný <mkoutny@suse.com>
      Signed-off-by: default avatarChristian Brauner <christian.brauner@ubuntu.com>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      6df970e4
    • Prateek Sood's avatar
      cpuset: Make cpuset hotplug synchronous · a49e4629
      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>
      a49e4629
    • Madhuparna Bhowmik's avatar
      cgroup.c: Use built-in RCU list checking · 3010c5b9
      Madhuparna Bhowmik authored
      list_for_each_entry_rcu has built-in RCU and lock checking.
      Pass cond argument to list_for_each_entry_rcu() to silence
      false lockdep warning when  CONFIG_PROVE_RCU_LIST is enabled
      by default.
      
      Even though the function css_next_child() already checks if
      cgroup_mutex or rcu_read_lock() is held using
      cgroup_assert_mutex_or_rcu_locked(), there is a need to pass
      cond to list_for_each_entry_rcu() to avoid false positive
      lockdep warning.
      Signed-off-by: default avatarMadhuparna Bhowmik <madhuparnabhowmik10@gmail.com>
      Acked-by: default avatarMichal Koutný <mkoutny@suse.com>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      3010c5b9
    • Suren Baghdasaryan's avatar
      kselftest/cgroup: add cgroup destruction test · 04189382
      Suren Baghdasaryan authored
      Add new test to verify that a cgroup with dead processes can be destroyed.
      The test spawns a child process which allocates and touches 100MB of RAM
      to ensure prolonged exit. Subsequently it kills the child, waits until
      the cgroup containing the child is empty and destroys the cgroup.
      Signed-off-by: default avatarSuren Baghdasaryan <surenb@google.com>
      [mkoutny@suse.com: Fix typo in test_cgcore_destroy comment]
      Acked-by: default avatarMichal Koutný <mkoutny@suse.com>
      Signed-off-by: default avatarMichal Koutný <mkoutny@suse.com>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      04189382
    • Michal Koutný's avatar
      cgroup: Clean up css_set task traversal · f43caa2a
      Michal Koutný authored
      css_task_iter stores pointer to head of each iterable list, this dates
      back to commit 0f0a2b4f ("cgroup: reorganize css_task_iter") when we
      did not store cur_cset. Let us utilize list heads directly in cur_cset
      and streamline css_task_iter_advance_css_set a bit. This is no
      intentional function change.
      Signed-off-by: default avatarMichal Koutný <mkoutny@suse.com>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      f43caa2a
    • Michal Koutný's avatar
      cgroup: Iterate tasks that did not finish do_exit() · 9c974c77
      Michal Koutný authored
      PF_EXITING is set earlier than actual removal from css_set when a task
      is exitting. This can confuse cgroup.procs readers who see no PF_EXITING
      tasks, however, rmdir is checking against css_set membership so it can
      transitionally fail with EBUSY.
      
      Fix this by listing tasks that weren't unlinked from css_set active
      lists.
      It may happen that other users of the task iterator (without
      CSS_TASK_ITER_PROCS) spot a PF_EXITING task before cgroup_exit(). This
      is equal to the state before commit c03cd773 ("cgroup: Include dying
      leaders with live threads in PROCS iterations") but it may be reviewed
      later.
      Reported-by: default avatarSuren Baghdasaryan <surenb@google.com>
      Fixes: c03cd773 ("cgroup: Include dying leaders with live threads in PROCS iterations")
      Signed-off-by: default avatarMichal Koutný <mkoutny@suse.com>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      9c974c77
    • Vasily Averin's avatar
      cgroup: cgroup_procs_next should increase position index · 2d4ecb03
      Vasily Averin authored
      If seq_file .next fuction does not change position index,
      read after some lseek can generate unexpected output:
      
      1) dd bs=1 skip output of each 2nd elements
      $ dd if=/sys/fs/cgroup/cgroup.procs bs=8 count=1
      2
      3
      4
      5
      1+0 records in
      1+0 records out
      8 bytes copied, 0,000267297 s, 29,9 kB/s
      [test@localhost ~]$ dd if=/sys/fs/cgroup/cgroup.procs bs=1 count=8
      2
      4 <<< NB! 3 was skipped
      6 <<<    ... and 5 too
      8 <<<    ... and 7
      8+0 records in
      8+0 records out
      8 bytes copied, 5,2123e-05 s, 153 kB/s
      
       This happen because __cgroup_procs_start() makes an extra
       extra cgroup_procs_next() call
      
      2) read after lseek beyond end of file generates whole last line.
      3) read after lseek into middle of last line generates
      expected rest of last line and unexpected whole line once again.
      
      Additionally patch removes an extra position index changes in
      __cgroup_procs_start()
      
      Cc: stable@vger.kernel.org
      https://bugzilla.kernel.org/show_bug.cgi?id=206283Signed-off-by: default avatarVasily Averin <vvs@virtuozzo.com>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      2d4ecb03
    • Vasily Averin's avatar
      cgroup-v1: cgroup_pidlist_next should update position index · db8dd969
      Vasily Averin authored
      if seq_file .next fuction does not change position index,
      read after some lseek can generate unexpected output.
      
       # mount | grep cgroup
       # dd if=/mnt/cgroup.procs bs=1  # normal output
      ...
      1294
      1295
      1296
      1304
      1382
      584+0 records in
      584+0 records out
      584 bytes copied
      
      dd: /mnt/cgroup.procs: cannot skip to specified offset
      83  <<< generates end of last line
      1383  <<< ... and whole last line once again
      0+1 records in
      0+1 records out
      8 bytes copied
      
      dd: /mnt/cgroup.procs: cannot skip to specified offset
      1386  <<< generates last line anyway
      0+1 records in
      0+1 records out
      5 bytes copied
      
      https://bugzilla.kernel.org/show_bug.cgi?id=206283Signed-off-by: default avatarVasily Averin <vvs@virtuozzo.com>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      db8dd969
    • Randy Dunlap's avatar
      linux/pipe_fs_i.h: fix kernel-doc warnings after @wait was split · 0bf999f9
      Randy Dunlap authored
      Fix kernel-doc warnings in struct pipe_inode_info after @wait was
      split into @rd_wait and @wr_wait.
      
        include/linux/pipe_fs_i.h:66: warning: Function parameter or member 'rd_wait' not described in 'pipe_inode_info'
        include/linux/pipe_fs_i.h:66: warning: Function parameter or member 'wr_wait' not described in 'pipe_inode_info'
      
      Fixes: 0ddad21d ("pipe: use exclusive waits when reading or writing")
      Signed-off-by: default avatarRandy Dunlap <rdunlap@infradead.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      0bf999f9
    • Linus Torvalds's avatar
      Merge tag 'kbuild-fixes-v5.6' of... · f2850dd5
      Linus Torvalds authored
      Merge tag 'kbuild-fixes-v5.6' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild
      
      Pull Kbuild fixes from Masahiro Yamada:
      
       - fix memory corruption in scripts/kallsyms
      
       - fix the vmlinux link stage to correctly update compile.h
      
      * tag 'kbuild-fixes-v5.6' of git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild:
        kbuild: fix mismatch between .version and include/generated/compile.h
        scripts/kallsyms: fix memory corruption caused by write over-run
      f2850dd5
    • Linus Torvalds's avatar
      Merge tag 'dax-fixes-5.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm · 359c92c0
      Linus Torvalds authored
      Pull dax fixes from Dan Williams:
       "A fix for an xfstest failure and some and an update that removes an
        fsdax dependency on block devices.
      
        Summary:
      
         - Fix RWF_NOWAIT writes to properly return -EAGAIN
      
         - Clean up an unused helper
      
         - Update dax_writeback_mapping_range to not need a block_device
           argument"
      
      * tag 'dax-fixes-5.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/nvdimm/nvdimm:
        dax: pass NOWAIT flag to iomap_apply
        dax: Get rid of fs_dax_get_by_host() helper
        dax: Pass dax_dev instead of bdev to dax_writeback_mapping_range()
      359c92c0
    • Linus Torvalds's avatar
      Merge tag 'trace-v5.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace · 61a75954
      Linus Torvalds authored
      Pull tracing fixes from Steven Rostedt:
       "Various fixes:
      
         - Fix an uninitialized variable
      
         - Fix compile bug to bootconfig userspace tool (in tools directory)
      
         - Suppress some error messages of bootconfig userspace tool
      
         - Remove unneded CONFIG_LIBXBC from bootconfig
      
         - Allocate bootconfig xbc_nodes dynamically. To ease complaints about
           taking up static memory at boot up
      
         - Use of parse_args() to parse bootconfig instead of strstr() usage
           Prevents issues of double quotes containing the interested string
      
         - Fix missing ring_buffer_nest_end() on synthetic event error path
      
         - Return zero not -EINVAL on soft disabled synthetic event (soft
           disabling must be the same as hard disabling, which returns zero)
      
         - Consolidate synthetic event code (remove duplicate code)"
      
      * tag 'trace-v5.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
        tracing: Consolidate trace() functions
        tracing: Don't return -EINVAL when tracing soft disabled synth events
        tracing: Add missing nest end to synth_event_trace_start() error case
        tools/bootconfig: Suppress non-error messages
        bootconfig: Allocate xbc_nodes array dynamically
        bootconfig: Use parse_args() to find bootconfig and '--'
        tracing/kprobe: Fix uninitialized variable bug
        bootconfig: Remove unneeded CONFIG_LIBXBC
        tools/bootconfig: Fix wrong __VA_ARGS__ usage
      61a75954
  2. 11 Feb, 2020 5 commits
  3. 10 Feb, 2020 10 commits
  4. 09 Feb, 2020 9 commits
    • Linus Torvalds's avatar
      Merge tag 'zonefs-5.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/zonefs · 380a129e
      Linus Torvalds authored
      Pull new zonefs file system from Damien Le Moal:
       "Zonefs is a very simple file system exposing each zone of a zoned
        block device as a file.
      
        Unlike a regular file system with native zoned block device support
        (e.g. f2fs or the on-going btrfs effort), zonefs does not hide the
        sequential write constraint of zoned block devices to the user. As a
        result, zonefs is not a POSIX compliant file system. Its goal is to
        simplify the implementation of zoned block devices support in
        applications by replacing raw block device file accesses with a richer
        file based API, avoiding relying on direct block device file ioctls
        which may be more obscure to developers.
      
        One example of this approach is the implementation of LSM
        (log-structured merge) tree structures (such as used in RocksDB and
        LevelDB) on zoned block devices by allowing SSTables to be stored in a
        zone file similarly to a regular file system rather than as a range of
        sectors of a zoned device. The introduction of the higher level
        construct "one file is one zone" can help reducing the amount of
        changes needed in the application while at the same time allowing the
        use of zoned block devices with various programming languages other
        than C.
      
        Zonefs IO management implementation uses the new iomap generic code.
        Zonefs has been successfully tested using a functional test suite
        (available with zonefs userland format tool on github) and a prototype
        implementation of LevelDB on top of zonefs"
      
      * tag 'zonefs-5.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/dlemoal/zonefs:
        zonefs: Add documentation
        fs: New zonefs file system
      380a129e
    • Marc Zyngier's avatar
      irqchip/gic-v4.1: Avoid 64bit division for the sake of 32bit ARM · 490d332e
      Marc Zyngier authored
      In order to allow the GICv4 code to link properly on 32bit ARM,
      make sure we don't use 64bit divisions when it isn't strictly
      necessary.
      
      Fixes: 4e6437f1 ("irqchip/gic-v4.1: Ensure L2 vPE table is allocated at RD level")
      Reported-by: default avatarStephen Rothwell <sfr@canb.auug.org.au>
      Cc: Zenghui Yu <yuzenghui@huawei.com>
      Signed-off-by: default avatarMarc Zyngier <maz@kernel.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      490d332e
    • Linus Torvalds's avatar
      Merge tag '5.6-rc-smb3-plugfest-patches' of git://git.samba.org/sfrench/cifs-2.6 · d1ea35f4
      Linus Torvalds authored
      Pull cifs fixes from Steve French:
       "13 cifs/smb3 patches, most from testing at the SMB3 plugfest this week:
      
         - Important fix for multichannel and for modefromsid mounts.
      
         - Two reconnect fixes
      
         - Addition of SMB3 change notify support
      
         - Backup tools fix
      
         - A few additional minor debug improvements (tracepoints and
           additional logging found useful during testing this week)"
      
      * tag '5.6-rc-smb3-plugfest-patches' of git://git.samba.org/sfrench/cifs-2.6:
        smb3: Add defines for new information level, FileIdInformation
        smb3: print warning once if posix context returned on open
        smb3: add one more dynamic tracepoint missing from strict fsync path
        cifs: fix mode bits from dir listing when mounted with modefromsid
        cifs: fix channel signing
        cifs: add SMB3 change notification support
        cifs: make multichannel warning more visible
        cifs: fix soft mounts hanging in the reconnect code
        cifs: Add tracepoints for errors on flush or fsync
        cifs: log warning message (once) if out of disk space
        cifs: fail i/o on soft mounts if sessionsetup errors out
        smb3: fix problem with null cifs super block with previous patch
        SMB3: Backup intent flag missing from some more ops
      d1ea35f4
    • Linus Torvalds's avatar
      Merge branch 'work.vboxsf' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · 5586c3c1
      Linus Torvalds authored
      Pull vboxfs from Al Viro:
       "This is the VirtualBox guest shared folder support by Hans de Goede,
        with fixups for fs_parse folded in to avoid bisection hazards from
        those API changes..."
      
      * 'work.vboxsf' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        fs: Add VirtualBox guest shared folder (vboxsf) support
      5586c3c1
    • Linus Torvalds's avatar
      Merge tag 'x86-urgent-2020-02-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 1a2a76c2
      Linus Torvalds authored
      Pull x86 fixes from Thomas Gleixner:
       "A set of fixes for X86:
      
         - Ensure that the PIT is set up when the local APIC is disable or
           configured in legacy mode. This is caused by an ordering issue
           introduced in the recent changes which skip PIT initialization when
           the TSC and APIC frequencies are already known.
      
         - Handle malformed SRAT tables during early ACPI parsing which caused
           an infinite loop anda boot hang.
      
         - Fix a long standing race in the affinity setting code which affects
           PCI devices with non-maskable MSI interrupts. The problem is caused
           by the non-atomic writes of the MSI address (destination APIC id)
           and data (vector) fields which the device uses to construct the MSI
           message. The non-atomic writes are mandated by PCI.
      
           If both fields change and the device raises an interrupt after
           writing address and before writing data, then the MSI block
           constructs a inconsistent message which causes interrupts to be
           lost and subsequent malfunction of the device.
      
           The fix is to redirect the interrupt to the new vector on the
           current CPU first and then switch it over to the new target CPU.
           This allows to observe an eventually raised interrupt in the
           transitional stage (old CPU, new vector) to be observed in the APIC
           IRR and retriggered on the new target CPU and the new vector.
      
           The potential spurious interrupts caused by this are harmless and
           can in the worst case expose a buggy driver (all handlers have to
           be able to deal with spurious interrupts as they can and do happen
           for various reasons).
      
         - Add the missing suspend/resume mechanism for the HYPERV hypercall
           page which prevents resume hibernation on HYPERV guests. This
           change got lost before the merge window.
      
         - Mask the IOAPIC before disabling the local APIC to prevent
           potentially stale IOAPIC remote IRR bits which cause stale
           interrupt lines after resume"
      
      * tag 'x86-urgent-2020-02-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/apic: Mask IOAPIC entries when disabling the local APIC
        x86/hyperv: Suspend/resume the hypercall page for hibernation
        x86/apic/msi: Plug non-maskable MSI affinity race
        x86/boot: Handle malformed SRAT tables during early ACPI parsing
        x86/timer: Don't skip PIT setup when APIC is disabled or in legacy mode
      1a2a76c2
    • Linus Torvalds's avatar
      Merge tag 'smp-urgent-2020-02-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · f4137760
      Linus Torvalds authored
      Pull SMP fixes from Thomas Gleixner:
       "Two fixes for the SMP related functionality:
      
         - Make the UP version of smp_call_function_single() match SMP
           semantics when called for a not available CPU. Instead of emitting
           a warning and assuming that the function call target is CPU0,
           return a proper error code like the SMP version does.
      
         - Remove a superfluous check in smp_call_function_many_cond()"
      
      * tag 'smp-urgent-2020-02-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        smp/up: Make smp_call_function_single() match SMP semantics
        smp: Remove superfluous cond_func check in smp_call_function_many_cond()
      f4137760
    • Linus Torvalds's avatar
      Merge tag 'perf-urgent-2020-02-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · ca21b9b3
      Linus Torvalds authored
      Pull perf fixes from Thomas Gleixner:
       "A set of fixes and improvements for the perf subsystem:
      
        Kernel fixes:
      
         - Install cgroup events to the correct CPU context to prevent a
           potential list double add
      
         - Prevent an integer underflow in the perf mlock accounting
      
         - Add a missing prototype for arch_perf_update_userpage()
      
        Tooling:
      
         - Add a missing unlock in the error path of maps__insert() in perf
           maps.
      
         - Fix the build with the latest libbfd
      
         - Fix the perf parser so it does not delete parse event terms, which
           caused a regression for using perf with the ARM CoreSight as the
           sink configuration was missing due to the deletion.
      
         - Fix the double free in the perf CPU map merging test case
      
         - Add the missing ustring support for the perf probe command"
      
      * tag 'perf-urgent-2020-02-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        perf maps: Add missing unlock to maps__insert() error case
        perf probe: Add ustring support for perf probe command
        perf: Make perf able to build with latest libbfd
        perf test: Fix test case Merge cpu map
        perf parse: Copy string to perf_evsel_config_term
        perf parse: Refactor 'struct perf_evsel_config_term'
        kernel/events: Add a missing prototype for arch_perf_update_userpage()
        perf/cgroups: Install cgroup events to correct cpuctx
        perf/core: Fix mlock accounting in perf_mmap()
      ca21b9b3
    • Linus Torvalds's avatar
      Merge tag 'timers-urgent-2020-02-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 2fbc23c7
      Linus Torvalds authored
      Pull timer fixes from Thomas Gleixner:
       "Two small fixes for the time(r) subsystem:
      
         - Handle a subtle race between the clocksource watchdog and a
           concurrent clocksource watchdog stop/start sequence correctly to
           prevent a timer double add bug.
      
         - Fix the file path for the core time namespace file"
      
      * tag 'timers-urgent-2020-02-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        clocksource: Prevent double add_timer_on() for watchdog_timer
        MAINTAINERS: Correct path to time namespace source file
      2fbc23c7
    • Linus Torvalds's avatar
      Merge tag 'irq-urgent-2020-02-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · f06bed87
      Linus Torvalds authored
      Pull interrupt fixes from Thomas Gleixner:
       "A set of fixes for the interrupt subsystem:
      
         - Provision only ACPI enabled redistributors on GICv3
      
         - Use the proper command colums when building the INVALL command for
           the GICv3-ITS
      
         - Ensure the allocation of the L2 vPE table for GICv4.1
      
         - Correct the GICv4.1 VPROBASER programming so it uses the proper
           size
      
         - A set of small GICv4.1 tidy up patches
      
         - Configuration cleanup for C-SKY interrupt chip
      
         - Clarify the function documentation for irq_set_wake() to document
           that the wakeup functionality is orthogonal to the irq
           disable/enable mechanism"
      
      * tag 'irq-urgent-2020-02-09' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        irqchip/gic-v3-its: Rename VPENDBASER/VPROPBASER accessors
        irqchip/gic-v3-its: Remove superfluous WARN_ON
        irqchip/gic-v4.1: Drop 'tmp' in inherit_vpe_l1_table_from_rd()
        irqchip/gic-v4.1: Ensure L2 vPE table is allocated at RD level
        irqchip/gic-v4.1: Set vpe_l1_base for all redistributors
        irqchip/gic-v4.1: Fix programming of GICR_VPROPBASER_4_1_SIZE
        genirq: Clarify that irq wake state is orthogonal to enable/disable
        irqchip/gic-v3-its: Reference to its_invall_cmd descriptor when building INVALL
        irqchip: Some Kconfig cleanup for C-SKY
        irqchip/gic-v3: Only provision redistributors that are enabled in ACPI
      f06bed87