[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Interface for SCSI transactions ?

From: olafBuddenhagen
Subject: Re: Interface for SCSI transactions ?
Date: Mon, 12 Sep 2011 20:15:36 +0200
User-agent: Mutt/1.5.21 (2010-09-15)


On Fri, Sep 09, 2011 at 12:08:39PM +0200, Thomas Schmitt wrote:

> > routine device_set_status(
> >                 device          : device_t;
> >         in      flavor          : dev_flavor_t;
> >         in      status          : dev_status_t
> >         );      

> Why no "in" or "out" before parameter "device" ?

Well, I would have said that the first parameter is just special. (It's
the port on which the RPC was invoked; basically it's only there to give
it a name.) However, I just saw that device_open() also has other
parameters without a direction... So I have to admit quite frankly that
I don't know what this really means.

On the plus side, it's probably not necessary to know this :-)

> How to say "in and out" ?

There is also an "inout" direction.

> Can you give me an URL where the language is documented ?

I for my part never read any formal documentation for this -- just
looked at other examples in the Mach and Hurd .defs :-)

> How to name the function ?  device_transact_scsi() ?

Hurray, bikeshedding time! ;-)

> > What is a bit more involved will be to add the method to the
> > device_emulation_ops structure, and the ds_device_foo routine in
> > device/ds_routines.c just like the ds_device_set_status() one.
> I found the struct definition in gnumach/device/device_emul.h . There
> i read

>   /* Each emulation layer provides these operations.  */
> Does that mean, that all instances of struct device_emulation_ops have
> to be augmented by a function pointer ?

Yes, I think so.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]