From 99b57140373dd8d7a1e565611c8a2e2dab24eca8 Mon Sep 17 00:00:00 2001 From: Christian Pointner Date: Thu, 21 May 2020 21:01:06 +0200 Subject: improved intel stability fix --- roles/base/tasks/Debian.yml | 17 ++--------------- roles/base/tasks/intel-nic.yml | 23 +++++++++++++++++++++++ 2 files changed, 25 insertions(+), 15 deletions(-) create mode 100644 roles/base/tasks/intel-nic.yml (limited to 'roles') diff --git a/roles/base/tasks/Debian.yml b/roles/base/tasks/Debian.yml index 7551670f..13c3c9f9 100644 --- a/roles/base/tasks/Debian.yml +++ b/roles/base/tasks/Debian.yml @@ -111,19 +111,6 @@ when: install is defined and install.kernel_cmdline is defined notify: update grub -- name: disable TSO (intel nic stability fix) +- name: apply stability fix/workaround for machines using intel NIC when: base_intel_nic_stability_fix - copy: - # TODO: copy settings from /usr/lib/systemd/network/99-default.link - content: | - [Match] - MACAddress={{ ansible_default_ipv4.macaddress }} - - [Link] - NamePolicy=keep kernel database onboard slot path - MACAddressPolicy=persistent - - TCPSegmentationOffload=false - GenericSegmentationOffload=false - GenericReceiveOffload=false - dest: /etc/systemd/network/00-disable-offloading.link + import_tasks: intel-nic.yml diff --git a/roles/base/tasks/intel-nic.yml b/roles/base/tasks/intel-nic.yml new file mode 100644 index 00000000..2b9be474 --- /dev/null +++ b/roles/base/tasks/intel-nic.yml @@ -0,0 +1,23 @@ +--- +- name: fetch default link options for network interfaces + slurp: + src: /usr/lib/systemd/network/99-default.link + register: base_systemd_default_link_unit + +- name: disable TSO (intel nic stability fix) + vars: + default_link_options: "{{ (base_systemd_default_link_unit.content | b64decode | from_ini)['Link'] }}" + copy: + content: | + [Match] + MACAddress={{ ansible_default_ipv4.macaddress }} + + [Link] + {% for name, value in default_link_options.items() | sort(attribute='0') %} + {{ name }}={{ value }} + {% endfor %} + + TCPSegmentationOffload=false + GenericSegmentationOffload=false + GenericReceiveOffload=false + dest: /etc/systemd/network/00-disable-offloading.link -- cgit v1.2.3