Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package google-guest-configs for 
openSUSE:Factory checked in at 2026-05-04 17:24:26
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/google-guest-configs (Old)
 and      /work/SRC/openSUSE:Factory/.google-guest-configs.new.30200 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "google-guest-configs"

Mon May  4 17:24:26 2026 rev:42 rq:1350664 version:20260428.00

Changes:
--------
--- 
/work/SRC/openSUSE:Factory/google-guest-configs/google-guest-configs.changes    
    2026-04-01 19:54:39.411172035 +0200
+++ 
/work/SRC/openSUSE:Factory/.google-guest-configs.new.30200/google-guest-configs.changes
     2026-05-04 17:24:42.431377614 +0200
@@ -1,0 +2,8 @@
+Mon May  4 09:19:49 UTC 2026 - John Paul Adrian Glaubitz 
<[email protected]>
+
+- Update to version 20260428.00
+  * gce-nic-naming: optimize runtime performance
+- from version 20260401.00
+  * set_multiqueue: Consider c4n a "multinic accelerator"
+
+-------------------------------------------------------------------

Old:
----
  google-guest-configs-20260306.00.tar.gz

New:
----
  google-guest-configs-20260428.00.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ google-guest-configs.spec ++++++
--- /var/tmp/diff_new_pack.sOb8vn/_old  2026-05-04 17:24:44.059444428 +0200
+++ /var/tmp/diff_new_pack.sOb8vn/_new  2026-05-04 17:24:44.063444592 +0200
@@ -23,7 +23,7 @@
 %define _udevdir %(pkg-config --variable udev_dir udev)
 %endif
 Name:           google-guest-configs
-Version:        20260306.00
+Version:        20260428.00
 Release:        0
 Summary:        Google Cloud Guest Configs
 License:        Apache-2.0

++++++ google-guest-configs-20260306.00.tar.gz -> 
google-guest-configs-20260428.00.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/guest-configs-20260306.00/src/usr/bin/gce-nic-naming 
new/guest-configs-20260428.00/src/usr/bin/gce-nic-naming
--- old/guest-configs-20260306.00/src/usr/bin/gce-nic-naming    2026-03-06 
03:42:57.000000000 +0100
+++ new/guest-configs-20260428.00/src/usr/bin/gce-nic-naming    2026-04-28 
02:33:43.000000000 +0200
@@ -22,8 +22,8 @@
 readonly LOG_TAG=${LOG_TAG:-"gce-nic-naming_$$"}
 
 # Path to the PCI bus devices
-declare PCI_BUS_PATH='/sys/bus/pci/devices'
-declare SYS_PREPEND_PATH='/sys'
+declare PCI_BUS_PATH="${GCE_NIC_NAMING_FAKEROOT:-}/sys/bus/pci/devices"
+declare SYS_PREPEND_PATH="${GCE_NIC_NAMING_FAKEROOT:-}/sys"
 # 0x8086:0x145c is the vendor and device ID for Intel IDPF VF
 # 0x8086:0x1452 is the vendor and device ID for Intel NIC
 readonly ETHERNET_DEVICES_VENDORS=('8086:145c' '8086:1452')
@@ -163,9 +163,12 @@
   # Walks the pci device bus and looks for any relevant devices
   for pci_device in ${paths}; do
     # Example: 0000:00:04.0
-    local -i int_id=$(get_id_from_path "${pci_device}")
-    local vendor=$(cat "${pci_device}/vendor")
-    local device=$(cat "${pci_device}/device")
+    local -i int_id
+    get_id_from_path "${pci_device}" int_id
+    local vendor
+    local device
+    read vendor < "${pci_device}/vendor"
+    read device < "${pci_device}/device"
     vendor="${vendor#0x}"
     device="${device#0x}"
     device_id="${vendor}:${device}"
@@ -321,17 +324,17 @@
   # 
DEVPATH=/devices/pci0000:88/0000:88:00.0/0000:89:00.0/0000:8a:03.0/0000:8e:00.0/net/eth9
   # Last part of the path is the ID. (00008e000)
   local path=$1
