From: Aziz Hajee <aziz-cir5NluLBPnQT0dZR+AlfA@public.gmane.org>
To: Bruce Richardson
<bruce.richardson-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
Cc: "dev-VfR2kkLFssw@public.gmane.org" <dev-VfR2kkLFssw@public.gmane.org>
Subject: Re: KNI interface operational state UP issue
Date: Wed, 14 Jan 2015 16:59:53 -0800 [thread overview]
Message-ID: <CAFGSfkkiu7NY5aQCT329K3WTA8cOaCYB8qd4w79aogrUtywGGA@mail.gmail.com> (raw)
In-Reply-To: <20150112112443.GB13136@bricha3-MOBL3>
Yes, the DPDK reports port is UP.
By the following change in the registered callback function to comment out
stop/start the dpdk interface, I can bring the KNI vEthX interfaces up:
(I guess, the reason is the ret value is now the default ret = 0, and no
error from stop/start. )
kni_config_network_interface(uint8_t port_id, uint8_t if_up)
{
int ret = 0;
if (port_id >= rte_eth_dev_count() || port_id >= RTE_MAX_ETHPORTS) {
RTE_LOG(ERR, KNI, "Invalid port id %d\n", port_id);
return -EINVAL;
}
RTE_LOG(INFO, KNI, "Configure network interface of %d %s\n",
port_id, if_up ? "up" : "down");
// if (if_up != 0) { /* Configure network interface up */
// rte_eth_dev_stop(port_id);
// ret = rte_eth_dev_start(port_id);
// } else /* Configure network interface down */
// rte_eth_dev_stop(port_id);
if (ret < 0)
RTE_LOG(ERR, KNI, "Failed to start port %d\n", port_id);
Question:
1. Where does the vEth0 ifname given to the ifconfig command, gets mapped
to the dpdk port_id 0 in the callback
thanks.
-aziz
===================================
# ifconfig vEth0
vEth0 Link encap:Ethernet HWaddr 00:00:00:00:00:00
BROADCAST MULTICAST MTU:1500 Metric:1
RX packets:13 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:3186 (3.1 KB) TX bytes:0 (0.0 B)
# ifconfig vEth0 192.16.1.1
# ifconfig vEth0
vEth0 Link encap:Ethernet HWaddr 90:e2:ba:5f:1a:64
inet addr:192.16.1.1 Bcast:192.16.1.255 Mask:255.255.255.0
inet6 addr: fe80::92e2:baff:fe5f:1a64/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:13 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:37 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:3186 (3.1 KB) TX bytes:0 (0.0 B)
On Mon, Jan 12, 2015 at 3:24 AM, Bruce Richardson <
bruce.richardson-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org> wrote:
> On Fri, Jan 09, 2015 at 05:20:26PM -0800, Aziz Hajee wrote:
> > I am using the dpdk1.6.0r1
> > The rte_kni.lo is loaded:
> > lsmod | grep kni
> > rte_kni 279134 1
> >
> > however, the ifconfig vEth0, and vEth1 does not show link up ?
> > How do i get the operational state up for these interfaces.
> > $ sudo tcpdump -i vEth0
> > tcpdump: vEth0: That device is not up
> >
> > ifconfig vEth0
> > vEth0 Link encap:Ethernet HWaddr 00:00:00:00:00:00
> > BROADCAST MULTICAST MTU:1500 Metric:1
> > RX packets:12 errors:0 dropped:0 overruns:0 frame:0
> > TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
> > collisions:0 txqueuelen:1000
> > RX bytes:3388 (3.3 KB) TX bytes:0 (0.0 B)
> >
> > ifconfig vEth1
> > vEth1 Link encap:Ethernet HWaddr 00:00:00:00:00:00
> > BROADCAST MULTICAST MTU:1500 Metric:1
> > RX packets:60 errors:0 dropped:0 overruns:0 frame:0
> > TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
> > collisions:0 txqueuelen:1000
> > RX bytes:10252 (10.2 KB) TX bytes:0 (0.0 B)
> >
> > These KNI interfaces are created as per dmeg below from the CREATE IOCTL.
> > sudo ifconfig vEth0 192.168.0.11 netmask 255.255.0.0
> > SIOCSIFFLAGS: Timer expired
> > aziz@fast-1
> :~/stm15-0108/stm/dpdk/dpdk-1.6.0r1_ss/lib/librte_eal/linuxapp/kni$
> > ifconfig vEth0
> > vEth0 Link encap:Ethernet HWaddr 90:e2:ba:5f:1a:64
> > inet addr:192.168.0.11 Bcast:192.168.255.255 Mask:255.255.0.0
> > BROADCAST MULTICAST MTU:1500 Metric:1
> > RX packets:50 errors:0 dropped:0 overruns:0 frame:0
> > TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
> > collisions:0 txqueuelen:1000
> > RX bytes:14488 (14.4 KB) TX bytes:0 (0.0 B)
> >
> > Trying to set the vEth0 up, looks like it is doing the callback in the
> dpdk
> > to the corresponding PMD NIC interface, and not the vEth0 kernel
> interface.
> >
> With KNI, the actual underlying NIC interface is still under the control
> of the
> DPDK application. What happens is that any ethtool requests that go to the
> kernel
> driver, get passed into the userspace DPDK application to make the actual
> changes
> to the hardware port. Does DPDK itself report the port as being up?
>
> /Bruce
>
prev parent reply other threads:[~2015-01-15 0:59 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-01-10 1:20 KNI interface operational state UP issue Aziz Hajee
[not found] ` <CAFGSfknTNGabm_+2o7TTQE-HN-exXkGFzuNj83hDTDvwUSRwZw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-01-12 11:24 ` Bruce Richardson
2015-01-15 0:59 ` Aziz Hajee [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CAFGSfkkiu7NY5aQCT329K3WTA8cOaCYB8qd4w79aogrUtywGGA@mail.gmail.com \
--to=aziz-cir5nlulbpnqt0dzr+alfa@public.gmane.org \
--cc=bruce.richardson-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
--cc=dev-VfR2kkLFssw@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.