[Xperia Z3 Compact Android Development] tomascus:
Introduction

Hi. For the handful of you on Concept ROM.

Requirements

- Xperia Z3 Compact

- Unlocked Bootloader

- Concept ROM (any version should be fine)

Main features

- Kernel security patches up to January 2017

- F2FS support for /data and /cache

- ZRAM enabled by default (~500MB)

- Merged all commits from codeaurora kernel branch LA.BF.1.1.3_rb1.13

- Picked things from other msm8974 devices on CM/LineageOS so they're pretty similar now

- See the changelog

Installation Instructions

1. Optional: Backup boot image in TWRP

2. Flash zip in TWRP

Download

https://drive.google.com/open?id=0B3bfLXY54yW-cG15cTdwSDZBcWM

Returning to stock kernel

Flash stock modules:

https://drive.google.com/open?id=0B3bfLXY54yW-S3lXdktRR0Y2Vk0

Changelog

28351c9 Makefile: use strip-debug flag
4e2ddda defconfig: Remove MSM_BUSPM_DEV
c9297a5 platform: msm: msm_bus: remove buspm support
c0847b3 msm: lpm-levels: add suspend_again handler
3d3c7a1 power: quickwakeup: initial driver
f1d6617 mm/slub: don't wait for high-order page allocation
03df09d OOM, PM: OOM killed task shouldn't escape PM suspend
b6353e7 binfmt_elf.c: use get_random_int() to fix entropy depleting
6ef50f9 sync: don't block the flusher thread waiting on IO
f3bcde1 sched: window-based load stats improvements
365d065 sched: Add min_max_freq and rq->max_possible_freq
c77d1f9 sched: move task load based functions
4a3ccff sched/rt: Add Kconfig option to enable panicking for RT throttling
acdf5f8 sched/rt: print RT tasks when RT throttling is activated
e139937 sched: Skip load update for idle task
5d4f3ba sched: window-stats: Fix overflow bug
2ebd67d sched: Window-based load stat improvements
fbdaf7b sched: Disable wakeup hints for foreground tasks by default
5f9b484 sched: Fix double normalization of vruntime
d1cba2f sched: Call the notify_on_migrate notifier chain for wakeups as well
a2f2eb0 cpufreq: cpu-boost: Introduce scheduler assisted load based syncs
82e7171 cpufreq: cpu-boost: Use one work to remove input boost for all CPUs
3cabd95 cpufreq: cpu-boost: Support separate input_boost_freq for different CPUs
e0af64f cpufreq: Sync on thread migration optimizations
76b40d3 cpufreq: cpu-boost: Re-issue boosts above minimum frequency
abb4fa3 cpufreq: cpu-boost: Resolve deadlock when waking up sync thread
6d0efd5 sched: window-based load stats for tasks
9229fb8 Revert "tracing/sched: Track per-cpu rt and non-rt cpu_load."
0d42761 sched: Make scheduler aware of cpu frequency state
2b6af5a sched: Introduce temporary FAIR_GROUP_SCHED dependency for load-tracking
84620f8 sched: Make __update_entity_runnable_avg() fast
5c1941a sched: Refactor update_shares_cpu() -> update_blocked_avgs()
0d6cc09 sched: Replace update_shares weight distribution with per-entity computation
87d41e3 sched: Maintain runnable averages across throttled periods
cdbabb5 sched: Normalize tg load contributions against runnable time
78724e4 sched: Compute load contribution by a group entity
7751272 sched: Aggregate total task_group load
9887c28 sched: Account for blocked load waking back up
985bb1e sched: Add an rq migration call-back to sched_class
7619ae0 sched: Maintain the load contribution of blocked entities
a6dee39 sched: Aggregate load contributed by task entities on parenting cfs_rq
7646ee7 sched: Maintain per-rq runnable averages
13825ed sched: Track the runnable average on a per-task entity basis
0e3bc6a selinux: process labeled IPsec TCP SYN-ACK packets properly in selinux_ip_postroute()
f532a74 selinux: handle TCP SYN-ACK packets correctly in selinux_ip_postroute()
a65b8de selinux: handle TCP SYN-ACK packets correctly in selinux_ip_output()
6067518 SELinux: bigendian problems with filename trans rules
38c8e62 SELinux: Fix memory leak upon loading policy
eb7fcda selinux: look for IPsec labels on both inbound and outbound packets
420c01f selinux: selinux_setprocattr()->ptrace_parent() needs rcu_read_lock()
9c685f8 selinux: fix broken peer recv check
6829a06 selinux: correct locking in selinux_netlbl_socket_connect)
6b54dfa selinux: use GFP_ATOMIC under spin_lock
1127e68 selinux: fix sel_netnode_insert() suspicious rcu dereference
e69f1b4 SELinux: if sel_make_bools errors don't leave inconsistent state
4febb78 AIO: Don't plug the I/O queue in do_io_submit()
1fe1535 defconfig: use cfq as default iosched
ea1818f drivers/msm: qpnp-vibrator: Remove workqueue leftover
41d4f03 msm: Improve qpnp-vibrator scheduling
c0007dc ALSA: pcm : Call kill_fasync() in stream lock
5642f7d sg_write()/bsg_write() is not fit to be called under KERNEL_DS
c6d2fc4 splice: introduce FMODE_SPLICE_READ and FMODE_SPLICE_WRITE
cab6cfe drivers: video: Add bounds checking in fb_cmap_to_user
05e9341 fbcmap: Remove unnecessary condition check
96559dd fbmem: Check failure of FBIOPUTCMAP ioctl
12a5deb BACKPORT: ion: fix a race condition in the ion driver
6bb7ebb net: avoid signed overflows for SO_{SND|RCV}BUFFORCE
cda1e77 net: cleanups in sock_setsockopt()
8acc436 Turn off trace_printk in vidc's dprink.
3ed4a6c ARM: 7583/1: decompressor: Enable unaligned memory access for v6 and above
c13275f defconfig: Compress kernel with XZ
5ca626d block: disable entropy contributions for nonrot devices
ad7eff0 defconfig: change name to A kernel
ca96ef9 fuse: break infinite loop in fuse_fill_write_pages()
132ca2a pipe: limit the per-user amount of pages allocated in pipes
6ed0881 ARM: 7791/1: a.out: remove partial a.out support
91c8425 ARM: move outer_cache declaration out of ifdef
d05f001 ARM: mm: remove IPI broadcasting on ASID rollover
9b05e85 ARM: 8129/1: errata: work around Cortex-A15 erratum 830321 using dummy strex
26aee29 ARM: 8128/1: abort: don't clear the exclusive monitors
b29dc97 msm: smd_pkt: Avoid prematurely stashing driver info
3eda977 smd_pkt: Add sanity check to avoid unregistering the driver twice
7af9e9f msm: mdss: Replace msleep() with usleep()
f89f844 ARM: 8051/1: put_user: fix possible data corruption in put_user
b1256ed msm: mdp: wait for previous frame commit before unset
b003a8c dm verity: fix overflow check
56984cb pipe: iovec: Fix OOB read in pipe_read()
d1279b3 msm: crypto: Fix integer over flow check in qcrypto driver
81aaf21 KEYS: Fix race between read and revoke
1b07da8 mmc: sdhci: Don't spew on CRC errors
55331c3 cfq-iosched: fix the setting of IOPS mode on SSDs
cca8c2d block: Make CFQ default to IOPS mode on SSDs
b317325 block: deadline: Optimize for non-rotational
a6068b8 deadline: Allow 0ms deadline latency, increase the read speed
9133e81 msm: vidc: Check for active handle before updating the QoS request
f1ca11e msm: vidc: disable CPU L2 cache PC during video sessions
d1fe784 defconfig: enable Motorola MEMUTILS
e55104d msm: memutils: 8974: memcpy, memmove optimization
a14e634 msm: memutils: memcpy, memmove optimization
479d617 msm: memutils: memcpy, memmove, copy_page optimization
cb6447c ARM: Kconfig: selectable HZ value
6560083 msm: msm_bus: Provide valid input pointer argument
5176e11 __ptrace_may_access() should not deny sub-threads
08e9202 ipv6: addrconf: validate new MTU before applying it
aab1078 tcp: fix timing issue in CUBIC slope calculation
53bef1b tcp_cubic: do not set epoch_start in the future
703a1e7 tcp_cubic: better follow cubic curve after idle period
b115d83 mm: vmpressure: account allocstalls only on higher pressures
162f54f mm: vmpressure: scale pressure based on reclaim context
322b7a7 lowmemorykiller: Account for unevictable pages in vmpressure notifier
ec8faf6 lowmemorykiller: Set TIF_MEMDIE before send kill sig
b66f7d4 lowmemorykiller: Account for unevictable pages
eb206dc mm, oom: make dump_tasks public
f944076 mm: Add notifier framework for showing memory
fc2f7fc mm: vmpressure: allow in-kernel clients to subscribe for events
34e94b2 memcg: add memory.pressure_level events
d9882c6 lowmemorykiller: avoid false adaptive LMK triggers
6670829 lowmemorykiller: adapt to vmpressure
7cb7563 lowmemorykiller: Do proper NULL checks
855030d lowmemorykiller: Run the lowmemory notifier when killing
b6128ee lowmemorykiller: Dump out slab state information
302f78a lowmemorykiller: enhance debug information
2641f8e lowmemorykiller: use for_each_thread instead of buggy while_each_thread
d0072c1 lowmemorykiller: make default lowmemorykiller debug message useful
09d0e0b lowmemorykiller: Don't count swap cache pages twice
98bf086 lowmemorykiller: Account for highmem during kswapd reclaim
47f0cb6 ASoC: msm: qdsp6v2: Change audio drivers to use %pK
8dda916 usb: gadget: f_mbim: Change %p to %pK in debug messages
c86d812 netfilter: Change %p to %pK in debug messages
88ad3cb drivers: video: Add bounds checking in fb_cmap_to_user
1aac8a2 net: ping: Fix stack buffer overflow in ping_common_sendmsg()
a50bf06 perf: protect group_leader from races that cause ctx double-free
a4ac639 BACKPORT: lockdep: Silence warning if CONFIG_LOCKDEP isn't set
d3280f8 BACKPORT: perf: Introduce perf_pmu_migrate_context()
1e42179 BACKPORT: perf: Allow the PMU driver to choose the CPU on which to install events
fac4faf msm: crypto: Fix integer over flow check in qce driver
7c93834 msm: crypto: fix issues on digest buf and copy_from_user in qcedev.c
e961bab qseecom: remove entry from qseecom_registered_app_list
12a8f8b msm: ultrasound: Lock async calls, NULL checks
476cbc0 qcrypto: protect potential integer overflow.
8e2f8b8 net: rmnet_data: Change the print format for addresses
1f8fcef cgroup: prefer %pK to %p
6dd6f06 msm: ipa: fix ioctl input param validation
26db0f6 msm: mdss: fix possible out-of-bounds and overflow issue in mdp debugfs
de22cbe af_unix: speedup /proc/net/unix
a9a6fd6 UPSTREAM: af_unix: Guard against other == sk in unix_dgram_sendmsg
8d444a0 BACKPORT: signal: allow to send any siginfo to itself
5cc08b4 msm: sensor: Avoid potential stack overflow
16a69db perf: Fix race in swevent hash
d1eda74 Fix incorrect conflict resolution in "vfs: Add setns support for the mount namespace"
9964419 proc: fix build broken by proc inode per namespace patch
28cbccb packet: fix race condition in packet_set_ring
6bd52e0 arm: fix handling of F_OFD_... in oabi_fcntl64()
2d1bb17 HID: core: prevent out-of-bound readings
c282471 BACKPORT: tty: Prevent ldisc drivers from re-using stale tty fields
2c8a714 ALSA: usb-audio: Fix double-free in error paths after snd_usb_add_audio_stream() call
37339ed ALSA: usb-audio: Minor code cleanup in create_fixed_stream_quirk()
92f7d82 sg: Fix double-free when drives detach during SG_IO
6741d50 block: fix use-after-free in sys_ioprio_get()
bba662a block: fix use-after-free in seq file
7275164 tcp: fix use after free in tcp_xmit_retransmit_queue()
74463bf HID: hiddev: validate num_values for HIDIOCGUSAGES, HIDIOCSUSAGES commands
20dd35b SoC: soc: change audio drivers to use %pK
a76ef65 ARM: perf: reject groups spanning multiple hardware PMUs
a3e152b msm: vidc: add ion_handle checking before mapping buffers
327541c ion: disable system contig heap
05b7a86 KEYS: Fix short sprintf buffer in /proc/keys show function
dec381c mm, gup: close FOLL MAP_PRIVATE race
f1e5a45 ANDROID: binder: Clear binder and cookie when setting handle in flat binder struct
42b5f94 ANDROID: binder: Add strong ref checks
a6cb7b2 ASoC: check for null function pointer for dummy device read/write
2b90926 arm64: dma-mapping: always clear allocated buffers
b3168664 binder: prevent kptr leak by using %pK format specifier
68e339c arm: irq: Tone down kernel logging
f198541 defconfig: set CONFIG_HZ to 300
dac48f2 sched_clock: Avoid corrupting hrtimer tree during suspend
f4509f8 arm: arch_timer: Update for 64bit sched_clock
7ecd140 sched_clock: Add support for >32 bit sched_clock
da79974 sched_clock: Use an hrtimer instead of timer
03899de sched_clock: Use seqcount instead of rolling our own
cb301e6 clocksource: Extract max nsec calculation into separate function
a5b5ad4 ARM: sched_clock: Load cycle count after epoch stabilizes
6fbb98c sched_clock: Make ARM's sched_clock generic for all architectures
39e0ec2 msm: kgsl: Fix idle timer sysfs after removing references to HZ
f244158 msm: kgsl: Fix direct references to HZ
dbed49b mdss_mdp_trace.h: point to self correctly
40d51f9 dvb: don't build tuners
14125e9 dvb: don't build frontends
059d3e2 defconfig: disable ondemand cpufreq gov
5dc22c3 f2fs: remove already defined file_inode
9002840 nick kvfree() from apparmor
6ef85f9 defconfig: enable LZ4 ZRAM compression
7c73c43 Revert "vfs: umount_tree() might be called on subtree that had never made it"
a2252c6 mm: use up free swap space before reaching OOM kill
280a1bbb mm: swap: fix swapcache usage for fast swap devices
abe10aa mm: swap: don't delay swap free for fast swap devices
dd56356 Zram: Squash updates
3904e73 lz4: fix another possible overrun
a0daa59 lz4: ensure length does not wrap
7f91635 lib/lz4: correct the LZ4 license
9ad516a lz4: fix compression/decompression signedness mismatch
4dd39d7 lib: add lz4 compressor module
b1ea2aea decompressor: add LZ4 decompressor module
3dcc01f f2fs: squash updates 3.4 kernel branch
21f12f7 f2fs: squashed commit from f2fs-stable
7e20512 f2fs: squashed commit from f2fs-stable
8e13896 f2fs: fix include
672cd4b f2fs: Squash commits from f2fs-stable
a285adf f2fs: catch up to v4.4-rc1
fc99605 msm8974: add f2fs
adf7b46 arm: mach-msm: pil-msa: Set the strongly-ordered attribute on DMA allocations
b98152a msm: vidc: Make buffer validity checks stronger
52e3e9a soc: qcom: bam_dmux: Use SPS hold mem flag
93c714d mm: vmscan: fix the page state calculation in too_many_isolated
941a54b mm/vmscan.c: avoid possible deadlock caused by too_many_isolated()
f543285 mmc: fix host release issue after discard/flush operation
8b55081 Revert "Revert "mmc: queue: use cached attributes of special requests""
979f480 Revert "Revert "mmc: queue: exclude asynchronous transfer for special request""
bde31ab msm: sps: Handle low memory condition in SPS driver
42ce098 soc: qcom: bam_dmux: Use SPS hold mem flag
406a4ab mm: vmscan: fix the page state calculation in too_many_isolated
4137684 usb: host: xhci: Enable XHCI_SPURIOUS_SUCCESS for all controllers with xhci 1.0
ca0e775 msm: perf: validate input argument of ev_constraints functions
c777684 avtimer: update ioctl call to query avtimer
05d63c8 msm: vidc: skip fps round off when client sets 1 fps
0bcdb81 msm: vidc: Fix a race condition in error handling
f082372 trace: prevent NULL pointer dereference
60edf7b msm: camera: Add NULL check in msm_actuator
36626d89 msm: perf: Protect buffer overflow due to malicious user
93ec05e Revert "mmc: queue: use cached attributes of special requests"
2a857e7 Revert "mmc: queue: exclude asynchronous transfer for special request"
1d6a06a msm: vidc: initialize the session list when device initialized
9d7029e net: msm_rmnet: Add an IOCTL definition to deregister a net device
a7704a3 net: udp: Adjust UDP socket state for encapsulation sockets
1e50199 net/ipv6/route.c: packets originating on device match lo
78ebd28 Revert "net/ipv6/route.c: packets originating on device match lo"
69e1e4c USB: gadget: android: Fix checkpatch related errors
ba326ce gadget: composite: Fix crash seen when SS descriptor is not available
848329e usb: gadget: uac1: Fix redefinition conflict for ac interface
1ee6c05 qseecom: Register the existing app if it is loaded by appsbl.
a48dddc mmc: queue: use cached attributes of special requests
81858e0 mmc: queue: exclude asynchronous transfer for special request
9a926d5 boot:dtsi: Add the active current values in uA for the cpus in device tree.
5d33382 msm: vidc: Fix timestamp for EOS buffer
83b3a9b diag: Cleanup client information on deinit Ioctl
0f38daf msm: vidc: use dedicated pendingq.lock for pendingq
54389f21 qseecom: Change to work with appsbl qseecom
9dbaa18 msm: vidc: fix null pointer crash in sys error handler
c4fdc86 vfs: umount_tree() might be called on subtree that had never made it
e4d50f4 ipv6: clean up anycast when an interface is destroyed
0613f76 ipv4, fib: pass LOOPBACK_IFINDEX instead of 0 to flowi4_iif
751e2e2 net: ipv6: Add sysctl entry to disable MTU updates from RA
69578b0 um: siginfo cleanup
62ccc80 net: ping: Return EAFNOSUPPORT when appropriate.
7d3d35e msm: mdss: Initialize pipe list while cleanup
48f3af4 msm: kgsl: Correctly increment the pagetable statistics
d0fdb87 kernel: remove copyright and license info from header files
0ffd1e3 kernel: Include IPA headers required for WiFi offload
1fcc09cb msm: camera: Reset HALT reg after the halt.
6ddcd14 usb: phy: msm: Use correct HS_PHY_CTRL register
0b75773 msm: mdss: Do not wait for vsync while resume
5b04081 vfs: read file_handle only once in handle_to_path
65f1f81 radio: iris: Fix the possibility of NULL pointer access
3967794 radio: iris: change the FM module from modular to built in
80bd510 msm: mdss: protect iommu operations with mutex for mdp3
fef893a arm: mm: fix bootup bug with odd-section boundry in memory hole.
59a1cce radio-iris: Fix the issue with set calibration
1b96ed8 arm: mm fix and cleanup function to print vmalloc info
03c9f0e arm: mm: consider only lowmem regions while remap
051c198 msm: mdss: Acquire lock for source format b/w line and block mode
864a3cf diag: Bring log code up to date
f00be6a bif: qpnp-bsi: request BSI interrupts with level high triggering
0ad41a3 wcnss: add proper macro value check to avoid unnecessary delay
a4d5ea6 msm: kgsl: Add support for KGSL_CMDBATCH_MARKER
315c593 msm: kgsl: Remove a race condition in the event processing code
636325c msm: kgsl: Refactor the GPU event engine
6cd6cc8 msm: kgsl: Allow memory lists along with command submission
52c2ef3 msm: kgsl: Split out the context and command batch flags
1f0dbb0 msm: kgsl: Support the KGSL_CONTEXT_CTX_SWITCH flag
62164a7 include: rmnet_data: Define the MAPv4 data format
026fc24 net: rmnet_data: Add header files for rmnet_data
3e64d4c ALSA: compress: Add ioctl declaration for gapless
7fad62b serial: tty: msm_hs_uart: Fix the compat table
f151c70 ARM: 8160/1: drop warning about return_address not using unwind tables
4a9cbb3 ARM: 8158/1: LLVMLinux: use static inline in ARM ftrace.h
82526be defconfig: disable SYSVIPC
8bd2a88 defconfig: disable build of some test stuff
d0cfe0a add .gitignore files to keep tree clean
e666e4e msm: use of swp{b} is deprecated for ARMv6+
40b7a41 bluetooth: fix warning
a93dc16 kernel: Replace timeconst.pl with a bc script
2575654f module: force texfat module load
b829fd7 Makefile: use ccache
ac98e29f Makefile: Remove CC wrapper
ef21faf Import MOB31E.Z1.3657 source

Source

https://github.com/tunturn/android_kernel_aries_concept/