return EIO, not ENXIO, when the interface underneath ifq_deq_sleep dies.
authordlg <dlg@openbsd.org>
Tue, 18 Jan 2022 10:54:05 +0000 (10:54 +0000)
committerdlg <dlg@openbsd.org>
Tue, 18 Jan 2022 10:54:05 +0000 (10:54 +0000)
this is consistent with other drivers when they report their
underlying device being detached.

sys/net/ifq.c

index d61e593..cf3685a 100644 (file)
@@ -1,4 +1,4 @@
-/*     $OpenBSD: ifq.c,v 1.44 2021/07/09 01:22:05 dlg Exp $ */
+/*     $OpenBSD: ifq.c,v 1.45 2022/01/18 10:54:05 dlg Exp $ */
 
 /*
  * Copyright (c) 2015 David Gwynne <dlg@openbsd.org>
@@ -484,7 +484,7 @@ ifq_deq_sleep(struct ifqueue *ifq, struct mbuf **mp, int nbio, int priority,
                        if (error != 0)
                                break;
                        if (!(*alive)) {
-                               error = ENXIO;
+                               error = EIO;
                                break;
                        }
                }