[ofw] typical values for ci_umv_buf_t

Sean Hefty sean.hefty at intel.com
Wed Mar 12 10:55:38 PDT 2008


>typedef struct _umv_buf
>{
>	uint32_t		command;
>	uint32_t		status;
>	uint32_t		input_size;
>	uint32_t		output_size;
>	void* __ptr64	p_inout_buf;
>} ci_umv_buf_t;

More questions:

Are command and status always valid, or only valid if either input_size or
output_size are non-zero?  (I'm assuming always valid, but wanted to check.)  

If there's no pre-IOCTL call, do the fields need to be initialized with respect
to the kernel HCA driver?

Also, there's the following comment in ib_ci.h:

*	In the Infiniband Access Layer, it is important to know the
*	usage of umv_buf and whether the contents of the p_inout_buf
*	can have embedded user-mode pointers. When invoked from an
*	arbitrary thread context, Vendor driver can NOT access user-mode
*	pointers of a user-process.

Does this imply that the HCA driver supports being called from an arbitrary
thread context, or must it be called from the user's thread context directly?

(I'm hoping someone knows this without me having to track down every instance
where this is used...)

- Sean




More information about the ofw mailing list