Re: [PATCH] sys_getppid oopses on debug kernel

From: Kirill Korotaev
Date: Tue Aug 08 2006 - 11:50:29 EST


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.


Actually, it might also be invalid in hypervisor environments. s390 and
Xen use ballooning drivers to tell the hypervisor which pages are not
currently in use by the OS so that they may be used in virtual machines
elsewhere.

I'm cc'ing the s390 guys. Will the s390 kernel oops if it accesses a
page which was ballooned back to the hypervisor?

Yeah, a minute after my reply I got your idea and sent a new patch
which always takes the lock :)))

Thanks,
Kirill

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/