| Date | Fri, 2 Jul 2010 01:14:20 +0300 | From | "Kirill A. Shutemov" <> | Subject | Re: [patch 071/149] ARM: 6166/1: Proper prefetch abort handling on pre-ARMv6 |
| |
On Thu, Jul 01, 2010 at 10:31:37AM -0700, Greg KH wrote: > 2.6.32-stable review patch. If anyone has any objections, please let us know. > > ------------------ > > From: Anfei <anfei.zhou@gmail.com> > > commit 5e27fb78df95e027723af2c90ecc9b4527ae59e9 upstream. > > Instruction faults on pre-ARMv6 CPUs are interpreted as > a 'translation fault', but do_translation_fault doesn't > handle well if user mode trying to run instruction above > TASK_SIZE, and result in the infinite retry of that > instruction.
Actually, this patch helps also on ARMv6+. Probably, better to correct commit message for stable.
> Signed-off-by: Anfei Zhou <anfei.zhou@gmail.com> > Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> > Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> > > --- > arch/arm/mm/fault.c | 3 +++ > 1 file changed, 3 insertions(+) > > --- a/arch/arm/mm/fault.c > +++ b/arch/arm/mm/fault.c > @@ -386,6 +386,9 @@ do_translation_fault(unsigned long addr, > if (addr < TASK_SIZE) > return do_page_fault(addr, fsr, regs); > > + if (user_mode(regs)) > + goto bad_area; > + > index = pgd_index(addr); > > /* > > > -- > 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/
-- Kirill A. Shutemov
|