Re: [vpp-dev] vpp musl integration and CI

2021-01-21 Thread Dave Barach
Ack. 

 

Take a look at .../extras/snap/snapcraft.yaml. I haven't built the vpp snap
in a while, but this scheme (or the flatpack / appimage equivalent) finesses
the multiple libc problem. 

 

There's a 0.0% chance that /bin/date will suddenly break. Been there, done
that.

 

D. 

 

From: vpp-dev@lists.fd.io  On Behalf Of Nathan Moos
(nmoos) via lists.fd.io
Sent: Thursday, January 21, 2021 3:38 PM
To: v...@barachs.net; Benoit Ganne (bganne) ;
vpp-dev@lists.fd.io
Subject: Re: [vpp-dev] vpp musl integration and CI

 

Hi,

 

As the person who's been submitting most of these patches recently, my
interest is not the size of the resulting VPP binary/image, but instead the
fact that the embedded systems I'm attempting to build VPP on simply do not
use glibc at all -- they use musl as the system libc. I'm much more
concerned about the complexities associated with having multiple libcs than
I am the size of the package.

 

Nathan

  _  

From: v...@barachs.net <mailto:v...@barachs.net>  mailto:v...@barachs.net> >
Sent: Thursday, January 21, 2021 12:11
To: Benoit Ganne (bganne) mailto:bga...@cisco.com> >;
vpp-dev@lists.fd.io <mailto:vpp-dev@lists.fd.io>  mailto:vpp-dev@lists.fd.io> >
Cc: Nathan Moos (nmoos) mailto:nm...@cisco.com> >
Subject: RE: [vpp-dev] vpp musl integration and CI 

 

I've been down this path before. 

