Add process name to locks warning

Message ID 20221118234357.243926-1-ak@linux.intel.com
State New
Headers
Series Add process name to locks warning |

Commit Message

Andi Kleen Nov. 18, 2022, 11:43 p.m. UTC
  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 <ak@linux.intel.com>
---
 fs/locks.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
  

Comments

Jeff Layton Nov. 19, 2022, 2:06 a.m. UTC | #1
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 <ak@linux.intel.com>
> ---
>  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 Nov. 19, 2022, 11:55 a.m. UTC | #2
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 <ak@linux.intel.com>
> > ---
> >  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!
  
Andi Kleen Nov. 19, 2022, 2:23 p.m. UTC | #3
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 <ak@linux.intel.com>
>> ---
>>   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.
  

Patch

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;
 	}