break;
                case WA_SEG_ERROR:
                        xfer->result = seg->result;
-                       dev_dbg(dev, "xfer %p ID %08X#%u: ERROR result %zu(0x%08zX)\n",
+                       dev_dbg(dev, "xfer %p ID %08X#%u: ERROR result %zi(0x%08zX)\n",
                                xfer, wa_xfer_id(xfer), seg->index, seg->result,
                                seg->result);
                        goto out;
                case WA_SEG_ABORTED:
                        xfer->result = seg->result;
-                       dev_dbg(dev, "xfer %p ID %08X#%u: ABORTED result %zu(0x%08zX)\n",
+                       dev_dbg(dev, "xfer %p ID %08X#%u: ABORTED result %zi(0x%08zX)\n",
                                xfer, wa_xfer_id(xfer), seg->index, seg->result,
                                seg->result);
                        goto out;
        }
        if (usb_status & 0x80) {
                seg->result = wa_xfer_status_to_errno(usb_status);
-               dev_err(dev, "DTI: xfer %p#:%08X:%u failed (0x%02x)\n",
+               dev_err(dev, "DTI: xfer %p 0x%08X:#%u failed (0x%02x)\n",
                        xfer, xfer->id, seg->index, usb_status);
                seg->status = ((usb_status & 0x7F) == WA_XFER_STATUS_ABORTED) ?
                        WA_SEG_ABORTED : WA_SEG_ERROR;
                        }
                } else {
                        rpipe = xfer->ep->hcpriv;
-                       dev_dbg(dev, "xfer %p#%u: data in done (%zu bytes)\n",
-                               xfer, seg->index, seg->result);
+                       dev_dbg(dev,
+                               "xfer %p 0x%08X#%u: data in done (%zu bytes)\n",
+                               xfer, wa_xfer_id(xfer), seg->index,
+                               seg->result);
                        rpipe_ready = rpipe_avail_inc(rpipe);
                        done = __wa_xfer_mark_seg_as_done(xfer, seg,
                                        WA_SEG_DONE);
                spin_lock_irqsave(&xfer->lock, flags);
                rpipe = xfer->ep->hcpriv;
                if (printk_ratelimit())
-                       dev_err(dev, "xfer %p#%u: data in error %d\n",
-                               xfer, seg->index, urb->status);
+                       dev_err(dev, "xfer %p 0x%08X#%u: data in error %d\n",
+                               xfer, wa_xfer_id(xfer), seg->index,
+                               urb->status);
                if (edc_inc(&wa->nep_edc, EDC_MAX_ERRORS,
                            EDC_ERROR_TIMEFRAME)){
                        dev_err(dev, "DTO: URB max acceptable errors "
                                        xfer_result->hdr.bNotifyType);
                                break;
                        }
+                       xfer_id = le32_to_cpu(xfer_result->dwTransferID);
                        usb_status = xfer_result->bTransferStatus & 0x3f;
-                       if (usb_status == WA_XFER_STATUS_NOT_FOUND)
+                       if (usb_status == WA_XFER_STATUS_NOT_FOUND) {
                                /* taken care of already */
+                               dev_dbg(dev, "%s: xfer 0x%08X#%u not found.\n",
+                                       __func__, xfer_id,
+                                       xfer_result->bTransferSegment & 0x7f);
                                break;
-                       xfer_id = le32_to_cpu(xfer_result->dwTransferID);
+                       }
                        xfer = wa_xfer_get_by_id(wa, xfer_id);
                        if (xfer == NULL) {
                                /* FIXME: transaction not found. */