public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Randy Dunlap <randy.dunlap@oracle.com>
To: Yoann Padioleau <padator@wanadoo.fr>
Cc: Oliver Neukum <oneukum@suse.de>,
	kernel-janitors@lists.osdl.org, linux-kernel@vger.kernel.org
Subject: Re: [KJ] Re: [PATCH] bugfix GFP_KERNEL -> GFP_ATOMIC in spin_locked region
Date: Tue, 5 Jun 2007 09:48:35 -0700	[thread overview]
Message-ID: <20070605094835.5ada50da.randy.dunlap@oracle.com> (raw)
In-Reply-To: <87ejkqe51t.fsf@wanadoo.fr>

On Tue, 05 Jun 2007 18:31:42 +0200 Yoann Padioleau wrote:

> Oliver Neukum <oneukum@suse.de> writes:
> 
> > Am Dienstag, 5. Juni 2007 13:05 schrieb Yoann Padioleau:
> >> Ok. Do you have a preference on the format ?  a <file>:<line> format  ?
> >> 
> >> Is there a place that gathered all those implicit programming rules 
> >> (that copy_from_user must not be called inside a spinlock, etc) so that
> >> I can translate them in a script for our tool.
> >
> > How much C does your tool understand? 
> 
> The tool understands almost all the C language but the analysis we do
> for the moment are intra-procedural so when we look for 
>  spin_lock();
>  ...
>  copy_from_user();
> 
> it can detect cases and code paths only when the two function calls
> are in the same function. It could be extended but it would require to
> do a full analysis of the kernel source. Maybe if some functions of
> the library have an attribute in their prototype in the .h such as
> 
>  __might_sleep copy_from_user(); 
> 
> it could help.
> 
> > You might basically
> > test for code paths that go to "might_sleep()"
> 
> Ok, thanks. If you know other implicit programming rules,
> I would be glad to know them, or if you know places
> where thus rules are written.
> 
> 
> BTW at one point I think the Linux community were using advanced
> static analysis tools such as the one made by Dawson Engler (now
> Coverity). The communitty have stopped using such tools ? Isn't the
> role of sparse to detect bugs such as the dangerous copy_from_user()
> inside spinlocked region ?
> 

There are a few people who have registered for access to the
Coverity database and occasionally go thru it looking for bugs
and then posting fixes.

sparse can check for unbalanced locking, but it needs annotations
for those AFAIK.

---
~Randy
*** Remember to use Documentation/SubmitChecklist when testing your code ***

  reply	other threads:[~2007-06-05 16:49 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-06-04 16:25 [PATCH] bugfix GFP_KERNEL -> GFP_ATOMIC in spin_locked region Yoann Padioleau
2007-06-05  4:00 ` Andrew Morton
2007-06-05  4:08   ` Andrew Morton
2007-06-05  8:51     ` Oliver Neukum
2007-06-05 11:05   ` [KJ] " Yoann Padioleau
2007-06-05 11:33     ` Oliver Neukum
2007-06-05 16:31       ` Yoann Padioleau
2007-06-05 16:48         ` Randy Dunlap [this message]
2007-06-05 16:12     ` Andrew Morton

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=20070605094835.5ada50da.randy.dunlap@oracle.com \
    --to=randy.dunlap@oracle.com \
    --cc=kernel-janitors@lists.osdl.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=oneukum@suse.de \
    --cc=padator@wanadoo.fr \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox