The kernel is the same as the stock one, only the ramdisk is changed. So performance issues aren't related to this.
The boot animation always stuttered for me in the first go, even on stock 4.2, when it replays it's fine.
Thanks for the response, and pardon my ignorance, but perhaps the C6943 kernel is different from the other models' ? The C6943 has digital TV, maybe there are other differences in hardware.
It's not just the boot animation that stutters, performance is so bad when the system is up that it's almost unusable.
No, C6902, C6903, C6906 and C6943 have the same kernel.
Did you wiped cache, Dalvik and Applog?
No, C6902, C6903, C6906 and C6943 have the same kernel.
Did you wiped cache, Dalvik and Applog?
Am I missing something? Please bear with me, I'm not a developer. I went to http://xdaforums.com/showthread.php?t=2469191 and downloaded 3 FTF's:
C6943 14.2.A.0.290 Generic BR 1276-7099_R2B, which is for my Brazilian model;
C6902 14.2.A.0.290 Generic IN 1277-2364
C6903 14.2.A.0.290 Central Europe 1276-4314_R1B
I extracted the kernel.sin file from each FTF and all 3 kernel.sin files are different from each other. Even the file sizes don't match.
I think I have discovered something interesting. See, when I flash one of the kernels of the OP I get full root access but the system performance is very bad. When I flash the FTF for my country but in flashtool I exclude everything but the kernel, performance returns to normal but /system becomes unwritable, as expected. However, when I flash back the kernel from the OP, boot, then power off and, instead of flashing the FTF, I flash kernel.sin EXTRACTED FROM THE FTF, performance remains poor. It looks like the problem is not in kernel.sin itself, but somewhere else.
Bearing this in mind, if someone could answer a few questions:
1) What does a kernel.img file (e.g. one of the files from the OP) contain? Only the kernel.sin or other files as well?
2) Can I extract from/convert an img file to a kernel.sin file?
3) If the answer above is true, can I replace the kernel.sin inside an FTF with the kernel.sin obtained from one of the img files from the OP?
I really have no clue what performance issues you're speaking of. I am running the stock kernel with TWRP baked in and I have no problems whatsoever. Everything works super smooth, just as smooth as it did when I had a locked bootloader, thus was running the stock Sony kernel.
What and where is the proof for the performance issues you're talking about?
Bearing this in mind, if someone could answer a few questions:
1) What does a kernel.img file (e.g. one of the files from the OP) contain? Only the kernel.sin or other files as well?
2) Can I extract from/convert an img file to a kernel.sin file?
3) If the answer above is true, can I replace the kernel.sin inside an FTF with the kernel.sin obtained from one of the img files from the OP?
# Enable Sony RIC
mount securityfs securityfs /sys/kernel/security nosuid nodev noexec
write /sys/kernel/security/sony_ric/enable 1
service ric /sbin/ric
user root
group root
oneshot
class main
I see, would it be possible to provide both a logcat and a dmesg from the kernel in the OP and the stock kernel while trying to install an app for example? If those logs show any unusual behaviour the kernel devs might be able to fix it. As of right now they would just have to do random guesses.My device is a Brazilian C6943. Other people from Brazil are also reporting terrible performance when using one of the .img files from the OP. You don't even need a benchmark app to assert the poor performance. For instance just try to install an app from the Play Store, it takes ages. Intall the Xposed framework, takes ages. Apps that require root take a very long time just to trigger SU prompt. Etc. Oh, and now and then the phone produces an inexplainable short vibration.
The C6943 has digital TV support, wchich is something that sets it asside from other Z1 models.
adb logcat
adb shell dmesg
I'm not a developer, too :laugh:Thank you very much for your answers. Would it be too much to ask if you would point me to a thread/tutorial explaining how a boot image can be created? Bear in mind that I'm not a developer/programmer.
./mkbootimg --cmdline "androidboot.hardware=qcom user_debug=31 maxcpus=2 msm_rtb.filter=0x37 ehci-hcd.park=3 lpj=192598 dwc3.maximum_speed=high dwc3_msm.prop_chg_detect=Y vmalloc=400M" \
--base 0x00000000 --kernel [B]zImage[/B] --ramdisk [B]ramdisk.img[/B] \
--ramdisk_offset 0x02000000 -o boot.img --dt [B]dt.img[/B] --tags_offset 0x01E00000
Ah sorry.Sorry if I misunderstood, I have practically no experience whatsoever with adb. The first command displayed a "live" log, that could only be interrupted by Ctrl + C. The second command returned "klogctl: Operation not permitted". This was with the stock kernel.
As for dmesg, you should run adb as root. You can do this with the following command "adb root", that should restart the adb daemon on your phone as root. You do have to be rooted for this to work though. After that it should work fine. Also note that again you have you write the output of dmesg to a file as follows "adb shell dmesg > text.txt". I hope it helps!
Ah sorry.
By typing "adb logcat > text.txt" your screen won't say anything until you press ctrl + c. What it does in the background is create a file called "text.txt" and writes the output of "adb logcat" to that file. So you enter the command "adb logcat > text.txt" (you can name this file anything you want) and then try to install an app for example. When you're done you press ctrl + c and open the "text.txt" file. Now you see the output of the "adb logcat" command there, that is what we need.
As for dmesg, you should run adb as root. You can do this with the following command "adb root", that should restart the adb daemon on your phone as root. You do have to be rooted for this to work though. After that it should work fine. Also note that again you have you write the output of dmesg to a file as follows "adb shell dmesg > text.txt". I hope it helps!
Edit:
Don't forget to search through the outputs of either your logcats or dmesg files for personal information, email addresses, passwords, pins, names, whatever might be in there. Normally it shouldn't show that information, but who knows.
root@C6903:/ # mount -o rw,remount /system
mount: Operation not permitted
root@C6903:/system # echo 0 > /sys/kernel/security/sony_ric/enable
root@C6903:/system # mount -o rw,remount /system
root@C6903:/system #
# Enable Sony RIC
mount securityfs securityfs /sys/kernel/security nosuid nodev noexec
write /sys/kernel/security/sony_ric/enable 1
root@C6903:/system # echo 123 > test
root@C6903:/system # cat test
123
mohammad@mohammad-i5desktop:~/Downloads$ adb -d logcat | grep Xposed
D/Xposed ( 355): Starting Xposed binary version 47, compiled for SDK 16
D/Xposed ( 355): Phone: C6903 (Sony), Android version 4.3 (SDK 18)
D/Xposed ( 355): ROM: 14.2.A.0.290
I/Xposed ( 355): -----------------
I/Xposed ( 355): Found new Xposed jar version, activating it
I/Xposed ( 355): Added Xposed (/data/data/de.robv.android.xposed.installer/bin/XposedBridge.jar) to CLASSPATH.
D/AndroidRuntime( 355): >>>>>> AndroidRuntime START de.robv.android.xposed.XposedBridge <<<<<<
D/Xposed ( 355): Using structure member offsets for mode WITH_JIT
I/Xposed ( 355): Found Xposed class 'de/robv/android/xposed/XposedBridge', now initializing
I/Xposed ( 355): -----------------
I/Xposed ( 355): Dec 17, 2013 5:01:53 PM UTC
I/Xposed ( 355): Loading Xposed v42 (for Zygote)...
I/Xposed ( 355): Errors during Xposed initialization
I/Xposed ( 355): java.lang.NoSuchMethodError: android.app.ActivityThread#getTopLevelResources(java.lang.String,int,android.content.res.Configuration,android.content.res.CompatibilityInfo)#exact