From owner-freebsd-arch@FreeBSD.ORG Mon May 24 15:58:00 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 70A7E1065672 for ; Mon, 24 May 2010 15:58:00 +0000 (UTC) (envelope-from mavbsd@gmail.com) Received: from mail-fx0-f54.google.com (mail-fx0-f54.google.com [209.85.161.54]) by mx1.freebsd.org (Postfix) with ESMTP id 014598FC18 for ; Mon, 24 May 2010 15:57:59 +0000 (UTC) Received: by fxm4 with SMTP id 4so3397023fxm.13 for ; Mon, 24 May 2010 08:57:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:sender:message-id:date:from :user-agent:mime-version:to:subject:x-enigmail-version:content-type :content-transfer-encoding; bh=aMAARUQZ6b+7DLZTORS3QFNQSrYIzVHw8SlseEXeLUc=; b=TUcEGkMbTiO9IWhnNrwmqxqmRtomEhacXxmJpKDMXHWPuyO5XFlWflwgJ2IC7uYABA O+lMYyL0MKqJIhAXgl+eYCDRaq+GYz6ExRW9KjINwZzSKafvG7hiXueIjrGhH65arGCG IJ/Zoy+YYOXO02nPzQPYcosCWwYaCY7RiwcKI= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=sender:message-id:date:from:user-agent:mime-version:to:subject :x-enigmail-version:content-type:content-transfer-encoding; b=LouEsGUOlpb+LoztyiRsOtjbo6kViduElmy1YmbJPhzhOPYnogwvvCqntNUYlh7xuG 92vQQZTi4a2V9JnxCSjJR6gsw+NWjJdnXaW3647+fSabQaDjIS13SNFCv27TppFA5qGq ba5l39bHlF65DGuUlPqhvB/xjbR+G/TtvREK8= Received: by 10.223.16.84 with SMTP id n20mr4802055faa.94.1274716678912; Mon, 24 May 2010 08:57:58 -0700 (PDT) Received: from mavbook.mavhome.dp.ua (pc.mavhome.dp.ua [212.86.226.226]) by mx.google.com with ESMTPS id z12sm20119617fah.21.2010.05.24.08.57.57 (version=SSLv3 cipher=RC4-MD5); Mon, 24 May 2010 08:57:57 -0700 (PDT) Sender: Alexander Motin Message-ID: <4BFAA1F3.1070206@FreeBSD.org> Date: Mon, 24 May 2010 18:57:39 +0300 From: Alexander Motin User-Agent: Thunderbird 2.0.0.24 (X11/20100402) MIME-Version: 1.0 To: freebsd-arch@freebsd.org X-Enigmail-Version: 0.96.0 Content-Type: text/plain; charset=KOI8-R Content-Transfer-Encoding: 7bit Subject: Event timers X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 24 May 2010 15:58:00 -0000 Hi. You should agree that event timers code we have now (hardclock, statclock and profclock source) is real mess. The code is completely machine-dependent, many times duplicated (I have found 4 or 5 equal implementations and many more trivial ones), very tangled and inflexible. While it is acceptable for some platforms with single interrupt source running on hz, x86 with it's many different timers definitely doesn't look good. So I've decided to clean it. I have defined several points on that way: 1*. clean low-level timer drivers from unrelated stuff, 2*. make some common code machine-independent, 3. write common driver API for event timers (alike to one we have now for time counters) to make adding more drivers possible, 4. add support for HPET as event timer in addition to time counter, 5. add support for timers in one-shot mode (LAPIC and HPET). I have already committed first patch (r208494) for points 1 and 2. I have added two new MI functions timer1clock() and timer2clock(), which implement division of incoming interrupts from one or two sources per CPU between calls to hardclock(), statclock() and profclock(). Now MI code should just provide interrupt sources calling respective functions on every tick and set timer1hz and timer2hz variables, reporting their frequency. If only one interrupt source present, timer2hz should be set to zero. Provided functions will divide these interrupt rates according to already existing hz, stathz and profhz variables. I have updated all x86 timers to use new KPI. Now these drivers look better, getting closer to wrapping into abstract API. Other architectures should not be harmed as all legacy methods are still completely functional. Though update would give benefits in either better functionality or at least more clean code. -- Alexander Motin From owner-freebsd-arch@FreeBSD.ORG Mon May 24 16:33:15 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 334721065674; Mon, 24 May 2010 16:33:15 +0000 (UTC) (envelope-from avg@freebsd.org) Received: from citadel.icyb.net.ua (citadel.icyb.net.ua [212.40.38.140]) by mx1.freebsd.org (Postfix) with ESMTP id 4635D8FC15; Mon, 24 May 2010 16:33:13 +0000 (UTC) Received: from porto.topspin.kiev.ua (porto-e.starpoint.kiev.ua [212.40.38.100]) by citadel.icyb.net.ua (8.8.8p3/ICyb-2.3exp) with ESMTP id TAA04759; Mon, 24 May 2010 19:33:12 +0300 (EEST) (envelope-from avg@freebsd.org) Received: from localhost.topspin.kiev.ua ([127.0.0.1]) by porto.topspin.kiev.ua with esmtp (Exim 4.34 (FreeBSD)) id 1OGaaW-000C0m-I4; Mon, 24 May 2010 19:33:12 +0300 Message-ID: <4BFAAA47.5060802@freebsd.org> Date: Mon, 24 May 2010 19:33:11 +0300 From: Andriy Gapon User-Agent: Thunderbird 2.0.0.24 (X11/20100321) MIME-Version: 1.0 To: Alexander Motin References: <4BFAA1F3.1070206@FreeBSD.org> In-Reply-To: <4BFAA1F3.1070206@FreeBSD.org> X-Enigmail-Version: 0.96.0 Content-Type: text/plain; charset=KOI8-R Content-Transfer-Encoding: 7bit Cc: freebsd-arch@freebsd.org Subject: Re: Event timers X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 24 May 2010 16:33:15 -0000 on 24/05/2010 18:57 Alexander Motin said the following: > I have defined several points on that way: > 1*. clean low-level timer drivers from unrelated stuff, > 2*. make some common code machine-independent, > 3. write common driver API for event timers (alike to one we have now > for time counters) to make adding more drivers possible, > 4. add support for HPET as event timer in addition to time counter, > 5. add support for timers in one-shot mode (LAPIC and HPET). Alexander, I wonder how much you have progressed for 3,4,5. I have some low level code for 4. Some additional things that could be useful: a. It would be nice to replace special handling of NULL as interrupt arg with something more convenient. Right now if interrupt arg is NULL then a pointer to an interrupted frame is passed to interrupt handler. This is used by clock interrupt handlers. It would be good to be able to pass both frame pointer and some context to handler. jhb suggested that frame pointer could be passed via struct thread. b. On some x86 systems it is possible to broadcast APIC interrupts to all CPUs by using broadcast ID (0xFF) instead of a specific CPU ID. This could be used to avoid IPI overhead. I have some code for b. -- Andriy Gapon From owner-freebsd-arch@FreeBSD.ORG Mon May 24 17:01:15 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9E66E1065672; Mon, 24 May 2010 17:01:15 +0000 (UTC) (envelope-from mavbsd@gmail.com) Received: from mail-fx0-f54.google.com (mail-fx0-f54.google.com [209.85.161.54]) by mx1.freebsd.org (Postfix) with ESMTP id DC6738FC1B; Mon, 24 May 2010 17:01:14 +0000 (UTC) Received: by fxm4 with SMTP id 4so3461870fxm.13 for ; Mon, 24 May 2010 10:01:13 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:sender:message-id:date:from :user-agent:mime-version:to:cc:subject:references:in-reply-to :x-enigmail-version:content-type:content-transfer-encoding; bh=gpY8J57dimn5lzsxD3w4R1rP+1kn5uhSr0qRSjN3bog=; b=uybLgF8fHZ8s72rTTyh7aA9PQi/s998Ro/qahByMs1JVM/1vCxqmcxDaCVuq/e+pLA 9TB/Pi55iwau7WrC/P7fBwf6Wm/DwOBPcErKejltAwk1C3ZxahtGkwxipKm09UgdoqNf uq7InI0r8vQoPjKH1i7MkNb8H1DvxiL+iQXGs= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=sender:message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:x-enigmail-version:content-type :content-transfer-encoding; b=nImQXDo/z46S7RMaiOC0y87kufx6L0UxMzUg3UpGXjAffz/3Z5Bv7rohhXj8dCkfNb p/x6GA35LTEpRmlqAJiAB7agMsKXhwvrNo/4df1pOBS11ZIjKiVjq/N28ZyO1YyZ443e W3R4ysqh14Hq5TKGQWdidfvbSauUZy4ctZ51Q= Received: by 10.223.51.152 with SMTP id d24mr4865851fag.36.1274720473811; Mon, 24 May 2010 10:01:13 -0700 (PDT) Received: from mavbook.mavhome.dp.ua (pc.mavhome.dp.ua [212.86.226.226]) by mx.google.com with ESMTPS id 13sm20365488fad.19.2010.05.24.10.01.11 (version=SSLv3 cipher=RC4-MD5); Mon, 24 May 2010 10:01:12 -0700 (PDT) Sender: Alexander Motin Message-ID: <4BFAB0C5.1020002@FreeBSD.org> Date: Mon, 24 May 2010 20:00:53 +0300 From: Alexander Motin User-Agent: Thunderbird 2.0.0.24 (X11/20100402) MIME-Version: 1.0 To: Andriy Gapon References: <4BFAA1F3.1070206@FreeBSD.org> <4BFAAA47.5060802@freebsd.org> In-Reply-To: <4BFAAA47.5060802@freebsd.org> X-Enigmail-Version: 0.96.0 Content-Type: text/plain; charset=KOI8-R Content-Transfer-Encoding: 7bit Cc: freebsd-arch@freebsd.org Subject: Re: Event timers X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 24 May 2010 17:01:15 -0000 Andriy Gapon wrote: > on 24/05/2010 18:57 Alexander Motin said the following: >> I have defined several points on that way: >> 1*. clean low-level timer drivers from unrelated stuff, >> 2*. make some common code machine-independent, >> 3. write common driver API for event timers (alike to one we have now >> for time counters) to make adding more drivers possible, >> 4. add support for HPET as event timer in addition to time counter, >> 5. add support for timers in one-shot mode (LAPIC and HPET). > > I wonder how much you have progressed for 3,4,5. Not really much yet. Learned existing code and hardware specs, have some thought and ready to proceed. > I have some low level code for 4. I don't see much problems there, except may be interrupt allocation. But you may send it to me if there is something interesting. > Some additional things that could be useful: > a. It would be nice to replace special handling of NULL as interrupt arg with > something more convenient. Right now if interrupt arg is NULL then a pointer to > an interrupted frame is passed to interrupt handler. This is used by clock > interrupt handlers. It would be good to be able to pass both frame pointer and > some context to handler. jhb suggested that frame pointer could be passed via > struct thread. Hmmm. Interesting question... > b. On some x86 systems it is possible to broadcast APIC interrupts to all CPUs > by using broadcast ID (0xFF) instead of a specific CPU ID. This could be used > to avoid IPI overhead. > > I have some code for b. AFAIR I've heart our interrupt code not very supports it... Also IPI probably could be more selective. We could do for example some form of one-shot mode using only one simple periodic timer to wake up only needed cores (plus one initial). -- Alexander Motin From owner-freebsd-arch@FreeBSD.ORG Mon May 24 18:19:38 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 99A42106566B for ; Mon, 24 May 2010 18:19:38 +0000 (UTC) (envelope-from phcoder@gmail.com) Received: from mail-ww0-f54.google.com (mail-ww0-f54.google.com [74.125.82.54]) by mx1.freebsd.org (Postfix) with ESMTP id 19C108FC1D for ; Mon, 24 May 2010 18:19:37 +0000 (UTC) Received: by wwb28 with SMTP id 28so547495wwb.13 for ; Mon, 24 May 2010 11:19:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from :user-agent:mime-version:to:cc:subject:references:in-reply-to :x-enigmail-version:content-type; bh=97bLS3jBnAmTiqxnyuj/waKGSjT9r2GTix6NYyOjnHY=; b=ZvNI9F4yH8r8tYWg4fgYXG/ymwG/CgeIH1OHrSzjhbAe+vEvsNG3W30VXVet5riI3Z d7T+r0cGm47Kb4gj2Ix1WMF64hGS0qrh0uFwozI3BiqJ5ZO4UAKgORq4DKOSwWG/PBGK Fx2AgYQrnqXk9G4cxerWGdF5patIc36A298/o= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:x-enigmail-version:content-type; b=sC+OG3ft7FM0YRBD8Swovd1Ni+BKrIzZ0Z+Cb8hi+9Ticd+XeTu0h4P5Jdtx+Inl3E F92cbQfp4RYHZWDJsZQ38yDMwNmPYNjXb1DYwRxWUXlvPAU49LqeeW4iq760SyBbTrt4 wRGPuk7s6Wz1ntYQUCDw0YxivzBMOcW/iILfY= Received: by 10.227.144.129 with SMTP id z1mr5943158wbu.3.1274725176862; Mon, 24 May 2010 11:19:36 -0700 (PDT) Received: from debian.bg45.phnet (gprs35.swisscom-mobile.ch [193.247.250.35]) by mx.google.com with ESMTPS id 14sm2067558ewy.6.2010.05.24.11.19.33 (version=TLSv1/SSLv3 cipher=RC4-MD5); Mon, 24 May 2010 11:19:34 -0700 (PDT) Message-ID: <4BFAC322.7070905@gmail.com> Date: Mon, 24 May 2010 20:19:14 +0200 From: =?UTF-8?B?VmxhZGltaXIgJ8+GLWNvZGVyL3BoY29kZXInIFNlcmJpbmVua28=?= User-Agent: Mozilla-Thunderbird 2.0.0.22 (X11/20091109) MIME-Version: 1.0 To: Andrew Reilly References: <4BE98FB5.3060906@gmail.com> <20100514020055.GB89230@duncan.reilly.home> In-Reply-To: <20100514020055.GB89230@duncan.reilly.home> X-Enigmail-Version: 0.95.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="------------enig16950A601F86A9AC63F78510" Cc: The development of GRUB 2 , freebsd-arch@freebsd.org Subject: Re: [RFC] Multiboot2 drafting X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 24 May 2010 18:19:38 -0000 This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enig16950A601F86A9AC63F78510 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Andrew Reilly wrote: > Hi there, > > I know next to nothing about GRUB, and have not yet read the > multiboot spec, but I wonder if you could comment on how or > whether this is related to either the Open Firmware Device Tree > or the Flattened Device Tree used in various embedded OS ports. > It would be cool if there were some convergence going on... > > =20 I've looked into it and found good and bad things. Good: -represents the info needed to OS. It's something definitely good and goes in direction we need Bad: -it basically has all the history ballast of OpenFirmware. OFW is supposed to be system-independent but in fact there is a multitude of implementation with various degrees of compatibility. Same goes for device trees. The same information is present in different places with lots of special cases. Many of fields are actually useless variant select= ors -it uses string identifiers instead of magic numbers. This makes it more difficult to parse -the most useful information is coming at the leaves and interpretation depends on whole path. It lacks aspects of complete boot protocol. I think it needs some cleanup. I would be interested in converging simplified and cleaned up version of device tree into multiboot2 > Cheers, > > =20 --=20 Regards Vladimir '=CF=86-coder/phcoder' Serbinenko --------------enig16950A601F86A9AC63F78510 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iF4EAREKAAYFAkv6wy0ACgkQNak7dOguQgl+zgD9Hm5Z7Bm5qmcpi2MmHE1njJ4A sI+D0/Ge2LHy2xDzC6EBAJF3yvAiYiR/ub9mpb5qEhQ8Ne/fScMGdRJ/QBD8nWA/ =TjLM -----END PGP SIGNATURE----- --------------enig16950A601F86A9AC63F78510-- From owner-freebsd-arch@FreeBSD.ORG Mon May 24 18:22:10 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 8F610106568A for ; Mon, 24 May 2010 18:22:10 +0000 (UTC) (envelope-from phcoder@gmail.com) Received: from mail-wy0-f182.google.com (mail-wy0-f182.google.com [74.125.82.182]) by mx1.freebsd.org (Postfix) with ESMTP id 141BB8FC18 for ; Mon, 24 May 2010 18:22:09 +0000 (UTC) Received: by wyb39 with SMTP id 39so447798wyb.13 for ; Mon, 24 May 2010 11:22:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from :user-agent:mime-version:to:cc:subject:references:in-reply-to :x-enigmail-version:content-type; bh=A9Skb3jSDa+md9CNAzu/6SsRoXTmHieLGqVifg1+uOw=; b=LPMCRHi1oY7sVwgFnisgWTBckTxfNvjBUvN6wdoLO91SPSCwjcu+w/dASTOw2Tr31y CXfW2FIMOCqvEhAD08U9LVUMXjmxz39Jhq0zNLbW3GVy+RNGbeGrMht8zCAdhwxsfHMf fKRnP9Ux7aGHxMxLDfXQ8Q0RAKondUNPfTOiE= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:x-enigmail-version:content-type; b=ousNyq2FeDA7r9RYSJvqsDWngusMyrHnRYq+bqYxlxi98hlz0BZ2M41FxdBsESzQat j7BaP/pHCWLvMR6AzKscB7e3o8UYfJJaNINslN8jHzVLPrYB70g5+m5hecCXIkkrucO3 PejK4ipbLPvXd4+34vwxmjkkKToFxtv9hBE9g= Received: by 10.227.135.198 with SMTP id o6mr5788853wbt.142.1274725328604; Mon, 24 May 2010 11:22:08 -0700 (PDT) Received: from debian.bg45.phnet (gprs35.swisscom-mobile.ch [193.247.250.35]) by mx.google.com with ESMTPS id 15sm2029886ewy.12.2010.05.24.11.22.06 (version=TLSv1/SSLv3 cipher=RC4-MD5); Mon, 24 May 2010 11:22:07 -0700 (PDT) Message-ID: <4BFAC3C9.1080409@gmail.com> Date: Mon, 24 May 2010 20:22:01 +0200 From: =?UTF-8?B?VmxhZGltaXIgJ8+GLWNvZGVyL3BoY29kZXInIFNlcmJpbmVua28=?= User-Agent: Mozilla-Thunderbird 2.0.0.22 (X11/20091109) MIME-Version: 1.0 To: "M. Warner Losh" References: <4BE98FB5.3060906@gmail.com> <20100514020055.GB89230@duncan.reilly.home> <4BECEE31.3060004@gmail.com> <20100514.064409.634347869525783787.imp@bsdimp.com> In-Reply-To: <20100514.064409.634347869525783787.imp@bsdimp.com> X-Enigmail-Version: 0.95.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="------------enigF203EAB0CFAF9939618CFF30" Cc: grub-devel@gnu.org, freebsd-arch@freebsd.org Subject: Re: [RFC] Multiboot2 drafting X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 24 May 2010 18:22:10 -0000 This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enigF203EAB0CFAF9939618CFF30 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable M. Warner Losh wrote: > In message: <4BECEE31.3060004@gmail.com> > Vladimir '=CF=86-coder/phcoder' Serbinenko writes: > : Yes and No. multiboot2 describes some aspects of the host system > : hardware but I've never heard of device trees outside of IEEE1275 or > : xnu, where it's probably a historical leftover. > > It is far from a historical left-over. I meant the only xnu on i386. It receives a device tree from bootloader but on most platforms it's either empty or ignored > Linux critically depends on > the boot loader on PowerPC to provide it with a tree of devices that > it cannot otherwise probe. On other architectures, it is becoming an > optional way to specify the device tree as well. There are many > different implementations of this, since primarily it is just data and > boot loaders are good at providing binary blobs to the kernel... > =20 Could we come up with a standard of passing this information in multiboot= 2? > In addition, Rafal Jawarski has ported this technology to FreeBSD. > He's presenting a paper on it today at BSDcan: > http://www.bsdcan.org/2010/schedule/events/171.en.html > I've reviewed the work, and it goes a long way towards making some of > the more stupid and repetitive parts of doing a port to a new embedded > architecture easy. > > Warner > =20 --=20 Regards Vladimir '=CF=86-coder/phcoder' Serbinenko --------------enigF203EAB0CFAF9939618CFF30 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iF4EAREKAAYFAkv6w8kACgkQNak7dOguQglzJQEAnpQvl5/6IXEUTXfr28Iihl4e qQBLHbOuHbw5L1kRiSQA/0TCDLg8/TnkZGlQq7AqMdg9fXcRBWfoMHe2Lk+Wsi6M =sE7Y -----END PGP SIGNATURE----- --------------enigF203EAB0CFAF9939618CFF30-- From owner-freebsd-arch@FreeBSD.ORG Mon May 24 21:07:18 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 949A81065678 for ; Mon, 24 May 2010 21:07:18 +0000 (UTC) (envelope-from phcoder@gmail.com) Received: from ey-out-2122.google.com (ey-out-2122.google.com [74.125.78.27]) by mx1.freebsd.org (Postfix) with ESMTP id 19C0F8FC1E for ; Mon, 24 May 2010 21:07:17 +0000 (UTC) Received: by ey-out-2122.google.com with SMTP id d26so129879eyd.9 for ; Mon, 24 May 2010 14:07:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:message-id:date:from :user-agent:mime-version:to:cc:subject:references:in-reply-to :x-enigmail-version:content-type; bh=/jxj5g3LKcv+AknPqSE2fd4a+Cey9gKEceb1Tj8eeTE=; b=NCieX+3fpb+dilxk57cavVgnvhUGsXmIgHDwdIz+cTu+YOFagly8LR/y/1LEtFvr69 +/Pd4mKbPyZhYattDZJeCSZBeVHSosJbPT0NCgB10j+baC4CeIzWlYtcT3yFjpFosZmf +Xuf+o3IMsjlnpZ2iIMGBkdXe+jv56Tj4IM2c= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:x-enigmail-version:content-type; b=tY+pHJGyVG2BylljFiwr8VnA3y0meCM0fDWX6A6wYfUb6hW67vuJPpx2L5YoPDZhWh fuVnvKTXSFSBJziu/tDZocxwaK6S0yGVzVuzm9SA9dbq/zVMruD7PmTaBebNDWVPXI7d 4G/9DN2wJymmfqDP6vZGW4UxaU/c6abBXkhZA= Received: by 10.213.19.197 with SMTP id c5mr32400ebb.17.1274735235908; Mon, 24 May 2010 14:07:15 -0700 (PDT) Received: from debian.bg45.phnet (gprs25.swisscom-mobile.ch [193.247.250.25]) by mx.google.com with ESMTPS id 16sm2109572ewy.3.2010.05.24.14.07.12 (version=TLSv1/SSLv3 cipher=RC4-MD5); Mon, 24 May 2010 14:07:15 -0700 (PDT) Message-ID: <4BFAEA79.4020901@gmail.com> Date: Mon, 24 May 2010 23:07:05 +0200 From: =?UTF-8?B?VmxhZGltaXIgJ8+GLWNvZGVyL3BoY29kZXInIFNlcmJpbmVua28=?= User-Agent: Mozilla-Thunderbird 2.0.0.22 (X11/20091109) MIME-Version: 1.0 To: Andrew Reilly References: <4BE98FB5.3060906@gmail.com> <20100514020055.GB89230@duncan.reilly.home> <4BFAC322.7070905@gmail.com> In-Reply-To: <4BFAC322.7070905@gmail.com> X-Enigmail-Version: 0.95.0 Content-Type: multipart/signed; micalg=pgp-sha512; protocol="application/pgp-signature"; boundary="------------enigE1F13B1717527337636FC2AD" Cc: The development of GRUB 2 , freebsd-arch@freebsd.org Subject: Re: [RFC] Multiboot2 drafting X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 24 May 2010 21:07:18 -0000 This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enigE1F13B1717527337636FC2AD Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Vladimir '=CF=86-coder/phcoder' Serbinenko wrote: > Andrew Reilly wrote: > =20 >> Hi there, >> >> I know next to nothing about GRUB, and have not yet read the >> multiboot spec, but I wonder if you could comment on how or >> whether this is related to either the Open Firmware Device Tree >> or the Flattened Device Tree used in various embedded OS ports. >> It would be cool if there were some convergence going on... >> >> =20 >> =20 > I've looked into it and found good and bad things. > Good: > -represents the info needed to OS. It's something definitely good and > goes in direction we need > Bad: > -it basically has all the history ballast of OpenFirmware. OFW is > supposed to be system-independent but in fact there is a multitude of > implementation with various degrees of compatibility. Same goes for > device trees. The same information is present in different places with > lots of special cases. Many of fields are actually useless variant sele= ctors > -it uses string identifiers instead of magic numbers. This makes it mor= e > difficult to parse > -the most useful information is coming at the leaves and interpretation= > depends on whole path. > =20 And traditional OpenFirmware has too much info which is probably useless. E.g. once you know where PCI controller is and you support PCI you can probe devices which are on it. If you don't support PCI controller the info about devices on it is probably useless too. Only exception is "early" info which is needed to e.g. setup console before normal drivers are up > It lacks aspects of complete boot protocol. I think it needs some > cleanup. I would be interested in converging simplified and cleaned up > version of device tree into multiboot2 > =20 >> Cheers, >> >> =20 >> =20 > > > =20 --=20 Regards Vladimir '=CF=86-coder/phcoder' Serbinenko --------------enigE1F13B1717527337636FC2AD Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iF4EAREKAAYFAkv66n8ACgkQNak7dOguQgl5cgEAl4ky22PaegWMRkA2jnhdJ+5J wzhIP5yl8CuiGUXODeQBALGM/89WvvWjBXYfbBmwzQ7RDcVS5XVy4PO0Yuk+7/ko =LLny -----END PGP SIGNATURE----- --------------enigE1F13B1717527337636FC2AD-- From owner-freebsd-arch@FreeBSD.ORG Tue May 25 04:53:12 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 88E87106566B for ; Tue, 25 May 2010 04:53:12 +0000 (UTC) (envelope-from areilly@bigpond.net.au) Received: from nschwmtas03p.mx.bigpond.com (nschwmtas03p.mx.bigpond.com [61.9.189.143]) by mx1.freebsd.org (Postfix) with ESMTP id 1E8548FC0A for ; Tue, 25 May 2010 04:53:11 +0000 (UTC) Received: from nschwotgx01p.mx.bigpond.com ([124.188.161.100]) by nschwmtas03p.mx.bigpond.com with ESMTP id <20100525045310.EYH20574.nschwmtas03p.mx.bigpond.com@nschwotgx01p.mx.bigpond.com>; Tue, 25 May 2010 04:53:10 +0000 Received: from duncan.reilly.home ([124.188.161.100]) by nschwotgx01p.mx.bigpond.com with ESMTP id <20100525045309.VSIK3673.nschwotgx01p.mx.bigpond.com@duncan.reilly.home>; Tue, 25 May 2010 04:53:09 +0000 Date: Tue, 25 May 2010 14:53:09 +1000 From: Andrew Reilly To: Vladimir =?utf-8?Q?'=CF=86-coder=2Fphcoder'?= Serbinenko Message-ID: <20100525045309.GA4633@duncan.reilly.home> References: <4BE98FB5.3060906@gmail.com> <20100514020055.GB89230@duncan.reilly.home> <4BFAC322.7070905@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <4BFAC322.7070905@gmail.com> User-Agent: Mutt/1.4.2.3i X-Authentication-Info: Submitted using SMTP AUTH LOGIN at nschwotgx01p.mx.bigpond.com from [124.188.161.100] using ID areilly@bigpond.net.au at Tue, 25 May 2010 04:53:09 +0000 X-RPD-ScanID: Class unknown; VirusThreatLevel unknown, RefID str=0001.0A090206.4BFB57B6.00B9,ss=1,fgs=0 X-SIH-MSG-ID: rx87Gdf5TAD0zmQs0WyzOwJxyArnqyN48Z4QX81loRIGTUDCp8DeQ9rHNvZRvN+vxDxJJhqBNGQjaa3kTY3Rs9mK Cc: The development of GRUB 2 , freebsd-arch@freebsd.org Subject: Re: [RFC] Multiboot2 drafting X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 25 May 2010 04:53:12 -0000 Hi Vladimir, On Mon, May 24, 2010 at 08:19:14PM +0200, Vladimir 'φ-coder/phcoder' Serbinenko wrote: > I've looked into it and found good and bad things. Thanks for looking! I didn't expect that it would be all good: I've only read some papers, and it seemed to be covering much the same sort of ground. I hope that some avenues for convergence have or will be found. Cheers, -- Andrew From owner-freebsd-arch@FreeBSD.ORG Tue May 25 12:49:39 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3EC461065674; Tue, 25 May 2010 12:49:39 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from cyrus.watson.org (cyrus.watson.org [65.122.17.42]) by mx1.freebsd.org (Postfix) with ESMTP id 119428FC0A; Tue, 25 May 2010 12:49:39 +0000 (UTC) Received: from bigwig.baldwin.cx (66.111.2.69.static.nyinternet.net [66.111.2.69]) by cyrus.watson.org (Postfix) with ESMTPSA id B7C9F46B8F; Tue, 25 May 2010 08:49:38 -0400 (EDT) Received: from jhbbsd.localnet (smtp.hudson-trading.com [209.249.190.9]) by bigwig.baldwin.cx (Postfix) with ESMTPA id 3EBF68A027; Tue, 25 May 2010 08:49:36 -0400 (EDT) From: John Baldwin To: freebsd-arch@freebsd.org Date: Mon, 24 May 2010 15:30:05 -0400 User-Agent: KMail/1.12.1 (FreeBSD/7.3-CBSD-20100217; KDE/4.3.1; amd64; ; ) References: <4BFAA1F3.1070206@FreeBSD.org> In-Reply-To: <4BFAA1F3.1070206@FreeBSD.org> MIME-Version: 1.0 Content-Type: Text/Plain; charset="koi8-r" Content-Transfer-Encoding: 7bit Message-Id: <201005241530.05116.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.0.1 (bigwig.baldwin.cx); Tue, 25 May 2010 08:49:36 -0400 (EDT) X-Virus-Scanned: clamav-milter 0.95.1 at bigwig.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-1.9 required=4.2 tests=AWL,BAYES_00, DATE_IN_PAST_12_24 autolearn=no version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on bigwig.baldwin.cx Cc: Alexander Motin Subject: Re: Event timers X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 25 May 2010 12:49:39 -0000 On Monday 24 May 2010 11:57:39 am Alexander Motin wrote: > Hi. > > You should agree that event timers code we have now (hardclock, > statclock and profclock source) is real mess. The code is completely > machine-dependent, many times duplicated (I have found 4 or 5 equal > implementations and many more trivial ones), very tangled and > inflexible. While it is acceptable for some platforms with single > interrupt source running on hz, x86 with it's many different timers > definitely doesn't look good. So I've decided to clean it. > > I have defined several points on that way: > 1*. clean low-level timer drivers from unrelated stuff, > 2*. make some common code machine-independent, > 3. write common driver API for event timers (alike to one we have now > for time counters) to make adding more drivers possible, > 4. add support for HPET as event timer in addition to time counter, > 5. add support for timers in one-shot mode (LAPIC and HPET). Have you looked at the dynamic ticks patches on hackers@? Those already include changes for 5), although he currently only has support for LAPIC and is working on adding HPET support. -- John Baldwin From owner-freebsd-arch@FreeBSD.ORG Tue May 25 13:15:57 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 77C5F1065670; Tue, 25 May 2010 13:15:57 +0000 (UTC) (envelope-from mavbsd@gmail.com) Received: from mail-fx0-f54.google.com (mail-fx0-f54.google.com [209.85.161.54]) by mx1.freebsd.org (Postfix) with ESMTP id CE5298FC08; Tue, 25 May 2010 13:15:56 +0000 (UTC) Received: by fxm17 with SMTP id 17so376372fxm.13 for ; Tue, 25 May 2010 06:15:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:sender:message-id:date:from :user-agent:mime-version:to:cc:subject:references:in-reply-to :x-enigmail-version:content-type:content-transfer-encoding; bh=d5e4XUf53/x7/BxtG2Kv279XWHRowIP8pDrjNSJOmkw=; b=mEpDTypZfkf2duXm5KJPaZBXt3NiYBb5NvcBGZ08hZGinVtd8AgMrXeQElvHXiZ+hc 0krgDAutZSIBmUlYGTVBhRm/xOkAJ3zWHS2EouRDCpswK4WKSoW+woySW27XV2Pk3P+X vs2hoTbReVfv7TdR2msfkxl+qa5q2TJHjNBkQ= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=sender:message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:x-enigmail-version:content-type :content-transfer-encoding; b=UhzOZy4D7ZjPW/+WE4p78av7w/HhYSHOFEm+jc7oEPnPOggQqqB8YcfV7OcN4IWKVL d73doUzVHhd2M/EhwIIQ4uWcZrZvFBkpiUP8ENaNR+sU964kjeXQgfLA9qg5JC6g+fyx WK32Bx6MbRI6IoshuHi/JFp7sUiX+0nQwpu80= Received: by 10.223.64.205 with SMTP id f13mr6089760fai.98.1274793355645; Tue, 25 May 2010 06:15:55 -0700 (PDT) Received: from mavbook.mavhome.dp.ua (pc.mavhome.dp.ua [212.86.226.226]) by mx.google.com with ESMTPS id 7sm24781744far.6.2010.05.25.06.15.53 (version=SSLv3 cipher=RC4-MD5); Tue, 25 May 2010 06:15:53 -0700 (PDT) Sender: Alexander Motin Message-ID: <4BFBCD77.5030900@FreeBSD.org> Date: Tue, 25 May 2010 16:15:35 +0300 From: Alexander Motin User-Agent: Thunderbird 2.0.0.24 (X11/20100402) MIME-Version: 1.0 To: John Baldwin References: <4BFAA1F3.1070206@FreeBSD.org> <201005241530.05116.jhb@freebsd.org> In-Reply-To: <201005241530.05116.jhb@freebsd.org> X-Enigmail-Version: 0.96.0 Content-Type: text/plain; charset=KOI8-R Content-Transfer-Encoding: 7bit Cc: freebsd-arch@freebsd.org Subject: Re: Event timers X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 25 May 2010 13:15:57 -0000 John Baldwin wrote: > On Monday 24 May 2010 11:57:39 am Alexander Motin wrote: >> You should agree that event timers code we have now (hardclock, >> statclock and profclock source) is real mess. The code is completely >> machine-dependent, many times duplicated (I have found 4 or 5 equal >> implementations and many more trivial ones), very tangled and >> inflexible. While it is acceptable for some platforms with single >> interrupt source running on hz, x86 with it's many different timers >> definitely doesn't look good. So I've decided to clean it. >> >> I have defined several points on that way: >> 1*. clean low-level timer drivers from unrelated stuff, >> 2*. make some common code machine-independent, >> 3. write common driver API for event timers (alike to one we have now >> for time counters) to make adding more drivers possible, >> 4. add support for HPET as event timer in addition to time counter, >> 5. add support for timers in one-shot mode (LAPIC and HPET). > > Have you looked at the dynamic ticks patches on hackers@? Those already > include changes for 5), although he currently only has support for LAPIC and > is working on adding HPET support. Yes, I've seen it. But without complete timer stuff rewrite it seems hopeless to me. That is one more reason why I want to do it. -- Alexander Motin From owner-freebsd-arch@FreeBSD.ORG Tue May 25 16:34:48 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id F0D13106564A for ; Tue, 25 May 2010 16:34:48 +0000 (UTC) (envelope-from matthew.fleming@isilon.com) Received: from seaxch09.isilon.com (seaxch09.isilon.com [74.85.160.25]) by mx1.freebsd.org (Postfix) with ESMTP id D5F058FC12 for ; Tue, 25 May 2010 16:34:48 +0000 (UTC) X-MimeOLE: Produced By Microsoft Exchange V6.5 Content-class: urn:content-classes:message MIME-Version: 1.0 Date: Tue, 25 May 2010 09:34:48 -0700 Message-ID: <06D5F9F6F655AD4C92E28B662F7F853E021D4D9D@seaxch09.desktop.isilon.com> X-MS-Has-Attach: X-MS-TNEF-Correlator: Thread-Topic: crc32 table Thread-Index: Acr8KDEBnCqRS8HYQyiA5fykRw7Z3g== From: "Matthew Fleming" To: Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.5 Subject: crc32 table X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 25 May 2010 16:34:49 -0000 The crc32 table in sys/libkern/crc32.c uses the polynomial 0xedb88320, = which Wikipedia tells me is the standard for IEEE 802.3 and is used for = MPEG-2 among other things. I am curious why this polynomial was chosen = for the one crc32 implementation currently supported by the kernel. One = reason I ask is that SSE 4.2 has a crc32 instruction, but it uses the = Castagnoli polynomial of 0x82f63b78, which is used by iSCSI and SCTP. Is there an interest in another crc32 implementation for the kernel = which uses this polynomial and uses the SSE 4.2 instruction when = available? (This support would require kib's FPU patch). Thanks, matthew From owner-freebsd-arch@FreeBSD.ORG Tue May 25 16:37:15 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 37C5C106564A for ; Tue, 25 May 2010 16:37:15 +0000 (UTC) (envelope-from phk@critter.freebsd.dk) Received: from phk.freebsd.dk (phk.freebsd.dk [130.225.244.222]) by mx1.freebsd.org (Postfix) with ESMTP id EB0F08FC1D for ; Tue, 25 May 2010 16:37:14 +0000 (UTC) Received: from critter.freebsd.dk (critter.freebsd.dk [192.168.61.3]) by phk.freebsd.dk (Postfix) with ESMTP id CC635900AD; Tue, 25 May 2010 16:37:13 +0000 (UTC) Received: from critter.freebsd.dk (localhost [127.0.0.1]) by critter.freebsd.dk (8.14.4/8.14.4) with ESMTP id o4PGbChp072208; Tue, 25 May 2010 16:37:13 GMT (envelope-from phk@critter.freebsd.dk) To: "Matthew Fleming" From: "Poul-Henning Kamp" In-Reply-To: Your message of "Tue, 25 May 2010 09:34:48 MST." <06D5F9F6F655AD4C92E28B662F7F853E021D4D9D@seaxch09.desktop.isilon.com> Date: Tue, 25 May 2010 16:37:12 +0000 Message-ID: <72207.1274805432@critter.freebsd.dk> Sender: phk@critter.freebsd.dk Cc: freebsd-arch@freebsd.org Subject: Re: crc32 table X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 25 May 2010 16:37:15 -0000 In message <06D5F9F6F655AD4C92E28B662F7F853E021D4D9D@seaxch09.desktop.isilon.co m>, "Matthew Fleming" writes: >Is there an interest in another crc32 implementation for the kernel = >which uses this polynomial and uses the SSE 4.2 instruction when = >available? (This support would require kib's FPU patch). It would be a better idea to add a kernel facility to build a CRC table to a given polynomial. The code to do this is very compact and would take up less space than N CRC tables which are likely not used in most running kernels. Poul-Henning -- Poul-Henning Kamp | UNIX since Zilog Zeus 3.20 phk@FreeBSD.ORG | TCP/IP since RFC 956 FreeBSD committer | BSD since 4.3-tahoe Never attribute to malice what can adequately be explained by incompetence. From owner-freebsd-arch@FreeBSD.ORG Wed May 26 20:02:30 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 27944106564A; Wed, 26 May 2010 20:02:30 +0000 (UTC) (envelope-from mavbsd@gmail.com) Received: from mail-fx0-f54.google.com (mail-fx0-f54.google.com [209.85.161.54]) by mx1.freebsd.org (Postfix) with ESMTP id 81AD38FC15; Wed, 26 May 2010 20:02:29 +0000 (UTC) Received: by fxm12 with SMTP id 12so88990fxm.13 for ; Wed, 26 May 2010 13:02:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:sender:message-id:date:from :user-agent:mime-version:to:cc:subject:references:in-reply-to :x-enigmail-version:content-type:content-transfer-encoding; bh=5M5Gv8j1t5sIk0znbGr1WINArje3Xr0KcQXBMr+4IXE=; b=cDpYhU2rWybqNGHsYMs7GS1cbVoCWmxbv0RRkzW4N6tEEa/EC4RJASCsyCyfbULjNv 1tPaXE0auE41snPYTmr6pVfegsqWNz8HhvinNMO18fBz9s3ERqxVDmqgqOIV2HecYVFc 2ksWtWOY0OB/8D85v0Z/phpYeCyg+omFi9RdE= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=sender:message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:x-enigmail-version:content-type :content-transfer-encoding; b=Lf3aB+ebFWOYBzEDimUR0ZoIomUWg83EcIL+3GU2xOE25Sf4dnS4rHYnYIYAn88Mrd a9cA5WaXY9/t0U7gg4wjXhmjE9Y6Kdv1lf1PoePrzXq+u2KHs7g9BPyAibrRb00ovgP4 IIdSn+3uiY3QviyiMk0P3ItssQ8TVAWjF3fOI= Received: by 10.223.5.89 with SMTP id 25mr8298396fau.87.1274904148366; Wed, 26 May 2010 13:02:28 -0700 (PDT) Received: from mavbook.mavhome.dp.ua (pc.mavhome.dp.ua [212.86.226.226]) by mx.google.com with ESMTPS id z12sm1942132fah.21.2010.05.26.13.02.26 (version=SSLv3 cipher=RC4-MD5); Wed, 26 May 2010 13:02:27 -0700 (PDT) Sender: Alexander Motin Message-ID: <4BFD7E35.9070901@FreeBSD.org> Date: Wed, 26 May 2010 23:01:57 +0300 From: Alexander Motin User-Agent: Thunderbird 2.0.0.23 (X11/20091212) MIME-Version: 1.0 To: Andriy Gapon References: <4BFAA1F3.1070206@FreeBSD.org> <4BFAAA47.5060802@freebsd.org> <4BFAB0C5.1020002@FreeBSD.org> In-Reply-To: <4BFAB0C5.1020002@FreeBSD.org> X-Enigmail-Version: 0.96.0 Content-Type: text/plain; charset=KOI8-R Content-Transfer-Encoding: 7bit Cc: freebsd-arch@freebsd.org Subject: Re: Event timers X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 26 May 2010 20:02:30 -0000 Alexander Motin wrote: > Andriy Gapon wrote: >> on 24/05/2010 18:57 Alexander Motin said the following: >>> I have defined several points on that way: >>> 1*. clean low-level timer drivers from unrelated stuff, >>> 2*. make some common code machine-independent, >>> 3. write common driver API for event timers (alike to one we have now >>> for time counters) to make adding more drivers possible, >>> 4. add support for HPET as event timer in addition to time counter, >>> 5. add support for timers in one-shot mode (LAPIC and HPET). >> I wonder how much you have progressed for 3,4,5. > > Not really much yet. Learned existing code and hardware specs, have some > thought and ready to proceed. Here is first approach to 3: http://people.freebsd.org/~mav/et.20100526.patch , - created common API, heavily refactored attimer, atrtc and lapic drivers, written simple and formal common code. Now it is possible to use any one or two of these three drivers for either hardclock or statclock by just changing weights or disabling them. Tested on i386, should work on amd64, probably broken on XEN and pc98 for now. -- Alexander Motin From owner-freebsd-arch@FreeBSD.ORG Wed May 26 20:54:23 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id C838C1065677; Wed, 26 May 2010 20:54:23 +0000 (UTC) (envelope-from jamesbrandongooch@gmail.com) Received: from mail-vw0-f54.google.com (mail-vw0-f54.google.com [209.85.212.54]) by mx1.freebsd.org (Postfix) with ESMTP id 54A648FC22; Wed, 26 May 2010 20:54:22 +0000 (UTC) Received: by vws18 with SMTP id 18so3867721vws.13 for ; Wed, 26 May 2010 13:54:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:received:in-reply-to :references:date:message-id:subject:from:to:cc:content-type; bh=3kIu+Ym2nDmlGux7DUDrSdx2uTeduJhObQFQDSTUVOc=; b=T4Vt67GGr1Jk0vTlsrxUZyvQMQQ8Gu7s01JkjC58mguPMWuZqABDxlSaTvaw6/MWPD FYKn9ZpyFNv84GBy/32UN/Z9FgiVZMPDme2x7i/Co4fk3r8g/jlcfKbtxWl4vE+Y3IU6 gBh/S3CkOYJu6XK0MFihWiIkD1XG82MMyahNI= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=M/8DMV1BWu+4bK4usOG2uyjds/QUPEP2qBjTQyg5oKtxvV33dwP1RjDHpnIiGn/jAE FBeceAWaEGIR6/oT3MVa9h/0FgeqJnWNBHW11GNp8Lf4xldfqa2y7TNUnrPKuayKwbXx 2m4BaYAGNsf0odmcTx9qc1gFbW8CYiHtLWOs8= MIME-Version: 1.0 Received: by 10.229.224.196 with SMTP id ip4mr2048519qcb.129.1274905431702; Wed, 26 May 2010 13:23:51 -0700 (PDT) Received: by 10.231.182.204 with HTTP; Wed, 26 May 2010 13:23:51 -0700 (PDT) In-Reply-To: <4BFD7E35.9070901@FreeBSD.org> References: <4BFAA1F3.1070206@FreeBSD.org> <4BFAAA47.5060802@freebsd.org> <4BFAB0C5.1020002@FreeBSD.org> <4BFD7E35.9070901@FreeBSD.org> Date: Wed, 26 May 2010 15:23:51 -0500 Message-ID: From: Brandon Gooch To: Alexander Motin Content-Type: text/plain; charset=ISO-8859-1 Cc: Andriy Gapon , freebsd-arch@freebsd.org Subject: Re: Event timers X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 26 May 2010 20:54:23 -0000 2010/5/26 Alexander Motin : > Alexander Motin wrote: >> Andriy Gapon wrote: >>> on 24/05/2010 18:57 Alexander Motin said the following: >>>> I have defined several points on that way: >>>> 1*. clean low-level timer drivers from unrelated stuff, >>>> 2*. make some common code machine-independent, >>>> 3. write common driver API for event timers (alike to one we have now >>>> for time counters) to make adding more drivers possible, >>>> 4. add support for HPET as event timer in addition to time counter, >>>> 5. add support for timers in one-shot mode (LAPIC and HPET). >>> I wonder how much you have progressed for 3,4,5. >> >> Not really much yet. Learned existing code and hardware specs, have some >> thought and ready to proceed. > > Here is first approach to 3: > http://people.freebsd.org/~mav/et.20100526.patch > , - created common API, heavily refactored attimer, atrtc and lapic > drivers, written simple and formal common code. Now it is possible to > use any one or two of these three drivers for either hardclock or > statclock by just changing weights or disabling them. Tested on i386, > should work on amd64, probably broken on XEN and pc98 for now. >From my (minimal) understanding of the timer issues in FreeBSD, restructuring in this area requires a bold, fearless developer: Thanks for taking this on Alexander! Are these proposed patches made available for user testing, or mainly for developer review purposes? Is that a dumb question? :) -Brandon From owner-freebsd-arch@FreeBSD.ORG Thu May 27 03:02:42 2010 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 1A63A106566B; Thu, 27 May 2010 03:02:42 +0000 (UTC) (envelope-from mavbsd@gmail.com) Received: from mail-fx0-f54.google.com (mail-fx0-f54.google.com [209.85.161.54]) by mx1.freebsd.org (Postfix) with ESMTP id 710FE8FC1C; Thu, 27 May 2010 03:02:41 +0000 (UTC) Received: by fxm20 with SMTP id 20so53538fxm.13 for ; Wed, 26 May 2010 20:02:40 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:received:received:sender:message-id:date:from :user-agent:mime-version:to:cc:subject:references:in-reply-to :x-enigmail-version:content-type:content-transfer-encoding; bh=IivUXyPhL5Amc6HmdOJDtoGQgsO/7bKq2jxTjYVEsMs=; b=vQoqN4cL3hWcQCOn956mnt+DEAOpI6jhErq3KaCnxVCDClDgod7nWfuMV2+DL3+tg/ LA+50yGjhdrqRKGYhVKspzYN0fxWOUJWcKwiM4Cb+u7TiU4skyI5KYwPYjqy4PBq5YxR cLkTYdlWksc2pf1Eh869t0jmUZX21KgOWSdtY= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=sender:message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:x-enigmail-version:content-type :content-transfer-encoding; b=s/U9/le8kVpi0tSroNlEVzOVvRrzsBUa+pDejtoB5Oj9syJzAAIhWYVaQ+nG118o4r xsE/aWCxMQ2OvuILD8FHmU4YjoKx7julW8InXwLVwPEP7WQMsuEy/cPNCP/3Pir9uGn0 PGzqi5qwDkW3NKYvW9H0R+EjV9qHOWscUzJDo= Received: by 10.223.161.211 with SMTP id s19mr8423983fax.47.1274929360262; Wed, 26 May 2010 20:02:40 -0700 (PDT) Received: from mavbook.mavhome.dp.ua (pc.mavhome.dp.ua [212.86.226.226]) by mx.google.com with ESMTPS id 7sm3432151far.18.2010.05.26.20.02.38 (version=SSLv3 cipher=RC4-MD5); Wed, 26 May 2010 20:02:39 -0700 (PDT) Sender: Alexander Motin Message-ID: <4BFDE0BD.707@FreeBSD.org> Date: Thu, 27 May 2010 06:02:21 +0300 From: Alexander Motin User-Agent: Thunderbird 2.0.0.24 (X11/20100402) MIME-Version: 1.0 To: Brandon Gooch References: <4BFAA1F3.1070206@FreeBSD.org> <4BFAAA47.5060802@freebsd.org> <4BFAB0C5.1020002@FreeBSD.org> <4BFD7E35.9070901@FreeBSD.org> In-Reply-To: X-Enigmail-Version: 0.96.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: Andriy Gapon , freebsd-arch@freebsd.org Subject: Re: Event timers X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 27 May 2010 03:02:42 -0000 Brandon Gooch wrote: > 2010/5/26 Alexander Motin : >> Alexander Motin wrote: >>> Andriy Gapon wrote: >>>> on 24/05/2010 18:57 Alexander Motin said the following: >>>>> I have defined several points on that way: >>>>> 1*. clean low-level timer drivers from unrelated stuff, >>>>> 2*. make some common code machine-independent, >>>>> 3. write common driver API for event timers (alike to one we have now >>>>> for time counters) to make adding more drivers possible, >>>>> 4. add support for HPET as event timer in addition to time counter, >>>>> 5. add support for timers in one-shot mode (LAPIC and HPET). >>>> I wonder how much you have progressed for 3,4,5. >>> Not really much yet. Learned existing code and hardware specs, have some >>> thought and ready to proceed. >> Here is first approach to 3: >> http://people.freebsd.org/~mav/et.20100526.patch >> , - created common API, heavily refactored attimer, atrtc and lapic >> drivers, written simple and formal common code. Now it is possible to >> use any one or two of these three drivers for either hardclock or >> statclock by just changing weights or disabling them. Tested on i386, >> should work on amd64, probably broken on XEN and pc98 for now. > > From my (minimal) understanding of the timer issues in FreeBSD, > restructuring in this area requires a bold, fearless developer: > > Thanks for taking this on Alexander! > > Are these proposed patches made available for user testing, or mainly > for developer review purposes? Now mostly for developers review. It is not finished yet. Most of features interesting for users is still ahead. -- Alexander Motin