Messages in this thread | | | Date | Sat, 4 Apr 2015 20:12:43 +0300 | From | Dan Carpenter <> | Subject | Re: [PATCH 2/2] staging: emxx_udc: test returned value |
| |
On Sat, Apr 04, 2015 at 06:20:53PM +0200, Julia Lawall wrote: > Couldn't one say: > > x = NULL; > y = &x->whatever; > z = container_of(y, struct blah, whatever); > > and end up with z being NULL?
That is crazy person code. It looks deliberately wrong. If we start merging deliberate mistakes then we're already screwed.
I have a smatch check which warns on container_of() but I should update it to not complain if it's the first struct member. I have looked at quite a few of these warnings and I worry that there are some places where it relies on container_of() to be a no-op... That's also crazy but it's the kind of crazy that people do in real life. :P
regards, dan carpenter
| |