Fork us on GitHub Follow us on Facebook Follow us on Twitter

Changeset b137d9e in mainline


Ignore:
Timestamp:
2014-01-25T21:03:17Z (8 years ago)
Author:
Jan Vesely <jano.vesely@…>
Branches:
lfn, master
Children:
3ee8dcd5
Parents:
4090f66
Message:

ehci: Fix qh queue corruption on removal

the list is maintained via horizntal pointer, not next.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/drv/bus/usb/ehci/endpoint_list.c

    r4090f66 rb137d9e  
    162162        }
    163163        assert(qh_next(prev_qh) == addr_to_phys(ep->qh));
    164         prev_qh->next = ep->qh->next;
     164        prev_qh->horizontal = ep->qh->horizontal;
    165165        /* Make sure ED is updated */
    166166        write_barrier();
    167167
    168         usb_log_debug("HCD EP(%p) removed (%s) from %s, next %x.\n",
    169             ep, qpos, instance->name, ep->qh->next);
     168        usb_log_debug("HCD EP(%p) removed (%s) from %s, horizontal %x.\n",
     169            ep, qpos, instance->name, ep->qh->horizontal);
    170170
    171171        /* Remove from the endpoint list */
Note: See TracChangeset for help on using the changeset viewer.