ACK: [SRU][J:linux-gcp/N:linux-gcp/Q:linux-gcp/R:linux-gcp][PATCH 0/1] Make idpf built-in

Tim Whisonant tim.whisonant at canonical.com
Thu Apr 9 20:49:41 UTC 2026


On Thu, Apr 09, 2026 at 04:21:58PM -0400, Ian Whitfield wrote:
> BugLink: https://bugs.launchpad.net/bugs/2144694
> 
> [ Impact ]
> 
> * On Google bare metal instances, cloud-init may fail to detect the correct
>   datasource during the local init stage if the kernel hasn’t initialized the
>   NIC in time. This can prevent metadata fetching and block SSH on first boot.
> 
> * Users of these instances may be unable to log in immediately after first
>   boot, breaking automated deployments, cloud-init-based provisioning, and
>   scripts relying on metadata.
> 
> * Including `IDPF` as built-in would minimize the race condition between cloud-
>   init local and the kernel initilizing the NIC, allowing the NIC to come
>   up early enough for cloud-init local to be able to successfully detect the
>   correct datasource.
> 
> [ Test Plan ]
> 
>  * 1. Launch a Questing c3-standard-192-metal machine on Google cloud.
> 
>  * 2. Wait several minutes after the instance reaches running, then attempt to
>       SSH into the instance. You will see this error:
>       Permission denied (publickey).
> 
>  * 3. Switch disks to one where the kernel has IDPF built-in
> 
>  * 4. Reboot the machine and check the following:
> 
>       * SSH works immediately
> 
>       * Check the journal logs with the following command:
>         journalctl -b 0 -o short-monotonic |
>         grep -E "cloud-init|idpf|enp5s0f0|wait-online"
> 
>       * In the journal logs, the NIC should come up before
>         cloud-init local finishes running
> 
>       * In the journal logs, the NIC should have LINK UP,
>         gained carrier, and DCHP aquired before Net device
>         info is printed
> 
>       * `cloud-init status --long` should show the
>          correct datasource (DataSourceGCELocal)
> 
> [ Where problems could occur ]
> 
>  * Making `IDPF` built-in does not address the underlying race condition between
>    cloud-init local and the kernel finishing NIC initialization. It simply
>    minimizes it enough to "fix" the issue as a temporary workaround.
> 
>  * Problems may occur if `IDPF` needs to support features that rely on loadable
>    drivers, such as RDMA.
> 
> [ Other Info ]
> 
>  * We can try and revisit modularization once the cloud-init first-boot races
>    are fully resolved.
> 
> cloud-init bug: https://github.com/canonical/cloud-init/issues/6737
> 
> SF: 00424355
> 
> 
> 
> Ian Whitfield (1):
>   UBUNTU: [Config] gcp: Make idpf built-in
> 
>  debian.gcp/config/annotations | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> -- 
> 2.43.0
> 

Acked-by: Tim Whisonant <tim.whisonant at canonical.com>



More information about the kernel-team mailing list