From: Leon Romanovsky <leonro-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
To: Jason Gunthorpe
<jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
Cc: Yishai Hadas
<yishaih-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>,
Yishai Hadas <yishaih-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>,
linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
majd-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org,
Doug Ledford <dledford-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org>
Subject: Re: [PATCH rdma-core] mlx5: Return pointer to CQ doorbell
Date: Thu, 24 Aug 2017 08:27:16 +0300 [thread overview]
Message-ID: <20170824052716.GD1724@mtr-leonro.local> (raw)
In-Reply-To: <20170823165221.GB23928-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
[-- Attachment #1: Type: text/plain, Size: 3232 bytes --]
On Wed, Aug 23, 2017 at 10:52:21AM -0600, Jason Gunthorpe wrote:
> On Wed, Aug 23, 2017 at 07:45:55PM +0300, Leon Romanovsky wrote:
>
> > > Provide two implementations of mlx5dv_init_obj, one that has the
> > > historical behaviour that has existed until now of returning the
> > > void **uar and a new version that returns the 'void *' version
> > > renamed to arb_db.
> >
> > arb_db -> arm_db
>
> Oops, I fixed that, thanks.
>
> > Strange, in github it has 7 digits (the same was with rsocket fixes)
> > Fixes: c6e3439 ("mlx5: Return pointer to CQ doorbell")
>
> Yeah, side effect of github rendering it into a web link, I think.
>
> > The overall looks good, but I need to run checks with before
> > applying it.
>
> Sure, I didn't test it obviously, but the readelf is what I expect:
>
> 101: 000000000000e4d0 55 FUNC GLOBAL DEFAULT 13 mlx5dv_init_obj@MLX5_1.0
> 168: 000000000000e4d0 55 FUNC LOCAL DEFAULT 13 __mlx5dv_init_obj_1_0
> 102: 000000000000e300 451 FUNC GLOBAL DEFAULT 13 mlx5dv_init_obj@@MLX5_1.2
> 169: 000000000000e300 451 FUNC LOCAL DEFAULT 13 __mlx5dv_init_obj_1_2
It is not complete output as I would expect to see. It doesn't have
mlx5dv_init_obj (without explicit @MLX5_1.2). There is a need to declare default
function name for the static linking has no knowledge of versions.
The simplest approach which is used in whole rdma-core is just retain
the original function name and the patch below on top of your patch
achieves it.
diff --git a/providers/mlx5/mlx5.c b/providers/mlx5/mlx5.c
index 7ec5951b..49dd4f12 100644
--- a/providers/mlx5/mlx5.c
+++ b/providers/mlx5/mlx5.c
@@ -716,8 +716,7 @@ static int mlx5dv_get_srq(struct ibv_srq *srq_in,
return 0;
}
-int __mlx5dv_init_obj_1_2(struct mlx5dv_obj *obj, uint64_t obj_type);
-int __mlx5dv_init_obj_1_2(struct mlx5dv_obj *obj, uint64_t obj_type)
+int mlx5dv_init_obj(struct mlx5dv_obj *obj, uint64_t obj_type)
{
int ret = 0;
@@ -732,14 +731,13 @@ int __mlx5dv_init_obj_1_2(struct mlx5dv_obj *obj, uint64_t obj_type)
return ret;
}
-asm(".symver __mlx5dv_init_obj_1_2, mlx5dv_init_obj@@MLX5_1.2");
int __mlx5dv_init_obj_1_0(struct mlx5dv_obj *obj, uint64_t obj_type);
int __mlx5dv_init_obj_1_0(struct mlx5dv_obj *obj, uint64_t obj_type)
{
int ret = 0;
- ret = __mlx5dv_init_obj_1_2(obj, obj_type);
+ ret = mlx5dv_init_obj(obj, obj_type);
if (!ret && (obj_type & MLX5DV_OBJ_CQ)) {
/* ABI version 1.0 returns the void ** in this memory
* location
------
➜ rdma-core git:(tst-uar) ✗ readelf -s build/lib/libmlx5.so |grep -i mlx5dv_init
99: 000000000000dab0 55 FUNC GLOBAL DEFAULT 13 mlx5dv_init_obj@MLX5_1.0
165: 000000000000dab0 55 FUNC LOCAL DEFAULT 13 __mlx5dv_init_obj_1_0
194: 000000000000d8f0 443 FUNC LOCAL DEFAULT 13 mlx5dv_init_obj
268: 000000000000dab0 55 FUNC GLOBAL DEFAULT 13 mlx5dv_init_obj@MLX5_1.0
>
> Jason
> --
> To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
> the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
next prev parent reply other threads:[~2017-08-24 5:27 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-08-17 13:36 [PATCH rdma-core] mlx5: Return pointer to CQ doorbell Yishai Hadas
[not found] ` <1502976998-20906-1-git-send-email-yishaih-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2017-08-17 17:33 ` Jason Gunthorpe
[not found] ` <20170817173320.GB22792-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-08-17 17:39 ` Leon Romanovsky
[not found] ` <20170817173932.GJ23648-U/DQcQFIOTAAJjI8aNfphQ@public.gmane.org>
2017-08-17 18:03 ` Jason Gunthorpe
[not found] ` <20170817180349.GD24735-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-08-21 9:06 ` Yishai Hadas
[not found] ` <99bc8f57-6a58-d309-7142-74cc498f7feb-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
2017-08-21 15:22 ` Jason Gunthorpe
[not found] ` <20170821152237.GA3400-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-08-22 8:36 ` Yishai Hadas
[not found] ` <912a3e5b-7dbc-061a-53f5-b3cf3bce9d9e-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
2017-08-22 16:30 ` Jason Gunthorpe
[not found] ` <20170822163007.GB4922-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-08-23 12:13 ` Yishai Hadas
[not found] ` <1b7e41dc-4873-7c0a-6cdb-bc499af70af2-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
2017-08-23 14:06 ` Jason Gunthorpe
2017-08-23 16:08 ` Jason Gunthorpe
[not found] ` <20170823160816.GA11188-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-08-23 16:45 ` Leon Romanovsky
[not found] ` <20170823164555.GV1724-U/DQcQFIOTAAJjI8aNfphQ@public.gmane.org>
2017-08-23 16:52 ` Jason Gunthorpe
[not found] ` <20170823165221.GB23928-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-08-24 5:27 ` Leon Romanovsky [this message]
[not found] ` <20170824052716.GD1724-U/DQcQFIOTAAJjI8aNfphQ@public.gmane.org>
2017-08-24 15:00 ` Jason Gunthorpe
[not found] ` <20170824150045.GA23110-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-08-24 15:50 ` Leon Romanovsky
[not found] ` <20170824155036.GN1724-U/DQcQFIOTAAJjI8aNfphQ@public.gmane.org>
2017-08-24 16:40 ` Jason Gunthorpe
2017-08-24 20:30 ` Jason Gunthorpe
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=20170824052716.GD1724@mtr-leonro.local \
--to=leonro-vpraknaxozvwk0htik3j/w@public.gmane.org \
--cc=dledford-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org \
--cc=jgunthorpe-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org \
--cc=linux-rdma-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=majd-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org \
--cc=yishaih-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org \
--cc=yishaih-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org \
/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.