Tyrel Datwyler <[email protected]> writes:

> On 4/8/26 10:07 AM, Dave Marquardt via B4 Relay wrote:
>> From: Dave Marquardt <[email protected]>
>> 
>> - negotiate use of extended FPIN events with NPIV (VIOS)
>> - add code to parse and handle extended FPIN events
>> - add KUnit test to test extended FPIN event handling
>
> Same nit here as the previous 4 patches.
>
>> ---
>>  drivers/scsi/ibmvscsi/ibmvfc.c       | 45 ++++++++++++++---
>>  drivers/scsi/ibmvscsi/ibmvfc.h       | 31 ++++++++++++
>>  drivers/scsi/ibmvscsi/ibmvfc_kunit.c | 97 
>> +++++++++++++++++++++++++++++++++---
>>  3 files changed, 161 insertions(+), 12 deletions(-)
>> 
>> diff --git a/drivers/scsi/ibmvscsi/ibmvfc.c b/drivers/scsi/ibmvscsi/ibmvfc.c
>> index 26e39b367022..5b2b861a34c2 100644
>> --- a/drivers/scsi/ibmvscsi/ibmvfc.c
>> +++ b/drivers/scsi/ibmvscsi/ibmvfc.c
>> @@ -1472,6 +1472,9 @@ static void ibmvfc_gather_partition_info(struct 
>> ibmvfc_host *vhost)
>>  }
>>  
>>  static __be64 ibmvfc_npiv_chan_caps[] = {
>> +    cpu_to_be64(IBMVFC_CAN_USE_CHANNELS | IBMVFC_USE_ASYNC_SUBQ |
>> +                IBMVFC_YES_SCSI | IBMVFC_CAN_HANDLE_FPIN |
>> +                IBMVFC_CAN_HANDLE_FPIN_EXT),
>>      cpu_to_be64(IBMVFC_CAN_USE_CHANNELS | IBMVFC_USE_ASYNC_SUBQ |
>>                  IBMVFC_YES_SCSI | IBMVFC_CAN_HANDLE_FPIN),
>>      cpu_to_be64(IBMVFC_CAN_USE_CHANNELS),
>> @@ -3370,6 +3373,28 @@ ibmvfc_full_fpin_to_desc(struct ibmvfc_async_subq 
>> *ibmvfc_fpin)
>>                                        cpu_to_be32(1));
>>  }
>>  
>> +/**
>> + * ibmvfc_ext_fpin_to_desc(): allocate and populate a struct fc_els_fpin 
>> struct
>> + * containing a descriptor.
>> + * @ibmvfc_fpin: Pointer to async subq FPIN data
>> + *
>> + * Allocate a struct fc_els_fpin containing a descriptor and populate
>> + * based on data from *ibmvfc_fpin.
>> + *
>> + * Return:
>> + * NULL     - unable to allocate structure
>> + * non-NULL - pointer to populated struct fc_els_fpin
>> + */
>> +static struct fc_els_fpin *
>> +ibmvfc_ext_fpin_to_desc(struct ibmvfc_async_subq_fpin *ibmvfc_fpin)
>> +{
>> +    return ibmvfc_common_fpin_to_desc(ibmvfc_fpin->fpin_status, 
>> ibmvfc_fpin->wwpn,
>> +                                      
>> ibmvfc_fpin->fpin_data.event_type_modifier,
>> +                                      
>> ibmvfc_fpin->fpin_data.event_threshold,
>> +                                      
>> ibmvfc_fpin->fpin_data.event_threshold,
>
> I see mention of threshold and period previously. Why in this case is it just
> the threshold value passed for both?

I'll look into this. There's no obvious period here in ibmvfc_fpin or
ibmvfc_fpin->fpin_data. It may be more appropriate to use a default
period.

-Dave

Reply via email to