Re: [PATCH 46/62] usb: Use static const
From: Sergei Shtylyov <hidden>
Date: 2010-11-21 14:08:46
Also in:
lkml
Hello. On 21-11-2010 5:38, Joe Perches wrote:
Using static const generally increases object text and decreases data size. It also generally decreases overall object size.
text data bss dec hex filename 36120 312 9000 45432 b178 drivers/net/usb/hso.o.old 36043 312 9008 45363 b133 drivers/net/usb/hso.o.new
Consolidate duplicated code into new fix_crc_bug function and declare data in that function static const.
Signed-off-by: Joe Perches<redacted>
[...]
quoted hunk ↗ jump to hunk
diff --git a/drivers/net/usb/hso.c b/drivers/net/usb/hso.c index be8cc2a..c77d0ea 100644 --- a/drivers/net/usb/hso.c +++ b/drivers/net/usb/hso.c@@ -1001,6 +1001,18 @@ static void packetizeRx(struct hso_net *odev, unsigned char *ip_pkt, } } +static void fix_crc_bug(struct urb *urb, __le16 max_packet_size) +{ + static const u8 crc_check[4] = { 0xDE, 0xAD, 0xBE, 0xEF }; + u32 rest = urb->actual_length % le16_to_cpu(max_packet_size); + + if (((rest == 5) || (rest == 6)) && + !memcmp(((u8 *)urb->transfer_buffer) + urb->actual_length - 4,
Parens around '(u8 *)urb->transfer_buffer' not needed. Could get rid of
them, while at it...
+ crc_check, 4)) {
+ urb->actual_length -= 4;
+ }
+}
+
/* Moving data from usb to kernel (in interrupt state) */
static void read_bulk_callback(struct urb *urb)
{WBR, Sergei -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html