[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20230127092242.ajwlo3tivxsjsul7@skbuf>
Date: Fri, 27 Jan 2023 11:22:42 +0200
From: Vladimir Oltean <olteanv@...il.com>
To: Leon Romanovsky <leon@...nel.org>
Cc: "David S . Miller" <davem@...emloft.net>,
Jakub Kicinski <kuba@...nel.org>, Andrew Lunn <andrew@...n.ch>,
bridge@...ts.linux-foundation.org,
Eric Dumazet <edumazet@...gle.com>,
Florian Fainelli <f.fainelli@...il.com>,
netdev@...r.kernel.org, Nikolay Aleksandrov <razor@...ckwall.org>,
Paolo Abeni <pabeni@...hat.com>,
Roopa Prabhu <roopa@...dia.com>
Subject: Re: [PATCH net-next] netlink: provide an ability to set default
extack message
On Fri, Jan 27, 2023 at 07:22:26AM +0200, Leon Romanovsky wrote:
> It means changing ALL error unwind places where extack was forwarded
> before to subfunctions.
>
> Places like this:
> ret = func(..., extack)
> if (ret) {
> NL_SET_ERR_MSG_MOD...
> return ret;
> }
>
> will need to be changed to something like this:
> ret = func(..., extack)
> if (ret) {
> NL_SET_ERR_MSG_WEAK...
> return ret;
> }
Yeah, but my point is that you inspect the code that you plan to convert,
rather than converting it in bulk and inspecting later...
> Can we please discuss current code and not over-engineered case which
> doesn't exist in the reality?
>
> Even for your case, I would like to see NL_SET_ERR_MSG_FORCE() to
> explicitly say that message will be overwritten.
__nla_validate_parse()
if (unlikely(rem > 0)) {
pr_warn_ratelimited("netlink: %d bytes leftover after parsing attributes in process `%s'.\n",
rem, current->comm);
NL_SET_ERR_MSG(extack, "bytes leftover after parsing attributes");
if (validate & NL_VALIDATE_TRAILING)
return -EINVAL;
}
return 0;
called by nla_validate_deprecated() with validate == NL_VALIDATE_LIBERAL
followed by other extack setting in tunnel_key_copy_opts(), which will
not overwrite the initial warning message.
Powered by blists - more mailing lists