Re: [PATCH] RDMA/mlx5: return the EFAULT per ibv_advise_mr(3)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Just noticed that there is another code path i was missing will return EINVAL
when get_prefetchable_mr returns NULL

ENOENT:
mlx5_ib_advise_mr_prefetch()
  -> mlx5_ib_prefetch_sg_list()
      -> get_prefetchable_mr()
   return -ENOENT;


EINVAL:
mlx5_ib_advise_mr_prefetch
  ->init_prefetch_work()
     -> get_prefetchable_mr()
    return -EINVAL;

where get_prefetchable_mr will check pd and write access & key
So which value we should return ?

Thanks
on 2021/8/26 9:18, Li, Zhijian wrote:

On 26/08/2021 01:28, Jason Gunthorpe wrote:
On Sat, Aug 21, 2021 at 05:44:43PM +0800, Li, Zhijian wrote:
convert to text and send again


Hi Jason & Leon

It reminds me that ibv_advise_mr doesn't mention ENOENT any more which value the API actually returns now.
the ENOENT cases/situations returned by kernel mlx5 implementation is most likely same with EINVALL as its manpage[1].

So shall we return EINVAL instead of ENOENT in kernel side when get_prefetchable_mr returns NULL?
No, the man page should be fixed
thanks a lot, i have submitted a RP to rdma-core https://github.com/linux-rdma/rdma-core/pull/1048

Thanks
Zhijian

Jason







[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux