What | Removed | Added |
---|---|---|
CC | tiwai@suse.com |
The Oops itself looks like the NULL dereference at dvb_usb_device_exit(), and it's the part: if (d != NULL && d->desc != NULL) { strscpy(name, d->desc->name, sizeof(name)); So adding the NULL check of d->desc->name should paper over it, e.g. if (d != NULL && d->desc != NULL && d->desc->name != NULL) { strscpy(name, d->desc->name, sizeof(name)); (It's better to rewrite the if condition without "!= NULL", though.) However, this doesn't explain why d->desc->name can be NULL. My wild guess is that this is use-after-free, the properties object got already released at disconnection, but this needs to be checked by the upstream.