Skip to content

Instantly share code, notes, and snippets.

@vdm
Last active November 28, 2019 21:35
Show Gist options
  • Save vdm/6af55e1a568de0b61882 to your computer and use it in GitHub Desktop.
Save vdm/6af55e1a568de0b61882 to your computer and use it in GitHub Desktop.
ixgbevf 2.16.1 upgrade for AWS EC2 SR-IOV "Enhanced Networking" on Ubuntu 14.04 (Trusty) LTS
ssh [email protected] "bash -s -x" -- <ixgbevf-upgrade.sh
# https://gist.github.com/CBarraford/8850424
mkdir work
cd work
wget http://sourceforge.net/projects/e1000/files/ixgbevf%20stable/2.16.1/ixgbevf-2.16.1.tar.gz
tar zxf ixgbevf-2.16.1.tar.gz
# https://gist.github.com/defila-aws/44946d3a3c0874fe3d17
curl -L -O https://gist.github.com/defila-aws/44946d3a3c0874fe3d17/raw/af64c3c589811a0d214059d1e4fd220a96eaebb3/patch-ubuntu_14.04.1-ixgbevf-2.16.1-kcompat.h.patch
cd ixgbevf-2.16.1/src
patch -p5 <../../patch-ubuntu_14.04.1-ixgbevf-2.16.1-kcompat.h.patch
sudo su
aptitude install -y build-essential
make install
modprobe ixgbevf
update-initramfs -c -k all
echo "options ixgbevf InterruptThrottleRate=1,1,1,1,1,1,1,1" > /etc/modprobe.d/ixgbevf.conf
cd ../../..
rm -Rf work
reboot
@defila-aws
Copy link

Hello,

I went ahead and updated the patch file so that it includes the newline at the end. Hopefully this resolves the error that you were running into.

The new raw file is:
https://gist.githubusercontent.com/defila-aws/44946d3a3c0874fe3d17/raw/18e8d8eb53364ab3dea9028c0aa06a3c05dea7b6/patch-ubuntu_14.04.1-ixgbevf-2.16.1-kcompat.h.patch

-Andrew D.

@doapp-ryanp
Copy link

Thanks for this. I prefer to leverage dkms to auto handle rebuilds on kernel updates. Here are the steps I did. Here are some docs from AWS that explain a bit in detail.

wget http://sourceforge.net/projects/e1000/files/ixgbevf%20stable/2.16.1/ixgbevf-2.16.1.tar.gz
tar zxf ixgbevf-2.16.1.tar
mv ixgbevf-2.16.1 /usr/src/
cd /usr/src/ixgbevf-2.16.1
nano dkms.conf #change version - @see http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/enhanced-networking.html#enhanced-networking-ubuntu
curl -L -O https://gist.githubusercontent.com/defila-aws/44946d3a3c0874fe3d17/raw/18e8d8eb53364ab3dea9028c0aa06a3c05dea7b6/patch-ubuntu_14.04.1-ixgbevf-2.16.1-kcompat.h.patch
cd src
patch -p5 < ../patch-ubuntu_14.04.1-ixgbevf-2.16.1-kcompat.h.patch
dkms add -m ixgbevf -v 2.16.1
dkms build -m ixgbevf -v 2.16.1
dkms install -m ixgbevf -v 2.16.1
update-initramfs -c -k all
#stop instance, enable: aws ec2 modify-instance-attribute --instance-id i-xxx --sriov-net-support simple
#create ami then startup instance, verify via:
#aws ec2 describe-image-attribute --image-id ami-xxx --attribute sriovNetSupport
#verify from inside instance via: 
ethtool -i eth0 | grep ixgbevf
#DONE

@montaro
Copy link

montaro commented Aug 6, 2015

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment