9fans - fans of the OS Plan 9 from Bell Labs
 help / color / mirror / Atom feed
From: erik quanstrom <quanstro@quanstro.net>
To: 9fans@cse.psu.edu, geoff@collyer.net
Subject: Re: [9fans] structure allocation.
Date: Mon,  6 Mar 2006 21:00:35 -0600	[thread overview]
Message-ID: <20060307030035.617C311735@dexter-peak.quanstro.net> (raw)
In-Reply-To: <2e567163be1a7bcfb00188625bc09359@collyer.net>

okay.

many things about this interface don't make sense to me.
but it's hard at this point to tell if driver is obfuscated or what.

the space/time tradeoff here seems interesting. is pushing 3 more bytes
over a pci bus really slower than doing the alignment on an ad-hoc basis?

the trouble is these structures go on forever and have many
bitfields. (in one i count 46 fields, all integers of random width,
randomly intermixed.)

- erik

geoff@collyer.net writes

|
| You declare it like this:
|
| typedef struct {
| 	char	f;
| 	uchar	l[4];
| 	char	g;
| 	uchar	m[4];
| } Dac960fu;
|
| and convert l and m using the usual integer-to-bytes and
| bytes-to-integers macros or functions, presumably the little-endian
| versions.  Mylex were crazy to lay the data out this way.


  reply	other threads:[~2006-03-07  3:00 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-03-07  2:30 erik quanstrom
2006-03-07  2:37 ` geoff
2006-03-07  3:00   ` erik quanstrom [this message]
2006-03-07  3:11     ` Russ Cox
2006-03-07  4:13     ` geoff
2006-03-07 15:41       ` Ronald G Minnich
2006-03-07 15:53         ` C H Forsyth
2006-03-08  0:06         ` erik quanstrom
2006-03-08  2:21           ` Ronald G Minnich
2006-03-08  2:50             ` geoff
2006-03-08  4:10               ` Bruce Ellis
2006-03-08  4:37                 ` Russ Cox
2006-03-08  4:55                   ` Bruce Ellis
2006-03-08  5:03                     ` Russ Cox
2006-03-08  5:05                       ` Bruce Ellis
2006-03-08  5:09                         ` Russ Cox
2006-03-08  5:12                           ` Bruce Ellis
2006-03-08 12:11               ` Brantley Coile
2006-03-07 17:47       ` Bakul Shah
2006-03-07  9:23     ` Charles Forsyth
2006-03-07 11:54       ` erik quanstrom
2006-03-07 13:55         ` jmk
     [not found]       ` <000501c641de$afc905d0$14aaa8c0@utelsystems.local>
2006-03-07 14:21         ` "Nils O. Selåsdal"
2006-03-07 14:30           ` uriel
2006-03-07 14:43             ` Russ Cox
2006-03-07 14:48             ` C H Forsyth
2006-03-08  0:28           ` erik quanstrom

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20060307030035.617C311735@dexter-peak.quanstro.net \
    --to=quanstro@quanstro.net \
    --cc=9fans@cse.psu.edu \
    --cc=geoff@collyer.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).