Powered by Linux
Re: Assertion error in avl.c:87 when compiling/testing Linux kernel — Semantic Matching Tool

Re: Assertion error in avl.c:87 when compiling/testing Linux kernel

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

 



Hi

On Mon, Sep 29, 2014 at 11:37:38AM +0300, Dan Carpenter wrote:
> On Sun, Sep 28, 2014 at 07:31:08PM +0200, Silvan Jegen wrote:
> > Hi
> > 
> > When building/checking the Linux kernel (on next-20140926) with smatch
> > (at tip) I get the following error.
> > 
> > smatch: avl.c:87: free_stree: Assertion `(*avl)->references > 0' failed.
> > Aborted (core dumped)
> > 
> > when running either of the following commands:
> 
> Sorry about that.  There was some memory corruption for a long time but
> recent changes made it more exposed.  It should be fixed now in the
> latest git.  It should also fix some random subtle bugs that have been
> around for a long time.

I can confirm that it is fixed on tip. Thanks!


> The latest changes from last week are very fun btw.
> 
> Assume you have a function like:
> 
> int frob(int x, int y)
> {
> 	;;;;;;;;;;;;;
> 	return x + y;
> }
> 
> (The row of semi-colons is so that the function isn't parsed inline.
> Parsing it inline works, but that's easy/cheating).
> 
> Right now the current code can parse that but only if both x and y are
> known integers.
> 
> I need to add some code so it can handle it if x or y is a range_list.
> 
> Also I want it to parse, code like:
> 
> int frob(struct skb_buff *skb, int x)
> {
> 	;;;;;;;;;;;;;;;;;;;
> 	return skb->len + y;
> }
> 
> Currently it only stores things like "s32min-s32max[$0 + $1]" but it
> needs to be able to store "s32min-s32max[$0->len + $1]".

That means I will just go and rerun smatch on the kernel then! :)


Cheers,

Silvan

--
To unsubscribe from this list: send the line "unsubscribe smatch" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux