From owner-freebsd-mips@FreeBSD.ORG Tue Jun 29 17:34:05 2010 Return-Path: Delivered-To: freebsd-mips@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 059AF1065672 for ; Tue, 29 Jun 2010 17:34:05 +0000 (UTC) (envelope-from imp@bsdimp.com) Received: from harmony.bsdimp.com (bsdimp.com [199.45.160.85]) by mx1.freebsd.org (Postfix) with ESMTP id B85B48FC19 for ; Tue, 29 Jun 2010 17:34:04 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by harmony.bsdimp.com (8.14.3/8.14.1) with ESMTP id o5THO8Al012044; Tue, 29 Jun 2010 11:24:08 -0600 (MDT) (envelope-from imp@bsdimp.com) Date: Tue, 29 Jun 2010 11:24:21 -0600 (MDT) Message-Id: <20100629.112421.25793712605171655.imp@bsdimp.com> To: c.jayachandran@gmail.com From: "M. Warner Losh" In-Reply-To: References: X-Mailer: Mew version 6.3 on Emacs 22.3 / Mule 5.0 (SAKAKI) Mime-Version: 1.0 Content-Type: Text/Plain; charset=iso-8859-1 Content-Transfer-Encoding: quoted-printable Cc: freebsd-mips@freebsd.org Subject: Re: Merging 64 bit changes to -HEAD X-BeenThere: freebsd-mips@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to MIPS List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 29 Jun 2010 17:34:05 -0000 In message: "Jayachandran C." writes: : On Tue, Jun 29, 2010 at 2:28 AM, Luiz Otavio O Souza wrote: : >> Thanks for the the update. Looks like pmap_map for kernel is faili= ng, : >> may be the new tlb_update code causes this. =A0Can you apply the : >> attached patch and see if the problem still persists, it replaces = the : >> new tlb_update code with the older version. : >> : >> Obviously not a fix, but if we can narrow it down to this function= , : >> fixing will be easier. : >> : >> JC. : >> : > : > JC, : > : > This fix the problem ! Thanks ! Now, at least, you know where to lo= ok :) : = : The new tlb_update does not seem to update the tlb entry if the tlbp : fails. Here's a patch that should make the new function behave like : the older one. The patch is in attached file 'tlb-update.diff'. : = : If that does not work, I'm not sure what the issue is. You could als= o : try try the nop-change.diff attached. It tries to switch the ssnop : used for delay in the new code with 'nop' which was used by the old : code. ssnop is a mips32r2/mips64r2 addition. We likely need to get smarter about the nop stuff, based on the CPU we configure. I can't recall if the Atheros is misp32 or mips32r2. IIRC, the idt RC32434 is mips32, as is the adm5120... Warner