aboutsummaryrefslogtreecommitdiff
path: root/sys/dev/firewire/firewire.c
diff options
context:
space:
mode:
authorHidetoshi Shimokawa <simokawa@FreeBSD.org>2003-04-30 10:20:24 +0000
committerHidetoshi Shimokawa <simokawa@FreeBSD.org>2003-04-30 10:20:24 +0000
commit16dbbeec744275d8d81435ad4c98a6534e987dc8 (patch)
treec4838c6990f3bc361fde181153dddf11c67c82e8 /sys/dev/firewire/firewire.c
parentf7fa0cbd70e02ecb0c1775218703454d7207dedd (diff)
Notes
Diffstat (limited to 'sys/dev/firewire/firewire.c')
-rw-r--r--sys/dev/firewire/firewire.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/sys/dev/firewire/firewire.c b/sys/dev/firewire/firewire.c
index 853c586ba5222..7875d60daebc8 100644
--- a/sys/dev/firewire/firewire.c
+++ b/sys/dev/firewire/firewire.c
@@ -1357,23 +1357,20 @@ fw_bus_explore_callback(struct fw_xfer *xfer)
if(xfer->resp != 0){
printf("node%d: resp=%d addr=0x%x\n",
fc->ongonode, xfer->resp, fc->ongoaddr);
- fc->retry_count++;
- goto nextnode;
+ goto errnode;
}
if(xfer->send.buf == NULL){
printf("node%d: send.buf=NULL addr=0x%x\n",
fc->ongonode, fc->ongoaddr);
- fc->retry_count++;
- goto nextnode;
+ goto errnode;
}
sfp = (struct fw_pkt *)xfer->send.buf;
if(xfer->recv.buf == NULL){
printf("node%d: recv.buf=NULL addr=0x%x\n",
fc->ongonode, fc->ongoaddr);
- fc->retry_count++;
- goto nextnode;
+ goto errnode;
}
rfp = (struct fw_pkt *)xfer->recv.buf;
#if 0
@@ -1482,6 +1479,10 @@ nextaddr:
fw_xfer_free( xfer);
fw_bus_explore(fc);
return;
+errnode:
+ fc->retry_count++;
+ if (fc->ongodev != NULL)
+ fc->ongodev->status = FWDEVINVAL;
nextnode:
fw_xfer_free( xfer);
fc->ongonode++;