Hi Johannes,
On 9/11/19 10:12 AM, Johannes Berg wrote:
On Wed, 2019-09-11 at 07:20 -0500, Denis Kenzior wrote:
I'm not sure I see how the applications could do buffers that are
"inherently" large enough, there's no practical message size limit, is
there (32-bits for the size).
The kernel caps this to 32k right now if I read the code correctly. But
fair point.
The kernel caps this for dumps only, no? We can allocate here ourselves
for multicasting a message as large as we like I think.
Right, but it is set for only 8k at the moment. Anyway, I will take
care of this.
+ if (WARN_ON(nl80211_send_wiphy(rdev, cmd, msg, 0, 0, 0, &state) < 0)) {
+ nlmsg_free(msg);
+ goto legacy;
+ }
+
+ genlmsg_multicast_netns(&nl80211_fam, wiphy_net(&rdev->wiphy), msg, 0,
+ NL80211_MCGRP_CONFIG2, GFP_KERNEL);
+
+legacy:
nit: just use "else" instead of the goto?
I'm not sure I understand? We want to send both messages here...
It's equivalent to:
-----
if (WARN_ON(nl80211_send_wiphy(...) < 0)
nlmsg_free(msg);
else
genlmsg_multicast_netns(...);
... code for legacy ...
-----
no?
Ah, now I see what you want. Sure I will take care of this in v4.
Regards,
-Denis