Re: [PATCH net-next 10/11] s390/qeth: allow reset via ethtool

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

 



On 05.05.20 19:21, Jakub Kicinski wrote:
> On Tue,  5 May 2020 18:25:58 +0200 Julian Wiedmann wrote:
>> Implement the .reset callback. Only a full reset is supported.
>>
>> Signed-off-by: Julian Wiedmann <jwi@xxxxxxxxxxxxx>
>> Reviewed-by: Alexandra Winter <wintera@xxxxxxxxxxxxx>
>> ---
>>  drivers/s390/net/qeth_ethtool.c | 16 ++++++++++++++++
>>  1 file changed, 16 insertions(+)
>>
>> diff --git a/drivers/s390/net/qeth_ethtool.c b/drivers/s390/net/qeth_ethtool.c
>> index ebdc03210608..0d12002d0615 100644
>> --- a/drivers/s390/net/qeth_ethtool.c
>> +++ b/drivers/s390/net/qeth_ethtool.c
>> @@ -193,6 +193,21 @@ static void qeth_get_drvinfo(struct net_device *dev,
>>  		 CARD_RDEV_ID(card), CARD_WDEV_ID(card), CARD_DDEV_ID(card));
>>  }
>>  
>> +static int qeth_reset(struct net_device *dev, u32 *flags)
>> +{
>> +	struct qeth_card *card = dev->ml_priv;
>> +	int rc;
>> +
>> +	if (*flags != ETH_RESET_ALL)
>> +		return -EINVAL;
>> +
>> +	rc = qeth_schedule_recovery(card);
>> +	if (!rc)
>> +		*flags = 0;
> 
> I think it's better if you only clear the flags for things you actually
> reset. See the commit message for 7a13240e3718 ("bnxt_en: fix
> ethtool_reset_flags ABI violations").
> 

Not sure I understand - you mean *flags &= ~ETH_RESET_ALL ?

Since we're effectively managing a virtual device, those individual
ETH_RESET_* flags just don't map very well...
This _is_ a full-blown reset, I don't see how we could provide any finer
granularity.



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Kernel Development]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Info]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Linux Media]     [Device Mapper]

  Powered by Linux