On Sat, 2012-06-16 at 21:41 +0300, Antti Palosaari wrote: > > That is what you want to do: > **************************** > CALLBACK(struct dvb_usb_adapter *adap) > { > struct dvb_frontend *fe = adap->fe[adap->active_fe]; > // now we have pointer to adap and fe > } > > That is what I want to do: > ************************** > CALLBACK(struct dvb_frontend *fe) > { > struct dvb_usb_adapter *adap = fe->dvb->priv; > // now we have pointer to adap and fe > } I just don't like the idea of deliberately sending a NULL object to a callback. Ha ... I know what is causing the crash....its in usb_urb.c int usb_urb_init(struct usb_data_stream *stream, struct usb_data_stream_properties *props) { int ret; if (stream == NULL || props == NULL) return -EINVAL; memcpy(&stream->props, props, sizeof(*props)); usb_clear_halt(stream->udev, usb_rcvbulkpipe(stream->udev, stream->props.endpoint)); The usb_clear_halt with 0 endpoint. It can tweaked by sending a valid endpoint. Regards Malcolm -- To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html