Messages in this thread | | | Date | Mon, 19 Feb 2007 21:05:27 -0800 (PST) | From | Christoph Lameter <> | Subject | Re: [PATCH] slab: ensure cache_alloc_refill terminates |
| |
On Mon, 19 Feb 2007, Pekka J Enberg wrote:
> If slab->inuse is corrupted, cache_alloc_refill can enter an infinite > loop as detailed by Michael Richardson in the following post: > <http://lkml.org/lkml/2007/2/16/292>.
We have seen that corruption too.
> check_spinlock_acquired(cachep); > + > + /* > + * The slab was either on partial or free list so > + * there must be at least one object available for > + * allocation. > + */ > + BUG_ON(slabp->inuse >= cachep->num);
slabp->inuse is an integer and we have seen it become -1. The proposed test will not catch those cases. - 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/
| |