s/glibc/musl/ fixes one set of issues, and a small set at that. [Back in the
good old days, vpp wasn't even linked against glibc.]

Here's a quick library summary:

$ ldd /usr/bin/vpp
linux-vdso.so.1 (0x7ffef81f2000)
libvlibmemory.so.21.06 =>
/lib/x86_64-linux-gnu/libvlibmemory.so.21.06 (0x7fc41d8c4000)
libvnet.so.21.06 => /lib/x86_64-linux-gnu/libvnet.so.21.06
(0x7fc41bedd000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x7fc41bed7000)
libvlib.so.21.06 => /lib/x86_64-linux-gnu/libvlib.so.21.06
(0x7fc41bd4c000)
libsvm.so.21.06 => /lib/x86_64-linux-gnu/libsvm.so.21.06
(0x7fc41bd2e000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x7fc41bd23000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0
(0x7fc41bcfe000)
libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1
(0x7fc41bcf5000)
libvppinfra.so.21.06 => /lib/x86_64-linux-gnu/libvppinfra.so.21.06
(0x7fc41bc81000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x7fc41bb32000)
libssl.so.1.1 => /lib/x86_64-linux-gnu/libssl.so.1.1
(0x7fc41ba9f000)
libcrypto.so.1.1 => /lib/x86_64-linux-gnu/libcrypto.so.1.1
(0x7fc41b7c9000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x7fc41b5d5000)
/lib64/ld-linux-x86-64.so.2 (0x7fc41d9ba000)

By the time all is said and done, there's little chance that a vpp alpine
image would be less than O(10mb).  

I'd suggest that folks investigate single-image, one-size-fits-all packaging
technology: snap, flatpak, or appimage.  

FWIW... Dave 

-Original Message-
From: vpp-dev@lists.fd.io <mailto:vpp-dev@lists.fd.io>  mailto:vpp-dev@lists.fd.io> > On Behalf Of Benoit Ganne
(bganne) via lists.fd.io
Sent: Thursday, January 21, 2021 2:08 PM
To: vpp-dev@lists.fd.io <mailto:vpp-dev@lists.fd.io> 
Cc: Nathan Moos (nmoos) mailto:nm...@cisco.com> >
Subject: [vpp-dev] vpp musl integration and CI

Hi everyone,

There is some on-going work to make VPP works with musl libc instead of
glibc:
https://gerrit.fd.io/r/q/topic:%22musl%22+(status:open%20OR%20status:merged)
The goal is to be able to run VPP on embedded platforms relying on musl.
The modifications are overall pretty small, but we'd like to add an
integration job using Alpine Linux which does use musl to make sure it will
not break in the future.
What do you think? Is it something that would be possible in the LF infra?

Best
ben


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#18580): https://lists.fd.io/g/vpp-dev/message/18580
Mute This Topic: https://lists.fd.io/mt/80012247/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [vpp-dev] vpp musl integration and CI

2021-01-21 Thread Nathan Moos (nmoos) via lists.fd.io
Hi,

As the person who's been submitting most of these patches recently, my interest 
is not the size of the resulting VPP binary/image, but instead the fact that 
the embedded systems I'm attempting to build VPP on simply do not use glibc at 
all -- they use musl as the system libc. I'm much more concerned about the 
complexities associated with having multiple libcs than I am the size of the 
package.

Nathan

From: v...@barachs.net 
Sent: Thursday, January 21, 2021 12:11
To: Benoit Ganne (bganne) ; vpp-dev@lists.fd.io 

Cc: Nathan Moos (nmoos) 
Subject: RE: [vpp-dev] vpp musl integration and CI

I've been down this path before.

s/glibc/musl/ fixes one set of issues, and a small set at that. [Back in the
good old days, vpp wasn't even linked against glibc.]

Here's a quick library summary:

$ ldd /usr/bin/vpp
linux-vdso.so.1 (0x7ffef81f2000)
libvlibmemory.so.21.06 =>
/lib/x86_64-linux-gnu/libvlibmemory.so.21.06 (0x7fc41d8c4000)
libvnet.so.21.06 => /lib/x86_64-linux-gnu/libvnet.so.21.06
(0x7fc41bedd000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x7fc41bed7000)
libvlib.so.21.06 => /lib/x86_64-linux-gnu/libvlib.so.21.06
(0x7fc41bd4c000)
libsvm.so.21.06 => /lib/x86_64-linux-gnu/libsvm.so.21.06
(0x7fc41bd2e000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x7fc41bd23000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0
(0x7fc41bcfe000)
libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1
(0x7fc41bcf5000)
libvppinfra.so.21.06 => /lib/x86_64-linux-gnu/libvppinfra.so.21.06
(0x7fc41bc81000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x7fc41bb32000)
libssl.so.1.1 => /lib/x86_64-linux-gnu/libssl.so.1.1
(0x7fc41ba9f000)
libcrypto.so.1.1 => /lib/x86_64-linux-gnu/libcrypto.so.1.1
(0x7fc41b7c9000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x7fc41b5d5000)
/lib64/ld-linux-x86-64.so.2 (0x7fc41d9ba000)

By the time all is said and done, there's little chance that a vpp alpine
image would be less than O(10mb).

I'd suggest that folks investigate single-image, one-size-fits-all packaging
technology: snap, flatpak, or appimage.

FWIW... Dave

-Original Message-
From: vpp-dev@lists.fd.io  On Behalf Of Benoit Ganne
(bganne) via lists.fd.io
Sent: Thursday, January 21, 2021 2:08 PM
To: vpp-dev@lists.fd.io
Cc: Nathan Moos (nmoos) 
Subject: [vpp-dev] vpp musl integration and CI

Hi everyone,

There is some on-going work to make VPP works with musl libc instead of
glibc:
https://gerrit.fd.io/r/q/topic:%22musl%22+(status:open%20OR%20status:merged)
The goal is to be able to run VPP on embedded platforms relying on musl.
The modifications are overall pretty small, but we'd like to add an
integration job using Alpine Linux which does use musl to make sure it will
not break in the future.
What do you think? Is it something that would be possible in the LF infra?

Best
ben


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#18579): https://lists.fd.io/g/vpp-dev/message/18579
Mute This Topic: https://lists.fd.io/mt/80012247/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [vpp-dev] vpp musl integration and CI

2021-01-21 Thread Edward Warnicke
Dave,

Any chance we could get vpp down to a single statically linked binary?
That's roughly the way things are trending with Go... and it has a lot of
very very nice advantages in a containerized Cloud Native world.

Ed

On Thu, Jan 21, 2021 at 2:11 PM Dave Barach  wrote:

> I've been down this path before.
>
> s/glibc/musl/ fixes one set of issues, and a small set at that. [Back in
> the
> good old days, vpp wasn't even linked against glibc.]
>
> Here's a quick library summary:
>
> $ ldd /usr/bin/vpp
> linux-vdso.so.1 (0x7ffef81f2000)
> libvlibmemory.so.21.06 =>
> /lib/x86_64-linux-gnu/libvlibmemory.so.21.06 (0x7fc41d8c4000)
> libvnet.so.21.06 => /lib/x86_64-linux-gnu/libvnet.so.21.06
> (0x7fc41bedd000)
> libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x7fc41bed7000)
> libvlib.so.21.06 => /lib/x86_64-linux-gnu/libvlib.so.21.06
> (0x7fc41bd4c000)
> libsvm.so.21.06 => /lib/x86_64-linux-gnu/libsvm.so.21.06
> (0x7fc41bd2e000)
> librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x7fc41bd23000)
> libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0
> (0x7fc41bcfe000)
> libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1
> (0x7fc41bcf5000)
> libvppinfra.so.21.06 => /lib/x86_64-linux-gnu/libvppinfra.so.21.06
> (0x7fc41bc81000)
> libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x7fc41bb32000)
> libssl.so.1.1 => /lib/x86_64-linux-gnu/libssl.so.1.1
> (0x7fc41ba9f000)
> libcrypto.so.1.1 => /lib/x86_64-linux-gnu/libcrypto.so.1.1
> (0x7fc41b7c9000)
> libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x7fc41b5d5000)
> /lib64/ld-linux-x86-64.so.2 (0x7fc41d9ba000)
>
> By the time all is said and done, there's little chance that a vpp alpine
> image would be less than O(10mb).
>
> I'd suggest that folks investigate single-image, one-size-fits-all
> packaging
> technology: snap, flatpak, or appimage.
>
> FWIW... Dave
>
> -Original Message-
> From: vpp-dev@lists.fd.io  On Behalf Of Benoit Ganne
> (bganne) via lists.fd.io
> Sent: Thursday, January 21, 2021 2:08 PM
> To: vpp-dev@lists.fd.io
> Cc: Nathan Moos (nmoos) 
> Subject: [vpp-dev] vpp musl integration and CI
>
> Hi everyone,
>
> There is some on-going work to make VPP works with musl libc instead of
> glibc:
>
> https://gerrit.fd.io/r/q/topic:%22musl%22+(status:open%20OR%20status:merged)
> The goal is to be able to run VPP on embedded platforms relying on musl.
> The modifications are overall pretty small, but we'd like to add an
> integration job using Alpine Linux which does use musl to make sure it will
> not break in the future.
> What do you think? Is it something that would be possible in the LF infra?
>
> Best
> ben
>
>
> 
>
>

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#18577): https://lists.fd.io/g/vpp-dev/message/18577
Mute This Topic: https://lists.fd.io/mt/80012247/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



Re: [vpp-dev] vpp musl integration and CI

2021-01-21 Thread Dave Barach
I've been down this path before. 

s/glibc/musl/ fixes one set of issues, and a small set at that. [Back in the
good old days, vpp wasn't even linked against glibc.]

Here's a quick library summary:

$ ldd /usr/bin/vpp
linux-vdso.so.1 (0x7ffef81f2000)
libvlibmemory.so.21.06 =>
/lib/x86_64-linux-gnu/libvlibmemory.so.21.06 (0x7fc41d8c4000)
libvnet.so.21.06 => /lib/x86_64-linux-gnu/libvnet.so.21.06
(0x7fc41bedd000)
libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x7fc41bed7000)
libvlib.so.21.06 => /lib/x86_64-linux-gnu/libvlib.so.21.06
(0x7fc41bd4c000)
libsvm.so.21.06 => /lib/x86_64-linux-gnu/libsvm.so.21.06
(0x7fc41bd2e000)
librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x7fc41bd23000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0
(0x7fc41bcfe000)
libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1
(0x7fc41bcf5000)
libvppinfra.so.21.06 => /lib/x86_64-linux-gnu/libvppinfra.so.21.06
(0x7fc41bc81000)
libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x7fc41bb32000)
libssl.so.1.1 => /lib/x86_64-linux-gnu/libssl.so.1.1
(0x7fc41ba9f000)
libcrypto.so.1.1 => /lib/x86_64-linux-gnu/libcrypto.so.1.1
(0x7fc41b7c9000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x7fc41b5d5000)
/lib64/ld-linux-x86-64.so.2 (0x7fc41d9ba000)

