Messages in this thread | | | Date | Wed, 30 Aug 2006 16:25:03 -0300 | From | "Julio Auto" <> | Subject | Re: [S390] cio: kernel stack overflow. |
| |
First of all, about your previous e-mail: you're correct, the members not explicitly initialized behave like when a _static_ object is not explicitly initialized (ie., zero'ing it), instead of behaving like an _automatic_ object not being explicitly initialized (which was the kind of behavior I was expecting). This is part of the C99 specification, indeed.
See section 6.7.8, constraints no. 10 and 19, for more info.
On 8/30/06, David Wagner <daw@cs.berkeley.edu> wrote: > I don't see any obvious place that zeroes out cdev->id. > In particular, it looks like cdev->id.match_flags and .driver_info > are never cleared (i.e., they retain whatever old garbage they had > before). More importantly, if anyone ever adds any more fields to > struct ccw_device_id, then they will also be retain old garbage values, > which is a maintenance pitfall. Is this right, or did I miss something > again?
Nicely pointed out, I hadn't thought about this possible maintenance issue. Looks like a nice place for a memset() to reside.
Cheers,
Julio Auto - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |