RE: [PATCH rdma-next] RDMA: Explicitly pass in the dma_device to ib_register_device

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

 



...

>> >diff --git a/drivers/infiniband/sw/siw/siw_main.c
>> >b/drivers/infiniband/sw/siw/siw_main.c
>> >index d862bec84376..0362d57b4db8 100644
>> >--- a/drivers/infiniband/sw/siw/siw_main.c
>> >+++ b/drivers/infiniband/sw/siw/siw_main.c
>> >@@ -69,7 +69,7 @@ static int siw_device_register(struct siw_device
>> >*sdev, const char *name)
>> >
>> > 	sdev->vendor_part_id = dev_id++;
>> >
>> >-	rv = ib_register_device(base_dev, name);
>> >+	rv = ib_register_device(base_dev, name, NULL);
>> > 	if (rv) {
>> > 		pr_warn("siw: device registration error %d\n", rv);
>> > 		return rv;
>> >@@ -386,6 +386,8 @@ static struct siw_device
>> >*siw_device_create(struct net_device *netdev)
>> > 	base_dev->dev.dma_parms = &sdev->dma_parms;
>> > 	sdev->dma_parms = (struct device_dma_parameters)
>> > 		{ .max_segment_size = SZ_2G };
>> >+	dma_coerce_mask_and_coherent(&base_dev->dev,
>> >+				     dma_get_required_mask(&base_dev->dev));
>>
>> Leon, can you please help me to understand this
>> additional logic? Do we need to setup the DMA device
>> for (software) RDMA devices which rely on dma_virt_ops
>> in the end, or better leave it untouched?
>
>The logic that driver is responsible to give right DMA device,
>so yes, you are setting here mask from dma_virt_ops, as RXE did.
>
Thanks Leon!

I wonder how this was working w/o that before!

Many thanks,
Bernard.





[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