mirror of
https://github.com/tbsdtv/linux_media.git
synced 2025-07-23 12:43:29 +02:00
Merge tag 'mm-nonmm-stable-2022-12-12' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm
Pull non-MM updates from Andrew Morton: - A ptrace API cleanup series from Sergey Shtylyov - Fixes and cleanups for kexec from ye xingchen - nilfs2 updates from Ryusuke Konishi - squashfs feature work from Xiaoming Ni: permit configuration of the filesystem's compression concurrency from the mount command line - A series from Akinobu Mita which addresses bound checking errors when writing to debugfs files - A series from Yang Yingliang to address rapidio memory leaks - A series from Zheng Yejian to address possible overflow errors in encode_comp_t() - And a whole shower of singleton patches all over the place * tag 'mm-nonmm-stable-2022-12-12' of git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm: (79 commits) ipc: fix memory leak in init_mqueue_fs() hfsplus: fix bug causing custom uid and gid being unable to be assigned with mount rapidio: devices: fix missing put_device in mport_cdev_open kcov: fix spelling typos in comments hfs: Fix OOB Write in hfs_asc2mac hfs: fix OOB Read in __hfs_brec_find relay: fix type mismatch when allocating memory in relay_create_buf() ocfs2: always read both high and low parts of dinode link count io-mapping: move some code within the include guarded section kernel: kcsan: kcsan_test: build without structleak plugin mailmap: update email for Iskren Chernev eventfd: change int to __u64 in eventfd_signal() ifndef CONFIG_EVENTFD rapidio: fix possible UAF when kfifo_alloc() fails relay: use strscpy() is more robust and safer cpumask: limit visibility of FORCE_NR_CPUS acct: fix potential integer overflow in encode_comp_t() acct: fix accuracy loss for input value of encode_comp_t() linux/init.h: include <linux/build_bug.h> and <linux/stringify.h> rapidio: rio: fix possible name leak in rio_register_mport() rapidio: fix possible name leaks when rio_add_device() fails ...
This commit is contained in:
@@ -437,6 +437,7 @@ static int object_cpu_offline(unsigned int cpu)
|
||||
struct debug_percpu_free *percpu_pool;
|
||||
struct hlist_node *tmp;
|
||||
struct debug_obj *obj;
|
||||
unsigned long flags;
|
||||
|
||||
/* Remote access is safe as the CPU is dead already */
|
||||
percpu_pool = per_cpu_ptr(&percpu_obj_pool, cpu);
|
||||
@@ -444,6 +445,12 @@ static int object_cpu_offline(unsigned int cpu)
|
||||
hlist_del(&obj->node);
|
||||
kmem_cache_free(obj_cache, obj);
|
||||
}
|
||||
|
||||
raw_spin_lock_irqsave(&pool_lock, flags);
|
||||
obj_pool_used -= percpu_pool->obj_free;
|
||||
debug_objects_freed += percpu_pool->obj_free;
|
||||
raw_spin_unlock_irqrestore(&pool_lock, flags);
|
||||
|
||||
percpu_pool->obj_free = 0;
|
||||
|
||||
return 0;
|
||||
@@ -1318,6 +1325,8 @@ static int __init debug_objects_replace_static_objects(void)
|
||||
hlist_add_head(&obj->node, &objects);
|
||||
}
|
||||
|
||||
debug_objects_allocated += i;
|
||||
|
||||
/*
|
||||
* debug_objects_mem_init() is now called early that only one CPU is up
|
||||
* and interrupts have been disabled, so it is safe to replace the
|
||||
@@ -1386,6 +1395,7 @@ void __init debug_objects_mem_init(void)
|
||||
debug_objects_enabled = 0;
|
||||
kmem_cache_destroy(obj_cache);
|
||||
pr_warn("out of memory.\n");
|
||||
return;
|
||||
} else
|
||||
debug_objects_selftest();
|
||||
|
||||
|
Reference in New Issue
Block a user