• Hans de Goede's avatar
    [media] pwc: better usb disconnect handling · 9a7b2d1f
    Hans de Goede authored
    Unplugging a pwc cam while an app has the /dev/video# node open leads
    to an oops in pwc_video_close when the app closes the node, because
    the disconnect handler has free-ed the pdev struct pwc_video_close
    tries to use. Instead of adding some sort of bandaid for this.
    fix it properly using the v4l2 core's new(ish) behavior of keeping the
    v4l2_dev structure around until both unregister has been called, and
    all file handles referring  to it have been closed:
    
    Embed the v4l2_dev structure in the pdev structure and define a v4l2 dev
    release callback releasing the pdev structure (and thus also the embedded
    v4l2 dev structure.
    Signed-off-by: default avatarHans de Goede <hdegoede@redhat.com>
    Cc: stable@kernel.org
    Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@redhat.com>
    9a7b2d1f
pwc.h 13.6 KB