[ofa-general][PATCH] Re: mlx4: Completion EQ per cpu (MP support, Patch 10)

Tziporet Koren tziporet at dev.mellanox.co.il
Tue May 20 05:20:47 PDT 2008


Roland Dreier wrote:
>  > We can add the multiple interrupt vectors support in two stages:
>  > 1. The low level driver can create multiple interrupt vectors. Their name would include a
>  > serial number from 0 to #CPU's-1. The number of completion vectors can
>  > be populated through ib_device.num_comp_vectors. Then each ulp can ask for a specific
>  > completion vector when creating CQ, which means that passing vector=0 while creating CQ
>  > will assign it to completion vector #0.
>  > 
>  > 2. As the second stage, we can create a "don't care" value which would mean that the driver can
>  > can attach the CQ to any completion vector. In this case the policy shouldn't necessary be
>  > round-robin. We can manage the number of "clients" for each completion vector and then assign the CQ
>  > to the least busy one.
>
> this makes sense.  However I think we need to come up with some
> mechanism where a ULP or application can assign some semantic value to
> the CQ event vector it chooses.  Maybe a new verb is required.
>
>   
Add another verb is also a good idea. Do you have anything in mind?
For now all ULPs use vector 0 and we stay with the same behavior as today.
So is it OK to merge the change of the mlx4_core driver now?

Thanks
Tziporet



More information about the general mailing list