I can confirm that the patch breaks things when not using n key rollover. If using the Corsair K70 in "BIOS mode" or just using a plain USB-keyboard keys repeat forever as reported. David, I noticed that in the first version of your patch, where the ignore check was done in hid-core.c, you only checked events that had the HID_MAIN_ITEM_VARIABLE flag set. I can see that "plain" keyboards don't have this bit set on the release event so if I keep this check in the new patch it works in both cases. So, the if-clause now looks like this: ... if (!(field->flags & (HID_MAIN_ITEM_RELATIVE | HID_MAIN_ITEM_BUFFERED_BYTE)) && (field->flags & HID_MAIN_ITEM_VARIABLE) && usage->usage_index < field->maxusage && value == field->value[usage->usage_index]) { ... On Wed, Dec 31, 2014 at 1:57 AM, Christopher Head <chead@xxxxxxxx> wrote: > Hi, > I tried your patch on my North American Das Keyboard 4. In N-key > rollover mode the patch fixes the backslash problem. Unfortunately, > with the patch applied, when in 6-key rollover mode (which, if I > remember correctly, uses a one-byte DATA VAR ABS for modifiers and a > six-byte DATA ARRAY ABS for other keys, as usual for keyboards), the > last typed key repeats forever even after being released. > > (Apologies for the lack of In-Reply-To header; I am not subscribed to > the list so had no message to reply to. Please CC me in replies if > necessary.) > -- > Christopher Head > -- > 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 -- 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