Hi Bart, > -----Original Message----- > From: linux-rdma-ow...@vger.kernel.org [mailto:linux-rdma- > ow...@vger.kernel.org] On Behalf Of Bart Van Assche > Sent: Monday, March 6, 2017 11:13 PM > To: Parav Pandit <pa...@mellanox.com>; gre...@linuxfoundation.org > Cc: linux-kernel@vger.kernel.org; linux-r...@vger.kernel.org; > seb...@linux.vnet.ibm.com; li...@armlinux.org.uk; h...@zytor.com; > mi...@redhat.com; dw...@infradead.org; bhelg...@google.com; > dledf...@redhat.com; b...@kernel.crashing.org > Subject: Re: [PATCH 1/2] device: Stop requiring that struct device is > embedded in struct pci_dev > > On Tue, 2017-03-07 at 05:08 +0000, Parav Pandit wrote: > > I replied with pseudo code in previous reply to Bart to bring back > dma_device member in the ib_device. > > dma_device member was already present in near past of few weeks. > > It should be able to work using it without performance impact and without > touching driver core layer like in this patch. > > That's confusing and was a source of bugs and inconsistencies. We do not > want two device structures in struct ib_device (struct device dev and struct > device *dma_device).
device dev represents, dev structure of the ib_device. While dma_device is for the actual device as you know. If you look at net_device, It has device dev. vendor drivers store pci_dev pointer and access device of pci_dev etc. Every net_device driver has to do that. Ib_device simplifies that work for ib stack by storing dma_device. I think this is less confusing. > > Bart.N r y b X ǧv ^ ){.n + { ٚ {ay ʇڙ ,j f h z w > j:+v w j m zZ+ > ݢj" ! i