Breno Leitao <[email protected]> writes:
> struct net_device shouldn't be embedded into any structure, instead,
> the owner should use the private space to embed their state into
> net_device.
>
> But, in some cases the net_device is embedded inside the private
> structure, which blocks the usage of zero-length arrays inside
> net_device.
>
> Create a helper to allocate a dummy device at dynamically runtime, and
> move the Ethernet devices to use it, instead of embedding the dummy
> device inside the private structure.
>
> This fixes all the network cases plus some wireless drivers.
>
> PS: Due to lack of hardware, unfortunately most these patches are
> compiled tested only, except ath11k that was kindly tested by Kalle Valo.
>
> ---
> Changelog:
>
> v1:
> * https://lore.kernel.org/all/[email protected]/
>
> v2:
> * Patch 1: Use a pre-defined name ("dummy#") for the dummy
> net_devices.
> * Patch 2-5: Added users for the new helper.
> v3:
> * Use free_netdev() instead of kfree() as suggested by Jakub.
> * Change the free_netdev() place in ipa driver, as suggested by
> Alex Elder.
> * Set err in the error path in the Marvell driver, as suggested
> by Simon Horman.
> v4:
> * Added a new patch to add dummy device at free_netdev(), as suggested
> by Jakub.
> * Added support for some wireless driver.
> * Added some Acked-by and Reviewed-by.
> v5:
> * Added a new patch to fix some typos in the previous code,
> suggested by Ido.
> * Rebased to net-net/main
I'm nitpicking here but I prefer to have the changelog in reverse order,
that is v5 first and v1 last. I'm most interested about the changes in
v5, I don't care about v1 at this point. Though I don't know if net
folks have a different prefence, just wanted to mention this.
--
https://patchwork.kernel.org/project/linux-wireless/list/
https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches