Re: [patch 1/9] [PATCH] qeth: convert to hw_features part 2

Michał Mirosław
2011-05-12T05:59:45Z

2011/5/12 <frank.blaschka@de.ibm.com>:
> From: Frank Blaschka <frank.blaschka@de.ibm.com>
>
> Set rx csum default to hw checksumming again.
> Remove sysfs interface for rx csum (checksumming) and TSO (large_send).
> With the new hw_features it does not work to keep the old sysfs
> interface in parallel. Convert options.checksum_type to new hw_features.
[...]
> +               /* hw may have changed during offline or recovery */
> +               if (!qeth_is_supported(card, IPA_INBOUND_CHECKSUM)) {
[...]

This check should go to ndo_fix_features callback. If it fails then
just return features &~NETIF_F_RXCSUM from there ...

> +update_feature:
> +       rtnl_lock();
> +       card->dev->hw_features &= ~NETIF_F_RXCSUM;
> +       card->dev->features &= ~NETIF_F_RXCSUM;
> +       netdev_update_features(card->dev);
> +       rtnl_unlock();

... and then this should be just:
rtnl_lock();
netdev_update_features(card->dev);
rtnl_unlock();

BTW, How is the recovery process protected from interface removal if
it's not run under rtnl_lock?

Best Regards,
Michał Mirosław