[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200709115721.492dcf76@kicinski-fedora-pc1c0hjn.dhcp.thefacebook.com>
Date: Thu, 9 Jul 2020 11:57:21 -0700
From: Jakub Kicinski <kuba@...nel.org>
To: Michal Kubecek <mkubecek@...e.cz>
Cc: "David S. Miller" <davem@...emloft.net>, netdev@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH net] ethtool: fix genlmsg_put() failure handling in
ethnl_default_dumpit()
On Thu, 9 Jul 2020 12:11:50 +0200 (CEST) Michal Kubecek wrote:
> If the genlmsg_put() call in ethnl_default_dumpit() fails, we bail out
> without checking if we already have some messages in current skb like we do
> with ethnl_default_dump_one() failure later. Therefore if existing messages
> almost fill up the buffer so that there is not enough space even for
> netlink and genetlink header, we lose all prepared messages and return and
> error.
>
> Rather than duplicating the skb->len check, move the genlmsg_put(),
> genlmsg_cancel() and genlmsg_end() calls into ethnl_default_dump_one().
> This is also more logical as all message composition will be in
> ethnl_default_dump_one() and only iteration logic will be left in
> ethnl_default_dumpit().
>
> Fixes: 728480f12442 ("ethtool: default handlers for GET requests")
> Reported-by: Jakub Kicinski <kuba@...nel.org>
> Signed-off-by: Michal Kubecek <mkubecek@...e.cz>
Reviewed-by: Jakub Kicinski <kuba@...nel.org>
Powered by blists - more mailing lists