[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] x86/xen: silence smatch warning in pmu_msr_chk_emulated()


  • To: Boris Ostrovsky <boris.ostrovsky@xxxxxxxxxx>
  • From: Dan Carpenter <dan.carpenter@xxxxxxxxxx>
  • Date: Fri, 21 Oct 2022 09:46:42 +0300
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=6hKG2KqTnTud9V9LvgscRjsffi64dBQ91yNsXurffcE=; b=hMwReJxSzz8TRuyFn7CNHJa+yx25dJSbOlQ4aIKBkOO61ddc+M/IYTRIsagCgLcYZfSWIYyB2KSF6uPTCoXdjlq/H0RyqHZtu4N7Vj6AYKpQST51+mA0a2fOECZHW4f0z3mms70NjsIJAIcLIjRsL/VZQ6qB2GhPQXJsV4m37YEjzoy0rlmdU7SDl59yvptIaZWiKW5l8QrnlOKMfLgWlM1eFGooobk2qzaf5W6HIVIyXE+F2S93iu5svZhRE+uxKVdrUf6LQO7F7n73bQx8avJmQGCN/VQYQ883LCz+w/8Kt87lJLQkbQSQT71jDLOfL0URGaPe/l4mCDYY8Q3NPA==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=kGNZsh2LTd7xR9ZrQz0NjC6fwxBZrSZm8ZMMT+1++vDwC3G55motMF8wChLJh/myhVdpfwhPtBWx7jFK9N5Tx/YnzhNivQZfvf3zp+RbXVbTM9OG2WtPPnGXYpvFYWmKwQM8T4dqAgmCBLgyhAzVGEcUhnjh5mO3rR9hHAhp6G2i39MmsyvHvU2Z+OTDOHnuIMW5vwJVx6eAV036GqxTmeVtKjWSVaddXMf4YLnLSTsuEeXjnSlbl8qWLXl+wTElHUJQtUxh7fEaxXq3t1xRM+U/YhH4SCNH2pJsUH9XMNtf4jkQfRTra6ErGXZopvx1mLdcslEOMK7hQ2kECMrS7w==
  • Cc: Juergen Gross <jgross@xxxxxxxx>, Jan Beulich <jbeulich@xxxxxxxx>, Thomas Gleixner <tglx@xxxxxxxxxxxxx>, Ingo Molnar <mingo@xxxxxxxxxx>, Borislav Petkov <bp@xxxxxxxxx>, Dave Hansen <dave.hansen@xxxxxxxxxxxxxxx>, "H. Peter Anvin" <hpa@xxxxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxxx, linux-kernel@xxxxxxxxxxxxxxx, x86@xxxxxxxxxx
  • Delivery-date: Fri, 21 Oct 2022 06:47:20 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

On Thu, Oct 20, 2022 at 10:22:17AM -0400, Boris Ostrovsky wrote:
> 
> On 10/20/22 9:34 AM, Juergen Gross wrote:
> > On 20.10.22 15:16, Jan Beulich wrote:
> > > On 20.10.2022 13:37, Juergen Gross wrote:
> > > > Commit 8714f7bcd3c2 ("xen/pv: add fault recovery control to pmu msr
> > > > accesses") introduced code resulting in a warning issued by the smatch
> > > > static checker, claiming to use an uninitialized variable.
> > > > 
> > > > This is a false positive, but work around the warning nevertheless.
> > > 
> > > The risk of introducing a problem might be quite low here, but in general
> > > it exists: With the adjustment you remove any chance of the compiler
> > > spotting a missing initialization before use. And I'm not convinced using
> > > 0 in such a case would actually be ending up sufficiently benign.
> > 
> > Hmm, an alternative would be to initialize it to -1 and add a test for the
> > index to be >= 0 before using it.
> > 
> > Or to live with the smash warning with the chance, that a compiler might be
> > warning for the same reason in the future.
> 
> 
> Is smatch complaining about both variables or just index?

Just "index".

> There are two cases in is_intel_pmu_msr() where it returns true but
> index is not set so perhaps that's what bothers smatch?

Yep.  The "index" variable *is* undefined when it's passed so Smatch
is correct in what it's saying.  But it's is not used on that path
inside the function so it's harmless.

> It shold not complain if is_intel_pmu_msr() returns false.

Correct.

I kind of like the patch.  We generally say "fix the checker and don't
silence the warning" but in this case I feel like the checker is doing
the best possible thing and I'm not going to fix it.  Trying to silence
this warning in Smatch would come with some real downsides.

regards,
dan carpenter




 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.