From mboxrd@z Thu Jan 1 00:00:00 1970 From: Shreyansh Jain Subject: Re: [PATCH v4 03/41] bus/dpaa: add compatibility and helper macros Date: Tue, 19 Sep 2017 19:27:37 +0530 Message-ID: References: <20170823141213.25476-1-shreyansh.jain@nxp.com> <20170909112132.13936-1-shreyansh.jain@nxp.com> <20170909112132.13936-4-shreyansh.jain@nxp.com> <916531df-edb4-d0fe-cb86-32cedb6fc46a@intel.com> <690be1c8-67d1-31e0-b1dc-4b270b1f8519@nxp.com> <3bf46b37-6bcb-b6c5-62ea-5632f81f518a@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8"; format=flowed Content-Transfer-Encoding: 7bit Cc: , To: Ferruh Yigit Return-path: Received: from NAM03-BY2-obe.outbound.protection.outlook.com (mail-by2nam03on0055.outbound.protection.outlook.com [104.47.42.55]) by dpdk.org (Postfix) with ESMTP id 7CDD11B1A0 for ; Tue, 19 Sep 2017 15:46:47 +0200 (CEST) In-Reply-To: <3bf46b37-6bcb-b6c5-62ea-5632f81f518a@intel.com> Content-Language: en-US List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Tuesday 19 September 2017 07:10 PM, Ferruh Yigit wrote: > On 9/19/2017 2:18 PM, Shreyansh Jain wrote: >> On Monday 18 September 2017 08:19 PM, Ferruh Yigit wrote: >>> On 9/9/2017 12:20 PM, Shreyansh Jain wrote: >>>> From: Hemant Agrawal >>>> >>>> Linked list, bit operations and compatibility macros. >>>> >>>> Signed-off-by: Geoff Thorpe >>>> Signed-off-by: Hemant Agrawal >>> >>> <...> >>> >>>> diff --git a/drivers/bus/dpaa/include/compat.h b/drivers/bus/dpaa/include/compat.h >>>> new file mode 100644 >>>> index 0000000..a1fd53e >>>> --- /dev/null >>>> +++ b/drivers/bus/dpaa/include/compat.h >>>> @@ -0,0 +1,389 @@ >>>> +/*- >>>> + * This file is provided under a dual BSD/GPLv2 license. When using or >>>> + * redistributing this file, you may do so under either license. >>> >>> The content of the file looks like for Linux, is the file coming from an >>> existing GPL license? If so, is it allowed to add BSD license to this? >>> >>>> + * >>>> + * BSD LICENSE >>>> + * >>>> + * Copyright 2011 Freescale Semiconductor, Inc. >>>> + * All rights reserved. >>>> + * >>>> + * Redistribution and use in source and binary forms, with or without >>>> + * modification, are permitted provided that the following conditions are met: >>>> + * * Redistributions of source code must retain the above copyright >>>> + * notice, this list of conditions and the following disclaimer. >>>> + * * Redistributions in binary form must reproduce the above copyright >>>> + * notice, this list of conditions and the following disclaimer in the >>>> + * documentation and/or other materials provided with the distribution. >>>> + * * Neither the name of the above-listed copyright holders nor the >>>> + * names of any contributors may be used to endorse or promote products >>>> + * derived from this software without specific prior written permission. >>>> + * >>>> + * GPL LICENSE SUMMARY >>>> + * >>>> + * ALTERNATIVELY, this software may be distributed under the terms of the >>>> + * GNU General Public License ("GPL") as published by the Free Software >>>> + * Foundation, either version 2 of that License or (at your option) any >>>> + * later version. >>>> + * >>>> + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" >>>> + * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE >>>> + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE >>>> + * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE >>>> + * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR >>>> + * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF >>>> + * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS >>>> + * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN >>>> + * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) >>>> + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE >>>> + * POSSIBILITY OF SUCH DAMAGE. >>>> + */ >>> > > <...> > >>>> + >>>> +#ifndef __DPAA_LIST_H >>>> +#define __DPAA_LIST_H >>>> + >>>> +/****************/ >>>> +/* Linked-lists */ >>>> +/****************/ >>> >>> Do we need to maintain a linked list implementation, why no just use >>> sys/queue.h ones as done many places in DPDK? >>> >>>> + >>>> +struct list_head { >>>> + struct list_head *prev; >>>> + struct list_head *next; >>>> +}; >>>> + >>> >>> <...> >>> >> >> The underlying DPAA infrastructure code is shared between kernel and >> userspace. That is why, changing the internal headers (for example, >> using RTE_* queues) is something I want to avoid until absolutely >> necessary. The outer layers (drivers/*/dpaa/) are something I am >> trying to keep as close to possible to DPDK. > > I understand you want to escape from maintaining a copy of common files > for DPDK, this has been done by many drivers, as not changing "base" > files, this makes sense. > > But for this case, file is "dpaa_list.h" and as far as I can see all it > has is linked list implementation, this looked easy to exclude, but if > not you can ignore the comment. Got your point. I will respin and see how much is the impact. Thanks for inputs. > >> >> - >> Shreyansh >> > >