From owner-freebsd-mips@FreeBSD.ORG Thu Jul 8 08:18:33 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 0D9FE106564A; Thu, 8 Jul 2010 08:18:33 +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 A8A8A8FC2C; Thu, 8 Jul 2010 08:18:32 +0000 (UTC) Received: from localhost (localhost [127.0.0.1]) by harmony.bsdimp.com (8.14.3/8.14.1) with ESMTP id o688CXw6060669; Thu, 8 Jul 2010 02:12:33 -0600 (MDT) (envelope-from imp@bsdimp.com) Date: Thu, 08 Jul 2010 02:12:50 -0600 (MDT) Message-Id: <20100708.021250.1099368555950605809.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: jmallett@FreeBSD.org, freebsd-mips@FreeBSD.org Subject: Re: Merging 64 bit changes to -HEAD - part 4 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: Thu, 08 Jul 2010 08:18:33 -0000 In message: "Jayachandran C." writes: : On Tue, Jun 15, 2010 at 7:06 PM, Jayachandran C. : wrote: : > I have volunteered to merge Juli's 64-bit work into HEAD, =A0and : > hopefully get it to work on XLR too. The tree : > (http://svn.freebsd.org/base/user/jmallett/octeon) has quite a bit = of : > changes, so I would like to do this over multiple changesets and : > without breaking the current o32 code. : = : Here's the next installment, this has the next set of Juli's changes : and some fixes to get it working on XLR. The patches in this set are:= : = : mips-segtab-macro.patch : : Change PDE/PTE access to a macro (from Juli's branch) This looks ok, I think. : mips-cache-fix.patch : : Minor fix for cache code (JC) This looks good. : rmi-other.patch: : 64 bit compilation fixes for sys/mips/rmi (JC) : Fixes to platform and driver code for 64 bit compilation, including : changes to ethernet driver. This is xlr specific, so I can't comment. : mips-rmi-kx-enable.patch: : Changes to enable KX bit for TARGET_XLR_XLS (JC). : I have added another case for the TARGET_OCTEON #ifdef in exception.= S : and locore.S, but I think this can be moved to a header file later. Yea, we need to do some rework here, but I think this is basically OK. : pmap-n64.patch : The main n64 patch (from Juli's branch) : This still uses the old 2-level page tables. But this adds other : pmap code to support n64. I have re-arranged some of Juli's code to : reduce #ifdefs. I think this could be done in smaller bites. At least the MIPS_{PYHS,KSEGx}_TO_{KSEGx,PHYS} stuff can be done as a separate patch. I really like the use of direct maps where possible for 64-bit machines. = There's a number of comment fixes in this, which seem to be logically independent as well. Not sure it is worth the effort of busting these out though. : runq-64.patch : 64-bit rqb_word_t for n64 (JC) I think this is cool. : ldscript-64.patch : 64 bit linker script (JC) : linker script for 64 bit compilation, and XLR configuration file. I wonder if the octeon ld script can be merged or if we can use this for octeon. Some investigation is warranted, I think... : With these changes, a n64 kernel can be compiled and it will to : 'mountroot>' on XLR. There is more code left to merge in Juli's : branch - 32 bit compat code, sfbuf/uio, UMA alloc, and DDB. which I : should be able to get in the next one or two passes. OK. : Let me know your comments. There are only two minor changes should : affect the existing o32 code paths in the above code (moving the chec= k : for >512M, and change in pmap_map to handle KSEG0 addresses), but let= : me know if something breaks. Will do. I'll see if I can create a system with these patches... Warner