On Thu, Jan 16, 2025 at 11:10:47PM +0530, Jerin Jacob wrote:
> On Thu, Jan 16, 2025 at 10:50 PM Bruce Richardson
> <bruce.richard...@intel.com> wrote:
> >
> > On Fri, Dec 20, 2024 at 02:38:57PM +0000, Bruce Richardson wrote:
> > > This RFC attempts to reduce the amount of code duplication across a
> > > number of Intel NIC drivers, specifically: ixgbe, i40e, iavf, and ice.
> > >
> > > The first patch extract a function from the Rx side, otherwise the
> > > majority of the changes are on the Tx side, leading to a converged Tx
> > > queue structure across the 4 drivers, and a large number of common
> > > functions.
> > >
> >
> > When considering the changes in this patchset, I'm still not entirely
> > satisfied with where to place the common code in the repo. Using the
> > "drivers/common" seems wrong to me, as it's for code common across devices,
> > and having a "_common_intel" (or common_intel) folder inside drivers/net
> 
> driver/common/intel is OK. I think.
> 
> > seems a bit ugly to me.
> >
> > What would people think of me taking a leaf out of the kernel directory
> > structure playbook, and moving the intel drivers into a separate
> > subdirectory "drivers/net/intel"? I've done up a prototype RFC patch for
> 
> I thought the reason for not keeping the company name was to - not
> change the directory structure
> if NIC block is bought by another company (driver/net/bnxk was with
> Boradcom then moved to Marvell) or acquired by another company.
> (Cavium->Marvell)
> 
> 
I hadn't thought of that.

However, in our case I believe the reason we don't use this scheme is that
we a) never needed to and AFAIK b) it has never been proposed.

In practice, if we do this for the intel drivers, it does not need to be
done by other vendors unless they want to do so, or have a lot of drivers
in DPDK. Also, renaming vendor directories is not going to be a serious
problem, so long as the underlying device directory name remains the same.
For compatibility of output, my RFC patch strips off all paths but the
last, so intel/i40e remains just "i40e" in terms of all generated objects.

/Bruce

Reply via email to