By the time all is said and done, there's little chance that a vpp alpine
image would be less than O(10mb).  

I'd suggest that folks investigate single-image, one-size-fits-all packaging
technology: snap, flatpak, or appimage.  

FWIW... Dave 

-Original Message-
From: vpp-dev@lists.fd.io  On Behalf Of Benoit Ganne
(bganne) via lists.fd.io
Sent: Thursday, January 21, 2021 2:08 PM
To: vpp-dev@lists.fd.io
Cc: Nathan Moos (nmoos) 
Subject: [vpp-dev] vpp musl integration and CI

Hi everyone,

There is some on-going work to make VPP works with musl libc instead of
glibc:
https://gerrit.fd.io/r/q/topic:%22musl%22+(status:open%20OR%20status:merged)
The goal is to be able to run VPP on embedded platforms relying on musl.
The modifications are overall pretty small, but we'd like to add an
integration job using Alpine Linux which does use musl to make sure it will
not break in the future.
What do you think? Is it something that would be possible in the LF infra?

Best
ben


-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#18576): https://lists.fd.io/g/vpp-dev/message/18576
Mute This Topic: https://lists.fd.io/mt/80012247/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-



[vpp-dev] vpp musl integration and CI

2021-01-21 Thread Benoit Ganne (bganne) via lists.fd.io
Hi everyone,

There is some on-going work to make VPP works with musl libc instead of glibc: 
https://gerrit.fd.io/r/q/topic:%22musl%22+(status:open%20OR%20status:merged)
The goal is to be able to run VPP on embedded platforms relying on musl.
The modifications are overall pretty small, but we'd like to add an integration 
job using Alpine Linux which does use musl to make sure it will not break in 
the future.
What do you think? Is it something that would be possible in the LF infra?

Best
ben

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#18575): https://lists.fd.io/g/vpp-dev/message/18575
Mute This Topic: https://lists.fd.io/mt/80012247/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-