/* * net/sched/em_u32.c U32 Ematch * * This program is free software; you can redistribute it and/or * modify it under the terms of the GNU General Public License * as published by the Free Software Foundation; either version * 2 of the License, or (at your option) any later version. * * Authors: Thomas Graf * Alexey Kuznetsov, * * Based on net/sched/cls_u32.c */ #include #include #include #include #include static int em_u32_match(struct sk_buff *skb, struct tcf_ematch *em, struct tcf_pkt_info *info) { struct tc_u32_key *key = (struct tc_u32_key *) em->data; const unsigned char *ptr = skb_network_header(skb); if (info) { if (info->ptr) ptr = info->ptr; ptr += (info->nexthdr & key->offmask); } ptr += key->off; if (!tcf_valid_offset(skb, ptr, sizeof(u32))) return 0; return !(((*(__be32 *) ptr) ^ key->val) & key->mask); } static struct tcf_ematch_ops em_u32_ops = { .kind = TCF_EM_U32, .datalen = sizeof(struct tc_u32_key), .match = em_u32_match, .owner = THIS_MODULE, .link = LIST_HEAD_INIT(em_u32_ops.link) }; static int __init init_em_u32(void) { return tcf_em_register(&em_u32_ops); } static void __exit exit_em_u32(void) { tcf_em_unregister(&em_u32_ops); } MODULE_LICENSE("GPL"); module_init(init_em_u32); module_exit(exit_em_u32); MODULE_ALIAS_TCF_EMATCH(TCF_EM_U32); right'>Tobias Klauser
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohan Hovold <johan@kernel.org>2017-01-30 11:26:38 +0100
committerJiri Kosina <jkosina@suse.cz>2017-01-31 12:59:32 +0100
commit7a7b5df84b6b4e5d599c7289526eed96541a0654 (patch)
treecf7514c7ddf4410fe37ca9099a2785e1cf08fa7d /include/uapi/sound
parent877a021e08ccb6434718c0cc781fdf943c884cc0 (diff)
HID: cp2112: fix sleep-while-atomic
A recent commit fixing DMA-buffers on stack added a shared transfer buffer protected by a spinlock. This is broken as the USB HID request callbacks can sleep. Fix this up by replacing the spinlock with a mutex. Fixes: 1ffb3c40ffb5 ("HID: cp2112: make transfer buffers DMA capable") Cc: stable <stable@vger.kernel.org> # 4.9 Signed-off-by: Johan Hovold <johan@kernel.org> Reviewed-by: Benjamin Tissoires <benjamin.tissoires@redhat.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Diffstat (limited to 'include/uapi/sound')