Skip to content

Commit

Permalink
Add submodule dpdk
Browse files Browse the repository at this point in the history
  • Loading branch information
hibitomo committed Jan 17, 2016
1 parent 5cd6fbf commit cfe2796
Show file tree
Hide file tree
Showing 63 changed files with 3,484 additions and 4,178 deletions.
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
[submodule "src/dpdk"]
path = src/dpdk
url = http://dpdk.org/git/dpdk
6 changes: 5 additions & 1 deletion Makefile.in
Original file line number Diff line number Diff line change
Expand Up @@ -16,8 +16,11 @@ DIRS = tools \

include $(MKRULESDIR)/rules.mk

clean::
install:: dpdk-install

clean:: dpdk-clean
$(RM) -r autom4te.cache config.log
$(RM) -f src/config/lagosh/lagosh.py
find . -type f \( \
-name '*~' -o \
-name 'core' -o \
Expand All @@ -26,6 +29,7 @@ clean::
\) -exec rm -f {} \;

distclean:: clean
$(RM) -r ./src/dpdk/* ./src/dpdk/.git*
$(RM) config.* mk/vars.mk mk/doxygen.conf ./libtool
find . -type f \( \
-name '.depend' \
Expand Down
52 changes: 15 additions & 37 deletions QUICKSTART.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,53 +4,31 @@ Quick Start
Software Installation
--------------------------

### Intel DPDK install
You should install Intel DPDK before Lagopus vswitch compilation.
### Lagopus vswitch installation

Install necessary packages

```
$ sudo apt-get install make coreutils gcc binutils
```

Install kernel headers

```
$ sudo apt-get install linux-headers-`uname -r`
$ sudo apt-get install build-essential libexpat-dev libgmp-dev \
libssl-dev libpcap-dev byacc flex git \
python-dev python-pastedeploy python-paste python-twisted
```

Get Intel DPDK 1.8.0 and extract Intel DPDK zip file

```
$ wget http://dpdk.org/browse/dpdk/snapshot/dpdk-1.8.0.zip
$ unzip dpdk-1.8.0.zip
```
Compile vswitch

Compile
* DPDK version

```
$ export RTE_SDK=<Absolute Path of Intel DPDK>
$ export RTE_TARGET="x86_64-native-linuxapp-gcc"
$ make config T=${RTE_TARGET}
$ cd lagopus
$ ./configure
$ make
```

### Lagopus vswitch installation

Install necessary packages

```
$ sudo apt-get install build-essential libgmp-dev \
libssl-dev libpcap-dev byacc flex
```

Compile vswitch

In configure phase, you must speicify Intel DPDK option with abosolute path in which you installed
* raw socket version

```
$ cd lagopus
$ ./configure --with-dpdk-dir=${RTE_SDK}
$ ./configure --disable-dpdk
$ make
```

Expand Down Expand Up @@ -93,8 +71,8 @@ Loading the kernel module

```
$ sudo modprobe uio
$ sudo insmod ${RTE_SDK}/build/kmod/igb_uio.ko
$ sudo insmod ${RTE_SDK}/build/kmod/rte_kni.ko
$ sudo insmod ./src/dpdk/build/kmod/igb_uio.ko
$ sudo insmod ./src/dpdk/build/kmod/rte_kni.ko
```


Expand Down Expand Up @@ -129,7 +107,7 @@ Check PCI ID to enable DPDK on 2nd, 3rd, and 4th NIC.
If NIC used for management (ex: ssh) was selected, you will lose connection.

```
$ sudo ${RTE_SDK}/tools/dpdk_nic_bind.py --status
$ sudo ./src/dpdk/tools/dpdk_nic_bind.py --status
Network devices using IGB_UIO driver
====================================
Expand All @@ -151,11 +129,11 @@ If NIC used for management (ex: ssh) was selected, you will lose connection.
Unbound NICs from ixgbe driver.

```
$ sudo ${RTE_SDK}/tools/dpdk_nic_bind.py --bind=igb_uio 0000:02:02.0 0000:02:03.0 0000:02:04.0
$ sudo ./src/dpdk/tools/dpdk_nic_bind.py --bind=igb_uio 0000:02:02.0 0000:02:03.0 0000:02:04.0
Check the current status of NICs whehter the 2nd, 3rd and 4th interface is registerd with igb_uio driver
$ sudo ${RTE_SDK}/tools/dpdk_nic_bind.py --status
$ sudo ./src/dpdk/tools/dpdk_nic_bind.py --status
Network devices using IGB_UIO driver
====================================
Expand Down
Loading

0 comments on commit cfe2796

Please sign in to comment.