diff --git a/ansible/roles/OFED/files/90-nvidia-cx6-enable-dropless-rq.rules b/ansible/roles/OFED/files/90-nvidia-cx6-enable-dropless-rq.rules new file mode 100755 index 00000000..fef65516 --- /dev/null +++ b/ansible/roles/OFED/files/90-nvidia-cx6-enable-dropless-rq.rules @@ -0,0 +1 @@ +ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x15b3", ATTR{device}=="0x101d", RUN+="/usr/local/sbin/enable_dropless_rq.sh %k" diff --git a/ansible/roles/OFED/files/enable_dropless_rq.sh b/ansible/roles/OFED/files/enable_dropless_rq.sh new file mode 100755 index 00000000..aece74a7 --- /dev/null +++ b/ansible/roles/OFED/files/enable_dropless_rq.sh @@ -0,0 +1,9 @@ +#!/bin/bash + +PCI_ADDRESS=$1 + +# Find network interface name associated with the given PCI address +NET_INTERFACE=$(basename /sys/bus/pci/devices/${PCI_ADDRESS}/net/*) + +# Enable dropless_rq feature +/sbin/ethtool --set-priv-flags ${NET_INTERFACE} dropless_rq on diff --git a/ansible/roles/OFED/tasks/main.yml b/ansible/roles/OFED/tasks/main.yml index 39bb545d..4d946cae 100644 --- a/ansible/roles/OFED/tasks/main.yml +++ b/ansible/roles/OFED/tasks/main.yml @@ -103,3 +103,19 @@ mode: "0755" remote_src: yes ###### end ###### + +###### Enable dropless rq ###### +- name: "Set the udev rule" + copy: + src: "/tmp/mft/90-nvidia-cx6-enable-dropless-rq.rules" + dest: "/usr/lib/udev/rules.d/90-nvidia-cx6-enable-dropless-rq.rules" + mode: "0644" + remote_src: yes + +- name: "Copy the 'enable_dropless_rq.sh' " + copy: + src: "/tmp/mft/enable_dropless_rq.sh" + dest: "/usr/local/sbin/enable_dropless_rq.sh" + mode: "0755" + remote_src: yes +###### end ###### \ No newline at end of file