OSDN Git Service

Merge branch 'akpm' (patches from Andrew)
authorLinus Torvalds <torvalds@linux-foundation.org>
Thu, 20 Jan 2022 08:41:01 +0000 (10:41 +0200)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 20 Jan 2022 08:41:01 +0000 (10:41 +0200)
Merge more updates from Andrew Morton:
 "55 patches.

  Subsystems affected by this patch series: percpu, procfs, sysctl,
  misc, core-kernel, get_maintainer, lib, checkpatch, binfmt, nilfs2,
  hfs, fat, adfs, panic, delayacct, kconfig, kcov, and ubsan"

* emailed patches from Andrew Morton <akpm@linux-foundation.org>: (55 commits)
  lib: remove redundant assignment to variable ret
  ubsan: remove CONFIG_UBSAN_OBJECT_SIZE
  kcov: fix generic Kconfig dependencies if ARCH_WANTS_NO_INSTR
  lib/Kconfig.debug: make TEST_KMOD depend on PAGE_SIZE_LESS_THAN_256KB
  btrfs: use generic Kconfig option for 256kB page size limit
  arch/Kconfig: split PAGE_SIZE_LESS_THAN_256KB from PAGE_SIZE_LESS_THAN_64KB
  configs: introduce debug.config for CI-like setup
  delayacct: track delays from memory compact
  Documentation/accounting/delay-accounting.rst: add thrashing page cache and direct compact
  delayacct: cleanup flags in struct task_delay_info and functions use it
  delayacct: fix incomplete disable operation when switch enable to disable
  delayacct: support swapin delay accounting for swapping without blkio
  panic: remove oops_id
  panic: use error_report_end tracepoint on warnings
  fs/adfs: remove unneeded variable make code cleaner
  FAT: use io_schedule_timeout() instead of congestion_wait()
  hfsplus: use struct_group_attr() for memcpy() region
  nilfs2: remove redundant pointer sbufs
  fs/binfmt_elf: use PT_LOAD p_align values for static PIE
  const_structs.checkpatch: add frequently used ops structs
  ...

21 files changed:
1  2 
arch/Kconfig
arch/arm64/Kconfig
arch/mips/Kconfig
arch/powerpc/Kconfig
arch/powerpc/kernel/setup_64.c
arch/riscv/Kconfig
arch/x86/Kconfig
drivers/infiniband/sw/rxe/rxe_qp.c
fs/exec.c
fs/proc/array.c
include/linux/kernel.h
include/linux/kthread.h
include/linux/sched.h
kernel/kthread.c
kernel/sys.c
lib/Kconfig.debug
lib/Makefile
mm/Kconfig
mm/memory.c
mm/page_alloc.c
mm/percpu.c

diff --cc arch/Kconfig
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc fs/exec.c
Simple merge
diff --cc fs/proc/array.c
Simple merge
Simple merge
@@@ -33,7 -33,8 +33,8 @@@ struct task_struct *kthread_create_on_c
                                          unsigned int cpu,
                                          const char *namefmt);
  
 -void set_kthread_struct(struct task_struct *p);
+ void get_kthread_comm(char *buf, size_t buf_size, struct task_struct *tsk);
 +bool set_kthread_struct(struct task_struct *p);
  
  void kthread_set_per_cpu(struct task_struct *k, int cpu);
  bool kthread_is_per_cpu(struct task_struct *k);
Simple merge
@@@ -94,7 -95,19 +96,19 @@@ static inline struct kthread *__to_kthr
        return kthread;
  }
  
 -void set_kthread_struct(struct task_struct *p)
+ void get_kthread_comm(char *buf, size_t buf_size, struct task_struct *tsk)
+ {
+       struct kthread *kthread = to_kthread(tsk);
+       if (!kthread || !kthread->full_name) {
+               __get_task_comm(buf, buf_size, tsk);
+               return;
+       }
+       strscpy_pad(buf, kthread->full_name, buf_size);
+ }
 +bool set_kthread_struct(struct task_struct *p)
  {
        struct kthread *kthread;
  
@@@ -118,13 -128,17 +132,17 @@@ void free_kthread_struct(struct task_st
        struct kthread *kthread;
  
        /*
 -       * Can be NULL if this kthread was created by kernel_thread()
 -       * or if kmalloc() in kthread() failed.
 +       * Can be NULL if kmalloc() in set_kthread_struct() failed.
         */
        kthread = to_kthread(k);
+       if (!kthread)
+               return;
  #ifdef CONFIG_BLK_CGROUP
-       WARN_ON_ONCE(kthread && kthread->blkcg_css);
+       WARN_ON_ONCE(kthread->blkcg_css);
  #endif
 +      k->worker_private = NULL;
+       kfree(kthread->full_name);
        kfree(kthread);
  }
  
diff --cc kernel/sys.c
Simple merge
Simple merge
diff --cc lib/Makefile
Simple merge
diff --cc mm/Kconfig
Simple merge
diff --cc mm/memory.c
Simple merge
diff --cc mm/page_alloc.c
Simple merge
diff --cc mm/percpu.c
Simple merge