Peter Memishian wrote:
> 
> Is there anything else that could meaningfully be done with mblk_t data?

Not really, no. As you said, the driver has no idea of the heritage of 
that mblk_t.

> If not, could we just document that the STREAMS framework will reset the
> attached mblk to a pristine state prior to invoking free_func(), and save
> the driver from rummaging around in private fields?
> 

Are you suggesting passing the mblk_t as an argument to free_func? The 
reason that the driver needs to use db_mblk at the moment is that the 
context argument to free_func is free_arg. In my driver code free_arg 
points to my own structure. In that structure I store the dblk_t pointer 
and then I use db_mblk to find the mblk_t pointer. Passing the mblk_t in 
as an argument is therefore unnecessary for the driver code as it stands.
Would it not be reasonable for this case to simply establish the 
stability of db_mblk at the same level as xesballoc() (or higher) so 
that drivers using xesballoc() can use db_mblk?

   Paul

Reply via email to