mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-20 21:51:05 +00:00
Printk changes for 5.2
-----BEGIN PGP SIGNATURE----- iQIzBAABCAAdFiEESH4wyp42V4tXvYsjUqAMR0iAlPIFAlzP8nQACgkQUqAMR0iA lPK79A/+NkRouqA9ihAZhUbgW0DHzOAFvUJSBgX11HQAZbGjngakuoyYFvwUx0T0 m80SUTCysxQrWl+xLdccPZ9ZrhP2KFQrEBEdeYHZ6ymcYcl83+3bOIBS7VwdZAbO EzB8u/58uU/sI6ABL4lF7ZF/+R+U4CXveEUoVUF04bxdPOxZkRX4PT8u3DzCc+RK r4yhwQUXGcKrHa2GrRL3GXKsDxcnRdFef/nzq4RFSZsi0bpskzEj34WrvctV6j+k FH/R3kEcZrtKIMPOCoDMMWq07yNqK/QKj0MJlGoAlwfK4INgcrSXLOx+pAmr6BNq uMKpkxCFhnkZVKgA/GbKEGzFf+ZGz9+2trSFka9LD2Ig6DIstwXqpAgiUK8JFQYj lq1mTaJZD3DfF2vnGHGeAfBFG3XETv+mIT/ow6BcZi3NyNSVIaqa5GAR+lMc6xkR waNkcMDkzLFuP1r0p7ZizXOksk9dFkMP3M6KqJomRtApwbSNmtt+O2jvyLPvB3+w wRyN9WT7IJZYo4v0rrD5Bl6BjV15ZeCPRSFZRYofX+vhcqJQsFX1M9DeoNqokh55 Cri8f6MxGzBVjE1G70y2/cAFFvKEKJud0NUIMEuIbcy+xNrEAWPF8JhiwpKKnU10 c0u674iqHJ2HeVsYWZF0zqzqQ6E1Idhg/PrXfuVuhAaL5jIOnYY= =WZfC -----END PGP SIGNATURE----- Merge tag 'printk-for-5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/pmladek/printk Pull printk updates from Petr Mladek: - Allow state reset of printk_once() calls. - Prevent crashes when dereferencing invalid pointers in vsprintf(). Only the first byte is checked for simplicity. - Make vsprintf warnings consistent and inlined. - Treewide conversion of obsolete %pf, %pF to %ps, %pF printf modifiers. - Some clean up of vsprintf and test_printf code. * tag 'printk-for-5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/pmladek/printk: lib/vsprintf: Make function pointer_string static vsprintf: Limit the length of inlined error messages vsprintf: Avoid confusion between invalid address and value vsprintf: Prevent crash when dereferencing invalid pointers vsprintf: Consolidate handling of unknown pointer specifiers vsprintf: Factor out %pO handler as kobject_string() vsprintf: Factor out %pV handler as va_format() vsprintf: Factor out %p[iI] handler as ip_addr_string() vsprintf: Do not check address of well-known strings vsprintf: Consistent %pK handling for kptr_restrict == 0 vsprintf: Shuffle restricted_pointer() printk: Tie printk_once / printk_deferred_once into .data.once for reset treewide: Switch printk users from %pf and %pF to %ps and %pS, respectively lib/test_printf: Switch to bitmap_zalloc()
This commit is contained in:
commit
0968621917
60 changed files with 410 additions and 272 deletions
|
@ -2271,7 +2271,7 @@ __acquires(&pool->lock)
|
|||
|
||||
if (unlikely(in_atomic() || lockdep_depth(current) > 0)) {
|
||||
pr_err("BUG: workqueue leaked lock or atomic: %s/0x%08x/%d\n"
|
||||
" last function: %pf\n",
|
||||
" last function: %ps\n",
|
||||
current->comm, preempt_count(), task_pid_nr(current),
|
||||
worker->current_func);
|
||||
debug_show_held_locks(current);
|
||||
|
@ -2590,11 +2590,11 @@ static void check_flush_dependency(struct workqueue_struct *target_wq,
|
|||
worker = current_wq_worker();
|
||||
|
||||
WARN_ONCE(current->flags & PF_MEMALLOC,
|
||||
"workqueue: PF_MEMALLOC task %d(%s) is flushing !WQ_MEM_RECLAIM %s:%pf",
|
||||
"workqueue: PF_MEMALLOC task %d(%s) is flushing !WQ_MEM_RECLAIM %s:%ps",
|
||||
current->pid, current->comm, target_wq->name, target_func);
|
||||
WARN_ONCE(worker && ((worker->current_pwq->wq->flags &
|
||||
(WQ_MEM_RECLAIM | __WQ_LEGACY)) == WQ_MEM_RECLAIM),
|
||||
"workqueue: WQ_MEM_RECLAIM %s:%pf is flushing !WQ_MEM_RECLAIM %s:%pf",
|
||||
"workqueue: WQ_MEM_RECLAIM %s:%ps is flushing !WQ_MEM_RECLAIM %s:%ps",
|
||||
worker->current_pwq->wq->name, worker->current_func,
|
||||
target_wq->name, target_func);
|
||||
}
|
||||
|
@ -4581,7 +4581,7 @@ void print_worker_info(const char *log_lvl, struct task_struct *task)
|
|||
probe_kernel_read(desc, worker->desc, sizeof(desc) - 1);
|
||||
|
||||
if (fn || name[0] || desc[0]) {
|
||||
printk("%sWorkqueue: %s %pf", log_lvl, name, fn);
|
||||
printk("%sWorkqueue: %s %ps", log_lvl, name, fn);
|
||||
if (strcmp(name, desc))
|
||||
pr_cont(" (%s)", desc);
|
||||
pr_cont("\n");
|
||||
|
@ -4606,7 +4606,7 @@ static void pr_cont_work(bool comma, struct work_struct *work)
|
|||
pr_cont("%s BAR(%d)", comma ? "," : "",
|
||||
task_pid_nr(barr->task));
|
||||
} else {
|
||||
pr_cont("%s %pf", comma ? "," : "", work->func);
|
||||
pr_cont("%s %ps", comma ? "," : "", work->func);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -4638,7 +4638,7 @@ static void show_pwq(struct pool_workqueue *pwq)
|
|||
if (worker->current_pwq != pwq)
|
||||
continue;
|
||||
|
||||
pr_cont("%s %d%s:%pf", comma ? "," : "",
|
||||
pr_cont("%s %d%s:%ps", comma ? "," : "",
|
||||
task_pid_nr(worker->task),
|
||||
worker == pwq->wq->rescuer ? "(RESCUER)" : "",
|
||||
worker->current_func);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue