Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 16 Mar 2011 16:34:04 -0400
From:      Jung-uk Kim <jkim@FreeBSD.org>
To:        Roman Divacky <rdivacky@FreeBSD.org>, Bruce Evans <brde@optusnet.com.au>
Cc:        svn-src-head@FreeBSD.org, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org, Maxim Dounin <mdounin@mdounin.ru>
Subject:   Re: svn commit: r219679 - head/sys/i386/include
Message-ID:  <201103161634.08104.jkim@FreeBSD.org>
In-Reply-To: <20110316174553.GA6367@freebsd.org>
References:  <201103152145.p2FLjAlt060256@svn.freebsd.org> <201103161233.16347.jkim@FreeBSD.org> <20110316174553.GA6367@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wednesday 16 March 2011 01:45 pm, Roman Divacky wrote:
> On Wed, Mar 16, 2011 at 12:32:56PM -0400, Jung-uk Kim wrote:
> > On Tuesday 15 March 2011 08:45 pm, Maxim Dounin wrote:
> > > This isn't really different as long as GENERIC kernel used, as
> > > GENERIC defines I486_CPU.
> >
> > Fixed in r219698, sorry.
> >
> > Actually, I think we should remove i486 from GENERIC at some
> > point. It has too many limitations.  For example, I really love
> > to implement atomic 64-bit mem read/write using cmpxchg8b (no
> > 0xf00f joke, please) but I cannot do that cleanly without
> > removing I486 support or checking cpu_class at run-time. :-(
>
> if we drop i486 I think it makes sense to require something that
> has at least SSE2, thus we can have the same expectations as on
> amd64.
>
> and we can use sse2 unconditionally (str*, mem* etc.)

This is a proof-of-concept patch for sys/x86/isa/clock.c:

http://people.freebsd.org/~jkim/clock.diff

You see the complexity, just because I wanted to load 64-bit value 
atomically... :-(

Jung-uk Kim



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201103161634.08104.jkim>