2.6.28-rc3 musb speed up (or not).

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

Attached is an updated timer suppression patch for NO-HZ.  Thomas had fed back that some changes were necessary.

The good is with patch testusb goes from 45.4sec to 10.9sec to move a fixed amount of data.

The bad is I found it necessary to remove a different in-kernel hack for tick_nohz_kick_tick().  Kernel comments for this new function say it's a hack to work around badly behaved long running soft-irqs.  Any thing waiting in irq context spinning on jiffies seems pretty bad.

Code was added 17 Oct 08:
http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=fb02fbc14d17837b4b7b02dbb36142c16a7bf208

Does anyone have any thoughts on fixing the kick part?

Really all interrupts during idle will benefit from the combined patch.  USB is just the worst case as its moving so little data per interrupt in its current mode.

I'll send a couple pictures in a separate mail.

alias o='./testusb -a -t 1 -c 6250 -s 16384'

L-O: 2.6.28-rc3-oma1-05153-g13c444a
------------------------------------
[root@localhost tst]# o

 ENTERED MAIN()...
unknown speed   /proc/bus/usb/001/019

 NAME OF DEVICE TO TEST --> [/proc/bus/usb/001/019]

->test 1 1

/proc/bus/usb/001/019 test 1,   45.458298 secs
[root@localhost tst]#
[root@localhost tst]#

L-O (+ rkw/tglx-patch) 2.6.28-rc3-oma1-05153-g13c444a
[root@localhost tst]# o

[root@localhost tst]# o

 ENTERED MAIN()...
unknown speed   /proc/bus/usb/001/004

 NAME OF DEVICE TO TEST --> [/proc/bus/usb/001/004]

->test 1 1
/proc/bus/usb/001/004 test 1,   10.945926 secs

Regards,
Richard W.

Attachment: suppress_tick_no_kick.diff
Description: suppress_tick_no_kick.diff


[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux