Ferruh Yigit <ferruh.yi...@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 <ktray...@redhat.com>
>>>> Sent: Tuesday, March 10, 2020 03:34
>>>> To: Thomas Monjalon <tho...@monjalon.net>; David Marchand
>>>> <david.march...@redhat.com>; Ye, Xiaolong
>>>> <xiaolong...@intel.com>
>>>> Cc: Wang, Haiyue <haiyue.w...@intel.com>; dev <dev@dpdk.org>;
>>>> Zhang, Qi Z <qi.z.zh...@intel.com>; Yang,
>>>> Qiming <qiming.y...@intel.com>; Xing, Beilei
>>>> <beilei.x...@intel.com>; Zhao1, Wei <wei.zh...@intel.com>;
>>>> Aaron Conole <acon...@redhat.com>; c...@dpdk.org; Yigit, Ferruh 
>>>> <ferruh.yi...@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.w...@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.

Reply via email to