On Wed, Nov 22, 2017 at 02:57:12PM +0800, Jin, Yao wrote: > > > On 11/22/2017 2:31 PM, Ravi Bangoria wrote: > > > > On 11/20/2017 08:13 PM, Jin Yao wrote: > > > @@ -76,6 +97,17 @@ static struct rb_node *saved_value_new(struct > > > rblist *rblist __maybe_unused, > > > return &nd->rb_node; > > > } > > > > > > +static void saved_value_delete(struct rblist *rblist __maybe_unused, > > > + struct rb_node *rb_node) > > > +{ > > > + struct saved_value *v = container_of(rb_node, > > > + struct saved_value, > > > + rb_node); > > > + > > > + if (v) > > > + free(v); > > > +} > > > > Do we really need if(v) ? > > > > Thanks, > > Ravi > > > > Hi Ravi, > > Looks it doesn't need if(v). > > I put if(v) here is from my coding habits (checking pointer before free). > > It's OK for me if you think the code should be removed.
you could add BUG_ON(!rb_node); jirka