Re: BUG: non-zero nr_pmds on freeing mm: -1

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Mar 12, 2015 at 08:41:37PM -0400, John David Anglin wrote:
> On 2015-03-12, at 6:07 PM, Kirill A. Shutemov wrote:
> 
> > There's hack in pgd_alloc() on parisc to initialize one pmd, which is not
> > accounted and we get underflow on exit. We need to adjust accounting for
> > that pmd.
> > 
> > Could you try the patch below?
> > 
> > diff --git a/arch/parisc/include/asm/pgalloc.h b/arch/parisc/include/asm/pgalloc.h
> > index f213f5b4c423..8ee9a0bdc468 100644
> > --- a/arch/parisc/include/asm/pgalloc.h
> > +++ b/arch/parisc/include/asm/pgalloc.h
> > @@ -38,6 +38,7 @@ static inline pgd_t *pgd_alloc(struct mm_struct *mm)
> > 		/* The first pmd entry also is marked with _PAGE_GATEWAY as
> > 		 * a signal that this pmd may not be freed */
> > 		__pgd_val_set(*pgd, PxD_FLAG_ATTACHED);
> > +		mm_inc_nr_pmds(mm);
> > #endif
> > 	}
> > 	return actual_pgd;
> 
> The patch fixes the BUG messages.
> 
> Helge, the #ifdef in pgd_alloc doesn't seem correct.  We only have a L2/L3 scheme when
> "defined(CONFIG_64BIT) && defined(CONFIG_PARISC_PAGE_SIZE_4KB)".

Looks like you're correct. But that's separate issue. Please, post a
patch.

-- 
 Kirill A. Shutemov
--
To unsubscribe from this list: send the line "unsubscribe linux-parisc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html




[Index of Archives]     [Linux SoC]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux