On Tue, 17 Jan 2017, Jason Gerecke wrote: > Commit 345857b included a change to the operation and location of the call > to 'wacom_add_shared_data' in 'wacom_parse_and_register'. The modifications > included moving it higher up so that it would occur before the call to > 'wacom_retrieve_hid_descriptor'. This was done to prevent a crash that would > have occured when the report containing tablet offsets was fed into the > driver with 'wacom_hid_report_raw_event' (specifically: the various > 'wacom_wac_*_report' functions were written with the assumption that they > would only be called once tablet setup had completed; 'wacom_wac_pen_report' > in particular dereferences 'shared' which wasn't yet allocated). > > Moving the call to 'wacom_add_shared_data' effectively prevented the crash > but also broke the sibiling detection code which assumes that the HID > descriptor has been read and the various device_type flags set. > > To fix this situation, we restore the original 'wacom_add_shared_data' > operation and location and instead implement an alternative change that > can also prevent the crash. Specifically, we notice that the report > functions mentioned above expect to be called only for input reports. > By adding a check, we can prevent feature reports (such as the offset > report) from causing trouble. > > Signed-off-by: Jason Gerecke <jason.gerecke@xxxxxxxxx> > Tested-by: Ping Cheng <pingc@xxxxxxxxx> I've added Fixes: tag and applied to for-4.10/upstream-fixes. Thanks, -- Jiri Kosina SUSE Labs -- To unsubscribe from this list: send the line "unsubscribe linux-input" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html