[PATCH v3 6/8] wifi: ath12k: support ARP and NS offload

Baochen Qiang quic_bqiang at quicinc.com
Thu May 30 22:11:07 PDT 2024



On 5/31/2024 11:42 AM, Baochen Qiang wrote:
>>> +static void ath12k_wow_prepare_ns_offload(struct ath12k_vif *arvif,
>>> +					  struct wmi_arp_ns_offload_arg *offload)
>>> +{
>>> +	struct inet6_dev *idev = arvif->idev;
>> as noted above does it make more sense to get the netdev associated with the
>> arvif and then use in6_dev_get(net_device) to get the inet6_dev rather than
>> caching the pointer from the ipv6_addr_changed() callback?
> Ah.. I didn't note that we can get inet6_dev in such a way, just thought the only way is to cache it in ipv6_changed() callback.
> 
> will get it using the following in next version:
> 	struct ieee80211_vif *vif = container_of(arvif)
> 	struct ieee80211_sub_if_data *sub_if_data = container_of(vif)
> 	struct net_dev *ndev = sub_if_data->dev
> 	struct inet6_dev *idev = in6_dev_get(ndev)
Just found that ieee80211_sub_if_data is internal to mac80211, so not possible to get netdev in this way.

any other ideas on how to get netdev?



More information about the ath12k mailing list