After adding this patch other problem:)

@@@@ Building netlink in /git/vpp/build-root/build-vpp_debug-native/netlink @@@@ make[1]: Entering directory '/git/vpp/build-root/build-vpp_debug-native/netlink'
  CCLD     librtnl.la
  CC       test/test.lo
ar: `u' modifier ignored since `D' is the default (see `U')
/git/vpp/build-data/../netlink/test/test.c: In function ‘mapper_ns_add_command_fn’: /git/vpp/build-data/../netlink/test/test.c:125:14: error: implicit declaration of function ‘ip4_fib_index_from_table_id’ [-Werror=implicit-function-declaration]
   u32 fib4 = ip4_fib_index_from_table_id(table_id);
              ^~~~~~~~~~~~~~~~~~~~~~~~~~~
/git/vpp/build-data/../netlink/test/test.c:126:14: error: implicit declaration of function ‘ip6_fib_index_from_table_id’ [-Werror=implicit-function-declaration]
   u32 fib6 = ip6_fib_index_from_table_id(table_id);
              ^~~~~~~~~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
Makefile:520: recipe for target 'test/test.lo' failed
make[1]: *** [test/test.lo] Error 1
make[1]: Leaving directory '/git/vpp/build-root/build-vpp_debug-native/netlink'
Makefile:698: recipe for target 'netlink-build' failed
make: *** [netlink-build] Error 2



W dniu 2017-09-27 o 20:06, Burt Silverman pisze:
Hi Michael,

I came up with a patch that compiles, but I have not tested it. Hopefully it is this simple:

burts@burtvb:~/vppsb/netlink/librtnl$ git diff .
diff --git a/netlink/librtnl/rtnl.c b/netlink/librtnl/rtnl.c
index 04f0440..fa31617 100644
--- a/netlink/librtnl/rtnl.c
+++ b/netlink/librtnl/rtnl.c
@@ -31,6 +31,7 @@
 #include <sys/types.h>
 #include <sys/wait.h>
+#include <errno.h>
 #undef DBL_MAX
 #define DBL_MAX 1000000000.0
@@ -102,7 +103,7 @@ rtnl_cancel_timeout(rtnl_ns_t *ns)
   ns->timeout = DBL_MAX;
 }
-static clib_error_t *rtnl_read_cb(struct unix_file * f)
+static clib_error_t *rtnl_read_cb(struct clib_file * f)
 {
   rtnl_main_t *rm = &rtnl_main;
   vlib_main_t *vm = vlib_get_main();
@@ -138,7 +139,7 @@ int rtnl_dump_request(rtnl_ns_t *ns, int type, void *req, size_t len)
 static void rtnl_socket_close(rtnl_ns_t *ns)
 {
-  unix_file_del(&unix_main, &unix_main.file_pool[ns->unix_index]);
+  clib_file_del(&file_main, &file_main.file_pool[ns->unix_index]);
   close(ns->rtnl_socket);
 }
@@ -259,11 +260,11 @@ static int rtnl_socket_open(rtnl_ns_t *ns)
     return -3;
   }
-  unix_file_t template = {0};
+  clib_file_t template = {0};
   template.read_function = rtnl_read_cb;
   template.file_descriptor = ns->rtnl_socket;
   template.private_data = (uword) (ns - rm->streams);
-  ns->unix_index = unix_file_add (&unix_main, &template);
+  ns->unix_index = clib_file_add (&file_main, &template);
   return 0;
 }

On Wed, Sep 27, 2017 at 1:41 PM, Michael Borokhovich <michael...@gmail.com <mailto:michael...@gmail.com>> wrote:

    Hi Burt, Pawel,

    Did you eventually manage to install the router plugin with the
    latest VPP?

    Thanks,
    Michael.


    On Tue, Sep 19, 2017 at 6:05 PM, Burt Silverman <bur...@gmail.com
    <mailto:bur...@gmail.com>> wrote:

        Same problem here. I guess the vlib code was updated but the
        vppsb has not caught up.

        Burt

        On Mon, Sep 18, 2017 at 12:56 PM, Paweł Staszewski
        <pstaszew...@itcare.pl <mailto:pstaszew...@itcare.pl>> wrote:

            Trying to add netlink from vppsb to the latest vpp git but :


            @@@@ Building netlink in
            /git/vpp/build-root/build-vpp_debug-native/netlink @@@@
            make[1]: Entering directory
            '/git/vpp/build-root/build-vpp_debug-native/netlink'
              CC       librtnl/netns.lo
              CC       librtnl/rtnl.lo
              CC       librtnl/mapper.lo
              CC       test/test.lo
            /git/vpp/build-data/../netlink/librtnl/rtnl.c:105:42:
            error: ‘struct unix_file’ declared inside parameter list
            will not be visible outside of this definition or
            declaration [-Werror]
             static clib_error_t *rtnl_read_cb(struct unix_file * f)
            ^~~~~~~~~
            /git/vpp/build-data/../netlink/librtnl/rtnl.c: In function
            ‘rtnl_read_cb’:
            /git/vpp/build-data/../netlink/librtnl/rtnl.c:109:33:
            error: dereferencing pointer to incomplete type ‘struct
            unix_file’
               rtnl_ns_t *ns = &rm->streams[f->private_data];
               ^~
            /git/vpp/build-data/../netlink/librtnl/rtnl.c: In function
            ‘rtnl_socket_close’:
            /git/vpp/build-data/../netlink/librtnl/rtnl.c:141:3:
            error: implicit declaration of function ‘unix_file_del’
            [-Werror=implicit-function-declaration]
               unix_file_del(&unix_main,
            &unix_main.file_pool[ns->unix_index]);
               ^~~~~~~~~~~~~
            /git/vpp/build-data/../netlink/librtnl/rtnl.c:141:39:
            error: ‘unix_main_t {aka struct <anonymous>}’ has no
            member named ‘file_pool’
               unix_file_del(&unix_main,
            &unix_main.file_pool[ns->unix_index]);
            ^
            /git/vpp/build-data/../netlink/librtnl/rtnl.c: In function
            ‘rtnl_socket_open’:
            /git/vpp/build-data/../netlink/librtnl/rtnl.c:262:3:
            error: unknown type name ‘unix_file_t’
               unix_file_t template = {0};
               ^~~~~~~~~~~
            /git/vpp/build-data/../netlink/librtnl/rtnl.c:263:11:
            error: request for member ‘read_function’ in something not
            a structure or union
               template.read_function = rtnl_read_cb;
                       ^
            /git/vpp/build-data/../netlink/librtnl/rtnl.c:264:11:
            error: request for member ‘file_descriptor’ in something
            not a structure or union
               template.file_descriptor = ns->rtnl_socket;
                       ^
            /git/vpp/build-data/../netlink/librtnl/rtnl.c:265:11:
            error: request for member ‘private_data’ in something not
            a structure or union
               template.private_data = (uword) (ns - rm->streams);
                       ^
            /git/vpp/build-data/../netlink/librtnl/rtnl.c:266:20:
            error: implicit declaration of function ‘unix_file_add’
            [-Werror=implicit-function-declaration]
               ns->unix_index = unix_file_add (&unix_main, &template);
                                ^~~~~~~~~~~~~
            cc1: all warnings being treated as errors
            Makefile:520: recipe for target 'librtnl/rtnl.lo' failed
            make[1]: *** [librtnl/rtnl.lo] Error 1
            make[1]: *** Waiting for unfinished jobs....
            /git/vpp/build-data/../netlink/test/test.c: In function
            ‘mapper_ns_add_command_fn’:
            /git/vpp/build-data/../netlink/test/test.c:125:14: error:
            implicit declaration of function
            ‘ip4_fib_index_from_table_id’
            [-Werror=implicit-function-declaration]
               u32 fib4 = ip4_fib_index_from_table_id(table_id);
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
            /git/vpp/build-data/../netlink/test/test.c:126:14: error:
            implicit declaration of function
            ‘ip6_fib_index_from_table_id’
            [-Werror=implicit-function-declaration]
               u32 fib6 = ip6_fib_index_from_table_id(table_id);
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
            cc1: all warnings being treated as errors
            Makefile:520: recipe for target 'test/test.lo' failed
            make[1]: *** [test/test.lo] Error 1
            make[1]: Leaving directory
            '/git/vpp/build-root/build-vpp_debug-native/netlink'
            Makefile:698: recipe for target 'netlink-build' failed
            make: *** [netlink-build] Error 2





            W dniu 2017-09-17 o 16:27, Paweł Staszewski pisze:

                Also latest vpp from git without including vppsb

                Sep 17 16:28:02 ubuntu systemd[1]: vpp.service:
                Service hold-off time over, scheduling restart.
                Sep 17 16:28:02 ubuntu systemd[1]: Stopped vector
                packet processing engine.
                Sep 17 16:28:02 ubuntu systemd[1]: Starting vector
                packet processing engine...
                Sep 17 16:28:02 ubuntu systemd[1]: Started vector
                packet processing engine.
                Sep 17 16:28:02 ubuntu vpp[1557]:
                vlib_plugin_early_init:356: plugin path
                /usr/lib/vpp_plugins
                Sep 17 16:28:02 ubuntu vpp[1557]: load_one_plugin:184:
                Loaded plugin: acl_plugin.so (Access Control Lists)
                Sep 17 16:28:02 ubuntu vpp[1557]: load_one_plugin:142:
                /usr/lib/vpp_plugins/dpdk_plugin.so: undefined symbol:
                aes_gcm_enc_128_sse
                Sep 17 16:28:02 ubuntu vpp[1557]: load_one_plugin:143:
                Failed to load plugin 'dpdk_plugin.so'
                Sep 17 16:28:02 ubuntu systemd[1]: vpp.service: Main
                process exited, code=dumped, status=6/ABRT
                Sep 17 16:28:02 ubuntu systemd[1]: vpp.service: Unit
                entered failed state.
                Sep 17 16:28:02 ubuntu systemd[1]: vpp.service: Failed
                with result 'core-dump'.
                Sep 17 16:28:02 ubuntu systemd[1]: vpp.service:
                Service hold-off time over, scheduling restart.
                Sep 17 16:28:02 ubuntu systemd[1]: Stopped vector
                packet processing engine.
                Sep 17 16:28:02 ubuntu systemd[1]: Starting vector
                packet processing engine...
                Sep 17 16:28:02 ubuntu systemd[1]: Started vector
                packet processing engine.
                Sep 17 16:28:02 ubuntu vpp[1597]:
                vlib_plugin_early_init:356: plugin path
                /usr/lib/vpp_plugins
                Sep 17 16:28:02 ubuntu vpp[1597]: load_one_plugin:184:
                Loaded plugin: acl_plugin.so (Access Control Lists)
                Sep 17 16:28:02 ubuntu vpp[1597]: load_one_plugin:142:
                /usr/lib/vpp_plugins/dpdk_plugin.so: undefined symbol:
                aes_gcm_enc_128_sse
                Sep 17 16:28:02 ubuntu vpp[1597]: load_one_plugin:143:
                Failed to load plugin 'dpdk_plugin.so'
                Sep 17 16:28:02 ubuntu systemd[1]: vpp.service: Main
                process exited, code=dumped, status=6/ABRT
                Sep 17 16:28:02 ubuntu systemd[1]: vpp.service: Unit
                entered failed state.
                Sep 17 16:28:02 ubuntu systemd[1]: vpp.service: Failed
                with result 'core-dump'.
                Sep 17 16:28:03 ubuntu systemd[1]: vpp.service:
                Service hold-off time over, scheduling restart.
                Sep 17 16:28:03 ubuntu systemd[1]: Stopped vector
                packet processing engine.
                Sep 17 16:28:03 ubuntu systemd[1]: vpp.service: Start
                request repeated too quickly.
                Sep 17 16:28:03 ubuntu systemd[1]: Failed to start
                vector packet processing engine.
                Sep 17 16:28:03 ubuntu systemd[1]: vpp.service: Unit
                entered failed state.
                Sep 17 16:28:03 ubuntu systemd[1]: vpp.service: Failed
                with result 'start-limit-hit'.



                W dniu 2017-09-17 o 15:51, Paweł Staszewski pisze:

                    Hi just get the latest git:

                    cd /

                    git clonehttps://gerrit.fd.io/r/vpp
                    <http://gerrit.fd.io/r/vpp>

                    git clonehttps://gerrit.fd.io/r/vppsb
                    <http://gerrit.fd.io/r/vppsb>


                    $ cd /vpp
                    $ ln -sf /vppsb/netlink
                    $ ln -sf /vppsb/router
                    $ ln -sf ../../netlink/netlink.mk
                    <http://netlink.mk> build-data/packages/
                    $ ln -sf ../../router/router.mk <http://router.mk>
                    build-data/packages/

                    $ cd build-root
                    $ ./bootstrap.sh
                    $ make V=0 PLATFORM=vpp TAG=vpp_debug router-install

                    And:

                    make V=0 PLATFORM=vpp TAG=vpp_debug router-install
                    @@@@ Arch for platform 'vpp' is native @@@@
                    @@@@ Finding source for router @@@@
                    @@@@ Makefile fragment found in
                    /vpp/build-data/packages/router.mk
                    <http://router.mk> @@@@
                    @@@@ Source found in /vpp/router @@@@
                    @@@@ Configuring router: nothing to do @@@@
                    @@@@ Building router in
                    /vpp/build-root/build-vpp_debug-native/router @@@@
                    make[1]: Entering directory
                    '/vpp/build-root/build-vpp_debug-native/router'
                      CC       router/tap_inject.lo
                      CC router/tap_inject_netlink.lo
                      CC router/tap_inject_node.lo
                    /vpp/build-data/../router/router/tap_inject_node.c:34:1:
                    error: unknown type name ‘dpo_type_t’
                     dpo_type_t tap_inject_dpo_type;
                     ^~~~~~~~~~
                    /vpp/build-data/../router/router/tap_inject_node.c:323:22:
                    error: unknown type name ‘dpo_id_t’
                     tap_inject_dpo_lock (dpo_id_t * dpo)
                                          ^~~~~~~~
                    /vpp/build-data/../router/router/tap_inject_node.c:331:24:
                    error: unknown type name ‘dpo_id_t’
                     tap_inject_dpo_unlock (dpo_id_t * dpo)
                                            ^~~~~~~~
                    /vpp/build-data/../router/router/tap_inject_node.c:341:14:
                    error: unknown type name ‘dpo_vft_t’
                     const static dpo_vft_t tap_inject_vft = {
                                  ^~~~~~~~~
                    /vpp/build-data/../router/router/tap_inject_node.c:342:3:
                    error: field name not in record or union initializer
                       .dv_lock = tap_inject_dpo_lock,
                       ^
                    /vpp/build-data/../router/router/tap_inject_node.c:342:3:
                    note: (near initialization for ‘tap_inject_vft’)
                    /vpp/build-data/../router/router/tap_inject_node.c:342:14:
                    error: ‘tap_inject_dpo_lock’ undeclared here (not
                    in a function)
                       .dv_lock = tap_inject_dpo_lock,
                    ^~~~~~~~~~~~~~~~~~~
                    /vpp/build-data/../router/router/tap_inject_node.c:343:3:
                    error: field name not in record or union initializer
                       .dv_unlock = tap_inject_dpo_unlock,
                       ^
                    /vpp/build-data/../router/router/tap_inject_node.c:343:3:
                    note: (near initialization for ‘tap_inject_vft’)
                    /vpp/build-data/../router/router/tap_inject_node.c:343:16:
                    error: ‘tap_inject_dpo_unlock’ undeclared here
                    (not in a function)
                       .dv_unlock = tap_inject_dpo_unlock,
                    ^~~~~~~~~~~~~~~~~~~~~
                    /vpp/build-data/../router/router/tap_inject_node.c:343:16:
                    error: excess elements in scalar initializer [-Werror]
                    /vpp/build-data/../router/router/tap_inject_node.c:343:16:
                    note: (near initialization for ‘tap_inject_vft’)
                    /vpp/build-data/../router/router/tap_inject_node.c:344:3:
                    error: field name not in record or union initializer
                       .dv_format = format_tap_inject_dpo,
                       ^
                    /vpp/build-data/../router/router/tap_inject_node.c:344:3:
                    note: (near initialization for ‘tap_inject_vft’)
                    /vpp/build-data/../router/router/tap_inject_node.c:344:16:
                    error: excess elements in scalar initializer [-Werror]
                       .dv_format = format_tap_inject_dpo,
                    ^~~~~~~~~~~~~~~~~~~~~
                    /vpp/build-data/../router/router/tap_inject_node.c:344:16:
                    note: (near initialization for ‘tap_inject_vft’)
                    /vpp/build-data/../router/router/tap_inject_node.c:352:50:
                    error: ‘DPO_PROTO_NUM’ undeclared here (not in a
                    function)
                     const static char *const *const
                    tap_inject_nodes[DPO_PROTO_NUM] = {
                    ^~~~~~~~~~~~~
                    /vpp/build-data/../router/router/tap_inject_node.c:353:4:
                    error: ‘DPO_PROTO_IP6’ undeclared here (not in a
                    function)
                       [DPO_PROTO_IP6] = tap_inject_tx_nodes,
                        ^~~~~~~~~~~~~
                    /vpp/build-data/../router/router/tap_inject_node.c:353:4:
                    error: array index in initializer not of integer type
                    /vpp/build-data/../router/router/tap_inject_node.c:353:4:
                    note: (near initialization for ‘tap_inject_nodes’)
                    /vpp/build-data/../router/router/tap_inject_node.c:
                    In function ‘tap_inject_init’:
                    /vpp/build-data/../router/router/tap_inject_node.c:365:25:
                    error: implicit declaration of function
                    ‘dpo_register_new_type’
                    [-Werror=implicit-function-declaration]
                       tap_inject_dpo_type = dpo_register_new_type
                    (&tap_inject_vft, tap_inject_nodes);
                    ^~~~~~~~~~~~~~~~~~~~~
                    At top level:
                    /vpp/build-data/../router/router/tap_inject_node.c:352:33:
                    error: ‘tap_inject_nodes’ defined but not used
                    [-Werror=unused-variable]
                     const static char *const *const
                    tap_inject_nodes[DPO_PROTO_NUM] = {
                    ^~~~~~~~~~~~~~~~
                    cc1: all warnings being treated as errors
                    Makefile:476: recipe for target
                    'router/tap_inject_node.lo' failed
                    make[1]: *** [router/tap_inject_node.lo] Error 1
                    make[1]: *** Waiting for unfinished jobs....
                    /vpp/build-data/../router/router/tap_inject.c:24:26:
                    fatal error: vnet/fib/fib.h: No such file or directory
                     #include <vnet/fib/fib.h>
                                              ^
                    compilation terminated.
                    Makefile:476: recipe for target
                    'router/tap_inject.lo' failed
                    make[1]: *** [router/tap_inject.lo] Error 1
                    In file included from
                    /vpp/build-data/../router/router/tap_inject_netlink.c:19:0:
                    /vppsb/netlink/librtnl/netns.h:26:26: fatal error:
                    librtnl/rtnl.h: No such file or directory
                     #include <librtnl/rtnl.h>
                                              ^
                    compilation terminated.
                    Makefile:476: recipe for target
                    'router/tap_inject_netlink.lo' failed
                    make[1]: *** [router/tap_inject_netlink.lo] Error 1
                    make[1]: Leaving directory
                    '/vpp/build-root/build-vpp_debug-native/router'
                    Makefile:698: recipe for target 'router-build' failed
                    make: *** [router-build] Error 2

                    _______________________________________________
                    vpp-dev mailing list
                    vpp-dev@lists.fd.io <mailto:vpp-dev@lists.fd.io>
                    https://lists.fd.io/mailman/listinfo/vpp-dev
                    <https://lists.fd.io/mailman/listinfo/vpp-dev>


                _______________________________________________
                vpp-dev mailing list
                vpp-dev@lists.fd.io <mailto:vpp-dev@lists.fd.io>
                https://lists.fd.io/mailman/listinfo/vpp-dev
                <https://lists.fd.io/mailman/listinfo/vpp-dev>


            _______________________________________________
            vpp-dev mailing list
            vpp-dev@lists.fd.io <mailto:vpp-dev@lists.fd.io>
            https://lists.fd.io/mailman/listinfo/vpp-dev
            <https://lists.fd.io/mailman/listinfo/vpp-dev>



        _______________________________________________
        vpp-dev mailing list
        vpp-dev@lists.fd.io <mailto:vpp-dev@lists.fd.io>
        https://lists.fd.io/mailman/listinfo/vpp-dev
        <https://lists.fd.io/mailman/listinfo/vpp-dev>




_______________________________________________
vpp-dev mailing list
vpp-dev@lists.fd.io
https://lists.fd.io/mailman/listinfo/vpp-dev

Reply via email to