parisc: enhance warning regarding usage of O_NONBLOCK

Instead of showing only the very first application which needs
recompile, show all of them, but print them only once.

Includes typo fix noticed by Colin Ian King.

Signed-off-by: Helge Deller <deller@gmx.de>
Signed-off-by: Colin Ian King <colin.i.king@gmail.com>
This commit is contained in:
Helge Deller 2021-10-17 18:53:31 +02:00
parent 0760a9157b
commit 3759778e6b
2 changed files with 7 additions and 4 deletions

View File

@ -48,6 +48,7 @@ struct thread_info {
#define TIF_BLOCKSTEP 10 /* branch stepping? */
#define TIF_SECCOMP 11 /* secure computing */
#define TIF_SYSCALL_TRACEPOINT 12 /* syscall tracepoint instrumentation */
#define TIF_NONBLOCK_WARNING 13 /* warned about wrong O_NONBLOCK usage */
#define _TIF_SYSCALL_TRACE (1 << TIF_SYSCALL_TRACE)
#define _TIF_SIGPENDING (1 << TIF_SIGPENDING)

View File

@ -409,10 +409,12 @@ long parisc_personality(unsigned long personality)
static int FIX_O_NONBLOCK(int flags)
{
if (flags & O_NONBLOCK_MASK_OUT) {
struct task_struct *tsk = current;
pr_warn_once("%s(%d) uses a deprecated O_NONBLOCK value.\n",
tsk->comm, tsk->pid);
if ((flags & O_NONBLOCK_MASK_OUT) &&
!test_thread_flag(TIF_NONBLOCK_WARNING)) {
set_thread_flag(TIF_NONBLOCK_WARNING);
pr_warn("%s(%d) uses a deprecated O_NONBLOCK value."
" Please recompile with newer glibc.\n",
current->comm, current->pid);
}
return flags & ~O_NONBLOCK_MASK_OUT;
}