Re: Oops in a driver while using SLUB as a SLAB allocator

From: Christoph Lameter
Date: Fri Jun 22 2007 - 01:11:16 EST


On Fri, 22 Jun 2007, Hugh Dickins wrote:

> However... what gives you confidence that flush_dcache_page is
> never applied to other slab pages?

Flush dcache page is supposed to run on pages not objects of varying
length. It is suprising that this has not lead to earlier problems.
Objects allocated this way may straddle a page boundary under some
conditions and in that case virt_to_page may not lead to a page that
covers the complete object that is supposed to be flushed. Hopefully the
"size" of the allocated object were whole pages.

> This looks to me like a clean way forward to try in -mm; but that
> 2.6.22 should go with the safety PageSlab test in page_mapping.

2.6.22 cleans up these issues and this one follows in those footsteps.

The reason for the introduction of the quicklist f.e. was to have a clear
separation between page sized allocation and the variable allocations
through slab allocators.
-
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/