Messages in this thread | | | Date | Tue, 08 Aug 2006 19:43:40 +0400 | From | Kirill Korotaev <> | Subject | Re: [PATCH] sys_getppid oopses on debug kernel |
| |
> Accessing freed memory is a bug, always, not just *only* when slab > debugging is on, right? Doesn't this mean we could get junk, or that > the reader could potentially run off a bad pointer? no, read the comment in sys_getppid. It is a valid optimization. _safe_ and alowing to bypass taking the lock. BUT! This optimization relies on the fact that kernel memory (DMA + normal zone) is always mapped into virtual address space. Which is invalid for debug kernels only.
> It seems that this patch only papers over the problem in the case when > it is observed, but doesn't really even fix the normal case. > > Could we use a seqlock to determine when real_parent is in flux, and > re-read real_parent until we get a consistent one? We could use in in > lieu of the existing for() loop.
Kirill
- 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/
| |