[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Sat, 11 Nov 2017 15:18:00 +0100
From: Johannes Berg <johannes@...solutions.net>
To: David Miller <davem@...emloft.net>, Jason@...c4.com
Cc: netdev@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v4] af_netlink: ensure that NLMSG_DONE never fails in
dumps
> > If you're handling this by forcing another read() to procude the
> > NLMSG_DONE, then you have no reason to WARN_ON() here.
> >
> > In fact you are adding a WARN_ON() which is trivially triggerable by
> > any user.
>
> I added this in my suggestion for how this could work, but I don't
> think you're right, since we previously check if there's enough space.
Or perhaps I should say this differently:
Forcing another read happens through the
skb_tailroom(skb) < nlmsg_total_size(...)
check, so the nlmsg_put_answer() can't really fail.
Handling nlmsg_put_answer() failures by forcing another read would have
required jumping to the existing if code with a goto, or restructuring
the whole thing completely somehow, and I didn't see how to do that.
johannes
Powered by blists - more mailing lists