RE: [PATCH 2/2] RDMA/rxe: Call rxe_set_mtu after rxe_register_device

From: Daisuke Matsuda (Fujitsu)
Date: Tue Aug 22 2023 - 22:46:53 EST


On Wed, Aug 23, 2023 11:13 AM Li Zhijian wrote:
>
> rxe_set_mtu() will call rxe_info_dev() to print message, and
> rxe_info_dev() expects dev_name(rxe->ib_dev->dev) has been assigned.
>
> Previously since dev_name() is not set, when a new rxe link is being
> added, 'null' will be used as the dev_name like:
>
> "(null): rxe_set_mtu: Set mtu to 1024"
>
> Move rxe_register_device() earlier to assign the correct dev_name
> so that it can be read by rxe_set_mtu() later.
>
> And it's safe to do such change since mtu will not be used during the
> rxe_register_device()
>
> After this change, message becomes:
> "rxe_eth0: rxe_set_mtu: Set mtu to 4096"
>
> Signed-off-by: Li Zhijian <lizhijian@xxxxxxxxxxx>
> ---
> drivers/infiniband/sw/rxe/rxe.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/infiniband/sw/rxe/rxe.c b/drivers/infiniband/sw/rxe/rxe.c
> index cb2c0d54aae1..d29efce6e5ca 100644
> --- a/drivers/infiniband/sw/rxe/rxe.c
> +++ b/drivers/infiniband/sw/rxe/rxe.c
> @@ -169,10 +169,13 @@ void rxe_set_mtu(struct rxe_dev *rxe, unsigned int ndev_mtu)
> */
> int rxe_add(struct rxe_dev *rxe, unsigned int mtu, const char *ibdev_name)
> {
> + int ret;
> +
> rxe_init(rxe);
> + ret = rxe_register_device(rxe, ibdev_name);
> rxe_set_mtu(rxe, mtu);
>
> - return rxe_register_device(rxe, ibdev_name);
> + return ret;
> }
>
> static int rxe_newlink(const char *ibdev_name, struct net_device *ndev)
> --
> 2.29.2

It makes sense.
Reviewed-by: Daisuke Matsuda <matsuda-daisuke@xxxxxxxxxxx>