Install linux-modules-extra-$(uname -r) for TF DPDK
linux-modules-extra-$(uname -r) is required for TF DPDK as
it provides uio_pci_generic module, which is a default driver
for TF DPDK
Related-PROD: PRODX-3811
Change-Id: I649ccb4ff90e620f907bd0cece82b029d1686040
diff --git a/de/heat-templates/fragments/SrvInstancesVMCephOSD.yaml b/de/heat-templates/fragments/SrvInstancesVMCephOSD.yaml
index 3427b56..fd68609 100644
--- a/de/heat-templates/fragments/SrvInstancesVMCephOSD.yaml
+++ b/de/heat-templates/fragments/SrvInstancesVMCephOSD.yaml
@@ -132,6 +132,7 @@
$tunnel_interface_ip: { get_attr: [tun_server_port, fixed_ips, 0, ip_address] }
$ironic_mt_enabled: { get_param: ironic_mt_enabled }
$huge_pages: { get_param: huge_pages }
+ $tungstenfabric_enabled: { get_param: tungstenfabric_enabled }
inject_files:
type: "OS::Heat::CloudConfig"
diff --git a/de/heat-templates/scripts/instance_boot.sh b/de/heat-templates/scripts/instance_boot.sh
index dae11d4..2642180 100644
--- a/de/heat-templates/scripts/instance_boot.sh
+++ b/de/heat-templates/scripts/instance_boot.sh
@@ -38,6 +38,7 @@
IRONIC_BAREMETAL_NETWORK_PREFIX=$(sed 's/[0-9]*\/[0-9]*$//' <<< $IRONIC_BAREMETAL_NETWORK)
IRONIC_BAREMETAL_TUNNEL_NETWORK_PREFIX=$(sed 's/[0-9]*\/[0-9]*$//' <<< $IRONIC_BAREMETAL_TUNNEL_NETWORK)
HUGE_PAGES=$huge_pages
+TUNGSTENFABRIC_ENABLED=$tungstenfabric_enabled
#
# End of block
#
@@ -78,6 +79,7 @@
CONFIGURE_HUGE_PAGES=true
TUNNEL_INTERFACE_NETPLAN_MANAGE=false
fi
+TUNGSTENFABRIC_ENABLED=${TUNGSTENFABRIC_ENABLED:-false}
function retry {
local retries=$1
@@ -138,6 +140,10 @@
if [[ "${CONFIGURE_HUGE_PAGES}" == true ]]; then
pkg_list="$pkg_list dpdk-igb-uio-dkms"
+ # linux-image-extra-$(uname -r) provides uio_pci_generic module, used by TF DPDK as default driver
+ if [[ "${TUNGSTENFABRIC_ENABLED,,}" == true ]]; then
+ pkg_list="$pkg_list linux-modules-extra-$(uname -r)"
+ fi
fi
function install_retry {
apt update