Hi Matt,

Sorry for the late reply.
Please find the response inline

In what way are the logs misleading? The call to the TUNSETIFF ioctl in
tap_create_if() is returning an error code. The message "Argument list too
long" corresponds to the error number E2BIG, which is being set by the
kernel's tun driver. AFAICT the tun driver only returns that error here -
https://github.com/torvalds/linux/blob/a175eca0f3d747599f1fdfac04cc9195b71ec996/drivers/net/tun.c#L771.
The condition that causes it is 'tun->numqueues + tun->numdisabled ==
MAX_TAP_QUEUES'. So too many queues are being allocated on the tap. That's
from the current upstream linux kernel source code. It's possible that some
older version returned that error code for some other reason.

>>>>Amaresh>> I was hoping when we stop the docker where vpp is running the
queue would have been free and should have been reallocated. I understood
your point. I was just trying to mention that docker restart doesn't add
any new config, it's the old config as previous vpp instance so why the
E2BIG error. However, I can understand your explanation here. I will
investigate in that area w.r.to docker and driver functioning.


What version of kernel are you running when this error happens? The current
value of MAX_TAP_QUEUES is 256. On older versions of the kernel it was 8.
Your screenshot showed that DPDK initialization detected 20 lcores. How
many worker threads does VPP have configured?
>>>Amaresh>>>> Kernel version: 5.13.0-51-generic #58~20.04.1-Ubuntu SMP Tue
Jun 14 11:29:12 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux. I did not
configured any specific. Currently just 1 main core
[image: image.png]

I don't ever run VPP in a docker container, so I don't know why this would
happen intermittently. Could your container be getting migrated to a
different host system when it restarts? Or could it be getting started with
a different number of CPU cores allocated or worker threads configured in
VPP's startup.conf?
>>>Amaresh: No Its the same host and with the same configuration

Thanks,
Amaresh



Thanks,
Amaresh

On Fri, Jul 1, 2022 at 7:00 PM Matthew Smith via lists.fd.io <mgsmith=
netgate....@lists.fd.io> wrote:

>
> On Wed, Jun 29, 2022 at 10:23 PM Amaresh Parida <parida.amar...@gmail.com>
> wrote:
>
>> Hi Dave,
>>
>> Thanks for the response.
>> The initial run is ok. The issue just happen on vpp restart.
>>
>> I think that won't change any args.
>>
>> Its appears to me may be the logs are misleading and probably a side
>> effect of corrupted memory or so.
>>
>> Let me know if you think otherwise.
>>
>>
> In what way are the logs misleading? The call to the TUNSETIFF ioctl in
> tap_create_if() is returning an error code. The message "Argument list too
> long" corresponds to the error number E2BIG, which is being set by the
> kernel's tun driver. AFAICT the tun driver only returns that error here -
> https://github.com/torvalds/linux/blob/a175eca0f3d747599f1fdfac04cc9195b71ec996/drivers/net/tun.c#L771.
> The condition that causes it is 'tun->numqueues + tun->numdisabled ==
> MAX_TAP_QUEUES'. So too many queues are being allocated on the tap. That's
> from the current upstream linux kernel source code. It's possible that some
> older version returned that error code for some other reason.
>
> What version of kernel are you running when this error happens? The
> current value of MAX_TAP_QUEUES is 256. On older versions of the kernel it
> was 8. Your screenshot showed that DPDK initialization detected 20 lcores.
> How many worker threads does VPP have configured?
>
> I don't ever run VPP in a docker container, so I don't know why this would
> happen intermittently. Could your container be getting migrated to a
> different host system when it restarts? Or could it be getting started with
> a different number of CPU cores allocated or worker threads configured in
> VPP's startup.conf?
>
> -Matt
>
>
>
>>
>> On Wed, Jun 29, 2022, 18:17 Dave Barach <v...@barachs.net> wrote:
>>
>>> You might try adding additional debugs to print the arg list length and
>>> args.
>>>
>>> Comparing the success and failure cases should give at least a hint.
>>>
>>> HTH... Dave
>>>
>>> On Jun 29, 2022, at 7:55 AM, Amaresh Parida <parida.amar...@gmail.com>
>>> wrote:
>>>
>>> 
>>> Hi All,
>>> Any inputs on the below query will be very helpful.
>>>
>>> Thanks,
>>> Amaresh
>>>
>>> On Fri, Jun 24, 2022 at 6:09 PM Amaresh Parida <parida.amar...@gmail.com>
>>> wrote:
>>>
>>>> Hi All,
>>>>
>>>> I am facing an issue on restarting VPP where sometimes LinuxCP
>>>> tap interface is not getting created.
>>>>
>>>> Here is the complete problem statement.
>>>>
>>>> 1> I am running VPP inside a docker
>>>> 2> I have the following VPP and LCP config
>>>>       dev 0000:02:00.1{
>>>>                 name port0/0
>>>>        }
>>>>        vppctl lcp create port0/0 host-if Ethernet0
>>>> 3> Everything works as expected  and the LCP tap interface is getting
>>>> created on VPP bootup
>>>> 4> When I stop and start the VPP docker *sometime* I see the following
>>>> error and LCP fails on tap creation.
>>>>
>>>> [image: image.png]
>>>>
>>>> Any suggestions to understand the issue will be very helpful?
>>>>
>>>> Thanks,
>>>> Amaresh
>>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>
>>
>>
> 
>
>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#21607): https://lists.fd.io/g/vpp-dev/message/21607
Mute This Topic: https://lists.fd.io/mt/91963351/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/leave/1480452/21656/631435203/xyzzy 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to