Received: by 2002:a25:86ce:0:0:0:0:0 with SMTP id y14csp190354ybm; Wed, 22 May 2019 01:18:11 -0700 (PDT) X-Google-Smtp-Source: APXvYqziWu2IZO38Xeow+mCGZYje2W02uZ8KmbPUkRrnDT2pzsFKSRQhkJl9X3RZtCDoLXqXW42n X-Received: by 2002:a62:d205:: with SMTP id c5mr93193952pfg.219.1558513091076; Wed, 22 May 2019 01:18:11 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1558513091; cv=none; d=google.com; s=arc-20160816; b=x25xzj2IW3OpdwIRHyXxVfDQ4uFG+lmeaWmQTjUZ18tuwMIANLg3KOgphv/AIVXcR1 /1UJFCZ8aCR3kZpzSTPpWykm0UZqXhZEQQTkvK+pP79eFsPNhcYqy4YrJoft3gguHqIB u39w9pIZ3v93zf5Iu4E0IFOEjPaF+xbXcrblu+aIx3S7FkKdtgqz2WNi5YGl+33Q+EG6 vr2IuF0YoKmUXq21GJQWms+/t4CgJFJvgAE7TioPIiaYR/smU+yLqob8f2PPNmyziVsg jjZq/OKMVTQnHo/8DXeWLiUNwz/7U/c/S4GVMVtcbRny5iSq9A1GTuS5v+t8Is6YNkUs RDpQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from; bh=zyzAXdfAnHtcork+my1W4M29YnWBifFkbh3eJ+HWPoc=; b=oIaFUryMZoo+ClKuDHlbKKIxLCnVjzHd0+bEHOuP0orOW67azGMs5lNZ3yTuVhr20r Dd2tSpmYa33A2RDGAoYBAnwPhyJKsh1ohaK1AtbHRjLzuv4LO2WZQ+3it55Vty0X8Lyd 4eM6IgGyX0nrS7jojANM0KZC38PvfZkUsXEWU2LrOkXQtjsATPRHhfGUFMSYFu3JZAaT gdOQXrmCv5dHWZdIrHoQ5X7SYQ3O9JM2TbFTIp8jEvnu3gjDG0YyMw/sT01Zrz6vezEr JVFOfO2/TFRm5QVv2tA/gTdfjksUdvNN1uNuoeEtG+E+iNzb0JWbCzJfS75J0+/ZDcMv fP6Q== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id u1si4509672pfh.136.2019.05.22.01.17.55; Wed, 22 May 2019 01:18:11 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728631AbfEVIPk (ORCPT + 99 others); Wed, 22 May 2019 04:15:40 -0400 Received: from xavier.telenet-ops.be ([195.130.132.52]:39590 "EHLO xavier.telenet-ops.be" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728159AbfEVIPk (ORCPT ); Wed, 22 May 2019 04:15:40 -0400 Received: from ramsan ([84.194.111.163]) by xavier.telenet-ops.be with bizsmtp id FLFd2000k3XaVaC01LFdtJ; Wed, 22 May 2019 10:15:39 +0200 Received: from rox.of.borg ([192.168.97.57]) by ramsan with esmtp (Exim 4.90_1) (envelope-from ) id 1hTMPR-00075Y-Ny; Wed, 22 May 2019 10:15:37 +0200 Received: from geert by rox.of.borg with local (Exim 4.90_1) (envelope-from ) id 1hTMPR-0004KC-LR; Wed, 22 May 2019 10:15:37 +0200 From: Geert Uytterhoeven To: Serge Semin , Ralf Baechle , Paul Burton , James Hogan , Atsushi Nemoto Cc: Mike Rapoport , "Maciej W . Rozycki" , linux-mips@vger.kernel.org, linux-kernel@vger.kernel.org, Geert Uytterhoeven Subject: [PATCH] MIPS: TXx9: Fix boot crash in free_initmem() Date: Wed, 22 May 2019 10:15:35 +0200 Message-Id: <20190522081535.16583-1-geert@linux-m68k.org> X-Mailer: git-send-email 2.17.1 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On rbtx4927: BUG: Bad page state in process swapper pfn:00001 page:804b7820 refcount:0 mapcount:-128 mapping:00000000 index:0x1 flags: 0x0() raw: 00000000 00000100 00000200 00000000 00000001 00000000 ffffff7f 00000000 page dumped because: nonzero mapcount Modules linked in: CPU: 0 PID: 1 Comm: swapper Not tainted 5.2.0-rc1-rbtx4927-00468-g3c05ea3d4077b756 #141 Stack : 00000000 10008400 8040dc4c 87c1b974 8044af63 8040dc4c 00000001 804a3490 00000001 81000000 0030f231 80148558 00000003 10008400 87c1dd80 3d0f9a2c 00000000 00000000 804b0000 00000000 00000007 00000000 00000081 00000000 62722d31 00000080 804b0000 39347874 00000000 804b7820 8040ce18 81000010 00000001 00000007 00000001 81000000 00000018 8021de24 00000000 804a0000 ... Call Trace: [<8010adec>] show_stack+0x74/0x104 [<801a5e44>] bad_page+0x130/0x138 [<801a654c>] free_pcppages_bulk+0x17c/0x3b0 [<801a789c>] free_unref_page+0x40/0x68 [<801120f4>] free_init_pages+0xec/0x104 [<803bdde8>] free_initmem+0x10/0x58 [<803bdb8c>] kernel_init+0x20/0x100 [<801057c8>] ret_from_kernel_thread+0x14/0x1c As of commit b93ddc4f9156205e ("mips: Reserve memory for the kernel image resources"), bootmem_init() no longer reserves the memory below the kernel, while prom_free_prom_memory() still frees it. Fix this by reverting commit b6263ff2d6e58cc2 ("MIPS: TXx9: Implement prom_free_prom_memory"). Suggested-by: Serge Semin Fixes: b93ddc4f9156205e ("mips: Reserve memory for the kernel image resources") Signed-off-by: Geert Uytterhoeven --- Looks like arch/mips/dec/prom/memory.c needs a similar but more complicated fix, due to declance handling? --- arch/mips/txx9/generic/setup.c | 6 ------ 1 file changed, 6 deletions(-) diff --git a/arch/mips/txx9/generic/setup.c b/arch/mips/txx9/generic/setup.c index 46537c2ca86a2eae..6d0fd0e055b4ba4a 100644 --- a/arch/mips/txx9/generic/setup.c +++ b/arch/mips/txx9/generic/setup.c @@ -33,7 +33,6 @@ #include #include #include -#include #include #include #include @@ -343,11 +342,6 @@ void __init prom_init(void) void __init prom_free_prom_memory(void) { - unsigned long saddr = PAGE_SIZE; - unsigned long eaddr = __pa_symbol(&_text); - - if (saddr < eaddr) - free_init_pages("prom memory", saddr, eaddr); } const char *get_system_type(void) -- 2.17.1