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 majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to