From: Dan Carpenter <dan.carpenter@oracle.com>
To: Leon Romanovsky <leon@kernel.org>
Cc: vladbu@nvidia.com, linux-rdma@vger.kernel.org,
linux-netdev <netdev@vger.kernel.org>
Subject: Re: [bug report] net/mlx5e: E-Switch, Maintain vhca_id to vport_num mapping
Date: Wed, 10 Feb 2021 15:28:01 +0300 [thread overview]
Message-ID: <20210210122801.GW20820@kadam> (raw)
In-Reply-To: <20210210114820.GA741034@unreal>
On Wed, Feb 10, 2021 at 01:48:20PM +0200, Leon Romanovsky wrote:
> On Wed, Feb 10, 2021 at 11:51:51AM +0300, Dan Carpenter wrote:
> > Hello Vlad Buslov,
> >
> > The patch 84ae9c1f29c0: "net/mlx5e: E-Switch, Maintain vhca_id to
> > vport_num mapping" from Sep 23, 2020, leads to the following static
> > checker warning:
> >
> > drivers/net/ethernet/mellanox/mlx5/core/vport.c:1170 mlx5_vport_get_other_func_cap()
> > warn: odd binop '0x0 & 0x1'
> >
> > drivers/net/ethernet/mellanox/mlx5/core/vport.c
> > 1168 int mlx5_vport_get_other_func_cap(struct mlx5_core_dev *dev, u16 function_id, void *out)
> > 1169 {
> > 1170 u16 opmod = (MLX5_CAP_GENERAL << 1) | (HCA_CAP_OPMOD_GET_MAX & 0x01);
> >
> > HCA_CAP_OPMOD_GET_MAX is zero. The 0x01 is a magical number.
> >
> > 1171 u8 in[MLX5_ST_SZ_BYTES(query_hca_cap_in)] = {};
> > 1172
> > 1173 MLX5_SET(query_hca_cap_in, in, opcode, MLX5_CMD_OP_QUERY_HCA_CAP);
> > 1174 MLX5_SET(query_hca_cap_in, in, op_mod, opmod);
> > 1175 MLX5_SET(query_hca_cap_in, in, function_id, function_id);
> > 1176 MLX5_SET(query_hca_cap_in, in, other_function, true);
> > 1177 return mlx5_cmd_exec_inout(dev, query_hca_cap, in, out);
> > 1178 }
>
> Dan,
>
> I'm running smatch which is based on 6193b3b71beb ("extra: fix some error pointer handling")
> and I don't see this error. Should I run something special?
>
This check is too crap to publish.
The heuristic was "a bitwise AND which always results in zero" but a lot
of code does stuff like: "data = 0x00 << 0 | 0x04 << 8 | 0x12 << 16;"
I could never figure out a way to make the check useful enough to
publish.
regards,
dan carpenter
next prev parent reply other threads:[~2021-02-10 12:31 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-02-10 8:51 [bug report] net/mlx5e: E-Switch, Maintain vhca_id to vport_num mapping Dan Carpenter
2021-02-10 11:48 ` Leon Romanovsky
2021-02-10 12:28 ` Dan Carpenter [this message]
2021-02-10 14:43 ` Leon Romanovsky
2021-02-12 19:23 ` Vlad Buslov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210210122801.GW20820@kadam \
--to=dan.carpenter@oracle.com \
--cc=leon@kernel.org \
--cc=linux-rdma@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=vladbu@nvidia.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.