Actions
Bug #3628
closed100% cpu usage when streaming on Armel
Status:
Fixed
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Start date:
2016-03-13
Due date:
% Done:
100%
Estimated time:
Found in version:
1672
Affected Versions:
Description
System¶
Debian Jessie, running latest git master (4.1.1672) on my NSA310A NAS 256MB
processor : 0 model name : Feroceon 88FR131 rev 1 (v5l) BogoMIPS : 1196.85 Features : swp half thumb fastmult edsp CPU implementer : 0x56 CPU architecture: 5TE CPU variant : 0x2 CPU part : 0x131 CPU revision : 1 Hardware : Marvell Kirkwood (Flattened Device Tree) Revision : 0000 Serial : 0000000000000000
Problem¶
Tvheadend uses near 100% cpu when streaming via http. tvh:tcp-start seems to be the cause.
Affected¶
Git master 4.1.1670+ and maybe lower. builds =< 4.1.1429 aren't affected.
Tests and debugging done¶
Unfortunately because the box isn't very fast I'm unable to get gdb to play nice thus I'm unable to produce logs, below are some screenshots of what I could get..
Further debugging.¶
I'm now going to go through commits 1429-1670..
I've now gone through the commits and the commit causing the issue is: commit:a6a23e10/On Github.
My log of testing each commit..
78507afcfaee39f2366cca6c4ddf45f1a4859261 = FAIL b8492e02f5dc507b31140df3bcb6d3e009810c00 = FAIL 74db86c89607b431a05bc30ffe3249bfbf49a065 = FAIL aa4e7f0bff63dfa9503cbea182c457343f635311 = FAIL 6e51fac75e715436edcad7cd15d846f5231ce59a = FAIL 9cf1bc7a6ac1307204cb1e6a6946f9ceef23e0b2 = FAIL 718d29903c97506a552ff1bd25242a7e7ffc72a7 = OK 055be40c0c3dffae117f1be2ce22885eb819f02c = OK 6ff670943ce70a8f279e99306a1d49a78c6b6949 = OK a6a23e100967e35618424a8125d2d85abb6ea72c = FAIL - Build Error.. a6a23e100967e35618424a8125d2d85abb6ea72c = FAIL - **** Retrying build by manually fixing using patch https://github.com/tvheadend/tvheadend/commit/dfbd6325302d39fcd5fca5a6425e9a28d50605ef.patch f4c42ab11fc4a993716c87edff3b06ba4382822b = FAIL - Built with above patch. FAIL = High CPU usage in tvh:tcp-start. OK = Streams fine no excessive usage. **** = This commit is causing the issue..
Actions