Hi All
After updating my Juno tree to the 16.07 release of LSK 3.18 I am not able to boot Android. I narrowed down the problem to the new iptable validity checks that came in with Linux 3.18.37. If I revert a bunch of these then things work again, i.e.
git revert 674c7e173d01~..6a9f9d4e6c5d
If I don't revert 674c7e173d01 then things remain broken, but it's not as simple as just that one commit being wrong, because if I only revert that one by itself it doesn't fix things.
I don't have time to investigate further, I thought I should at least make people aware of this problem, and hope that a clue might be found at some point.
I didn't raise a bug as it's not obvious where the cause lies, e.g. Android user-side could really be passing in invalid data to the kernel, or there could be bad interactions between AOSP kernel changes and Linux 3.18 LTS, or LTS could be broken. (Searching the web I didn't spot anything that indicated other people had a problem with those patches though).
The bad symptoms I'm getting with Android are that boot stalls and logcat shows the following every 5 seconds...
E NetdConnector: Communications error: java.io.IOException: Connection refused E NetdConnector: Error in NativeDaemonConnector: java.io.IOException: Connection refused
In case anyone wants more specifics for reproducing this, I pushed my kernel to the iptables-problem branch at https://git.linaro.org/people/tixy/kernel.git
The kernel config was the result of
ARCH=arm64 scripts/kconfig/merge_config.sh \ linaro/configs/linaro-base.conf \ linaro/configs/android.conf \ linaro/configs/vexpress64.conf \ linaro/configs/EAS.conf
And Android images was from http://releases.linaro.org/members/arm/android/juno/16.07/