summaryrefslogtreecommitdiffstats
path: root/src/arch/i386/drivers/net/undinet.c
diff options
context:
space:
mode:
authorMichael Brown2014-05-03 14:00:02 +0200
committerMichael Brown2014-05-03 20:52:10 +0200
commit277f581ac343b506032d608ac8dfcf8b38a38d2f (patch)
tree01d0210399aba15e7cc92c97d3c96fd8946bfd05 /src/arch/i386/drivers/net/undinet.c
parent[undi] Profile transmit and receive datapaths (diff)
downloadipxe-277f581ac343b506032d608ac8dfcf8b38a38d2f.tar.gz
ipxe-277f581ac343b506032d608ac8dfcf8b38a38d2f.tar.xz
ipxe-277f581ac343b506032d608ac8dfcf8b38a38d2f.zip
[undi] Report any PXENV_UNDI_ISR errors via netdev_rx_err()
Signed-off-by: Michael Brown <mcb30@ipxe.org>
Diffstat (limited to 'src/arch/i386/drivers/net/undinet.c')
-rw-r--r--src/arch/i386/drivers/net/undinet.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/arch/i386/drivers/net/undinet.c b/src/arch/i386/drivers/net/undinet.c
index f83d4931..4a0c9466 100644
--- a/src/arch/i386/drivers/net/undinet.c
+++ b/src/arch/i386/drivers/net/undinet.c
@@ -370,8 +370,10 @@ static void undinet_poll ( struct net_device *netdev ) {
profile_start ( &undinet_isr_call_profiler );
if ( ( rc = pxeparent_call ( undinet_entry, PXENV_UNDI_ISR,
&undi_isr,
- sizeof ( undi_isr ) ) ) != 0 )
+ sizeof ( undi_isr ) ) ) != 0 ) {
+ netdev_rx_err ( netdev, NULL, rc );
break;
+ }
profile_stop ( &undinet_isr_call_profiler );
switch ( undi_isr.FuncFlag ) {
case PXENV_UNDI_ISR_OUT_TRANSMIT: