New upstream version 18.11.1
[deb_dpdk.git] / drivers / net / tap / tap_tcmsgs.c
index d74ac80..b478b59 100644 (file)
@@ -1,34 +1,6 @@
-/*-
- *   BSD LICENSE
- *
- *   Copyright 2017 6WIND S.A.
- *   Copyright 2017 Mellanox.
- *
- *   Redistribution and use in source and binary forms, with or without
- *   modification, are permitted provided that the following conditions
- *   are met:
- *
- *     * Redistributions of source code must retain the above copyright
- *       notice, this list of conditions and the following disclaimer.
- *     * Redistributions in binary form must reproduce the above copyright
- *       notice, this list of conditions and the following disclaimer in
- *       the documentation and/or other materials provided with the
- *       distribution.
- *     * Neither the name of 6WIND S.A. nor the names of its
- *       contributors may be used to endorse or promote products derived
- *       from this software without specific prior written permission.
- *
- *   THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- *   "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- *   LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
- *   A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- *   OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- *   SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- *   LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- *   DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- *   THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- *   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- *   OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright 2017 6WIND S.A.
+ * Copyright 2017 Mellanox Technologies, Ltd
  */
 
 #include <inttypes.h>
@@ -38,6 +10,7 @@
 
 #include <rte_log.h>
 #include <tap_tcmsgs.h>
+#include "tap_log.h"
 
 struct qdisc {
        uint32_t handle;
@@ -107,25 +80,25 @@ qdisc_del(int nlsk_fd, uint16_t ifindex, struct qdisc *qinfo)
        msg.t.tcm_parent = qinfo->parent;
        /* if no netlink socket is provided, create one */
        if (!nlsk_fd) {
-               fd = nl_init(0);
+               fd = tap_nl_init(0);
                if (fd < 0) {
-                       RTE_LOG(ERR, PMD,
-                               "Could not delete QDISC: null netlink socket\n");
+                       TAP_LOG(ERR,
+                               "Could not delete QDISC: null netlink socket");
                        return -1;
                }
        } else {
                fd = nlsk_fd;
        }
-       if (nl_send(fd, &msg.nh) < 0)
+       if (tap_nl_send(fd, &msg.nh) < 0)
                goto error;
-       if (nl_recv_ack(fd) < 0)
+       if (tap_nl_recv_ack(fd) < 0)
                goto error;
        if (!nlsk_fd)
-               return nl_final(fd);
+               return tap_nl_final(fd);
        return 0;
 error:
        if (!nlsk_fd)
-               nl_final(fd);
+               tap_nl_final(fd);
        return -1;
 }
 
@@ -143,18 +116,18 @@ error:
 int
 qdisc_add_multiq(int nlsk_fd, uint16_t ifindex)
 {
-       struct tc_multiq_qopt opt;
+       struct tc_multiq_qopt opt = {0};
        struct nlmsg msg;
 
        tc_init_msg(&msg, ifindex, RTM_NEWQDISC,
                    NLM_F_REQUEST | NLM_F_ACK | NLM_F_EXCL | NLM_F_CREATE);
        msg.t.tcm_handle = TC_H_MAKE(MULTIQ_MAJOR_HANDLE, 0);
        msg.t.tcm_parent = TC_H_ROOT;
-       nlattr_add(&msg.nh, TCA_KIND, sizeof("multiq"), "multiq");
-       nlattr_add(&msg.nh, TCA_OPTIONS, sizeof(opt), &opt);
-       if (nl_send(nlsk_fd, &msg.nh) < 0)
+       tap_nlattr_add(&msg.nh, TCA_KIND, sizeof("multiq"), "multiq");
+       tap_nlattr_add(&msg.nh, TCA_OPTIONS, sizeof(opt), &opt);
+       if (tap_nl_send(nlsk_fd, &msg.nh) < 0)
                return -1;
-       if (nl_recv_ack(nlsk_fd) < 0)
+       if (tap_nl_recv_ack(nlsk_fd) < 0)
                return -1;
        return 0;
 }
@@ -179,10 +152,10 @@ qdisc_add_ingress(int nlsk_fd, uint16_t ifindex)
                    NLM_F_REQUEST | NLM_F_ACK | NLM_F_EXCL | NLM_F_CREATE);
        msg.t.tcm_handle = TC_H_MAKE(TC_H_INGRESS, 0);
        msg.t.tcm_parent = TC_H_INGRESS;
-       nlattr_add(&msg.nh, TCA_KIND, sizeof("ingress"), "ingress");
-       if (nl_send(nlsk_fd, &msg.nh) < 0)
+       tap_nlattr_add(&msg.nh, TCA_KIND, sizeof("ingress"), "ingress");
+       if (tap_nl_send(nlsk_fd, &msg.nh) < 0)
                return -1;
-       if (nl_recv_ack(nlsk_fd) < 0)
+       if (tap_nl_recv_ack(nlsk_fd) < 0)
                return -1;
        return 0;
 }
@@ -246,9 +219,9 @@ qdisc_iterate(int nlsk_fd, uint16_t ifindex,
        };
 
        tc_init_msg(&msg, ifindex, RTM_GETQDISC, NLM_F_REQUEST | NLM_F_DUMP);
-       if (nl_send(nlsk_fd, &msg.nh) < 0)
+       if (tap_nl_send(nlsk_fd, &msg.nh) < 0)
                return -1;
-       if (nl_recv(nlsk_fd, callback, &args) < 0)
+       if (tap_nl_recv(nlsk_fd, callback, &args) < 0)
                return -1;
        return 0;
 }
@@ -289,7 +262,7 @@ qdisc_create_multiq(int nlsk_fd, uint16_t ifindex)
 
        err = qdisc_add_multiq(nlsk_fd, ifindex);
        if (err < 0 && errno != -EEXIST) {
-               RTE_LOG(ERR, PMD, "Could not add multiq qdisc (%d): %s\n",
+               TAP_LOG(ERR, "Could not add multiq qdisc (%d): %s",
                        errno, strerror(errno));
                return -1;
        }
@@ -315,7 +288,7 @@ qdisc_create_ingress(int nlsk_fd, uint16_t ifindex)
 
        err = qdisc_add_ingress(nlsk_fd, ifindex);
        if (err < 0 && errno != -EEXIST) {
-               RTE_LOG(ERR, PMD, "Could not add ingress qdisc (%d): %s\n",
+               TAP_LOG(ERR, "Could not add ingress qdisc (%d): %s",
                        errno, strerror(errno));
                return -1;
        }