[Bugfix] Format kernel-import errors eagerly so warning_once does not retain them (#54098)

Signed-off-by: Zeyu Wang <zwang86@users.noreply.github.com> Co-authored-by: Zeyu Wang <zwang86@users.noreply.github.com> Co-authored-by: mergify[bot] <37929162+mergify[bot]@users.noreply.github.com>

zwang86 committed Sep 15, 2026 at 13:35 UTC b6ce7143548a937b10764eaddfd03e459d0dab33
3 files changed +12 -6
vllm/platforms/cpu.py
+8 -4
@@ -605,26 +605,30 @@ class CpuPlatform(Platform):
605 try:
606 import vllm._C # noqa: F401
607 except ImportError as e:
608 - logger.warning_once("Failed to import from vllm._C: %r", e)
608 + logger.warning_once(
609 + "Failed to import from vllm._C: %s", repr(e)
610 + )
611 else:
612 try:
613 import vllm._C_AVX512 # noqa: F401
614 except ImportError as e:
615 if ignored_msg not in e.msg:
616 logger.warning_once(
615 - "Failed to import from vllm._C_AVX512: %r", e
617 + "Failed to import from vllm._C_AVX512: %s", repr(e)
618 )
619 else:
620 try:
621 import vllm._C_AVX2 # noqa: F401
622 except ImportError as e:
623 if ignored_msg not in e.msg:
622 - logger.warning_once("Failed to import from vllm._C_AVX2: %r", e)
624 + logger.warning_once(
625 + "Failed to import from vllm._C_AVX2: %s", repr(e)
626 + )
627 else:
628 try:
629 import vllm._C # noqa: F401
630 except ImportError as e:
627 - logger.warning_once("Failed to import from vllm._C: %r", e)
631 + logger.warning_once("Failed to import from vllm._C: %s", repr(e))
632
633 @classmethod
634 def pack_kv_cache(
vllm/platforms/cuda.py
+3 -1
@@ -239,7 +239,9 @@ class CudaPlatformBase(Platform):
239 try:
240 import vllm._C_stable_libtorch # noqa: F401
241 except ImportError as e:
242 - logger.warning_once("Failed to import from vllm._C_stable_libtorch: %r", e)
242 + logger.warning_once(
243 + "Failed to import from vllm._C_stable_libtorch: %s", repr(e)
244 + )
245 with contextlib.suppress(ImportError):
246 import vllm._moe_C_stable_libtorch # noqa: F401
247 with contextlib.suppress(ImportError):
vllm/platforms/interface.py
+1 -1
@@ -365,7 +365,7 @@ class Platform:
365 try:
366 import vllm._C # noqa: F401
367 except ImportError as e:
368 - logger.warning_once("Failed to import from vllm._C: %r", e)
368 + logger.warning_once("Failed to import from vllm._C: %s", repr(e))
369 with contextlib.suppress(ImportError):
370 import vllm._moe_C_stable_libtorch # noqa: F401
371