1. NAME

usb_block_urb - reliably prevent further use of an URB

2. SYNOPSIS

void usb_block_urb(struct urb *  urb );

3. ARGUMENTS

urb
    pointer to URB to be blocked, may be NULL

4. DESCRIPTION

After the routine has run, attempts to resubmit the URB will fail with error -EPERM. Thus even if the URBAqs completion handler always tries to resubmit, it will not succeed and the URB will become idle.

The URB must not be deallocated while this routine is running. In particular, when a driver calls this routine, it must insure that the completion handler cannot deallocate the URB.

5. COPYRIGHT