vmalloc_area_pages() in 2.4.2-ac25 seems to be broken. It calls
spin_lock(&init_mm.page_table_lock) twice and causes system hang.



inline int vmalloc_area_pages (unsigned long address, unsigned long size,
                               int gfp_mask, pgprot_t prot)
{
        pgd_t * dir;
        unsigned long end = address + size;
        int ret;

        dir = pgd_offset_k(address);
        flush_cache_all();
>>>>    spin_lock(&init_mm.page_table_lock);    
        do {
                pmd_t *pmd;
                
>>>>            spin_lock(&init_mm.page_table_lock);    /* pmd_alloc requires this */
                pmd = pmd_alloc(&init_mm, dir, address);
                spin_unlock(&init_mm.page_table_lock);
                ret = -ENOMEM;
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to