Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 29 Mar 2000 22:31:17 -0800
From:      Mike Smith <msmith@freebsd.org>
To:        Alfred Perlstein <bright@wintelcom.net>
Cc:        Matthew Dillon <dillon@apollo.backplane.com>, freebsd-current@FreeBSD.ORG
Subject:   Re: Using packed structs to gain cheap SMP primatives 
Message-ID:  <200003300631.WAA00497@mass.cdrom.com>
In-Reply-To: Your message of "Wed, 29 Mar 2000 19:25:29 PST." <20000329192526.U21029@fw.wintelcom.net> 

next in thread | previous in thread | raw e-mail | index | archive | help
> Yesterday I was looking at how Linux handles the gettimeofday stuff
> without locking thier sys_tz variable, well it seems they don't care
> or I'm missing something important.
> 
> They just don't lock it, not that settimeofday will be called all that
> often but it leaves me wondering what we can do about this, effectively
> we can pack our tz (sys_tz in Linux) into a 32bit value which should
> afford us read/write atomicity on every platform I'm aware of.
> 
> In fact this can be quite effective for certain types of data structures,
> even though our 'struct timezone' is two ints we can pack it into two
> uint16 and pack a private structure, then copy it to a stack and expand
> it into the user's address space.

It would be cheaper just to lock the bloody thing, although you can't 
pack all the significance of a timeval into 16 bits anyway (in a fashion 
that's going to make many people happy).

-- 
\\ Give a man a fish, and you feed him for a day. \\  Mike Smith
\\ Tell him he should learn how to fish himself,  \\  msmith@freebsd.org
\\ and he'll hate you for a lifetime.             \\  msmith@cdrom.com




To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




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