From owner-freebsd-current@FreeBSD.ORG Thu Apr 12 10:18:09 2007 Return-Path: X-Original-To: freebsd-current@FreeBSD.ORG Delivered-To: freebsd-current@FreeBSD.ORG Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 2E27A16A403; Thu, 12 Apr 2007 10:18:09 +0000 (UTC) (envelope-from olli@lurza.secnetix.de) Received: from lurza.secnetix.de (lurza.secnetix.de [83.120.8.8]) by mx1.freebsd.org (Postfix) with ESMTP id 9605413C44B; Thu, 12 Apr 2007 10:18:08 +0000 (UTC) (envelope-from olli@lurza.secnetix.de) Received: from lurza.secnetix.de (gfelop@localhost [127.0.0.1]) by lurza.secnetix.de (8.13.4/8.13.4) with ESMTP id l3CAI04l063407; Thu, 12 Apr 2007 12:18:06 +0200 (CEST) (envelope-from oliver.fromme@secnetix.de) Received: (from olli@localhost) by lurza.secnetix.de (8.13.4/8.13.1/Submit) id l3CAI0ef063406; Thu, 12 Apr 2007 12:18:00 +0200 (CEST) (envelope-from olli) Date: Thu, 12 Apr 2007 12:18:00 +0200 (CEST) Message-Id: <200704121018.l3CAI0ef063406@lurza.secnetix.de> From: Oliver Fromme To: freebsd-current@FreeBSD.ORG, peterjeremy@optushome.com.au, des@des.no, ticso@cicely.de, freebsd-fs@FreeBSD.ORG, Pawel Jakub Dawidek In-Reply-To: <20070412073605.GB834@turion.vk2pj.dyndns.org> X-Newsgroups: list.freebsd-current User-Agent: tin/1.8.2-20060425 ("Shillay") (UNIX) (FreeBSD/4.11-STABLE (i386)) MIME-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-2.1.2 (lurza.secnetix.de [127.0.0.1]); Thu, 12 Apr 2007 12:18:06 +0200 (CEST) Cc: Subject: Re: ZFS committed to the FreeBSD base. X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: freebsd-current@FreeBSD.ORG, peterjeremy@optushome.com.au, des@des.no, ticso@cicely.de, freebsd-fs@FreeBSD.ORG, Pawel Jakub Dawidek List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 12 Apr 2007 10:18:09 -0000 Peter Jeremy wrote: > David Schultz wrote: > > As I recall, Solaris 10 targets PPro and later processors, whereas > > FreeBSD supports everything back to a 486DX. Hence we can't > > assume that cmpxchg8b is available. > > There's a feature bit (CPUID_CX8) that advertises the availability of > cmpxchg8b (and maybe some related instructions). My pre-MMX 586 has > this bit set so I presume anything later than 486 will support it. > (I'm not sure about the low-end VIA, GEODE etc clones). They don't seem to support it. I made a quick survey of the machines of mine for which I have collected dmesg outputs. The following ones don't support cmpxchg8b according to the cpuid feature bits: CPU: i486 DX2 (486-class CPU) Origin = "GenuineIntel" Id = 0x435 Stepping = 5 Features=0x3 CPU: Cyrix GXm (232.74-MHz 586-class CPU) Origin = "CyrixInstead" Id = 0x540 DIR=0x8246 Stepping=8 Revision=2 CPU: VIA C3 Nehemiah+RNG+ACE (1002.28-MHz 686-class CPU) Origin = "CentaurHauls" Id = 0x698 Stepping = 8 Features=0x381b83f And the following ones do support cmpxchg8b: CPU: Pentium/P54C (165.79-MHz 586-class CPU) Origin = "GenuineIntel" Id = 0x52c Stepping = 12 Features=0x1bf CPU: Pentium II/Pentium II Xeon/Celeron (465.50-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0x665 Stepping = 5 Features=0x183fbff CPU: Intel Pentium III (799.77-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0x683 Stepping = 3 Features=0x383fbff CPU: AMD Athlon(tm) Processor (846.23-MHz 686-class CPU) Origin = "AuthenticAMD" Id = 0x642 Stepping = 2 Features=0x183f9ff CPU: Pentium III/Pentium III Xeon/Celeron (851.93-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0x686 Stepping = 6 Features=0x387f9ff CPU: Intel(R) Celeron(R) M processor 1300MHz (1295.80-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0x695 Stepping = 5 CPU: Intel(R) Pentium(R) III CPU family 1400MHz (1396.45-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0x6b1 Stepping = 1 Features=0x383fbff Features=0xa7e9f9bf CPU: Intel(R) Pentium(R) M processor 1.60GHz (1596.01-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0x6d8 Stepping = 8 Features=0xafe9fbff Features2=0x180 CPU: AMD Athlon(tm) XP 2500+ (1826.03-MHz 686-class CPU) Origin = "AuthenticAMD" Id = 0x6a0 Stepping = 0 Features=0x383fbff CPU: AMD Turion(tm) 64 Mobile Technology ML-37 (1989.82-MHz 686-class CPU) Origin = "AuthenticAMD" Id = 0x20f42 Stepping = 2 Features=0x78bfbff Features2=0x1 CPU: AMD Athlon(tm) 64 Processor 3200+ (2000.08-MHz 686-class CPU) Origin = "AuthenticAMD" Id = 0x20ff2 Stepping = 2 Features=0x78bfbff Features2=0x1 CPU: AMD Athlon(tm) 64 Processor 3700+ (2199.76-MHz 686-class CPU) Origin = "AuthenticAMD" Id = 0x30f72 Stepping = 2 Features=0x78bfbff Features2=0x1 CPU: AMD Athlon(tm) 64 Processor 3800+ (2399.74-MHz 686-class CPU) Origin = "AuthenticAMD" Id = 0x20ff2 Stepping = 2 Features=0x78bfbff Features2=0x1 CPU: Intel(R) Pentium(R) 4 CPU 3.00GHz (3006.83-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0xf41 Stepping = 1 Features=0xbfebfbff So a > 10 years old pre-MMX Pentium (586-class) does support cmpxchg8b, while a 1 year old C3 Nehemia (686- class) does not. Best regards Oliver -- Oliver Fromme, secnetix GmbH & Co. KG, Marktplatz 29, 85567 Grafing b. M. Handelsregister: Registergericht Muenchen, HRA 74606, Geschäftsfuehrung: secnetix Verwaltungsgesellsch. mbH, Handelsregister: Registergericht Mün- chen, HRB 125758, Geschäftsführer: Maik Bachmann, Olaf Erb, Ralf Gebhart FreeBSD-Dienstleistungen, -Produkte und mehr: http://www.secnetix.de/bsd We're sysadmins. To us, data is a protocol-overhead.