diff --git a/sys/dev/random/ivy.c b/sys/dev/random/ivy.c
index 57f3d0a1d80b..71065d788cf9 100644
--- a/sys/dev/random/ivy.c
+++ b/sys/dev/random/ivy.c
@@ -97,6 +97,13 @@ x86_rdseed_store(u_long *buf)
 	return (retry);
 }
 
+static int
+x86_dead_store(u_long *buf __unused)
+{
+
+	panic("missing hardware PRNG support");
+}
+
 DEFINE_IFUNC(static, int, x86_rng_store, (u_long *buf), static)
 {
 	has_rdrand = (cpu_feature2 & CPUID2_RDRAND);
@@ -107,7 +114,7 @@ DEFINE_IFUNC(static, int, x86_rng_store, (u_long *buf), static)
 	else if (has_rdrand)
 		return (x86_rdrand_store);
 	else
-		return (NULL);
+		return (x86_dead_store);
 }
 
 /* It is required that buf length is a multiple of sizeof(u_long). */
