Re: removing the timer from cdc-ncm
From: Oliver Neukum <hidden>
Date: 2012-09-26 08:57:12
On Tuesday 25 September 2012 13:18:10 Alexey ORISHKO wrote:
quoted
-----Original Message----- From: Oliver Neukum [mailto:oneukum-l3A5Bk7waGM@public.gmane.org] here is the patch that does everything I consider theoretically necessary to have bundling of frames in usbnet and adapting cdc-ncm to it. I'd appreciate any review in case I am doing something stupid.I had a brief look at cdc_ncm and a few corrections needed: - remove the following: #include <linux/hrtimer.h> ... /* Restart the timer, if amount of datagrams is less than given value */ #define CDC_NCM_RESTART_TIMER_DATAGRAM_CNT 3 #define CDC_NCM_TIMER_PENDING_CNT 2 #define CDC_NCM_TIMER_INTERVAL (400UL * NSEC_PER_USEC) ... In struct cdc_ncm_ctx { ... struct hrtimer tx_timer; struct tasklet_struct bh; ... In cdc_ncm_unbind(): if (hrtimer_active(&ctx->tx_timer)) hrtimer_cancel(&ctx->tx_timer); tasklet_kill(&ctx->bh);
Roger
I didn't have time to check the new logic for data path, but I've tried to run it on Ubuntu 12.04. Linux host got panic right after data path has been established (i.e. connected to mobile network).
Thank you. Worse than I hoped, but not unexpected. I'll stare at the code a bit. Regards Oliver -- 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