From owner-freebsd-mips@FreeBSD.ORG Sun Jun 13 07:48:27 2004 Return-Path: Delivered-To: freebsd-mips@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 931) id 0A9B516A4D0; Sun, 13 Jun 2004 07:48:27 +0000 (GMT) Date: Sat, 12 Jun 2004 21:48:27 -1000 From: juli mallett To: freebsd-mips@FreeBSD.org Message-ID: <20040613074826.GA41199@FreeBSD.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.4.1i X-Negacore: Yes X-Authentication-Warning: localhost: juli pwned teh intarweb X-Disclaimer: Opinions expressed about the deliciousness of eating brains are my own unless expressed by my employer. Subject: FreeBSD/MIPS news, whee! X-BeenThere: freebsd-mips@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Porting FreeBSD to MIPS List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 13 Jun 2004 07:48:27 -0000 So! In the past week and two days of hacking on and off, it's come down to 4 submits that got me past my last really ueberconfusing problems. I was screwing up trapframe, PCB and stack stuff a little, as I figured, and there still probably is something bogus there. But with the changes in P4 submits# 54798, 54799, 54800, and 54801, I now get all the way up to this in the emulator (going to try on my real IP22s in a minute): %%% Timecounter "SGI IP22" frequency 8000000 Hz quality 1000 Timecounters tick every 10.000 msec Manual root filesystem specification: : Mount using filesystem eg. ufs:/dev/da0a ? List valid disk boot devices Abort manual input mountroot> panic: Root mount failed, startup aborted. Debugger(panic) Fatal trap type 9 in kernel mode: (Bp) Breakpoint program counter = 0xffffffffa81b65b8 return address = 0xffffffffa81b65b8 bad virtual address = 0xc000000002225ca8 cause = 0x8024 status = 0x83 current thread = 0xffffffffa7966250 current process = 1 (swapper) Stopped at 0xffffffffa81b65b8: break 0 db> ps pid proc uarea uid ppid pgrp flag stat wmesg wchan cmd 24 ffffffffa795b5a0 c000000005d08000 0 0 0 0000204 [RUNQ] schedcpu 23 ffffffffa795b870 c000000005d09000 0 0 0 0000204 [RUNQ] nfsiod 3 22 ffffffffa795bb40 c000000005d0a000 0 0 0 0000204 [RUNQ] nfsiod 2 21 ffffffffa7955870 c000000005cc4000 0 0 0 0000204 [RUNQ] nfsiod 1 20 ffffffffa7955b40 c000000005cc5000 0 0 0 0000204 [RUNQ] nfsiod 0 19 ffffffffa794b000 c000000005cc6000 0 0 0 0000204 [RUNQ] vnlru 18 ffffffffa794b2d0 c000000005cd9000 0 0 0 0000204 [RUNQ] syncer 9 ffffffffa794b5a0 c000000005cda000 0 0 0 0000204 [RUNQ] bufdaemon 8 ffffffffa794b870 c000000005cdb000 0 0 0 000020c [RUNQ] pagezero 7 ffffffffa794bb40 c000000005cdc000 0 0 0 0000204 [RUNQ] vmdaemon 6 ffffffffa794d000 c000000005cdd000 0 0 0 0000204 [RUNQ] pagedaemon 17 ffffffffa796d2d0 c000000005cab000 0 0 0 0000204 [IWAIT] swi5:+ 5 ffffffffa796d5a0 c000000005cac000 0 0 0 0000204 [SLPQ - 0xffffffffa1068e80][SLP] taskqueue 16 ffffffffa796d870 c000000005cbf000 0 0 0 0000204 [IWAIT] swi6:+ 15 ffffffffa796db40 c000000005cc0000 0 0 0 0000204 [IWAIT] swi7: task queue 14 ffffffffa7955000 c000000005cc1000 0 0 0 0000204 [SLPQ - 0xffffffffa823c330][SLP] yarrow 4 ffffffffa79552d0 c000000005cc2000 0 0 0 0000204 [SLPQ - 0xffffffffa8215f10][SLP] g_down 3 ffffffffa79555a0 c000000005cc3000 0 0 0 0000204 [SLPQ - 0xffffffffa8215f08][SLP] g_up 2 ffffffffa7965000 c000000005c81000 0 0 0 0000204 [SLPQ - 0xffffffffa8215ef8][SLP] g_event 13 ffffffffa79652d0 c000000005ca6000 0 0 0 0000204 [IWAIT] swi4: vm 12 ffffffffa79655a0 c000000005ca7000 0 0 0 000020c [RUNQ] swi8: clock 11 ffffffffa7965870 c000000005ca8000 0 0 0 0000204 [IWAIT] swi1: net 10 ffffffffa7965b40 c000000005ca9000 0 0 0 000020c [Can run] idle 1 ffffffffa796d000 c000000005caa000 0 0 0 0000200 [CPU 0] swapper 0 ffffffffa8216938 ffffffffa8234eb8 0 0 0 0000200 [SLPQ sched 0xffffffffa8216938][SLP] swapper db> %%% Note that I'm still not doing anything with caches, no semblance of user-space support (though it should be easy, I've allowed for ASID stuff, and the tlb miss handler is all that would change an obscene amount)... But hey, whee. Now I'm debating md and userland, vs. device support then userland. Thanx, juli. -- juli mallett. jmallett@freebsd.org. adrift in the pacific. From owner-freebsd-mips@FreeBSD.ORG Tue Jun 15 11:10:02 2004 Return-Path: Delivered-To: freebsd-mips@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 931) id 0E43316A4CF; Tue, 15 Jun 2004 11:10:02 +0000 (GMT) Date: Tue, 15 Jun 2004 01:10:01 -1000 From: juli mallett To: freebsd-mips@FreeBSD.org Message-ID: <20040615111001.GA48501@FreeBSD.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.4.1i X-Negacore: Yes X-Authentication-Warning: localhost: juli pwned teh intarweb X-Disclaimer: Opinions expressed about the deliciousness of eating brains are my own unless expressed by my employer. Subject: caches and whatnot. X-BeenThere: freebsd-mips@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Porting FreeBSD to MIPS List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 15 Jun 2004 11:10:02 -0000 So I was having some problems getting things to work on real HW so I started looking in some possible problem areas, and sort of glossing over the problem, I got sidetracked by caches. So I decided to try running with caches on the Indigo2 and fix up the TLB abstraction to handle invalidates and whatnot, figuring it'd be pretty easy since 1) I do have the TLB abstraction 2) this is just kernel code. And Lo! An hour later, booting with caches all the way to mountroot> on my real, live Indigo2. So other than the "shiny thing" excuse, what made me do this? Well, I was looking at the emulator (ports/emulators/mips64emul) and the Indigo2 side by side, and started kernels more or less exactly at the same time, starting a little bit later with mips64emul. The emulator booted to mountroot> in about 3 seconds faster than my 250MHz Indigo2! Obscene! So I figured it was a cache issue, so now, with the exact same emulator running the same way... It takes 46 seconds to boot the emulator to mountroot>, and 6 seconds on the Indigo2 running with caches. The emulator doesn't do caches, and even if it did, I'm not sure it could run in tandem with that. Just thought I'd share those data points in case anyone else found them interesting. Unfortunately now I have no excuse to not do devices and whatnot that I've been sort of holding off on, on real hardware ;) Thanx, juli. -- juli mallett. jmallett@freebsd.org. adrift in the pacific. From owner-freebsd-mips@FreeBSD.ORG Tue Jun 15 21:40:06 2004 Return-Path: Delivered-To: freebsd-mips@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2926B16A4CE for ; Tue, 15 Jun 2004 21:40:06 +0000 (GMT) Received: from hotmail.com (bay9-f44.bay9.hotmail.com [64.4.47.44]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1D15B43D1D for ; Tue, 15 Jun 2004 21:40:06 +0000 (GMT) (envelope-from eukaryote@hotmail.com) Received: from mail pickup service by hotmail.com with Microsoft SMTPSVC; Tue, 15 Jun 2004 14:39:53 -0700 Received: from 65.93.186.182 by by9fd.bay9.hotmail.msn.com with HTTP; Tue, 15 Jun 2004 21:39:52 GMT X-Originating-IP: [65.93.186.182] X-Originating-Email: [eukaryote@hotmail.com] X-Sender: eukaryote@hotmail.com From: "Philippe St-Jacques" To: freebsd-mips@FreeBSD.org Date: Tue, 15 Jun 2004 21:39:52 +0000 Mime-Version: 1.0 Content-Type: text/plain; format=flowed Message-ID: X-OriginalArrivalTime: 15 Jun 2004 21:39:53.0328 (UTC) FILETIME=[4B29E700:01C45321] Subject: SGI - Origin 2000 X-BeenThere: freebsd-mips@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Porting FreeBSD to MIPS List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 15 Jun 2004 21:40:06 -0000 Hi. I will have soon 2 SGI Origin 2000 racks in here and I'd really like to be informed about how well your work is progressing on those machines. Each rack has 16 R10000 processors clocked at 250 mhz each, with 4 gig ram. I am also concerned about how is GCC on mips64, code optimization and quality, since some people told me it was quite poor in IRIX. Thanks again, Philippe _________________________________________________________________ Tired of spam? Get advanced junk mail protection with MSN Premium http://join.msn.com/?pgmarket=en-ca&page=byoa/prem&xAPID=1994&DI=1034&SU=http://hotmail.com/enca&HL=Market_MSNIS_Taglines From owner-freebsd-mips@FreeBSD.ORG Tue Jun 15 22:34:08 2004 Return-Path: Delivered-To: freebsd-mips@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 931) id 3F5AF16A4CF; Tue, 15 Jun 2004 22:34:08 +0000 (GMT) Date: Tue, 15 Jun 2004 12:34:08 -1000 From: juli mallett To: Philippe St-Jacques Message-ID: <20040615223408.GA16217@FreeBSD.org> References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.4.1i X-Negacore: Yes X-Authentication-Warning: localhost: juli pwned teh intarweb X-Disclaimer: Opinions expressed about the deliciousness of eating brains are my own unless expressed by my employer. cc: freebsd-mips@FreeBSD.org Subject: Re: SGI - Origin 2000 X-BeenThere: freebsd-mips@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Porting FreeBSD to MIPS List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 15 Jun 2004 22:34:08 -0000 * Philippe St-Jacques [ Date: 2004-06-15 ] [ w.r.t. SGI - Origin 2000 ] > Hi. I will have soon 2 SGI Origin 2000 racks in here and I'd really like to > be informed about how well your work is progressing on those machines. Each > rack has 16 R10000 processors clocked at 250 mhz each, with 4 gig ram. > > I am also concerned about how is GCC on mips64, code optimization and > quality, since some people told me it was quite poor in IRIX. GCC is getting quite better on MIPS in most recent revisions. I've seen numbers quoted around the "30%" range, though I'm not sure if that's with 64-bit longs and ptrs, what processor that's on, etc. I've not tried to do any measurements of it, but it does look a lot better in ways. Targetting an Origin 2000 is a ways off. First have to get everything else done (multi-user, not crashy, devices supported, etc.) Then doing the CPU and machine-specific stuff is a bit of work. Then doing SMP is a bit of work. I don't know of anyone with time+hardware+interest. By the time I have interest and it's feasible, I'll probably be short on time, let alone time to work with remore hardware. Hope this helps. Thanx, juli. -- juli mallett. jmallett@freebsd.org. adrift in the pacific. From owner-freebsd-mips@FreeBSD.ORG Wed Jun 16 00:12:56 2004 Return-Path: Delivered-To: freebsd-mips@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id DA8C116A4CE for ; Wed, 16 Jun 2004 00:12:56 +0000 (GMT) Received: from mail.linux-mips.net (p508B7628.dip.t-dialin.net [80.139.118.40]) by mx1.FreeBSD.org (Postfix) with ESMTP id D0F7E43D5E for ; Wed, 16 Jun 2004 00:12:54 +0000 (GMT) (envelope-from ralf@linux-mips.org) Received: from fluff.linux-mips.net (fluff.linux-mips.net [127.0.0.1]) by mail.linux-mips.net (8.12.11/8.12.8) with ESMTP id i5G0B8EQ018486; Wed, 16 Jun 2004 02:11:08 +0200 Received: (from ralf@localhost) by fluff.linux-mips.net (8.12.11/8.12.11/Submit) id i5G0B7rs018485; Wed, 16 Jun 2004 02:11:07 +0200 Date: Wed, 16 Jun 2004 02:11:07 +0200 From: Ralf Baechle To: Philippe St-Jacques Message-ID: <20040616001107.GA15817@linux-mips.org> References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.4.1i cc: freebsd-mips@FreeBSD.org Subject: Re: SGI - Origin 2000 X-BeenThere: freebsd-mips@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Porting FreeBSD to MIPS List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 16 Jun 2004 00:12:57 -0000 On Tue, Jun 15, 2004 at 09:39:52PM +0000, Philippe St-Jacques wrote: > Hi. I will have soon 2 SGI Origin 2000 racks in here and I'd really like to > be informed about how well your work is progressing on those machines. Each > rack has 16 R10000 processors clocked at 250 mhz each, with 4 gig ram. In addition to the issues raised by Juli there also is the lack [1] of ccNUMA support in FreeBSD. The SN0 architecture has a very low local to remote memory latency ratio which tends to paper over the lack of such OS support pretty well. Also OS ccNUMA support comes at a cost at not too much possible gain for a 4 processor system. So scaling to 4 processors is not so much of an issue - it'll work more or less. Starting from 8 processors things are getting a bit ugly for most workloads we did test and even more so at 16. Don't get me started about scalability to a midsize system of like 128 processors without well tuned NUMA support ;-) Ralf [1] Forgive if that has changed - I'm not following FreeBSD development very much ...