Subject: Re: My mails never show up ...
To: Stefan Sonnenberg-Carstens <stefan.sonnenberg@online.de>
From: der Mouse <mouse@Rodents.Montreal.QC.CA>
List: tech-kern
Date: 03/21/2003 14:31:38
> ... sad but true.
> I've send my question four times now, [...]

> Please, help.

That, I can't help much with.  I'd have to check a bunch of things I
have no access to, most notably the logs on your incoming mailserver.

> I followed some docs and found that a device driver (can/should)
> support these operations:
> open,close,probe,attach,read,write,ioctl - complete ?

No; there are others as well.  mmap, stop, tty, poll - see <sys/conf.h>
(at least in the version I'm running - it's the "struct cdevsw"
definition, wherever it is, that you want to look at).

You don't necessarily need all of these in all circumstances.  I don't
think I've ever written a driver that has a nontrivial stop routine,
for example.

> What about the seek operation ?
> I didn't find it.
> Is this something that has to do with the uio->uio_offset stuff ?
> This was the only thing, that made sense to me.

Basically, yes: drivers don't handle seeking.  Seeks just change the
offset field for the file descriptor; the driver doesn't hear about it
until I/O is done, and then they get it through, yes, the uio_offset
field of the struct uio they're passed.

/~\ The ASCII				der Mouse
\ / Ribbon Campaign
 X  Against HTML	       mouse@rodents.montreal.qc.ca
/ \ Email!	     7D C8 61 52 5D E7 2D 39  4E F1 31 3E E8 B3 27 4B