• Jason Gerecke's avatar
    HID: wacom: Have wacom_tpc_irq guard against possible NULL dereference · 58b7cb10
    Jason Gerecke authored
    commit 2ac97f0f upstream.
    
    The following Smatch complaint was generated in response to commit
    2a6cdbdd ("HID: wacom: Introduce new 'touch_input' device"):
    
        drivers/hid/wacom_wac.c:1586 wacom_tpc_irq()
                 error: we previously assumed 'wacom->touch_input' could be null (see line 1577)
    
    The 'touch_input' and 'pen_input' variables point to the 'struct input_dev'
    used for relaying touch and pen events to userspace, respectively. If a
    device does not have a touch interface or pen interface, the associated
    input variable is NULL. The 'wacom_tpc_irq()' function is responsible for
    forwarding input reports to a more-specific IRQ handler function. An
    unknown report could theoretically be mistaken as e.g. a touch report
    on a device which does not have a touch interface. This can be prevented
    by only calling the pen/touch functions are called when the pen/touch
    pointers are valid.
    
    Fixes: 2a6cdbdd ("HID: wacom: Introduce new 'touch_input' device")
    Signed-off-by: default avatarJason Gerecke <jason.gerecke@wacom.com>
    Reviewed-by: default avatarPing Cheng <ping.cheng@wacom.com>
    Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    58b7cb10
wacom_wac.c 117 KB