blob: 321f2f64f2844624371a3a7ca72beb930ddb4d5d (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
|
---
# file: roles/aws/tasks/main.yaml
- name: Edit repositories
include_tasks: "{{ ansible_distribution|lower }}_{{ ansible_distribution_release }}.yaml"
tags:
- aws-edit-repo
- name: Get vfio-pci With WC Patcher
ansible.builtin.get_url:
url: "https://github.com/amzn/amzn-drivers/raw/master/userspace/dpdk/enav2-vfio-patch/get-vfio-with-wc.sh"
dest: "/opt/get-vfio-with-wc.sh"
mode: "744"
tags:
- aws-vfio-patch
- name: Create vfio-pci Patch Directory
ansible.builtin.file:
path: "/opt/patches/"
state: "directory"
tags:
- aws-vfio-patch
- name: Get vfio-pci WC Patch >=5.15
ansible.builtin.get_url:
url: "https://github.com/amzn/amzn-drivers/raw/master/userspace/dpdk/enav2-vfio-patch/patches/linux-5.15-vfio-wc.patch"
dest: "/opt/patches/linux-5.15-vfio-wc.patch"
mode: "744"
tags:
- aws-vfio-patch
- name: Patch WC Patch Script
ansible.builtin.lineinfile:
path: "/opt/get-vfio-with-wc.sh"
regexp: '^ rm -f linux-'
line: " rm -f linux-*.dsc linux-*.gz linux-*.xz"
tags:
- aws-vfio-patch
- name: Patch WC Patch Script II
ansible.builtin.replace:
path: "/opt/get-vfio-with-wc.sh"
regexp: 'linux-image-'
replace: 'linux-image-unsigned-'
tags:
- aws-vfio-patch
#- name: Compile vfio-pci With WC Patch
# ansible.builtin.shell: "/bin/bash /opt/get-vfio-with-wc.sh"
# environment:
# DEBIAN_FRONTEND: "noninteractive"
# TERM: "vt100"
# tags:
# - aws-vfio-patch
- name: Load Kernel Modules By Default
ansible.builtin.lineinfile:
path: "/etc/modules"
state: "present"
line: "{{ item }}"
with_items:
- "vfio-pci"
- "igb_uio"
tags:
- aws-load-kernel-modules
- name: Add Kernel Modules Options (igb_uio)
ansible.builtin.lineinfile:
path: "/etc/modprobe.d/igb_uio.conf"
state: "present"
line: "{{ item }}"
create: "yes"
with_items:
- "options igb_uio wc_activate=1"
tags:
- aws-load-kernel-modules
- name: Add Kernel Modules Options (vfio-pci)
ansible.builtin.lineinfile:
path: "/etc/modprobe.d/vfio-noiommu.conf"
state: "present"
line: "{{ item }}"
create: "yes"
with_items:
- "options vfio enable_unsafe_noiommu_mode=1"
tags:
- aws-load-kernel-modules
- name: Reload systemd-modules
ansible.builtin.systemd:
name: "systemd-modules-load"
state: "restarted"
tags:
- aws-reload-systemd-modules
- name: Adjust nr_hugepages
ansible.builtin.sysctl:
name: "vm.nr_hugepages"
value: "8192"
state: "present"
sysctl_file: "/etc/sysctl.d/90-csit.conf"
reload: "yes"
tags:
- aws-set-hugepages
- name: Shutdown host with delay
ansible.builtin.command: "/sbin/shutdown -P +720"
tags:
- aws-set-self-terminate
|