[dpdk-dev] [PATCH v1 0/4] add Intel DCF PMD support

Aaron Conole aconole at redhat.com
Tue Mar 10 15:11:14 CET 2020


Ferruh Yigit <ferruh.yigit at intel.com> writes:

> On 3/10/2020 7:48 AM, Thomas Monjalon wrote:
>> 10/03/2020 03:00, Wang, Haiyue:
>>>> -----Original Message-----
>>>> From: Kevin Traynor <ktraynor at redhat.com>
>>>> Sent: Tuesday, March 10, 2020 03:34
>>>> To: Thomas Monjalon <thomas at monjalon.net>; David Marchand
>>>> <david.marchand at redhat.com>; Ye, Xiaolong
>>>> <xiaolong.ye at intel.com>
>>>> Cc: Wang, Haiyue <haiyue.wang at intel.com>; dev <dev at dpdk.org>;
>>>> Zhang, Qi Z <qi.z.zhang at intel.com>; Yang,
>>>> Qiming <qiming.yang at intel.com>; Xing, Beilei
>>>> <beilei.xing at intel.com>; Zhao1, Wei <wei.zhao1 at intel.com>;
>>>> Aaron Conole <aconole at redhat.com>; ci at dpdk.org; Yigit, Ferruh <ferruh.yigit at intel.com>
>>>> Subject: Re: [dpdk-dev] [PATCH v1 0/4] add Intel DCF PMD support
>>>>
>>>> On 09/03/2020 17:57, Thomas Monjalon wrote:
>>>>> 09/03/2020 17:20, Ye Xiaolong:
>>>>>> Hi, David
>>>>>>
>>>>>> On 03/09, David Marchand wrote:
>>>>>>> On Mon, Mar 9, 2020 at 3:22 PM Haiyue Wang <haiyue.wang at intel.com> wrote:
>>>>>>>>
>>>>>>>> A DCF (Device Config Function) based approach is proposed where a device
>>>>>>>> bound to the device's VF0 can act as a sole controlling entity to exercise
>>>>>>>> advance functionality (such as switch, ACL) for rest of the VFs.
>>>>>>>>
>>>>>>>> The DCF works as a standalone PMD to support this function, which shares the
>>>>>>>> ice PMD flow control core function and the iavf virtchnl mailbox core module.
>>>>>>>>
>>>>>>>> This patchset is based on:
>>>>>>>> [1] https://patchwork.dpdk.org/cover/66417/ update ice base code
>>>>>>>
>>>>>>> The problem is that the CI(s) won't handle this.
>>>>>>> Example for the robot: https://travis-ci.com/ovsrobot/dpdk/builds/152461907
>>>>>>>
>>>>>>> Maybe we could add something as an annotation to the cover letter or
>>>>>>> the first patch of a series so that the CI(s) can detect and try to be
>>>>>>> intelligent?
>>>>>>
>>>>>> Agree, It'd be helpful if the cover letter of the first patch contains some
>>>>>> base tree info including the base commit and dependency patchset info (if any),
>>>>>> so the CI can determine the correct base on top of which the developer's
>>>>>> patchset applies to avoid any apply issue and potential false positive.
>>>>>>
>>>>>> And I know there is one option '--base'' of `git format-patch` which is
>>>>>> dedicated for this kind of usage, it can help create the base tree info block
>>>>>> which can be easily consumed by the CI. Here is the simple intro of it.
>>>>>>
>>>>>> Imagine that on top of the public commit P (already in upstream), the developer
>>>>>> applied well-known (on-flight, in the mailing list but not merged yet) patches
>>>>>> X, Y and Z from somebody else or himself, and then built his three-patch series
>>>>>> A, B, C, the commit history would be like:
>>>>>>
>>>>>> ................................................
>>>>>> ---P---X---Y---Z---A---B---C
>>>>>> ................................................
>>>>>>
>>>>>> With `git format-patch --base=P -3 C`,
>>>>>>
>>>>>> where P could be the exact commit sha, or variants e.g. HEAD~6, we can also use
>>>>>> --base=auto for convenience, the base tree information block will be shown at
>>>>>> the end of the first message the command outputs (either the first patch, or
>>>>>> the cover letter), like this:
>>>>>>
>>>>>> ------------
>>>>>> base-commit: P
>>>>>> prerequisite-patch-id: X
>>>>>> prerequisite-patch-id: Y
>>>>>> prerequisite-patch-id: Z
>>>>>> ------------
>>>>>>
>>>>>> Here P is the commit sha, and X,Y,Z are the patch ids of the dependency patches.
>>>>>>
>>>>>>
>>>>>> With this info in place, I think CI should be able to setup the exact base for
>>>>>> the coming patchset, the missing part I can see is the mapping of
>>>>>> (in-flight patch <-> patch id), since we have all the in-flight patches in
>>>>>> patchwork, creating and maintaining such mapping in DB is doable, what do you
>>>>>> think?
>>>>>
>>>>> I think it would simpler to list dependencies as patchwork ids.
>>>>> Example:
>>>>> 	Depends-on: series-42, patch-12345
>>>>>
>>>>
>>>
>>> Just list the 'series' ? Since it can download the whole patchset with
>>> the single link format like:
>>>
>>> Depends-on: series-8843  --> https://patchwork.dpdk.org/series/8843/mbox/
>> 
>> Yes, I was proposing both format: series-X and patch-Y (on top of series-X).
>> But we probably never need to be specific about a single patch.
>> I think you are right, we can keep only "series-X" syntax,
>> and allow describing a list of series, ordered and separated with comma.
>> 
> +1 to "Depends-on: series-#####" syntax

I can do this - but I actually prefer just putting the series in the
brackets.  Metadata tags in the message will be preserved in the commit
history, but the details of which series to start with for checking out
don't really need to be preserved.  It's just a way to get the bot to
test, right?  Maybe it can help maintainers to script an auto-fetch,
too.



More information about the dev mailing list