From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753503AbbCJRR6 (ORCPT ); Tue, 10 Mar 2015 13:17:58 -0400 Received: from foss.arm.com ([217.140.101.70]:43583 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752647AbbCJRRz (ORCPT ); Tue, 10 Mar 2015 13:17:55 -0400 Date: Tue, 10 Mar 2015 17:17:51 +0000 From: Catalin Marinas To: Stas Sergeev Cc: Andrew Morton , Linux kernel , linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH] n_tty: use kmalloc() instead of vmalloc() to avoid crash on armada-xp Message-ID: <20150310171751.GD13687@e104818-lin.cambridge.arm.com> References: <54FF21BE.2040506@list.ru> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <54FF21BE.2040506@list.ru> User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, Mar 10, 2015 at 07:54:22PM +0300, Stas Sergeev wrote: > Hello, the patch below is needed for a successful boot on armada-xp. > > -=-=-=-=-=-=-=-=-=# Don't remove this line #=-=-=-=-=-=-=-=-=- > This fixes the following crash at boot: > > Unhandled fault: external abort on non-linefetch (0x808) at 0xf00ca018 > Internal error: : 808 [#1] SMP ARM I think you have some other problems. That's an external abort, which means that the original vmalloc'ed memory was not mapping RAM but some empty physical address space. That's unless strex hits device memory and not having an exclusive monitor causes such external abort. But vmalloc() memory is Normal Cacheable. Some pointer could go wrong and it hits ioremap'ed memory which is in the same range as vmalloc'ed memory. -- Catalin