2022-11-19 00:47:32

by Andi Kleen

[permalink] [raw]
Subject: [PATCH] Add process name to locks warning

It's fairly useless to complain about using an obsolete feature without
telling the user which process used it. My Fedora desktop randomly drops
this message, but I would really need this patch to figure out what
triggers is.

Signed-off-by: Andi Kleen <[email protected]>
---
fs/locks.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/locks.c b/fs/locks.c
index 607f94a0e789..2e45232dbeb1 100644
--- a/fs/locks.c
+++ b/fs/locks.c
@@ -2096,7 +2096,7 @@ SYSCALL_DEFINE2(flock, unsigned int, fd, unsigned int, cmd)
* throw a warning to let people know that they don't actually work.
*/
if (cmd & LOCK_MAND) {
- pr_warn_once("Attempt to set a LOCK_MAND lock via flock(2). This support has been removed and the request ignored.\n");
+ pr_warn_once("%s: Attempt to set a LOCK_MAND lock via flock(2). This support has been removed and the request ignored.\n", current->comm);
return 0;
}

--
2.37.3



2022-11-19 02:57:34

by Jeffrey Layton

[permalink] [raw]
Subject: Re: [PATCH] Add process name to locks warning

On Fri, 2022-11-18 at 15:43 -0800, Andi Kleen wrote:
> It's fairly useless to complain about using an obsolete feature without
> telling the user which process used it. My Fedora desktop randomly drops
> this message, but I would really need this patch to figure out what
> triggers is.
>

Interesting. The only program I know of that tried to use these was
samba, but we patched that out a few years ago (about the time this
patch went in). Are you running an older version of samba?

> Signed-off-by: Andi Kleen <[email protected]>
> ---
> fs/locks.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/fs/locks.c b/fs/locks.c
> index 607f94a0e789..2e45232dbeb1 100644
> --- a/fs/locks.c
> +++ b/fs/locks.c
> @@ -2096,7 +2096,7 @@ SYSCALL_DEFINE2(flock, unsigned int, fd, unsigned int, cmd)
> * throw a warning to let people know that they don't actually work.
> */
> if (cmd & LOCK_MAND) {
> - pr_warn_once("Attempt to set a LOCK_MAND lock via flock(2). This support has been removed and the request ignored.\n");
> + pr_warn_once("%s: Attempt to set a LOCK_MAND lock via flock(2). This support has been removed and the request ignored.\n", current->comm);
> return 0;
> }
>

Looks reasonable. Would it help to print the pid or tgid as well?
--
Jeff Layton <[email protected]>

2022-11-19 12:35:10

by Jeffrey Layton

[permalink] [raw]
Subject: Re: [PATCH] Add process name to locks warning

On Fri, 2022-11-18 at 21:06 -0500, Jeff Layton wrote:
> On Fri, 2022-11-18 at 15:43 -0800, Andi Kleen wrote:
> > It's fairly useless to complain about using an obsolete feature without
> > telling the user which process used it. My Fedora desktop randomly drops
> > this message, but I would really need this patch to figure out what
> > triggers is.
> >
>
> Interesting. The only program I know of that tried to use these was
> samba, but we patched that out a few years ago (about the time this
> patch went in). Are you running an older version of samba?
>
> > Signed-off-by: Andi Kleen <[email protected]>
> > ---
> > fs/locks.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/fs/locks.c b/fs/locks.c
> > index 607f94a0e789..2e45232dbeb1 100644
> > --- a/fs/locks.c
> > +++ b/fs/locks.c
> > @@ -2096,7 +2096,7 @@ SYSCALL_DEFINE2(flock, unsigned int, fd, unsigned int, cmd)
> > * throw a warning to let people know that they don't actually work.
> > */
> > if (cmd & LOCK_MAND) {
> > - pr_warn_once("Attempt to set a LOCK_MAND lock via flock(2). This support has been removed and the request ignored.\n");
> > + pr_warn_once("%s: Attempt to set a LOCK_MAND lock via flock(2). This support has been removed and the request ignored.\n", current->comm);
> > return 0;
> > }
> >
>
> Looks reasonable. Would it help to print the pid or tgid as well?

Merged into my locks-next branch, along with a small change to print
current->pid in addition to current->comm. This should make v6.2.

Thanks!
--
Jeff Layton <[email protected]>

2022-11-19 14:47:53

by Andi Kleen

[permalink] [raw]
Subject: Re: [PATCH] Add process name to locks warning


On 11/18/2022 6:06 PM, Jeff Layton wrote:
> On Fri, 2022-11-18 at 15:43 -0800, Andi Kleen wrote:
>> It's fairly useless to complain about using an obsolete feature without
>> telling the user which process used it. My Fedora desktop randomly drops
>> this message, but I would really need this patch to figure out what
>> triggers is.
>>
> Interesting. The only program I know of that tried to use these was
> samba, but we patched that out a few years ago (about the time this
> patch went in). Are you running an older version of samba?


Yes it's running samba, whatever is in Fedora 35. Don't know if that
counts as an

older version.


>
>> Signed-off-by: Andi Kleen <[email protected]>
>> ---
>> fs/locks.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/fs/locks.c b/fs/locks.c
>> index 607f94a0e789..2e45232dbeb1 100644
>> --- a/fs/locks.c
>> +++ b/fs/locks.c
>> @@ -2096,7 +2096,7 @@ SYSCALL_DEFINE2(flock, unsigned int, fd, unsigned int, cmd)
>> * throw a warning to let people know that they don't actually work.
>> */
>> if (cmd & LOCK_MAND) {
>> - pr_warn_once("Attempt to set a LOCK_MAND lock via flock(2). This support has been removed and the request ignored.\n");
>> + pr_warn_once("%s: Attempt to set a LOCK_MAND lock via flock(2). This support has been removed and the request ignored.\n", current->comm);
>> return 0;
>> }
>>
> Looks reasonable. Would it help to print the pid or tgid as well?

It wouldn't help me because at that time I see it it's likely long gone.
Just need the name.