RE: [PATCH 1/1] IB/iser: Remove hard coded values for cqe and send_wr

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

 



>> +++ b/drivers/infiniband/ulp/iser/iser_verbs.c
>> @@ -114,6 +114,9 @@ static int iser_create_device_ib_res(struct iser_device *device)
>>         if (IS_ERR(device->pd))
>>                 goto pd_err;
>>
>> +       max_cqe = (dev_attr->max_cqe < ISER_MAX_CQ_LEN) ?
>> +                  dev_attr->max_cqe : ISER_MAX_CQ_LEN;
>> +

>If I was the ocrdma maintainer I would say load and clear: NO, please.
>Your current offering supports 32 CQs per device, and this means that on 32 core node you will be able to run only iSER, no other ULP.
>Generally, this approach is wrong, causing bad user experience and we will not do that.

Hi Or,

All 32 CQs will never get used.  Here are the reasons:
1) current #define ISER_MAX_CQ 4
2)  Your proposed TODO "#1. change the number of CQs to be min(num_cpus, 1/2 of what the device can support)"
      This would limits the max CQs device supports to 1/2 anyway.

If you don't agree, I like to get your suggestions of what I should do in this case for CQs that have 8k of entries each.

Thanks.
-Minh

>>         for (i = 0; i < device->comps_used; i++) {
>>                 struct iser_comp *comp = &device->comps[i];
>>
>> @@ -122,7 +125,7 @@ static int iser_create_device_ib_res(struct iser_device *device)
>>                                         iser_cq_callback,
>>                                         iser_cq_event_callback,
>>                                         (void *)comp,
>> -                                       ISER_MAX_CQ_LEN, i);
>> +                                       max_cqe, i);

��.n��������+%������w��{.n�����{���fk��ܨ}���Ơz�j:+v�����w����ޙ��&�)ߡ�a����z�ޗ���ݢj��w�f





[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux