All of lore.kernel.org
 help / color / mirror / Atom feed
From: Simon Horman <horms@kernel.org>
To: Mihai Moldovan <ionic@ionic.de>
Cc: linux-arm-msm@vger.kernel.org,
	Manivannan Sadhasivam <mani@kernel.org>,
	Denis Kenzior <denkenz@gmail.com>,
	Eric Dumazet <edumazet@google.com>,
	Kuniyuki Iwashima <kuniyu@google.com>,
	Paolo Abeni <pabeni@redhat.com>,
	Willem de Bruijn <willemb@google.com>,
	"David S . Miller" <davem@davemloft.net>,
	Jakub Kicinski <kuba@kernel.org>,
	linux-kernel@vger.kernel.org, netdev@vger.kernel.org,
	Dan Carpenter <dan.carpenter@linaro.org>
Subject: Re: [PATCH v3 04/11] net: qrtr: support identical node ids
Date: Sun, 27 Jul 2025 15:40:14 +0100	[thread overview]
Message-ID: <20250727144014.GX1367887@horms.kernel.org> (raw)
In-Reply-To: <a42d70aa-76b8-4034-9695-2e639e6471a2@ionic.de>

+ Dan Carpenter

On Sun, Jul 27, 2025 at 03:09:38PM +0200, Mihai Moldovan wrote:
> * On 7/24/25 15:08, Simon Horman wrote:
> > [...]
> 
> Thank you for the reviews, to both you and Jakub.
> 
> 
> > This will leak holding qrtr_nodes_lock.
> 
> It certainly does, will be fixed in v4.
> 
> 
> > Flagged by Smatch.
> 
> I haven't used smatch before, and probably should do so going forward.
> 
> Curiously, a simple kchecker net/qrtr/ run did not warn about the locking
> issue (albeit it being obvious in the patch), while it did warn about the
> second issue with ret. Am I missing something?

TL;DR: No, I seem to have been able to reproduce what you see.

I ran Smatch, compiled from a recent Git commit, like this:

kchecker net/qrtr/af_qrtr.o

The warnings I saw (new to this patch) are:

net/qrtr/af_qrtr.c:498 qrtr_node_assign() warn: inconsistent returns 'global &qrtr_nodes_lock'.
  Locked on  : 484
  Unlocked on: 498
net/qrtr/af_qrtr.c:613 qrtr_endpoint_post() warn: missing error code 'ret'

That was with Smatch compiled from Git [1]
commit e1d933013098 ("return_efault: don't rely on the cross function DB")

I tried again with the latest head,
commit 2fb2b9093c5d ("sleep_info: The synchronize_srcu() sleeps").
And in that case I no longer see the 1st warning, about locking.
I think this is what you saw too.

This seems to a regression in Smatch wrt this particular case for this
code. I bisected Smatch and it looks like it was introduced in commit
d0367cd8a993 ("ranges: use absolute instead implied for possibly_true/false")

I CCed Dan in case he wants to dig into this.

[1] https://repo.or.cz/smatch.git

> 
> 
> > But ret is now 0, whereas before this patch it was -EINVAL.
> > This seems both to be an unintentional side effect of this patch,
> > and incorrect.
> 
> True. Will also fixed in v4.
> 
> 
> Mihai




  reply	other threads:[~2025-07-27 14:40 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-07-23 23:23 [PATCH v3 00/11] QRTR Multi-endpoint support Mihai Moldovan
2025-07-23 23:23 ` [PATCH v3 01/11] net: qrtr: ns: validate msglen before ctrl_pkt use Mihai Moldovan
2025-07-23 23:23 ` [PATCH v3 02/11] net: qrtr: allocate and track endpoint ids Mihai Moldovan
2025-07-23 23:24 ` [PATCH v3 03/11] net: qrtr: fit node ID + port number combination into unsigned long Mihai Moldovan
2025-07-23 23:24 ` [PATCH v3 04/11] net: qrtr: support identical node ids Mihai Moldovan
2025-07-24 13:05   ` Jakub Kicinski
2025-07-24 13:08   ` Simon Horman
2025-07-27 13:09     ` Mihai Moldovan
2025-07-27 14:40       ` Simon Horman [this message]
2025-07-27 17:33         ` Mihai Moldovan
2025-07-28 10:51           ` Simon Horman
2025-08-01 17:25         ` Dan Carpenter
2025-08-04  9:55           ` Simon Horman
2025-08-04 10:19             ` Dan Carpenter
2025-07-23 23:24 ` [PATCH v3 05/11] net: qrtr: Report sender endpoint in aux data Mihai Moldovan
2025-07-23 23:24 ` [PATCH v3 06/11] net: qrtr: Report endpoint for locally generated messages Mihai Moldovan
2025-07-23 23:24 ` [PATCH v3 07/11] net: qrtr: Allow sendmsg to target an endpoint Mihai Moldovan
2025-07-23 23:24 ` [PATCH v3 08/11] net: qrtr: allow socket endpoint binding Mihai Moldovan
2025-07-23 23:24 ` [PATCH v3 09/11] net: qrtr: Drop remote {NEW|DEL}_LOOKUP messages Mihai Moldovan
2025-07-23 23:24 ` [PATCH v3 10/11] net: qrtr: ns: support multiple endpoints Mihai Moldovan
2025-07-23 23:24 ` [PATCH v3 11/11] net: qrtr: mhi: Report endpoint id in sysfs Mihai Moldovan
  -- strict thread matches above, loose matches on Subject: below --
2025-07-26 18:43 [PATCH v3 04/11] net: qrtr: support identical node ids kernel test robot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20250727144014.GX1367887@horms.kernel.org \
    --to=horms@kernel.org \
    --cc=dan.carpenter@linaro.org \
    --cc=davem@davemloft.net \
    --cc=denkenz@gmail.com \
    --cc=edumazet@google.com \
    --cc=ionic@ionic.de \
    --cc=kuba@kernel.org \
    --cc=kuniyu@google.com \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mani@kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=willemb@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.