On 2/1/2017 3:55 PM, Wiles, Keith wrote:
> 
>> On Feb 1, 2017, at 9:40 AM, Pascal Mazon <pascal.ma...@6wind.com> wrote:
>>
>> On 02/01/2017 04:25 PM, Wiles, Keith wrote:
>>>
>>>> On Feb 1, 2017, at 2:11 AM, Pascal Mazon <pascal.ma...@6wind.com> wrote:
>>>>
>>>> On 02/01/2017 12:29 AM, Wiles, Keith wrote:
>>>>>
>>>>>> On Jan 31, 2017, at 10:39 AM, Pascal Mazon <pascal.ma...@6wind.com> 
>>>>>> wrote:
>>>>>>
>>>>>> On 01/31/2017 05:06 PM, Wiles, Keith wrote:>
>>>>>>> Looking at the changes to set the link up/down and the adding the two 
>>>>>>> functions. I noticed in the stop/start routines I was set the link in 
>>>>>>> DPDK and not adjusting the interface link. Should the stop/start 
>>>>>>> routine also do the same thing?
>>>>>>>
>>>>>>
>>>>>> Well, my patch is probably wrong.
>>>>>> The best option would probably be to set dev->data->dev_link.link_status
>>>>>> appropriately inside tap_link_set() only.
>>>>>>
>>>>>> I'm not sure it's compulsory to actually set the link UP in 
>>>>>> tap_dev_start()
>>>>>> (respectively DOWN in tap_dev_stop()).
>>>>>> If it is, however, it would be best done using tap_link_set() in those
>>>>>> functions.
>>>>>
>>>>> I was setting the link up/down in both places in the old code. The gotta 
>>>>> is link up/down came later (I guess) and applications only call 
>>>>> start/stop. In the other drivers like ring the like they tend to set link 
>>>>> in start/stop and in link up/down, which is what I patterned my driver on.
>>>>>
>>>>> I looked around and the only applications calling link up/down was 
>>>>> testpmd and ip_pipeline, but all of the apps call start/stop. Even the 
>>>>> docs to not suggest that link up/down be used it appears start/stop must 
>>>>> set the Link state and the developer can call link up/down APIs if needed 
>>>>> for others reasons.
>>>>>
>>>>> I assume the link up/down only effects the link state and the start/stop 
>>>>> is creating/destroying resources.
>>>>>
>>>>> My only solution I guess is to add the link up/down code to the 
>>>>> start/stop API.
>>>>
>>>> I'm not sure I understand your conclusion.
>>>> If the apps usually call start/stop only, then definitely those functions 
>>>> should set the link state appropriately.
>>>> To that effect, I think it best to just call tap_link_set() in 
>>>> tap_dev_start() (and similar for stopping).
>>>> Apps with just start/stop functions would get the expected behavior, and 
>>>> the tap PMD would also support setting the link up/down independently, for 
>>>> testpmd and ip_pipeline for example.
>>>>
>>>> Does that sound fine?
>>>
>>> Yes, this was what I was trying to say and calling tap_link_set() in 
>>> tap_dev_start() is the solution.
>>
>> Great, that looks good to me!
> 
> Ferruh, Please apply Pascal’s 6 patches and I will based my changes on top of 
> those changes. Does that sound reasonable?

That is good, I will.

Pascal,

Only patch 1/6 commit log needs reworking, rest looks good, (although I
still will do one more round of basic tests). For commit log update, do
you want to send a v2 or prefer me do the update?

Thanks,
ferruh

> 
>>
>> Regards,
>> Pascal
> 
> Regards,
> Keith
> 

Reply via email to