This series adds support for handling broken union descriptors by falling back to "combined-interface" probing. The first patch drops some bogus altsetting sanity checks which would otherwise have had to be needlessly reproduced for consistency. The third patch drops the driver specific data class define in favour of the common one. The last one, cleans up the no-union-descriptor handling by probing for a "combined-interface" before falling back to the call-management descriptor. Note that I changed my mind on the stable tag; we can't be overly paranoid about a theoretical risk of breaking some quirky devices. And if we do, we still want to know about it, right? Daniel, would you mind giving these a spin as well? Johan v2 - add stable tag to 2/2 as it enables a new class of devices - demote a broken-union warning to dev_dbg - replace the fourth RFC patch with a clean up of the no-union-descriptor case only Johan Hovold (4): Revert "cdc-acm: hardening against malicious devices" USB: cdc-acm: handle broken union descriptors USB: cdc-acm: use common data-class define USB: cdc-acm: clean up no-union-descriptor handling drivers/usb/class/cdc-acm.c | 55 ++++++++++++++++--------------------- drivers/usb/class/cdc-acm.h | 13 ++++----- 2 files changed, 29 insertions(+), 39 deletions(-) -- 2.26.2