[openib-general] [RFC] [PATCH] ib_usa: export multicast and informinfo registration to userspace

Hal Rosenstock halr at voltaire.com
Tue Feb 6 06:21:52 PST 2007


On Fri, 2007-02-02 at 19:02, Sean Hefty wrote:
> Export SA client capabilities for multicast and SA event registration
> to userspace.  Multicast and event registration are tracked on a per
> port basis, with tracking done by the ib_sa kernel module.
> 
> Based on feedback from the list, a new userspace SA module was added,
> rather than trying to rework the usermad interface.  The user to kernel
> interface is minimal, but was designed to be flexible enough to add
> additional SA client support if needed.  (E.g. local SA cache lookup,
> SA queries, service registration, etc.)
> 
> Signed-off-by: Sean Hefty <sean.hefty at intel.com>
> ---
> The following patch is also available from the user_sa branch of my
> rdma-dev.git tree, and is dependent on the informinfo branch/patch
> posted earlier to the list.  (A couple of small fixes to the informinfo
> code have been added since the original patches.)  A userspace sa library
> is also available.
> 
> The informinfo and userspace support was completed as part of the
> PathForward project at the request of the US National Laboratories.
> 

[snip...]

> diff --git a/drivers/infiniband/core/usa.c b/drivers/infiniband/core/usa.c
> new file mode 100644
> index 0000000..ae05091
> --- /dev/null
> +++ b/drivers/infiniband/core/usa.c
> @@ -0,0 +1,792 @@

[snip...]

> +static int process_mcast(struct usa_file *file, struct ib_usa_request *req,
> +			 int out_len)
> +{
> +	/* Only indirect requests are currently supported. */
> +	if (!req->local)
> +		return -ENOSYS;
> +
> +	switch (req->method) {
> +	case IB_MGMT_METHOD_GET:
> +		return get_mcast(file, req, out_len);
> +	case IB_MGMT_METHOD_SET:
> +		return join_mcast(file, req, out_len);
> +	default:
> +		return -EINVAL;

Should leaving a multicast group also be supported ?

-- Hal







More information about the general mailing list