From: Leon Romanovsky <leon@kernel.org>
To: Michal Swiatkowski <michal.swiatkowski@linux.intel.com>
Cc: Jason Gunthorpe <jgg@nvidia.com>,
Stav Aviram <saviram@nvidia.com>,
Andrew Lunn <andrew+netdev@lunn.ch>,
Eric Dumazet <edumazet@google.com>,
Jakub Kicinski <kuba@kernel.org>,
linux-rdma@vger.kernel.org, Mark Bloch <markb@mellanox.com>,
netdev@vger.kernel.org, Paolo Abeni <pabeni@redhat.com>,
Saeed Mahameed <saeedm@nvidia.com>,
Tariq Toukan <tariqt@nvidia.com>
Subject: Re: [PATCH mlx5-next] net/mlx5: Check device memory pointer before usage
Date: Tue, 1 Jul 2025 14:33:18 +0300 [thread overview]
Message-ID: <20250701113318.GB6278@unreal> (raw)
In-Reply-To: <aGJtbp/nXrCqbvbO@mev-dev.igk.intel.com>
On Mon, Jun 30, 2025 at 12:56:46PM +0200, Michal Swiatkowski wrote:
> On Mon, Jun 30, 2025 at 01:35:53PM +0300, Leon Romanovsky wrote:
> > From: Stav Aviram <saviram@nvidia.com>
> >
> > Add a NULL check before accessing device memory to prevent a crash if
> > dev->dm allocation in mlx5_init_once() fails.
> >
> > Fixes: c9b9dcb430b3 ("net/mlx5: Move device memory management to mlx5_core")
> > Signed-off-by: Stav Aviram <saviram@nvidia.com>
> > Signed-off-by: Leon Romanovsky <leonro@nvidia.com>
> > ---
> > drivers/infiniband/hw/mlx5/dm.c | 2 +-
> > drivers/net/ethernet/mellanox/mlx5/core/lib/dm.c | 4 ++--
> > 2 files changed, 3 insertions(+), 3 deletions(-)
> >
> > diff --git a/drivers/infiniband/hw/mlx5/dm.c b/drivers/infiniband/hw/mlx5/dm.c
> > index b4c97fb62abf..9ded2b7c1e31 100644
> > --- a/drivers/infiniband/hw/mlx5/dm.c
> > +++ b/drivers/infiniband/hw/mlx5/dm.c
> > @@ -282,7 +282,7 @@ static struct ib_dm *handle_alloc_dm_memic(struct ib_ucontext *ctx,
> > int err;
> > u64 address;
> >
> > - if (!MLX5_CAP_DEV_MEM(dm_db->dev, memic))
> > + if (!dm_db || !MLX5_CAP_DEV_MEM(dm_db->dev, memic))
> > return ERR_PTR(-EOPNOTSUPP);
> >
> > dm = kzalloc(sizeof(*dm), GFP_KERNEL);
> > diff --git a/drivers/net/ethernet/mellanox/mlx5/core/lib/dm.c b/drivers/net/ethernet/mellanox/mlx5/core/lib/dm.c
> > index 7c5516b0a844..8115071c34a4 100644
> > --- a/drivers/net/ethernet/mellanox/mlx5/core/lib/dm.c
> > +++ b/drivers/net/ethernet/mellanox/mlx5/core/lib/dm.c
> > @@ -30,7 +30,7 @@ struct mlx5_dm *mlx5_dm_create(struct mlx5_core_dev *dev)
> >
> > dm = kzalloc(sizeof(*dm), GFP_KERNEL);
> > if (!dm)
> > - return ERR_PTR(-ENOMEM);
> > + return NULL;
> >
> > spin_lock_init(&dm->lock);
> >
> > @@ -96,7 +96,7 @@ struct mlx5_dm *mlx5_dm_create(struct mlx5_core_dev *dev)
> > err_steering:
> > kfree(dm);
> >
> > - return ERR_PTR(-ENOMEM);
> > + return NULL;
>
> In mlx5_init_once() IS_ERR is used (still). It should be consistent.
> Looks like you can use IS_ERR() instead of checking just dm_db, however,
> mlx5_dm_create() returns also NULL. I am not sure if it is fine (will
> not cause an error in mlx5_init_once()).
>
> Maybe the best is to change a check in mlx5_init_once() from IS_ERROR()
> to just !dm.
We need to remove IS_ERR() check from all places.
>
> Thanks
>
> > }
> >
> > void mlx5_dm_cleanup(struct mlx5_core_dev *dev)
> > --
> > 2.50.0
next prev parent reply other threads:[~2025-07-01 11:33 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-06-30 10:35 [PATCH mlx5-next] net/mlx5: Check device memory pointer before usage Leon Romanovsky
2025-06-30 10:56 ` Michal Swiatkowski
2025-07-01 11:33 ` Leon Romanovsky [this message]
2025-06-30 11:18 ` Dawid Osuchowski
2025-07-01 11:30 ` Leon Romanovsky
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=20250701113318.GB6278@unreal \
--to=leon@kernel.org \
--cc=andrew+netdev@lunn.ch \
--cc=edumazet@google.com \
--cc=jgg@nvidia.com \
--cc=kuba@kernel.org \
--cc=linux-rdma@vger.kernel.org \
--cc=markb@mellanox.com \
--cc=michal.swiatkowski@linux.intel.com \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=saeedm@nvidia.com \
--cc=saviram@nvidia.com \
--cc=tariqt@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.