-  #local path_id=$(echo "${path}" | grep -oe "${PCI_ID_REGEX}" | tail -1 )
-  # Use bash built in regex to get all values matching the PCI ID pattern
-  local path_id=$(while [[ $path =~ $PCI_ID_REGEX ]]; do
-    echo "${BASH_REMATCH[0]}"
+  local -n result_var=$2
+  # Use bash built in regex to find the last value matching the PCI ID pattern.
+  local path_id=""
+  while [[ $path =~ $PCI_ID_REGEX ]]; do
+    path_id="${BASH_REMATCH[0]}"
     path="${path#*${BASH_REMATCH[0]}}"
-  done | tail -n 1 )
+  done
 
   # Bash replacement does not work with the regex values
   local hex_id="${path_id//[:.]/}"
-  local -i int_id="$((0x$hex_id))"
-  echo ${int_id}
+  result_var="$((0x$hex_id))"
 }
 
 ################################
@@ -590,7 +593,8 @@
   local -i int_id=$1
   local vf_path=$2
   local physfn_path=$3
-  local -i physfn_int_id=$(get_id_from_path "${physfn_path}")
+  local -i physfn_int_id
+  get_id_from_path "${physfn_path}" physfn_int_id
 
   local vf_vendor=$(cat "${vf_path}/device/vendor")
   local vf_device=$(cat "${vf_path}/device/device")
@@ -634,7 +638,8 @@
 ###############################
 function generate_name() {
   local device_path=$1
-  local -i int_id=$(get_id_from_path "${device_path}")
+  local -i int_id
+  get_id_from_path "${device_path}" int_id
   debug "Path discovered int_id: ${int_id}"
 
   # Pass the array of keys to find index of this device
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/guest-configs-20260306.00/src/usr/bin/google_set_multiqueue 
new/guest-configs-20260428.00/src/usr/bin/google_set_multiqueue
--- old/guest-configs-20260306.00/src/usr/bin/google_set_multiqueue     
2026-03-06 03:42:57.000000000 +0100
+++ new/guest-configs-20260428.00/src/usr/bin/google_set_multiqueue     
2026-04-28 02:33:43.000000000 +0200
@@ -67,6 +67,7 @@
   local -r nic="$1"
   local bind_cores_index="$2"
   local irq_ranges=("${@:3}")
+  local irq_ranges_len=${#irq_ranges[@]}
 
   # The user may not have this $nic configured on their VM, if not, just skip
   # it, no need to error out.
@@ -87,17 +88,21 @@
   done
   local num_irqs=${#actual_irqs[@]}
   for ((i=0; i<num_irqs; i+=1)); do
-    core="${irq_ranges[${bind_cores_index}]}"
+    local wrapped_index=$(( bind_cores_index % irq_ranges_len ))
+    core="${irq_ranges[${wrapped_index}]}"
     echo "Setting irq binding for "$nic" to core ${actual_irqs[$i]} to 
"${core} >&2
     echo "${core}" > "${ROOT_DIR}proc/irq/${actual_irqs[$i]}/smp_affinity_list"
     bind_cores_index=$((bind_cores_index + 1))
   done
+
+  echo "$bind_cores_index"
 }
 
 function set_irq_range_gve() {
   local -r nic="$1"
   local bind_cores_index="$2"
   local irq_ranges=("${@:3}")
+  local irq_ranges_len=${#irq_ranges[@]}
 
   # The user may not have this $nic configured on their VM, if not, just skip
   # it, no need to error out.
@@ -121,7 +126,8 @@
 
     # Only allocate $num_q cores to the IRQs and queues. If the number of IRQs
     # is more than that of queues, the CPUs will be wrapped around.
-    core="${irq_ranges[${bind_cores_index}]}"
+    local wrapped_index=$(( bind_cores_index % irq_ranges_len ))
+    core="${irq_ranges[${wrapped_index}]}"
     ((bind_cores_index++))
 
     # this is GVE's TX irq. See gve_tx_idx_to_ntfy().
@@ -179,6 +185,7 @@
   || "$machine_type" == *"a4-highgpu-"* \
   || "$machine_type" == *"a4x-highgpu-"* \
   || "$machine_type" == *"a4x-maxgpu-"* \
+  || "$machine_type" == *"c4n-"* \
   || "$machine_type" == *"c4x-"* ]] || return 1
   return 0
 }

Reply via email to