Hello everyone!! Want to try f2fs on your device? You are at the good place to give it a try!
disclaimer said:
I am not responsible for any damage to your phone.
Read before downloading or posting in the thread:
Proceed with caution if you have no experience.
Click to expand...
Click to collapse
INTRODUCTION
I wanted to port f2fs for our device since it gives a nice performance boost. After few months of learning how to develop and program his own custom kernel here is my first personal release.
This is an open devDB xda project. Feel free to fill in bugs reports, feature(s) requests and reviews.
To those who don't know what is f2fs
F2FS (Flash-Friendly File System) is a flash file system created by Jaegeuk Kim (Hangul: 김재극) at Samsung for the Linux operating system kernel.[2]
The motive for F2FS was to build a file system that from the start takes into account the characteristics of NAND flash memory-based storage devices (such as solid-state disks, eMMC, and SD cards), which are widely used in computer systems ranging from mobile devices to servers.
Click to expand...
Click to collapse
Some benchmarks to point out the performance difference between EXT4 and F2FS
AndroGuide benchmarks : ext4 vs f2fs ( seemes to be using the most recent f2fs)
XDA's benchmark : ext4 vs f2fs
Phoronix's benchs ext4 vs btfrs vs f2fs
Another Phoronix's bench
Click to expand...
Click to collapse
Optipops features :
Kernel's features :
Compiled with linaro 4.7.4 with optimized flags : O3, etc.
Linux 3.4.67: synced with cyanogen 's manta kernel git, google's common branch, some parts of the kernel updated to 3.4.108, and many fixes from CAF,linaro, blabla.
Governors : interactive, intelliactive,intellimm,conservative, ktoonservative , performance, userspace, nigtmahre(on request)(ask for some others if you prefer them over the one I provide)
I/O schedulers : noop, cfq, deadline, bfq(tweaked for nand devices),fiops,zen,sio
f2fs updated from upstream git(08 september 2015)
UV and OC both for the GPU AND CPU supported
Control for the gpu table thresholds
touchboost driver for cpu and gpu in replacement of crappy powerHAL touch interface ( thx @franciscofranco to have adapted qcom code to ageneric one)
arm optimized crypto algorithms.(for the ones that want to crypt their data)
f2fs crypto support
kernel neon support
kernel side touch boost driver
double tap to wake
AnyKernel2 Solution: Allow users to install the kernel on different distribution. It also detects the filesystem of your partitions to produce a correct fstab. ( f2fs is supported on any partition BUT system )
and many more patches(see my github!)
installation instructions :
Wipe Data Cache System
Flash The kernel
If issues are met, delete the
Code:
/sdcard/Android/data
folder.
IF YOU FACE ERROR/ISSUES PLEASE USE MY TWRP CUSTOM RECOVERIES AT this link
How To Migrate one partition from ext4 to f2fs(vice-versa):INSTRUCTIONS FOR TWRP 2.8.x.y
GunnerOnASpooky said:
1. Backup everything from your internal storage to your PC or what ever, if you are migrating /data partition,since the entire internal storage is going to get wiped out with format!!!!!!!!!!
2. Download the recovery from my gdrive
3. Flash the recovery from the bootloader (fastboot flash recovery XX.img)
4. Reboot into the newly flashed recovery
5. Choose wipe, advanced, then select the partition you want to change its filesystems
6. Choose the change file system option on the right
7. Select change file system again
8. Select f2fs(or ext4)
9. Repeat for all you wish to convert (I did system!/data/cache but /system partition should be working if you rom package flash extracts instead of flashing an image)
Click to expand...
Click to collapse
Credits:
@ktoonsez - for his kernel , KT- twrp and his work.
Team Win and @helicopter88 @Dees_Troy for their help.
Samsung for F2FS: heh!
@craigacgomez - for thunderkat kernel
@JustArchi - for his opti v3 build rom.
Cyanogendmod for their ROM
Linaro foundation for their toolchains
@faux123 for his intelliactive governor
@franciscofranco - for his work on touch boost drivers and mako kernel
@osm0sis - for AnyKernel2
Source:
KT-TWRP
kernel
Ramdisks
DOWNLOADS LINK
XDA:DevDB Information
Khaon's project for Nexus 10, Kernel for the Google Nexus 10
Contributors
Khaon, ktoonsez,dees_troy,cyanogenmod,faux123,franciscofranco
Source Code: https://github.com/Khaon/kernel_samsung_manta
Kernel Special Features: This kernel is compiled with lastest UBERTC 4.8.5 It features UC/OC, UV, bfq, optimizaed compillation falgs, uksm, frandom, supports f2fs, dynamiclly mounts f2fs/ext4 partitions and more
Version Information
Status: Stable
Stable Release Date: 2015-01-03
Created 2014-09-27
Last Updated 2015-01-12
XDA:DevDB Information
Khaon's kernel for Nexus 10, Kernel for the Google Nexus 10
Contributors
Khaon, Cl3Kener, ktoonsez,dees_troy,cyanogenmod,faux123,franciscofranco,freak_97,despairfactor
Source Code: https://github.com/Khaon/kernel_samsung_manta
Kernel Special Features: This kernel is compiled with lastest UBERTC 4.8.5. It features UC/OC, UV, bfq, optimizaed compillation falgs, uksm, frandom, supports f2fs, dynamiclly mounts f2fs/ext4 partitions and more
Version Information
Status: Stable
Stable Release Date: 2015-07-13
Beta Release Date: 2015-04-17
Created 2014-09-27
Last Updated 2015-09-06
XDA:DevDB Information
Khaon's kernel for Nexus 10, Kernel for the Google Nexus 10
Contributors
Khaon, Cl3Kener, ktoonsez,dees_troy,cyanogenmod,faux123,franciscofranco,freak_97,despairfactor
Source Code: https://github.com/Khaon/kernel_samsung_manta
Kernel Special Features: This kernel is compiled with lastest UBERTC 4.8.5. It features UC/OC, UV, bfq, optimizaed compillation falgs, uksm, frandom, supports f2fs, dynamiclly mounts f2fs/ext4 partitions and more
Version Information
Status: Stable
Stable Release Date: 2015-09-08
Beta Release Date: 2015-04-17
Created 2014-09-27
Last Updated 2015-09-08
XDA:DevDB Information
Khaon's kernel for Nexus 10, Kernel for the Google Nexus 10
Contributors
Khaon, Cl3Kener, ktoonsez,dees_troy,cyanogenmod,faux123,franciscofranco,freak_97,despairfactor
Source Code: https://github.com/Khaon/kernel_samsung_manta
Kernel Special Features: This kernel is compiled with lastest UBERTC 4.8.5. It features UC/OC, UV, bfq, optimizaed compillation falgs, uksm, frandom, supports f2fs, dynamiclly mounts f2fs/ext4 partitions and more
Version Information
Status: Stable
Stable Release Date: 2015-09-08
Beta Release Date: 2015-04-17
Created 2014-09-27
Last Updated 2016-04-02
Changelogs
Recommanded applications
Kernel Audiutor for kernel management. It supports for now all kernel features but gpu overclocking.
Changelogs
from 08/04 to 13/08
Merge remote-tracking branch 'exynos/android-exynos-manta-3.4-lollipop-mr1' into khaon-new
Merge remote-tracking branch 'common/android-3.4' into khaon-new
gpu:mali:dvfs:set gpu boost sysfs interface in msecs instead of usecs
mali:dvfs:enhanced gpu voltage control
defconfig:enabled f2fs crypto
f2fs:fix compilation errors when crypto is enabled
KEYS: Add invalidation support
f2fs: fix the prototype of find_target_dentry
Revert "vfs: make it possible to access the dentry hash/len as one 64-bit entry"
f2fs: import upstream sources
defconfig:compile nightmare governor
cpufreq:add nightmare governor drivers/cpufreq/Makefile
ipv6: clean up anycast when an interface is destroyed
ipv6: sysctl to restrict candidate source addresses
dt2w: enhancements to prevent the device to be all the time awake when dt2w is disabled
Merge remote-tracking branch 'common/android-3.4' into HEAD
Fix incorrect conflict resolution in "vfs: Add setns support for the mount namespace"
proc: fix build broken by proc inode per namespace patch
Revert "android: drivers: Fix build broken by android debugfs fix."
android: drivers: Fix build broken by android debugfs fix.
proc: Allow proc_free_inum to be called from any context
proc: Usable inode numbers for the namespace file descriptors.
proc: Fix the namespace inode permission checks.
proc: Generalize proc inode allocation
vfs: Allow unprivileged manipulation of the mount namespace.
vfs: Only support slave subtrees across different user namespaces
vfs: Add a user namespace reference from struct mnt_namespace
vfs: Add setns support for the mount namespace
consitify do_mount() arguments
do_add_mount()/umount -l races
fs: introduce inode operation ->update_time
VFS: Comment mount following code
VFS: Make clone_mnt()/copy_tree()/collect_mounts() return errors
get rid of magic in proc_namespace.c
get rid of ->mnt_longterm
vfs: umount_tree() might be called on subtree that had never made it
brlocks/lglocks: API cleanups
brlocks/lglocks: turn into functions
lglock: remove online variants of lock
Revert "vfs: umount_tree() might be called on subtree that had never made it"
android: drivers: workaround debugfs race in binder
Revert "android: drivers: workaround debugfs race in binder"
ipv4: Missing sk_nulls_node_init() in ping_unhash().
f2fs:fix for linux 3.4
remove permissive mode by default
fs: Introduce FALLOC_FL_ZERO_RANGE flag for fallocate
fs: Add new flag(FALLOC_FL_COLLAPSE_RANGE) for fallocate
f2fs: disable the discard option when device doesn't support
f2fs: fix a deadlock for summary page lock vs. sentry_lock
f2fs: recovering broken superblock during mount
f2fs: truncate data blocks for orphan inode
f2fs: fix building on 32-bit architectures
f2fs: avoid buggy functions
f2fs: add compat_ioctl to provide backward compatability
f2fs: do not issue next dnode discard redundantly
f2fs: add default mount options to remount
f2fs: report unwritten area in f2fs_fiemap
f2fs: avoid value overflow in showing current status
f2fs: support FALLOC_FL_ZERO_RANGE
f2fs: support FALLOC_FL_COLLAPSE_RANGE
f2fs: introduce f2fs_replace_block() for reuse
block: introduce the BFQ-v7r8 I/O sched for 3.4
cpufreq.h:correct the prototype of cpufreq_frequency_table *cpufreq_frequency_get_table_ordered
doubletap2wake:initial reworking
ptrace: fix ptrace defect cause by a merge fail
android: drivers: workaround debugfs race in binder
neigh: Better handling of transition to NUD_PROBE state
New Build Breakage in branch: kernel-m-dev-tegra-flounder-3.10 @ 1960706
Revert "double tap to wake initial introduction"
Revert "DT2W: give the capacity to wake to the driver and let the driver awake"
Merge remote-tracking branch 'common/android-3.4' into khaon-new
gpu:mali:add control for the gpu table and gpu boost duration, also decreased the gpu governor poll rate from 100 ms to 75 ms
gpu:mali:added an sysfs interface for the gpu boost freq
invensense: testBatchAndFlush CTS issues
selinux: enable per-file labeling for debugfs files.
suspend: Return error when pending wakeup source is found.
ipv4: Missing sk_nulls_node_init() in ping_unhash().
added a sysfs interface for the gpu voltage
build script updated
thermal: increased the start throlle a bit for the gpu and increase for the mem
gpu:reworked the voltage and increased voltage for the 864 cache speed
DT2W: give the capacity to wake to the driver and let the driver awake
net/unix: sk_socket can disappear when state is unlocked
selinux: enable genfscon labeling for sysfs and pstore files
selinux: enable per-file labeling for debugfs files.
selinux: correctly label /proc inodes in use before the policy is loaded
thermal:tmu-exynos:reworked slightly the driver
suspend: Return error when pending wakeup source is found.
gpu/cpu oc: little changes for the voltage
slight rework of compil flags
gpu oc: introduction of 667Mhz and 720Mhz steps
double tap to wake initial introduction
f2fs: fix counting the number of inline_data inodes
f2fs: don not re-lookup nat cache with same nid
f2fs: remove unneeded f2fs_make_empty declaration
f2fs: issue discard with finally produced len and minlen
f2fs: introduce discard_map for f2fs_trim_fs
f2fs: revmove spin_lock for write_orphan_inodes
f2fs: split find_data_page according to specific purposes
f2fs: add need_dentry_mark
f2fs: fix race on allocating and deallocating a dentry block
f2fs: introduce dot and dotdot name check
f2fs: move get_page for gc victims
f2fs: add sbi and page pointer in f2fs_io_info
f2fs: add f2fs_may_inline_{data, dentry}
f2fs: clean up f2fs_lookup
f2fs: introduce f2fs_commit_super
f2fs: add f2fs_map_blocks
f2fs: add feature facility in superblock
f2fs: move existing definitions into f2fs.h
f2fs: add missing version info in superblock
f2fs: fix not to check IS_ERR for null pointer
f2fs: make has_fsynced_inode static
f2fs: add offset check routine before punch_hole() in f2fs_fallocate()
f2fs: use is_valid_blkaddr to verify blkaddr for readability
f2fs: fix wrong error hanlder in f2fs_follow_link
Revert "f2fs: enhance multi-threads performance"
touchboost:increased the interval from 150ms to 300ms
build script updated
gpu:arm:mali:add input touchboost
SELinux: ss: Fix policy write for ioctl operations
seccomp: Replace BUG(!spin_is_locked()) with assert_spin_lock
nf: IDLETIMER: Adds the uid field in the msg
drbd: merge_bvec_fn: properly remap bvm->bi_bdev
writeback: fix a subtle race condition in I_DIRTY clearing
writeback: Move I_DIRTY_PAGES handling
input: evdev: Move wake_lock_destroy call
f2fs:sync with upstream branch
ipv4: Missing sk_nulls_node_init() in ping_unhash().
SELinux: ss: Fix policy write for ioctl operations
seccomp: Replace BUG(!spin_is_locked()) with assert_spin_lock
nf: IDLETIMER: Adds the uid field in the msg
VFS: Make more complete truncate operation available to CacheFiles
Merge remote-tracking branch 'common/android-3.4' into khaon-new
SELinux: use deletion-safe iterator to free list
subsystem: CPU FREQUENCY DRIVERS- Set cpu_load calculation on current frequency
gpu:mali:dvfs:reworked stock dvfs table
f2fs: flush symlink path to avoid broken symlink after POR
f2fs: avoid abnormal behavior on broken symlink
f2fs: change 0 to false for bool type
arm:midguard:fixed bus frequency for 533 mhz
kernel: add support for gcc 5
arm:midgard:decreased up threshold for gpu governor
vfs: check if f_count is 0 or negative
hrtimer: Prevent remote enqueue of leftmost timers
hrtimer: Prevent all reprogramming if hang detected
hrtimer: Set expiry time before switch_hrtimer_base()
sched/fair: Improve the ->group_imb logic
sched/fair: Revert sched-domain iteration breakage
sched/fair: Propagate 'struct lb_env' usage into find_busiest_group
sched/fair: Add some serialization to the sched_domain load-balance walk
sched/fair: Let minimally loaded cpu balance the group
sched: Change rq->nr_running to unsigned int
sched/fair: Implement fast idling of CPUs when the system is partially loaded
sched: Fix inaccurate accounting for real-time task
sched: Micro-optimize the smart wake-affine logic
sched: Implement smarter wake-affine logic
sched/idle: Avoid spurious wakeup IPIs
sched/__wake_up_sync_key(): Fix nr_exclusive tasks which lead to WF_SYNC clearing
Merge remote-tracking branch 'common/android-3.4' into khaon-new
SELinux: per-command whitelisting of ioctls
security: lsm_audit: add ioctl specific auditing
SELinux: Update policy version to support constraints info
SELinux: add default_type statements
SELinux: allow default source/target selectors for user/role/range
selinux: add SOCK_DIAG_BY_FAMILY to the list of netlink message types
selinux/nlmsg: add XFRM_MSG_MAPPING
selinux/nlmsg: add XFRM_MSG_MIGRATE
selinux/nlmsg: add XFRM_MSG_REPORT
selinux/nlmsg: add XFRM_MSG_[NEW|GET]SADINFO
selinux/nlmsg: add XFRM_MSG_GETSPDINFO
selinux/nlmsg: add XFRM_MSG_NEWSPDINFO
cpufreq:interactive:let's try those tunnables
08/03
kernel
squashed commits from upstream kernel revision:
blktrace: fix accounting of partially completed requests
block: fix a probe argument to blk_register_region
vfs,proc: guarantee unique inodes in /proc
mm: fix aio performance regression for database caused by THP
ASoC: wm_hubs: Add missing break in hp_supply_event()
ALSA: fix oops in snd_pcm_info() caused by ASoC DPCM
can: dev: fix nlmsg size calculation in can_get_size()
ipv4: fix ineffective source address selection
proc connector: fix info leaks
net: heap overflow in __audit_sockaddr()
net: do not call sock_put() on TIMEWAIT sockets
tcp: do not forget FIN in tcp_shifted_skb()
tcp: must unclone packets before mangling them
OOM, PM: OOM killed task shouldn't escape PM suspend
ALSA: pcm: use the same dma mmap codepath both for arm and arm64
random: add and use memzero_explicit() for clearing data
crypto: more robust crypto_memneq
vfs: fix data corruption when blocksize < pagesize for mmaped data
target: Fix queue full status NULL pointer for SCF_TRANSPORT_TASK_SENSE
block: fix alignment_offset math that assumes io_min is a power-of-2
fix misuses of f_count() in ppp and netlink
fs: make cont_expand_zero interruptible
fs: Fix theoretical division by 0 in super_cache_scan().
framebuffer: fix border color
power: charger-manager: Fix NULL pointer exception with missing cm-fuel-gauge
kvm: don't take vcpu mutex for obviously invalid vcpu ioctls
int_sqrt: Improve 3x faster integer sqrt.
net: ping: Return EAFNOSUPPORT when appropriate.
android: base-cfg: turn off /dev/mem and /dev/kmem
net: ipv6: make "ip -6 route get mark xyz" work.
Set the iif for IPv6 packets as well.
Merge remote-tracking branch 'common/android-3.4' into khaon-new
sched: Fix reference to stale task_struct in try_to_wake_up()
Merge remote-tracking branch 'common/android-3.4' into khaon-new
fs/proc/task_mmu.c: add user-space support for resetting mm->hiwater_rss (peak RSS)
gpu:mali:
reworked gpu governor table
fs:
f2fs:updatd to upstream revision
defconfig:
defconfig:enabled neon features
defconfig:add NTFS support
cpufreq:
cpufreq:ktoonservative:made touch boost smarter
cpufreq:interactive:increased DOWN_LOW_LOAD_THRESHOLD to 20%
Rom(changes from optipop official sources):
core:
Add support for exec command in init scripts.
init: Fix memory corruption when sanitizing platform paths
init: Do not call recursive_restorecon on soc.0
init: Make restorecon_recursive work for /data/
fs_mgr: Skip filesystem check unless fs_type matches
Add libminshacrypt static lib
device/manta:
fstab:removed fastboot and flush_merge mount options
twrp:added fstab and updated config
manta: Use better mount options
BoardConfig:enabled f2fs for userdata image
Audio proprietaries from stock ROM
Add support for more filesystems
Enabled BLE, GATT, SMP (bluetooth low-energy)
OTG USB storage support
Update full_manta properties
ART dex2oat optimisation properties
Final final final N5 wallpaper.
fstab: enabled f2fs support
enable inline kernel building
audio_effects:added support for viper4audio
post install validation:resize the system partition after installing the rom
added reboot to recovery button and screenshot in the power menu
manta: add GlobalActionList config
call my vendor script
enable translucent decor
Remove obsolete dalvik.gc.type-precise
manta: Enable libm optimizations
enabled optipop optimizations
power: updated to my personnal library
added twrp config for manta
TWRP 2.8.5.0:
switched to cm12's f2fs tools(1.4.1)
use my kernel instead of stock one with f2fs patches
16/02
Kernel changelog :
f2fs synced with latest revision
merged aosp new commits
reworked ktoonservative a bit
picked few patches from upstream 3.4.106 kernel
Click to expand...
Click to collapse
20/01
Hello little update to the kernel:
introduced 864 Mhz cache frequencies for 1.6+++ freq.
merged with google's androidd 3.4 branch: squashed the following commits:
Merge remote-tracking branch 'common/android-3.4' into lollipop
ARM: pull in <asm/simd.h> from asm-generic
ARM: be strict about FP exceptions in kernel mode
ARM: move VFP init to an earlier boot stage
crypto: create generic version of ablk_helper
ARM: add support for kernel mode NEON
crypto: sha - Handle unaligned input data in generic sha256 and sha512.
crypto: sha512_generic - set cra_driver_name
crypto: sha512 - Expose generic sha512 routine to be callable from other modules
crypto: create generic version of ablk_helper
defconfig updated:enabled arm crypto
KEYS: Provide signature verification with an asymmetric key
KEYS: Asymmetric public-key algorithm crypto key subtype
KEYS: Implement asymmetric key type
crypto: add crypto_[un]register_shashes for [un]registering multiple shash entries at once
ARM: 8120/1: crypto: sha512: add ARM NEON implementation
ARM: 8119/1: crypto: sha1: add ARM NEON implementation
ARM: 8118/1: crypto: sha1/make use of common SHA-1 structures
crypto: arm-aes - fix encryption of unaligned data
CRYPTO: Fix more AES build errors
ARM: add .gitignore entry for aesbs-core.S
ARM: add support for bit sliced AES using NEON instructions
ARM: move AES typedefs and function prototypes to separate header
ARM: 7837/3: fix Thumb-2 bug in AES assembler code
ARM: 7723/1: crypto: sha1-armv4-large.S: fix SP handling
ARM: 7626/1: arm/crypto: Make asm SHA-1 and AES code Thumb-2 compatible
arm/crypto: Add optimized AES and SHA1 routines
sync with f2fs upstream branch
squashed few commits from CAF:
mm: vmscan: lock page on swap error in pageout
Staging: android: binder: More offset validation
Input: Send events one packet at a time
binder: NULL pointer reference
staging: binder: add vm_fault handler
staging: binder: Change binder mutex to rtmutex.
report if instablity!
02/01
khaon said:
kernel:
cpufreq:
cpufreq: Retain only online cpus in managed_policy->cpus
cpufreq:interactive:reworked tunnables
cpufreq:interactive: making sure cpufreq stays low when it needs to stay low
cpufreq:interactive:switched to touchboost driver
cpufreq: interactive: prevents the frequency to directly raise above the hispeed_freq from a lower frequency.
cpufreq: interactive: don't skip waking up speedchange_task if target_freq > policy->cur
cpufreq: interactive: delete timers for GOV_START
cpufreq: interactive: Fix null pointer dereference in interactive governor
cpufreq: interactive: Remove unnecessary cpu_online() check
cpufreq:ktoonservative:switch to generic input touchboost driver
Tweaks on OC (from @ktoonsez )
Makefile:
Makefile:removed graphite flags
exynos:
exynos:increased thermald throttling temp
drivers:
input: touchboost: add my generic touchboost driver governor agnostic. Its slightly changed from my N5, N4 and N7 version to adapt to this arch ( from @franciscofranco )
filesystems:
f2fs:sync with upstream branch
frandom: A fast random number generator
block:
block:bfq:adjusted tunnables for nand devices
block:bfq v7r7 v7r7: . BUGFIX: Prevent the OOM queue from being involved in the queue cooperation mechanism. In fact, since the requests temporarily redirected to the OOM queue could be redirected again to dedicated queues at any time, the state needed to correctly handle merging with the OOM queue would be quite complex and expensive to maintain. Besides, in such a critical condition as an out of memory, the benefits of queue merging may be little relevant, or even negligible. . IMPROVEMENT: Let the OOM queue be initialized only once. Previously, the OOM queue was reinitialized, at each request enqueue, with the parameters related to the process that issued that request. Depending on the parameters of the processes doing I/O, this could easily cause the OOM queue to be moved continuously across service trees, or even across groups. It also caused the parameters of the OOM queue to be continuously reset in any case. . CODE IMPROVEMENT. Performed some minor code cleanups, and added some BUG_ON()s that, if the weight of an entity becomes inconsistent, should better help understand why.
kernel:
sched: LOAD_FREQ (4*HZ+61) avoids loadavg Moire. From http://ripke.com/loadavg/moire
Merge remote-tracking branch 'common/android-3.4' into khaon-new
Rom:
build:use a modular list to disable O3 optimizations (fixes for example blue tooth crashes, report any new other FC's, if they related to the optimizations flags, I can try tracking down the relevant module and add it to the list.
audio_effects:added support for viper4audio
power: removed touch screen boost's code because we use kernel side touch boost driver
Click to expand...
Click to collapse
khaon said:
19/12
khaon said:
Rom:
powerHAL: reworked the driver to prevent overriding user's CPU freq speed to 1.7GHz.
powerHAL: reworked the driver to break early on screen interaction if the current cpu governor is not interactive
build:clang: compile the rom with Ofast instead of O3 ( since this flag enables ffast-math, it violates IEEE, thus it may bring instability or decrease in performance, report weird behaviour.
Kernel:
ext4 updated to 3.4.105
frandom in replacement for random and uradom
thermal throttling: squashed @ktoonsez thermal algorithm
various cherry-picking from 3.4.105 kernel and from linux kernel upstream(include among other lz4 up to date, various arm patches, few patches
Anykernel:
Full switching to anykernel2 solution by osmosis:
patch the fstab upon flashing the zip package accordingly to your partitions' file systems
post-init script added to tweak vm,io,sched,...
Click to expand...
Click to collapse
19/11
khaon said:
Changelog
TWRP: added unofficial 2.8.1.0 build supporting f2fs
Click to expand...
Click to collapse
20/10
khaon said:
Changelog
ROM:
20/10 unoficial nightly compiled with linaro 4.8.4 with this build
Shipped with my linux mainline kernel
Kernel :
updated to Linux3.4.104
sync with google's kernel 3.4 banch
sync with f2fs branch
frandom: A fast random number generator as a kernel module for Linux.
mm: Added file system dynamic read-ahead (Credits to Chad Gooldman)
block:bfq:updated to v7r6
Click to expand...
Click to collapse
23/09/14
Linux 3.4.103
Makefile : compiling with graphite
frandom: A fast random number generator as a kernel module for Linux.
Vibration interface goes LIVE
Click to expand...
Click to collapse
F2FS :
f2fs: refactor flush_nat_entries to remove costly reorganizing ops
f2fs: introduce FITRIM in f2fs_ioctl
f2fs: introduce cp_control structure
f2fs: use more free segments until SSR is activated
f2fs: change the ipu_policy option to enable combinations
f2fs: fix to search whole dirty segmap when get_victim
f2fs: fix to clean previous mount option when remount_fs
f2fs: skip punching hole in special condition
f2fs: support large sector size
f2fs: fix to truncate blocks past EOF in ->setattr
f2fs: update i_size when __allocate_data_block
f2fs: use MAX_BIO_BLOCKS(sbi)
f2fs: remove redundant operation during roll-forward recovery
f2fs: do not skip latest inode information
f2fs: fix roll-forward missing scenarios
f2fs: fix conditions to remain recovery information in f2fs_sync_file
f2fs: introduce a flag to represent each nat entry information
f2fs: use meta_inode cache to improve roll-forward speed
f2fs: fix double lock for inode page during roll-foward recovery
f2fs: fix a race condition in next_free_nid
Click to expand...
Click to collapse
Merge remote-tracking branch 'common/android-3.4' into origin/google_mainline:
seccomp: Use atomic operations that are present in kernel 3.4.
seccomp: implement SECCOMP_FILTER_FLAG_TSYNC
introduce for_each_thread() to replace the buggy while_each_thread()
seccomp: allow mode setting across threads
seccomp: introduce writer locking
seccomp: split filter prep from check and apply
sched: move no_new_privs into new atomic flags
ARM: add seccomp syscall
seccomp: add "seccomp" syscall
seccomp: split mode setting routines
seccomp: extract check/assign mode helpers
seccomp: create internal mode-setting function
MAINTAINERS: create seccomp entry
CHROMIUM: ARM: r1->r0 for get/set arguments
CHROMIUM: seccomp: set -ENOSYS if there is no tracer
CHROMIUM: ARM: arch/arm: allow a scno of -1 to not cause a SIGILL
CHROMIUM: arch/arm: select HAVE_ARCH_SECCOMP_FILTER
CHROMIUM: arch/arm: move secure_computing into trace; respect return code
CHROMIUM: arch/arm: add asm/syscall.h
samples/seccomp: fix dependencies on arch macros
seccomp: fix build warnings when there is no CONFIG_SECCOMP_FILTER
seccomp: ignore secure_computing return values
seccomp: use a static inline for a function stub
Documentation: prctl/seccomp_filter
Fix execve behavior apparmor for PR_{GET,SET}_NO_NEW_PRIVS
Add PR_{GET,SET}_NO_NEW_PRIVS to prevent execve from granting privs
Click to expand...
Click to collapse
13/09/14 :
Recovery:
Added twrp-2.8.0.0 supporting mounting f2fs partitions
Click to expand...
Click to collapse
Ramdisk :
[
sync with cm
using lz4 compression algorithm for both ramdisk and kernel image
unified all version into a single kernel : at boot a script check which is the fs of each partition
Click to expand...
Click to collapse
Khaon's kernel :
added lz4 kernel support for decompression
f2fs synced with upstream dev branch.
ARM :
optimized AES and SHA1 routines
sha1: add ARM NEON implementation
support neon in kernel
commits from former kernels
commits from linux/master, google's kernel/common, cyanogenmod's manta branches.
Click to expand...
Click to collapse
Click to expand...
Click to collapse
Reserved
Reserved
Thanks a lot for your work.
I'll try it with CM asap.
For more download convenience, can you upload an all-in-one zip with recovery and the 2 kernel somewhere else than github, it could be difficult to download from there. Thanks again.
yeah, i ll put it on mediafire.
Khaon said:
yeah, i ll put it on mediafire.
Click to expand...
Click to collapse
Awesome work man!
F2FS fully working on System/Data/Cache with SlimKat 5.8 weekly 4.4.3 and your F2FSall Ktoonsez kernel...
Nexus 10 is flying now!
EDIT: I'm getting a bunch of freeze-ups which result into reboots, is this happenng to anyone else?
Steps i took:
fastboot flashed kt-twrp
changed settings (including /system)
wiped what needed to be wiped
replaced Rom script( SlimKat weekly build 4.4.3)
installed rom, correct kernel, and gapps
Any advice would be appreciated!
I have some pb too. It's quite impossible for me to copy something from my usb stick to the internal memory. It freezes almost every time.
No problem in ext4 with same ROM.
Only problems I encountered were freezes/reboots for the very first hours of use, been so far in full f2fs with cyanogen M7 no probs here.
However, did you try with only cache+data partition?
Yep, I was on cm nightlies and data/cache only.
Now I'm trying omni, I will try with this ROM
Could you paste the content of the fstab please?
Envoyé de mon MI 2S en utilisant Tapatalk
About the fstab: What updates the fstype for the partitions we choose to convert to F2FS? Is TWRP 'smart' enough to write the proper /fstab.manta? I thought the boot.img in the ROM zip contained this file?
Really excited to switch to F2FS, I've been running it on my Arch boxes for a while now. Anyone worked on an auto updater for the updater-script? I'm on OmniROM and flash daily so it would be nice to not have to hand edit and re-pack the zip every day. I'd look into doing it but I'm not super confident I'd go about it the proper way.
b1g.p0ppa said:
About the fstab: What updates the fstype for the partitions we choose to convert to F2FS? Is TWRP 'smart' enough to write the proper /fstab.manta? I thought the boot.img in the ROM zip contained this file?
Really excited to switch to F2FS, I've been running it on my Arch boxes for a while now. Anyone worked on an auto updater for the updater-script? I'm on OmniROM and flash daily so it would be nice to not have to hand edit and re-pack the zip every day. I'd look into doing it but I'm not super confident I'd go about it the proper way.
Click to expand...
Click to collapse
For now, TWRP can detect when you are wiping your partition what tools it would has to use. I.e : if you choose to wipe data partition, system, etc.
And use the correct tool accordingly. But official version do not mount yet however f2fs partition.
The fstab is in the ramdisk, so contained yep in the boot.img. But there are few mount options, some may need to be activated in case of unstability
Khaon said:
For now, TWRP can detect when you are wiping your partition what tools it would has to use. I.e : if you choose to wipe data partition, system, etc.
And use the correct tool accordingly. But official version do not mount yet however f2fs partition.
The fstab is in the ramdisk, so contained yep in the boot.img. But there are few mount options, some may need to be activated in case of unstability
Click to expand...
Click to collapse
Thank you for your reply. Perhaps the best thing is to create a flashable zip to be run after ROM flash to install fstab.manta?
Also, FWIW, here's some sed commands to update your updater-script per the instructions in the OP:
Code:
sed -i 's/^mount("ext4".*\/system*/run_program\("\/sbin\/busybox", "mount", "\/system"); /' updater-script
sed -i 's/^format("ext4".*\/system*/run_program("\/sbin\/mkfs.f2fs", "\/dev\/block\/platform\/dw_mmc.0\/by-name\/system"); /' updater-script
b1g.p0ppa said:
Thank you for your reply. Perhaps the best thing is to create a flashable zip to be run after ROM flash to install fstab.manta?
Also, FWIW, here's some sed commands to update your updater-script per the instructions in the OP:
Code:
sed -i 's/^mount("ext4".*\/system*/run_program\("\/sbin\/busybox", "mount", "\/system"); /' updater-script
sed -i 's/^format("ext4".*\/system*/run_program("\/sbin\/mkfs.f2fs", "\/dev\/block\/platform\/dw_mmc.0\/by-name\/system"); /' updater-script
Click to expand...
Click to collapse
Hello I just added some executable java program that convert a rom script to be f2fs compatible.
Also, having less issues with lastest kernel build but I tried it on new roms. ROMs fully working so far and stable : liquidSmooth 3.1 & slimkat 4.9.
Before I was using CM11 M7 it was working but was encoutering some freezes/reboot- especially at the beginning - but then it was ok. I can not tell if this is still happening with cm rom.
I haven't test the pc program on windows if anyone could say it does work, thx!
EDIT : thank to @dust40; he told me the tool was working on Windows as well! Should work on mac too then i guess.
Well I successfully converted /data and cache to F2FS. I made the effort way more work than it had to be by preserving my data. WAY more work. Booted in recovery mode I tar'ed up /data to a exfat formatted usb-otg drive then ran the conversion. Ran into 'value too large for defined data type' errors from tar when extracting. I ended up extracting the tarball onto my workstation, deleting the file it crapped out on, tar'ing it all back up to the usb drive and re-running the extraction. Had to repeat this procedure a good dozen times and I ended up with messed up permissions on all my data. I don't suggest anyone try this because it would have taken much less time to just set up a fresh installation, but if you do here's some good commands to fix up permissions (TWRP's fix permissions command doesn't fix what I messed up). I found these commands at http://forum.xda-developers.com/showthread.php?t=2222297 but had to adjust them a little bit. The chown command has to be run when booted to android, the chmod commands can be run from either recovery or android. Reboot immediately after running. Best to run through adb shell than in an app on the tablet.
Code:
find /data/media/ -exec chown 1023,1023 {} \;
find /data/media/ -type d -exec chmod 775 {} \;
find /data/media/ -type f -exec chmod 664 {} \;
@Khaon, can you ask ktoonsez to compile 4.4.4 versions of the kernels? Latest OmniROM update for manta is 4.4.4 but will not boot with this kernel. And obviously I cannot run any other kernel as none others support F2FS. Thanks in advance! And thanks for putting this thread together. Without your good instructions I probably wouldn't have had the guts to convert this early.
One last thing, I can report that OmniROM works perfectly with /data and cache formatted as F2FS (once permissions are set right!). And since I preserved my data I have an apples to apples comparison of performance and it is noticeably faster and smoother!
kt-recovery stuck at splash screen
Hi,
I had originally posted this in ktmanta thread:
I have been running F2FS on cache+data for past 2 weeks and it works very well (still some strange system freezes, i will need to investigate further on that).
However, now, when i boot to recovery, screen stays stuck at splash screen showing "f2fs enabled by Ktoonsez..", and does not go anywhere else. i can still flash using adb, but clearly, it's less than convenient, and using twrp 2.7.10 is not an option, as it can't mount f2fs sdcard properly anyways.
with adb shell, i can see that all is mounted properly, f2fs or not, but obviously, it's less than ideal... i have attached /cache/recovery/log file .
Note: i connect usb cable 2 to 3 mn after waiting for splash screen to go away, and i pulled recovery log at that moment. this was also the only way to get out of this stuck mode, via 'adb reboot' command.
i also tried to re-flash recovery via fastboot, but that made no difference.
any help appreciated !
@ericp2 @b1g.p0ppa
Can you just try this recovery and tell me if you are running any issue? This is just last official twrp 2.7.1.0.
Just formated and installed a new ROM, ran into no issue, guess should be the same for you .
b1g.p0ppa said:
Well I successfully converted /data and cache to F2FS. I made the effort way more work than it had to be by preserving my data. WAY more work. Booted in recovery mode I tar'ed up /data to a exfat formatted usb-otg drive then ran the conversion. Ran into 'value too large for defined data type' errors from tar when extracting. I ended up extracting the tarball onto my workstation, deleting the file it crapped out on, tar'ing it all back up to the usb drive and re-running the extraction. Had to repeat this procedure a good dozen times and I ended up with messed up permissions on all my data. I don't suggest anyone try this because it would have taken much less time to just set up a fresh installation, but if you do here's some good commands to fix up permissions (TWRP's fix permissions command doesn't fix what I messed up). I found these commands at http://forum.xda-developers.com/showthread.php?t=2222297 but had to adjust them a little bit. The chown command has to be run when booted to android, the chmod commands can be run from either recovery or android. Reboot immediately after running. Best to run through adb shell than in an app on the tablet.
Code:
find /data/media/ -exec chown 1023,1023 {} \;
find /data/media/ -type d -exec chmod 775 {} \;
find /data/media/ -type f -exec chmod 664 {} \;
One last thing, I can report that OmniROM works perfectly with /data and cache formatted as F2FS (once permissions are set right!). And since I preserved my data I have an apples to apples comparison of performance and it is noticeably faster and smoother!
Click to expand...
Click to collapse
Glad you like the kernel running this, if I understood correctly, you wanted to back up the internal storage( so /data/media/0) and your apk folder to an exfat usb drive you mounted with otg? If the fs of this one was exfat that is probably the cause of your issues, I am not even sure our tablet nativly supports exfat( isn't a samsung fs that allows 32GB ++ partition size?). Lastest Omni kernel is booting I assume?
Khaon said:
@ericp2 @b1g.p0ppa
Can you just try this recovery and tell me if you are running any issue? This is just last official twrp 2.7.1.0.
Just formated and installed a new ROM, ran into no issue, guess should be the same for you .
Click to expand...
Click to collapse
Issue fixed. this version of TWRP starts correctly, and f2fs formatted sdcard can be listed, so i can again flash CM updates.
many thanks!
Related
HWA Kernel for HD2
My kernel is based on Tytyung's r2.5 base
and mix the KGSL driver from Code Aurora
This is a DEV thread. the latest code may cause some problems.
HTC HD2 is still the KING!!!!
My GIT Repository
Notes:
1. this kernel can't be used in CM7 ROM
2. the current(before 27 Apr 2012) existing android4.0 ROMs can not directly use this kernel, becasue they are not using the correct libs to match the latest KGSL driver.
Update: 4 MAY 2012
Rick_1995 back port all the KGSL , MDP from 2.6.38 to tytung's 2.6.32 and the latest build can be found here: link
Update: 13 MAY 2012
Rick_1995 and tytung made some more progress : link
Update: 19 JUN 2012
Memory tweaks : link
msm: kgsl: Add support for the preamble context flag link
Update: 21 JUN 2012
backport the following items from the latest KGSL driver: link
msm: kgsl: let postmortem dump find context switch IBs
msm: kgsl: fix size checking in adreno_find_region
msm: kgsl: Set default value of wait_timeout in the adreno_dev struct
msm: kgsl: Make sure WPTR reg is updated properly
msm: kgsl: fix error handling in adreno_waittimestamp()
msm: kgsl: let postmortem dump find context switch IBs
22 JUN 2012 update link
msm: kgsl: remove readl/writel use for dma memory
msm: kgsl: convert sg allocation to vmalloc
msm: kgsl: Allocate physical pages instead of using vmalloc
msm: kgsl: make cffdump work with the MMU enabled
msm: kgsl: Add ION as an external memory source
msm: kgsl: Fixup per-process memory statistics
msm: kgsl: Make sure kmemleak tool does not report incorrect mem leak.
msm: kgsl: Add a new property to IOCTL_KGSL_DEVICE_GETPROPERTY
msm: kgsl: Poke regularly in adreno_idle
msm: kgsl: increase valid timestamp range
msm: kgsl: flush outer cache for alloc_page() pages
msm: kgsl: Add a constant for adreno_ringbuffer_issuecmds flags
Important Tips : don't turn on the Settings->Developer options-> Force GPU rendering
Turn on this option will cause problem.
23 JUN 2012 update link
change back the pmem size to 32MB adsp_pmem to 41MB this is the default configuration, It seems resolved the crash problem with DesireC GPU libs.
In this version I have already include the DesireC gpu libs in the zip file.
With the new GPU libs the Chrome Browser is very smooth, the hardware H.264 decoder is working.
25 JUN 2012 update
need more people to do the new GPU libs test link
25 JULY 2012 update link
1. ignore the version check in Qdsp6 Vdec which can prevent some crash when the vdec being used.
2. msm: kgsl: Write the retired timestamp on resume
3. msm: kgsl: handle larger instruction store for adreno225
4. msm: kgsl: Add support for the A3XX family of GPUs
5. reduced the PMEM_ADSP size as the HW decoder still can't work on HD2 (now we have 420MB memory for userspace)
6. msm: kgsl: Update the GMEM and istore size for A320
7. msm: kgsl: return correct error code for unknown ioctls
8. msm: kgsl: handle all indirect buffer types in postmortem
9. msm: kgsl: Detach memory objects from a process ahead of destroy time
10. msm: kgsl: Find a mem_entry by way of a GPU address and a pagetable base
11. msm: kgsl: Cleanup header file macros
12. msm: kgsl: Add GMEM size configuration in gpu list
13. msm: kgsl: don't clear gpuaddr when unmapping global mappings
14. msm: kgsl: Do not dereference pointer before checking against NULL
add new GPU libs
31 JULY 2012 link
ics & jellybean HWA kernel updates
1. msm: kgsl: Change name of vmalloc allocator
2. msm: kgsl: Map a guard page on the back of GPU MMU regions
3. msm: kgsl: Optimize page_alloc allocations
4.msm: kgsl: Add markers to identify IB sequence start and end
5.msm: kgsl: rework ib checking
jellybean
1. include: checkout msm_mdp from ics_chocolate
6 AUG 2012 link
JellyBean Kernel
1. msm: kgsl: Add per context timestamp
2. net: netfilter: enable bandwidth control (data limit)
3. update base to tytung r3.3
7 AUG 2012 link
Jellybean Kernel
1.base: genlock: Remove genlock_release_lock and associated ioctl
2.base: genlock: allow synchronization with a single gralloc handle
3.base: genlock: remove BIT macro usage
7 AUG 2012 link
Jellybean Kernel
1. Fixed data limit
15 AUG 2012 link
ics
base: genlock: Remove genlock_release_lock and associated ioctl
base: genlock: allow synchronization with a single gralloc handle
base: genlock: remove BIT macro usage
ics & jellybean
Staging: android: binder: Don't call dump_stack in binder_vma_open
Staging: android: binder: Fix crashes when sharing a binder file between processes
drivers:staging:android Typos: fix some comments that have typos in them.
fs: Remove missed ->fds_bits from cessation use of fd_set structs internally
Staging:android: Change type for binder_debug_no_lock switch to bool
Staging: android: binder: Fix use-after-free bug
staging: android: lowmemorykiller: sysfs node and notifications
android, lowmemorykiller: remove task handoff notifier
staging: android: lowmemorykiller: Fix task_struct leak
staging: android/lowmemorykiller: Don't unregister notifier from atomic context
staging: android, lowmemorykiller: convert to use oom_score_adj
staging: android/lowmemorykiller: Do not kill kernel threads
staging: android/lowmemorykiller: No need for task->signal check
staging: android/lowmemorykiller: Better mm handling
staging: android/lowmemorykiller: Don't grab tasklist_lock
staging: android: lowmemorykiller: Don't wait more than one second for a process to die
Staging: android: fixed 80 characters warnings in lowmemorykiller.c
staging: android: lowmemorykiller: Ignore shmem pages in page-cache
staging: android: lowmemorykiller: Remove bitrotted codepath
staging: android: lowmemkiller: Substantially reduce overhead during reclaim
staging: android: lowmemorykiller: Don't try to kill the same pid over and over
android: logger: Allow a UID to read it's own log entries
staging: logger: hold mutex while removing reader
staging: android: logger: clarify non-update of w_off in do_write_log_from_user
staging: android: logger: clarify code in clock_interval
staging: android: logger: reorder prepare_to_wait and mutex_lock
staging: android: logger: simplify and optimize get_entry_len
staging: android: logger: Change logger_offset() from macro to function
Staging: android: fixed white spaces coding style issue in logger.c
android: logger: bump up the logger buffer sizes
pmem: Check for valid virtual address while flushing
pmem: Correctly account for aligned blocks
pmem_adsp (user-space) as non-cached
pmem_venc (user-space) as non-cached
change MSM_NAND_DMA_BUFFER_SIZE to SZ_1M
23 AUG 2012 link
ics & jellybean
ksm: remove unswappable max_kernel_pages …
ksm: fix bad user data when swapping
thp: ksm: free swap when swapcache page is replaced
staging: zram: fix zram locking
Staging: zram: Replace mutex lock by a R/W semaphore
Staging: zram: Add a missing GFP_KERNEL specifier in zram_init_device()
mm/ksm.c is doing an unneeded _notify in write_protect_page.
ksm: check for ERR_PTR from follow_page()
vmalloc(): adjust gfp mask passed on nested vmalloc() invocation
staging:lowmemkiller add Fudgeswap
drivers/mmc/host/msm-sdcc: remove dead config options
mmc: msm_sdcc: Fix possible circular locking dependency warning
mmc: msm_sdcc: Add prog done interrupt support
mmc: msm_sdcc: Fix bug in PIO mode when data size is not word aligned
mmc: msm: fix dma usage not to use internal APIs
mmc: change clock from 50Mhz to 64Mhz PCLK
mmc: change NR_SG from 32 to 128 for better performance
staging: Add Snappy compression support to zram
disable KSM for unstable reason while zram is enabled.
24 SEP 2012 link
ICS & JB
ashmem: Implement read(2) in ashmem driver
ashmem: Fix ASHMEM_SET_PROT_MASK.
ashmem: Support lseek(2) in ashmem driver
ashmem: Fix the build failure when OUTER_CACHE is enabled
ashmem: Fix ashmem vm range comparison to stop roll-over
Disabling Gentle Fair Sleepers improve UI responsiveness.
base: genlock: handle error while creating lock/handle inode
base: genlock: add magic to protect attach from non-genlock file
base: genlock: protect kref counting with spinlock
Staging: android: binder: Add some missing binder_stat_br calls
tweak iosched for better android performance
JB
video: msm: add mdp version to id string,and put a bogus panel id
Great thanks to Xylograph , dorimanx , Rick_1995, tytung and all of the guys who is reading this thread.
If you like my work please don't hesitate to press the Thanks button.
hypergamer1231 said:
You mean you wont release it today :-(
Click to expand...
Click to collapse
I don't really get what you guys mean by "no kernel?" or "no release today?".
The code is there in a GIT repository and as far as I understood the OP the kernel is useless without a matching ICS/CM9 ROM anyways, so it makes no sense at all to release a binary and get flooded with "OMG IT DOES NOT WORK WITH CM7" replies.
If you think you know what to do with this kernel you should be able to set up GIT and a Android compile toolchain and compile it from source. If you need a flashable ZIP, this kernel is useless for you anyways.
This thread is dev/bug collection-related, not a kernel download thread. Wait for Xylograph to release his CM9.
Calm down people, none of the roms available yet use it anyway.
Xylograph in pm (removed few things)
Ok guys,
I think my beta build is amost finished and I will be leaving my workplace soon and go home..
I will be available again in about 4 hours from now to work on it again.. Will check XDA every once in a while..
Cheers !
Click to expand...
Click to collapse
I could post link to the alpha test rom we used, but it isn't that exciting with most stuff being buggy (some things even worse than current ics roms).
@securecrt, You have done what i was afraid of.. WHY WHY WHY overwrite git data with "first commit", if you had just used git push and git add remote, we could see what you had done without downloading the kernel.
Rick_1995 said:
@securecrt, You have done what i was afraid of.. WHY WHY WHY overwrite git data with "first commit", if you had just used git push and git add remote, we could see what you had done without downloading the kernel.
Click to expand...
Click to collapse
+1
@securecrt:
Congratulation that you have added HWA feature to the 2.6.32 kernel.
But I suggest that you may consider re-uploading another version including all the old commits and your changes.
Edit:
Or share your changes by executing "git diff > HWA.diff" or "git format-patch -o HWA.patch".
tytung said:
+1
@securecrt:
Congratulation that you have added HWA feature to the 2.6.32 kernel.
But I suggest that you may consider re-uploading another version including all the old commits and your changes.
Edit:
Or share your changes by executing "git diff > HWA.diff" or "git format-patch -o HWA.patch".
Click to expand...
Click to collapse
Hey tytung
I created a diff of latest DORIMANX git and the HWA Kernel git.
Diff is available here https://www.dropbox.com/s/isv8ggyot1kzooa/DIFF-Dorimanx-HD2-2.6.32.X-SecureCRT-HD2-2.6.32.X-HWA.diff
Hi securecrt, thanks for your work here.
I am trying to port Xylograph's ROM with portadroid, as I think you tried with more success than me. Could you post your initrd.gz?
Many thanks
I have a question, can i just take the "lib" directory from the CM9 ROM and add it to the AOKP build you made xlo? would that work? since they are both based off of CM9?
elesbb said:
I have a question, can i just take the "lib" directory from the CM9 ROM and add it to the AOKP build you made xlo? would that work? since they are both based off of CM9?
Click to expand...
Click to collapse
I don't know, you can hack it by yourself
tytung said:
+1
@securecrt:
Congratulation that you have added HWA feature to the 2.6.32 kernel.
But I suggest that you may consider re-uploading another version including all the old commits and your changes.
Edit:
Or share your changes by executing "git diff > HWA.diff" or "git format-patch -o HWA.patch".
Click to expand...
Click to collapse
Tytung,
Please make a note that the securecrt kernel DOES work with usb tethering via the wired-tether 1.4 apk where your kernel does not. Perhaps this might help in debugging the issue? "normal" usb tethering brings up the rndis device (your kernel returns a -1 return code at that point) but fails to send or receive data...the wired tether apk gets around the issue and works as normal usb tether should.
I have seen some of the ROM Devs are working on the HWA ICS ROMs . It is really a good start point.
Today is new life for HD2.
Cheers.
a-st said:
Hey tytung
I created a diff of latest DORIMANX git and the HWA Kernel git.
Diff is available here https://www.dropbox.com/s/isv8ggyot1kzooa/DIFF-Dorimanx-HD2-2.6.32.X-SecureCRT-HD2-2.6.32.X-HWA.diff
Click to expand...
Click to collapse
Thank you.
It's very helpful.
Edit:
Well, SecureCRT's kernel is based on Dorimanx 6.6C while DORIMANX kernel is 6.6D. So there are something unrelated to HWA.
Anyway, thanks.
famewolf said:
Tytung,
Please make a note that the securecrt kernel DOES work with usb tethering via the wired-tether 1.4 apk where your kernel does not. Perhaps this might help in debugging the issue? "normal" usb tethering brings up the rndis device (your kernel returns a -1 return code at that point) but fails to send or receive data...the wired tether apk gets around the issue and works as normal usb tether should.
Click to expand...
Click to collapse
If securecrt kernel makes wired-tether working, it should be that Dorimanx updated some code related to the USB driver. Or maybe the CM team updated CM9 (ICS 4.0.4) to make it compatible with old USB driver.
tytung said:
Thank you.
It's very helpful.
Click to expand...
Click to collapse
I think you will update your kernel and ROM soon .
how about at the end of this weekend?
Sent from my HTC HD2 using xda premium
Hey, is this kernel just for SD. i couldnt find a flashable zip unless i overlooked something
@securecrt:
Your kernel is awesome, but there's a small detail that jumps to the eye.
I was testing a CM9 rom based on your kernel, that as alot of banding on transparencies.
That defect was caught by Marc IIRC as a small value on the kernel that had to be changed.
Can you confirm this ?
Big Bang
Great news everybody and big thanks to securecrt, Rick_1995, Dorimanx & all the others behind the scenes.
@securecrt
The RAM management issues have been solved yet?
The KSM already enabled now
Sent from my HTC HD2 using xda premium
THREAD CLEANED
Please guys/gals stay ON TOPIC, development related. This is a thread about KERNEL, nor about roms. Please use the 'thanks button'. Do not ask for any ETA. Thanks for your cooperation.
I find a bug in current kernel.
I hope can fix it soon.
Sent from my HTC HD2 using xda premium
securecrt said:
I find a bug in current kernel.
I hope can fix it soon.
Sent from my HTC HD2 using xda premium
Click to expand...
Click to collapse
Whats bugs mate? Can you post the list of bugs here?
Sent from my Nexus S using XDA
marc1706's 2.6.35.14 ICS & JB Kernel
This kernel is based on the HTC Desire 2.6.35.10 kernel source code ported by warrenb213 and me with help from Markinus' CyanogenMod kernel source.
This kernel is only for ICS/JB ROMs and shouldn't be used on any older ROMs. Only use the ICS kernel on ICS ROMs and the JB Kernel on JB ROMs!
Features:
Default CPU governor: ondemand
Default CPU speed: 245 MHz - 998 MHz
Available CPU speeds: 96 MHz - 1536 MHz (if speeds above 1190 MHz are not stable for you, stick to lower frequencies)
Available CPU governors: interactive, conservative, userspace, powersave, ondemand, performance, smartassV2, Lagfree, Lazy, SavagedZen, scary, smartass, smoothass, superbad, virtuous, interactiveX, ondemandX
Default IO Scheduler: BFQ
Available I/O schedulers: no-op, deadline, CFQ, BFQ, simple IO, VR
G-Sensor freeze fix (Credits: mdebeljuh and jdivic)
Wakeup lag fix for AUO panels (Credits: mdebeljuh and jdivic)
cLK support
Extended battery support (still needs some testing, I don't have an EB)
BFS CPU scheduler (disabled in JB Kernel 0.1.2+)
ALSA sound drivers
Simple IO Scheduler
HTC Auto-White Balance
Two-way call recording (Credit to avs333, snq-, tytung)
add proc file interface /proc/mic_level and fix mic gain (Credits to mdebeljuh and jdivic, tytung)
zRam (Credits: me, faux123): Activation script can be found here
xt_qtaguid: Monitor network traffic
ICS HWA (credits to Rick_1995, SecureCRT, Xylograph, tytung)
KGSL v3.8 (credits to Rick_1995, small parts by me)
Real MAC address (credits to Franck78, Rick_1995, me)
HTC HD2 off-mode alarm (credits to kokotas, Rick_1995; cleaner implementation by me)
Working:
Data
Wifi
Bluetooth
LED notifications
G-Sensor
Camera
Camcorder
Auto-Backlight
Headset
VPN
Not working:
Some ROMs might not properly support NativeSD with this kernel. This is an issue with the ramdisk.
Current ICS version: 0.1.4
Current JB version: 0.1.2
Download ICS Kernel:
marc1706_desire_ics_0_1_4.zip
Download JB Kernel:
marc1706_desire_jb_0_1_2.zip
Outdated versions:
marc1706_desire_jb_0_1_1.zip
marc1706_desire_jb_0_1_0.zip
marc1706_desire_ics_0_1_3.zip
marc1706_desire_ics_0_1_2.zip
marc1706_desire_ics_0_1_1.zip
Credits to:
Markinus, warrenb213, sbryan12144, tytung, hastarin, rafpigna, Cotulla, mdebeljuh, jdivic, faux123, Rick_1995, securecrt, Xylograph, Franck78, ... (if I forgot you, just send me a PM)
Changelog JB Kernel:
0.1.1 to 0.1.2:
msm: mdp: add new IOCTL commands
staging: android/lowmemorykiller: Do not kill kernel threads
staging: android/lowmemorykiller: No need for task->signal check
memcg: use find_lock_task_mm() in memory cgroups oom
oom: move badness() declaration into oom.h
oom: move sysctl declarations to oom.h
oom: badness heuristic rewrite
oom: multi threaded process coredump don't make deadlock
oom: give the dying task a higher priority
oom: remove child->mm check from oom_kill_process()
oom: cleanup has_intersects_mems_allowed()
fs: proc: include missing header file
oom: move OOM_DISABLE check from oom_kill_task to out_of_memory()
oom: kill duplicate OOM_DISABLE check
oom: /proc/<pid>/oom_score treat kernel thread honestly
oom: oom_kill_process() needs to check that p is unkillable
oom: make oom_unkillable_task() helper function
oom: oom_kill_process() doesn't select kthread child
oom: don't try to kill oom_unkillable child
oom: fold __out_of_memory into out_of_memory
oom: remove constraint argument from select_bad_process and __out_of_memory
mm: rename try_set_zone_oom() to try_set_zonelist_oom()
oom: remove unnecessary code and cleanup
oom: remove special handling for pagefault ooms
oom: extract panic helper function
oom: finished patch that was messed up by HTC
oom: select task from tasklist for mempolicy ooms
oom: sacrifice child with highest badness score for parent
oom: filter tasks not sharing the same cpuset
oom: avoid sending exiting tasks a SIGKILL
oom: give current access to memory reserves if it has been killed
oom: dump_tasks use find_lock_task_mm too fix
oom: improve commentary in dump_tasks()
oom: dump_tasks use find_lock_task_mm too
oom: introduce find_lock_task_mm() to fix !mm false positives
oom: PF_EXITING check should take mm into account
oom: check PF_KTHREAD instead of !mm to skip kthreads
staging: android/lowmemorykiller: Better mm handling
staging: android/lowmemorykiller: Don't grab tasklist_lock
Staging: android: fixed 80 characters warnings in lowmemorykiller.c
lowmemorykiller: Account for ZONE_MOVABLE during hotplug.
staging: android: lowmemorykiller: Ignore shmem pages in page-cache
staging: android: lowmemorykiller: Don't wait more than one second for a process to die
lowmemorykiller: don't unregister notifier from atomic context
lowmemorykiller: Update arguments of shrinker for 2.6.35
staging: android: lowmemorykiller: Remove bitrotted codepath
staging: android: lowmemorykiller: Fix task_struct leak
staging: android: lowmemkiller: merge aosp version of lowmemkiller
Revert "binder: Quiet binder"
Staging: android: binder: Fix use-after-free bug
Staging:android: Change type for binder_debug_no_lock switch to bool
drivers:staging:android Typos: fix some comments that have typos in them.
Staging: android: binder: Fix crashes when sharing a binder file between processes
Staging: android: binder: Don't call dump_stack in binder_vma_open
mach-msm: pm: handle HTC HD2 off-mode alarm
msm: smd: add comments about htcleo specific init code
block: bfq: update to BFQ-v5 I/O sched for 2.6.38
block: bfq: update to BFQ-v4 I/O sched for 2.6.38
block: bfq: update to BFQ-v3r4 I/O sched for 2.6.38
block: bfq: update to BFQ-v3r2
block: bfq: update to BFQ-v3r1 I/O scheduler to 2.6.38
block: bfq: update to bfq v2
0.1.0 to 0.1.1:
msm: htcleo: enable ipv6 netfilters
tproxy: added udp6_lib_lookup function
tproxy: added const specifiers to udp lookup functions
netfilter: tproxy: do not assign timewait sockets to skb->sk
tproxy: added IPv6 socket lookup function to nf_tproxy_core
tproxy: add lookup type checks for UDP in nf_tproxy_get_sock_v4()
ppp: Don't stop and restart queue on every TX packet
ppp: fix 'ppp_mp_reconstruct bad seq' errors
Compile tun as module
net: constify some ppp/pptp structs
net: Reorder incoming packets in PPPoLAC and PPPoPNS.
net: ppp: Fix common misspellings in ppp_generic
ppp: Use SKB queue abstraction interfaces in fragment processing.
ppp: Reconstruct fragmented packets using frag lists instead of copying.
ppp: Clean up kernel log messages.
ppp: allow disabling multilink protocol ID compression
net, ppp: Report correct error code if unit allocation failed
filter: optimize sk_run_filter
llseek: automatically add .llseek fop
ppp: Use a real SKB control block in fragmentation engine.
ppp: potential NULL dereference in ppp_mp_explode()
net: autoconvert trivial BKL users to private mutex
ppp: use PPP_TRANS instead of the magic number 0x20
net: Ppp_async: semaphore cleanup
ppp: make channel_ops const
net+crypto: Use vmalloc for zlib inflate buffers.
zlib: slim down zlib_deflate() workspace when possible
crypto: Use vzalloc
net: ppp: use {get,put}_unaligned_be{16,32}
msm: htcleo: add missing built-in flag for wifi
mmc: port mmc code from tiamat 2.6.38
ICS 0.1.3 to JB 0.1.0:
f2fs: fix last few compile issues
nommu: Fix up vmalloc_node() symbol export regression.
mm: add vzalloc() and vzalloc_node() helpers
f2fs: revert preperation for multiple request_lists
f2fs: fix super.c for 2.6.35
f2fs: adjust types in namei.c for 2.6.35
f2fs: use check_acl instead of get_acl
filesystems: add set_nlink()
fallocate should be a file operation
f2fs: use is_owner_or_cap() in 2.6.35 kernel
fs: add hole punching to fallocate
f2fs: add f2fs_get_acl helper function for 2.6.35
f2fs: use pre 3.1 implementation of fsync
rename generic_setattr
vfs: export symbol d_find_any_alias()
fs: dcache: use dget_locked in __d_find_any_alias
fs/dcache: allow d_obtain_alias() to return unhashed dentries
fs: simplify __d_free
fs: take dcache_lock inside __d_path
VFS: Fix race between CPU hotplug and lglocks
lglock: make lg_lock_global() actually lock globally
lglock: introduce special lglock and brlock spin locks
fs: brlock vfsmount_lock
fs: remove extra lookup in __lookup_hash
fs/dcache: fix function param name in kernel-doc
vfs: show unreachable paths in getcwd and proc
vfs: only add " (deleted)" where necessary
vfs: add prepend_path() helper
vfs: __d_path: dont prepend the name of the root dentry
vfs: add helpers to get root and pwd
cachefiles: use path_get instead of lone dget
pass a struct path to vfs_statfs
no need for list_for_each_entry_safe()/resetting with superblock list
new helper: __dentry_path()
f2fs: fix kunmap_atomic for 2.6.35 kernel
arm: introduce little-endian bitops
ARM: 6653/1: bitops: Use BX instead of MOV PC,LR
ARM: bitops: switch set/clear/change bitops to use ldrex/strex
ARM: bitops: ensure set/clear/change bitops take a word-aligned pointer
ARM: 6621/1: bitops: remove condition code clobber for CLZ
f2fs: update Kconfig and Makefile
f2fs: add recovery routines for roll-forward
f2fs: add garbage collection functions
f2fs: add xattr and acl functionalities
f2fs: add core directory operations
f2fs: add inode operations for special inodes
f2fs: add core inode operations
f2fs: add address space operations for data
f2fs: add file operations
f2fs: add segment operations
f2fs: add node operations
f2fs: add checkpoint operations
f2fs: add super block operations
f2fs: add superblock and major in-memory structures
f2fs: add on-disk layout
f2fs: add document
Fix wifi
Update kgsl code to securecrt's code
Update pmem code
Enable bcm4329 for now and fixup
plist: Add plist_last
Enable kexec
msm: boards: set ALLORNOTHING allocator for mdp heap
gpu: ion: fast forward to latest pre-IOMMU code
ion: minor clean up
gpu: ion: Validate handles passed via the kernel api
gpu: ion: Fix deferencing ERR_PTR
gpu: ion: Fix possible memory leak
gpu: ion: Remove redunant code from ion_open
gpu: ion: Fix bug in ion client destroy
gpu: ion: Fix bug in ion_client_create
gpu: ion: Remove incorrect error message
gpu: ion: Fix bug in ion_buffer_add
gpu: ion: Several fixes
gpu: ion: Add ION Memory Manager
compiledcopy: update script for bcmdhd and removal of lzo modules
Port newer net code from Evervolv 2.6.38 kernel for bcmdhd
msm: htcleo: bcmdhd updates
net: wireless: bcmdhd: fast forward to newest code from Evervolv
net: wireless: bcmdhd: Fix scan crash in ibss mode
net: wireless: bcmdhd: Add FW reloading in case of FW hang
net: wireless: bcmdhd: Update to Version 5.90.125.94.1
net: wireless: bcmdhd: Use CONFIG_DHD_USE_STATIC_BUF for preallocated memory
net: wireless: bcmdhd: fast forward to newest jb_chocolate code
net: wireless: bcmdhd: Fix memory poisoning in wl_free_wdev()
net: wireless: bcmdhd: Set proper debug messages for private IOCTL
net: wireless: bcmdhd: Add RSSI and SETSUSPENDOPT private commands
net: wireless: bcmdhd: Fix failure in register_sysctl_table() call
net: wireless: bcmdhd: Fix 3.0 compilation for CFG80211
net: wireless: bcmdhd: Combined patch from 4.218.248-31
net: wireless: bcmdhd: Fix getting Mac address from platform data
net: wireless: bcmdhd: Fix race conditions for sysioc_thread
net: wireless: bcmdhd: Reduce listen interval to 10 (from 20)
net: wireless: bcmdhd: Prevent working thread to run during suspend path
net: wireless: bcmdhd: Allocate skb with GFP_KERNEL flag if possible
net: wireless: bcmdhd: Fix memleak in dev->p
net: wireless: bcmdhd: Fix scan timeout for abg case
net: wireless: bcmdhd: Prevent using WEXT in case of CFG80211
net: wireless: bcmdhd: Add missing dhd_get_dtim_skip() declaration
net: wireless: bcmdhd: Get rid of ANDROID define
net: wireless: bcmdhd: Add setting country code from platform data
net: wireless: bcmdhd: Fix SOFTAP compilation
net: wireless: bcmdhd: Get MAC from platform data
net: wireless: bcmdhd: Fix ANDROID define, clean obsolete code
Update to 5.90.125.27 release.
net: wireless: bcmdhd: Switch to CUSTOMER_HW2
net: wireless: bcmdhd: Remove obsolete debug messages
net: wireless: bcmdhd: Allow error debug prints from the beginning
net: wireless: bcmdhd: Fix watchdog firing in softirq on removal
net: wireless: bcmdhd: Allow WEXT support
net: wireless: bcmdhd: Fix params in wl_cfg80211_event call
net: wireless: bcmdhd: Add spinlock initialization
net: wireless: bcmdhd: Fix config FW and NVRAM path
Update to 5.90.125.22:
msm: htcleo: update defconfig after bcmdhd import
net: wireless: bcmdhd: Initial version based on 5.90.125.14
Changelog ICS Kernel:
0.1.3 to 0.1.4:
msm: htcleo: enable ipv6 netfilters
tproxy: added udp6_lib_lookup function
tproxy: added const specifiers to udp lookup functions
netfilter: tproxy: do not assign timewait sockets to skb->sk
tproxy: added IPv6 socket lookup function to nf_tproxy_core
tproxy: add lookup type checks for UDP in nf_tproxy_get_sock_v4()
ppp: Don't stop and restart queue on every TX packet
ppp: fix 'ppp_mp_reconstruct bad seq' errors
net: constify some ppp/pptp structs
net: Reorder incoming packets in PPPoLAC and PPPoPNS.
net: ppp: Fix common misspellings in ppp_generic
ppp: Use SKB queue abstraction interfaces in fragment processing.
ppp: Reconstruct fragmented packets using frag lists instead of copying.
ppp: Clean up kernel log messages.
ppp: allow disabling multilink protocol ID compression
net, ppp: Report correct error code if unit allocation failed
filter: optimize sk_run_filter
llseek: automatically add .llseek fop
ppp: Use a real SKB control block in fragmentation engine.
ppp: potential NULL dereference in ppp_mp_explode()
net: autoconvert trivial BKL users to private mutex
ppp: use PPP_TRANS instead of the magic number 0x20
net: Ppp_async: semaphore cleanup
ppp: make channel_ops const
net+crypto: Use vmalloc for zlib inflate buffers.
zlib: slim down zlib_deflate() workspace when possible
crypto: Use vzalloc
net: ppp: use {get,put}_unaligned_be{16,32}
msm: htcleo: add missing built-in flag for wifi
mmc: port mmc code from tiamat 2.6.38
f2fs: fix last few compile issues
nommu: Fix up vmalloc_node() symbol export regression.
mm: add vzalloc() and vzalloc_node() helpers
f2fs: revert preperation for multiple request_lists
f2fs: fix super.c for 2.6.35
f2fs: adjust types in namei.c for 2.6.35
f2fs: use check_acl instead of get_acl
filesystems: add set_nlink()
fallocate should be a file operation
f2fs: use is_owner_or_cap() in 2.6.35 kernel
fs: add hole punching to fallocate
f2fs: add f2fs_get_acl helper function for 2.6.35
f2fs: use pre 3.1 implementation of fsync
rename generic_setattr
vfs: export symbol d_find_any_alias()
fs: dcache: use dget_locked in __d_find_any_alias
fs/dcache: allow d_obtain_alias() to return unhashed dentries
fs: simplify __d_free
fs: take dcache_lock inside __d_path
VFS: Fix race between CPU hotplug and lglocks
lglock: make lg_lock_global() actually lock globally
lglock: introduce special lglock and brlock spin locks
fs: brlock vfsmount_lock
fs: remove extra lookup in __lookup_hash
fs/dcache: fix function param name in kernel-doc
vfs: show unreachable paths in getcwd and proc
vfs: only add " (deleted)" where necessary
vfs: add prepend_path() helper
vfs: __d_path: dont prepend the name of the root dentry
vfs: add helpers to get root and pwd
cachefiles: use path_get instead of lone dget
pass a struct path to vfs_statfs
no need for list_for_each_entry_safe()/resetting with superblock list
new helper: __dentry_path()
f2fs: fix kunmap_atomic for 2.6.35 kernel
arm: introduce little-endian bitops
ARM: 6653/1: bitops: Use BX instead of MOV PC,LR
ARM: bitops: switch set/clear/change bitops to use ldrex/strex
ARM: bitops: ensure set/clear/change bitops take a word-aligned pointer
ARM: 6621/1: bitops: remove condition code clobber for CLZ
f2fs: update Kconfig and Makefile
f2fs: add recovery routines for roll-forward
f2fs: add garbage collection functions
f2fs: add xattr and acl functionalities
f2fs: add core directory operations
f2fs: add inode operations for special inodes
f2fs: add core inode operations
f2fs: add address space operations for data
f2fs: add file operations
f2fs: add segment operations
f2fs: add node operations
f2fs: add checkpoint operations
f2fs: add super block operations
f2fs: add superblock and major in-memory structures
f2fs: add on-disk layout
f2fs: add document
Update pmem code
plist: Add plist_last
msm: boards: set ALLORNOTHING allocator for mdp heap
Enable kexec
0.1.2 to 0.1.3:
msm: htcleo: Add sysfs interface for forcing the gsensor mode
msm: qdsp6: venc: add missing IOCTL command
Disable paranoid sd init
kernel: sched: Add wait_for_completion_io to BFS
Revert "Ported new aac code from Code Aurora"
mtd: htcleo_nand: small clean-up
mtd: mtdchar: increase MAX_KMALLOC_SIZE back to 0x20000
base: genlock: protect kref counting with spinlock
base: genlock: add magic to protect attach from non-genlock file
net: wireless: bcm4329: Fix pno_enable if disassociated
pmem: explicitly include sched.h
mmc: Attribute the IO wait time properly in mmc_wait_for_req().
msm: dma: Track waiting for requests as io_wait time
cgroup: fix cpuset permission check
PM: wakelocks: Replace variable and constants names with CAF version
ashmem: fix deadlock when system is low on memory
vmscan: move referenced VM_EXEC pages to active list
fs: mark_inode_dirty barrier fix
fs: add sync_inode_metadata
sync_inode_metadata: fix comment
fs: simple fsync race fix
fs: ext2 inode sync fix
staging: zram: import zram from CAF's jb_chocolate (kernel 3.0.8)
staging: zcache: in-kernel tmem code
staging: zcache: host services and PAM services
staging: zcache: misc build/config
staging: zcache: fix memory leak
staging: zram: merge newer zram code
Staging: zram: initialize device on first read
staging: Allow sharing xvmalloc for zram and zcache
msm: htcleo: update defconfig for zram changes
mm/fs: cleancache documentation
fs: add field to superblock to support cleancache
mm: cleancache core ops functions and config
mm/fs: add hooks to support cleancache
ext3: add cleancache support
btrfs: add cleancache support
ext4: add cleancache support
ocfs2: add cleancache support
msm: htcleo: enable cleancache
fmem: add fmem API header file
fmem: add qcache implementation
decompressors: add XZ decompressor module
decompressors: add boot-time XZ support
msm: htcleo: add new config options after XZ import
XZ decompressor: Fix decoding of empty LZMA2 streams
XZ: Fix missing <linux/kernel.h> include
XZ: Fix incorrect XZ_BUF_ERROR
ARM: support XZ compressed kernels
lib/sha1: use the git implementation of SHA-1
arm: remove "optimized" SHA1 routines
arm: remove stale export of 'sha_transform'
ondemand: Make the iowait-is-busy time a sysfs tunable
cpufreq: Make down_differential parameter configurable.
[CPUFREQ] ondemand: don't synchronize sample rate unless multiple cpus present
cpufreq: fix incorrect tabbing
iosched: tweak deadline for flash usage
binder: Quiet binder
android: logger: bump up the logger buffer sizes
msm: htcleo: add socinfo
net/rfkill/core.c: Avoid leaving freed data in a list
rfkill: remove dead code
rfkill: add missing llseek
net: return operator cleanup
timers: Introduce timerlist infrastructure.
timers: Rename timerlist infrastructure to timerqueue
timers: Add rb_init_node() to allow for stack allocated rb nodes
power: ds2746: Add procfs interface for fast charge
semaphore: Add DEFINE_SEMAPHORE
driver core: device_rename's new_name can be const
base: genlock: handle error while creating lock/handle inode
compile tun as module
0.1.1 to 0.1.2:
Updated Wifi driver to latest CAF
net: wireless: bcm4329: Let user change firmware path
netfilter: Add quota2
netfilter: quota2: add support to log quota limit reached
msm: htcleo: Add real mac addresses
0.2.1 (GB Sense Kernel) to 0.1.1 (ICS Kernel):
ARM: zImage: make sure the stack is 64-bit aligned
Increase max battery voltage
Allow high current charging on china chargers
msm: htcleo: implement real unique MAC address patch
tproxy: added IPv6 support to the socket match
netfilter: nf_conntrack: IPS_UNTRACKED bit
netfilter: xt_TPROXY: the length of lines should be within 80
netfilter: use NFPROTO_IPV4 instead of AF_INET
tproxy: kick out TIME_WAIT sockets in case a new connection comes in with the same tuple
tproxy: split off ipv6 defragmentation to a separate module
tproxy: added IPv6 support to the TPROXY target
tproxy: use the interface primary IP address as a default value for on-ip
netfilter: fix module dependency issues with IPv6 defragmentation, ip6tables and xt_TPROXY
netfilter: xt_socket: Make tproto signed in socket_mt6_v1()
netfilter: tproxy: do not assign timewait sockets to skb->sk
nf: xt_socket: export the fancy sock finder code
netfilter: add xt_qtaguid matching module
nf: qtaguid: workaround xt_socket_get_sk() returning bad SKs
nf: qtaguid: make procfs entry for ctrl return correct data
netfilter: qtaguid: fix bad-arg handling when tagging socket
netfitler: xt_qtaguid: add another missing spin_unlock
netfilter: qtaguid: add tag delete command, expand stats output
netfilter: xt_qtaguid: add uid permission checks during ctrl/stats access
netfilter: qtaguid: disable #define DEBUG
netfilter: xt_qtaguid: add counter sets and matching control
netfilter: xt_qtaguid: recognize IPV6 interfaces. root is procfs privileged
netfilter: xt_qtaguid: Fix socket refcounts when tagging
netfilter: xt_qtaguid: Fix sockfd_put() call within spinlock
netfilter: xt_qtaguid: add some tagging/matching stats
netfilter: xt_qtaguid: fix dev_stats for missing NETDEV_UNREGISTER
netfilter: qtaguid: fix proc/.../stats uid filtered output
netfilter: xt_qtaguid: 1st pass at tracking tag based data resources
netfilter: xt_qtaguid: warn only once for missing proc qtaguid data
netfilter: xt_qtaguid: work around devices that reset their stats
netfilter: xt_qtaguid: provide an iface_stat_all proc entry
netfilter: xt_qtaguid: fix crash after using delete ctrl command
netfilter: xt_qtaguid: add missing tracking for no filp case
netfilter: xt_qtaguid: Fix the stats info display order
netfilter: xt_qtaguid: fix crash on ctrl delete command
msm: htc_headset_mgr: fix headphones for ICS (plattypus)
Kbuild: Export ashmem header file to user space
lib: bitmap/genalloc: backport from cafs 3.0
lib: backport memory_alloc from cafs 3.0
msm: kgsl: patch: import kgsl v3.3 driver from CAF msm.38 - part 1
board: htcleo: add kgsl-3d0 device
msm: kgsl: fixes for kgsl backport
drivers: misc: update pmem
msm: add support for socinfo and internal_power_rail
drivers: video: msm: fix build for new pmem
Fix compile issues after adding new KGSL
drivers: base: Add generic cross-process locking API
base: genlock: Properly destroy handle resources
base: genlock: Avoid a race condition when releasing locks
base: genlock: Add error messages for failure cases
base: genlock: Check for instances where handle is NULL
base: genlock: Remove genlock_release_lock and associated ioctl
base: genlock: Use a signed long for the result from wait_timeout
base: genlock: allow synchronization with a single gralloc handle
Clean up after adding new KGSL and enabling new configs
fixed the boot logo (SecureCRT)
Ported kgsl code from HWA kernel
Fixed mdp for android ics
Fixed BT and BT standby drain (needed for switch from sense -> AOSP)
block: add v/r io scheduler
workqueue: add is_workqueue_empty() api
power: fix lcd resume taking long time with an ongoing file copy
power: fix suspend_sys_sync_wait()
PM: Back off suspend if repeated attempts fail
thp: ksm: free swap when swapcache page is replaced
msm: clock-wince: Add clk_round_rate
msm: add footswitch-pcom
msm: htcleo: cleanup in board file
msm: footswitch: start footswitch devices in manual mode
Port basic files for kgsl 3.8
msm: socinfo: add preprocessor macros
msm: kgsl: add missing wakelock init/deinit
Extras:
zram Static Activation (by Dorimanx, modified for .35 by me, fixed disksize):
View attachment marc1706_zram_100MB.zip
FAQs:
My phone sometimes lags when I unlook it. After 1-2 seconds the lag is gone. Is there a way to fix this?
Yes, just set the minimum cpu speed to 245 MHz. The snapdragon cpu is not able to scale from 128 MHz to any given frequency. From 128 MHz it can only scale to 245 MHz and then it'll scale to higher frequencies.
Can we have ZSL (= zero shutter lag) on the HD2?
No. ZSL was created for newer smartphones that have camera sensors that support ZSL.
My phone suddenly can't connect to my Wifi router after updating to this kernel.
Your phone will have a new wifi mac with this kernel. You will need to allow this new mac address if you have mac address filtering enabled on your router.
Have fun with the ICS kernel.
marc1706 said:
Have fun with the ICS kernel.
Click to expand...
Click to collapse
Thanks a million for all that you do with our Hd2. Cheers
Sent from my HD2
ICS with sense? Or just ICS?
Sent from my HTC HD2 using XDA
@marc1706
So I installed the 0.1.1 kernel it was very very smooth. So I rebooted the phone but when it restarted my apps were gone. My free space is now at 0 see attached 1st. pic. Running Smokin's MIUI-US-2.5.11-HWA. Is this a kernel problem? Cheers
Edit: My setup also included Setcpu with lagfree governor no profiles 245 min 1036 max I have also installed a2sd. I booted to recovery flashed tytungs-HWA-r2.3-uniMAC and my apps kinda returned. They are all there but not in same order as I had them set to display. Any ideas ?
Edit2:
After being satisfied that my data was ok. I re flashed your kernel and again after reboot same problem. So I'm thinking there is an issue with a2sd and your kernel. Cheers
marc1706 said:
Have fun with the ICS kernel.
Click to expand...
Click to collapse
:thumbup:
It's nice to see the progress in sense kernel.
Sent from my HTC HD2 using xda premium
marc1706 said:
Have fun with the ICS kernel.
Click to expand...
Click to collapse
As someone said Marc for president
I think that XDA have to enlarge number of thanks per day since I have gave only 8 thanks today and Marc, Rick, Securecrt, Rapmv78, SBbryan, Xylo, Tytung and others deserve million thanks
Brilliant kernel overall...everything is working and feels quite snappy, maybe faster than .32 kernel
One issue - I,m using amarullz a2sd script and kernel causes low sound bug ( I reflashed tytung .32 kernel and the sound bug was gone). Fix permissions does not solve the issue.
Cheers
On miui 2.5.11, eu hd2
Sent from my HTC HD2 using Tapatalk
rafiqzadah said:
ICS with sense? Or just ICS?
Sent from my HTC HD2 using XDA
Click to expand...
Click to collapse
Really? How am I supposed to put Sense into a kernel?
If you are asking if this is an ICS Sense kernel:
I think HTC stopped messing kernels up for sense. If we need something special for sense 4.0 I think I'll soon found out.
If you have issues with A2SD reboot into recovery and make sure to fix permissions and wipe the dalvik cache.
Using the kernel on Xylo's AOKP milestone 5 HWA.
Very good so far, except an FC on Settings ... Wireless & Network ... More
(i.e. APN settings, etc.)
Not a problem as my data/APNs are fine.
Email is FCing too - just re-creating my accounts now to see if that fixes it.
Cheers
EDIT: think I have tytung's 2.3-uM initrd as that was my previous kernel.
doesn't boot ics1.1 on tostidroid 1.1 magldr
wheeliemonster said:
Using the kernel on Xylo's AOKP milestone 5 HWA.
Very good so far, except an FC on Settings ... Wireless & Network ... More
(i.e. APN settings, etc.)
Not a problem as my data/APNs are fine.
Email is FCing too - just re-creating my accounts now to see if that fixes it.
Cheers
Click to expand...
Click to collapse
Fix permissions in recovery and make sure to wipe the dalvik cache.
dimdimdim said:
doesn't boot ics1.1 on tostidroid 1.1 magldr
Click to expand...
Click to collapse
You can try,go in recovery clear cache & wipe dalvik cache.
Kernel is amazing,running on IceCreamTosti v1.0 PE B35 smoot & fast,no fc's at all,data,wifi,calls ok,battery 2-6mA on standby.....so far so good...
marc1706 said:
Fix permissions in recovery and make sure to wipe the dalvik cache.
Click to expand...
Click to collapse
Cheers Marc. Did a couple of dalvik wipes and re-created the accounts. Seems to have settled down now. APN settings page no longer FC's now too.
Will continue testing and report back.
On ICS kernel in CM9 nightly (13th May) with app and app-private symlinked to SD EXT. Just flashed the kernel- no issues, no FC, all apps area there and work fine, email accounts work. I didn't clear dalvik cache or fix permissions...
Swyped from my HTC HD2 (ICS 4.0.4)
wheeliemonster said:
Cheers Marc. Did a couple of dalvik wipes and re-created the accounts. Seems to have settled down now. APN settings page no longer FC's now too.
Will continue testing and report back.
Click to expand...
Click to collapse
Hi Marc,
Just to confirm a little more testing.
Bluetooth is working perfectly in this kernel. In fact, it's the best I've tried yet for ICS. I have a Nokia BH-505 BT headset, which on tytung's and securecrt's kernels, have always "fed-back" the microphone audio into the headphones, so I can hear myself speaking and get lots of background noise in calls. Yours does not seem to do that. AVRCP stuff is working fine too, so, all in all, very very pleased with your kernel.
Thanks very much for your hard work. Fantastic.
zexmunze said:
You can try,go in recovery clear cache & wipe dalvik cache.
Kernel is amazing,running on IceCreamTosti v1.0 PE B35 smoot & fast,no fc's at all,data,wifi,calls ok,battery 2-6mA on standby.....so far so good...
Click to expand...
Click to collapse
sorry, but I meant sd/magldr boot I understand, that the kernel was not designed for the sd builds.
just for the dev info. that would be great it would be possible to use marc's kernel with sd ics builds.
at least, sense kernel we can use
I'm not sure how the whole SD boot is handled but could try going to services -> Dump dmesg to sd in Magldr after the reboot?
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
In this thread you may find my customized kernel 3.4.x for Lollipop rom (CM 12.0 and derivatives) that use ION+PMEM ADSP memory allocations.
Of course, your feedback, as always, are welcome and certainly valuable.
The main features are the following:
- Kernel 3.4.x
- Kernel based on more updated kk_2.7-stable branch of CAF (Code Aurora Forum)
- Sources synched with cm-12.0 repo branch of DevCon Team
- Built with my custom Linaro 4.9.3-2015.02 toolchain optimized for Cortex-A8
- Built with Cortex-A8 and NEON VFP optimization flags (both kernel and modules)
- Built with -O3 optimization flag (both kernel and modules)
- CPU overclockable up to 1824 MHz
- CPU frequencies undervolted (UV version) or extremely undervolted (EXUV version)
- CPU voltage control VDD sys interface (click for more details)
- Dynamic memory allocation of ION heaps through CMA (Contiguous Memory Allocator)
- Dynamic memory allocation of PMEM ADSP heap through CMA (Contiguous Memory Allocator)
- 426MB of free RAM
- Init.d support
- Fast Charge support (default disabled, click for more details)
- Battery Life eXtender support (default disabled, click for more details)
- Ram Console support (click for more details)
- TRIM support
- USB OTG support (if also implemented on rom side)
- Lowered display panel voltage
- Lowered vibetonz voltage
- Lowered wifi voltage
- Lowered swappiness (60 -> 45)
- Increased CPU frequency during boot
- Optimized AES and SHA1 routines for ARM cpu architecture
- Fixed 100% battery notification after charger unplug
- Increased audio volume on board side
- Con Kolivas' CK3 Tweaks
- Optimized SLUB memory allocator
- Optimized ARM RWSEM (read/write semaphore) algorithm
- Optimized asynchronous I/O latency on solid state disks
- Disabled Gentle Fair Sleepers for better UI performance
- CIFS support on boot
- Memory compaction
- Dynamic compression of clean pagecache pages
- Dynamic FSync v1.2 (click for more details)
- Dynamic dirty page writebacks (click for more details)
- VM tweaks for performance and less battery consumption
- Timer slack controller (click for more details)
- Dynamic management of the minimal timer slack value during suspend/resume (click for more details)
- LowMemoryKiller management of not killable processes (click for more details)
- exFAT support
- Additional TCP Congestion algorithms
- Updated ZRam, ZSMalloc, ZCache built-in modules
Available CPU governors:
- Adaptive
- BrazilianWax
- Conservative
- Hyper
- Intellidemand
- Interactive
- InteractiveX
- LionHeart
- LulzActive
- OnDemand (default)
- OnDemandX
- Performance
- Powersave
- SmartAssV2
Available I/O schedulers:
- BFQ
- CFQ
- Deadline
- Fiops
- Noop
- ROW (default)
- SIO
- V(R)
Kernel Downloads for Lollipop ION+PMEM ADSP:
K^Kernel LP-5.0 Mediafire Folder
[QRCODE]https://www.mediafire.com/folder/b82tiiw5u7hd7[/QRCODE]
- v2.0 -
for CM 12.0
and the other roms based on CM 12.0
Note: You must use the CWM recovery with new partition assignments you may find inside CM 12.0 thread by arco68.
Howto install the kernel:
1) Download the preferred kernel zip file to sdcard or external sdcard
2) Reboot to recovery mode
3) Flash the kernel zip file
4) Reboot the system
Kernel sources (on GitHub):
Development branch of K^Kernel 3.4 for LP 5.0 ION+PMEM ADSP
Useful info:
- Special features and sysfs settings
- Frequently asked questions
Tables:
Changelog:
Code:
[B]11/03/2015 - K^Kernel 3.4 v2.0 for Lollipop ION+PMEM ADSP[/B]
- Kernel 3.4.106
- Built with my latest custom Linaro 4.9.3-2015.02 toolchain optimized for Cortex-A8
- defconfig: Switch to ROW I/O scheduler as default (credits to Christopher83)
- HID: input: generic hidinput_input_event handler (credits to David Herrmann)
- cpufreq: Avoid using global variable total_cpus (credits to Ruchi Kandoi)
- net/ping: handle protocol mismatching scenario (credits to Jane Zhou)
- net: ipv6: allow choosing optimistic addresses with use_optimistic (credits to Erik Kline)
- netfilter: IDLETIMER: fix invalid deference of timer (credits to JP Abgrall)
- prctl: make PR_SET_TIMERSLACK_PID pid namespace aware (credits to Micha Kalfon)
- crypto: arm-aes - fix encryption of unaligned data (credits to Mikulas Patocka)
- ARM: 8118/1: crypto: sha1/make use of common SHA-1 structures (credits to Jussi Kivilinna)
- ARM: 8119/1: crypto: sha1: add ARM NEON implementation (credits to Jussi Kivilinna)
- ARM: 8120/1: crypto: sha512: add ARM NEON implementation (credits to Jussi Kivilinna)
- defconfig: Enable NEON optimized SHA1 crypto routines (credits to Christopher83)
- defconfig: Build QCOM crypto device as built-in (credits to Christopher83)
- pstore: selinux: add security in-core xattr support for pstore and debugfs (credits to Mark Salyzyn)
- KEYS: close race between key lookup and freeing (credits to Sasha Levin)
- msm_fb: Fix RGB pipe offset issue (credits to Blefish)
- msm: mdp.c fix deadlock which causes blue screen (credits to Vinu Deokaran)
- msm: rq_stats: Use cpufreq API to get the current frequency (credits to Archana Sathyakumar)
- defconfig: Back to enforced SELinux (credits to Christopher83)
- staging: android: ashmem: add missing include (credits to Rom Lemarchand)
- net: wireless: bcmdhd: Remove WLAN_CIPHER_SUITE_AES_CMAC advertisement (credits to Dmitry Shmidt)
- gpu: ion: Refactor locking (credits to Srinivasarao P)
- gpu: ion: use a list instead of a tree for heap debug memory map (credits to Srinivasarao P)
- gpu: ion: fix locking issues in debug code (credits to Mitchel Humpherys)
- gpu: ion: add locking to traversal of volatile rb tree (credits to Srinivasarao P)
- gpu: ion: Delete invalid extra file (credits to Pradosh Das)
- drivers: video: msm: Cleanup some dead codes (credits to sirmordred)
- lz4: Revert previously applied commits (credits to Christopher83)
- decompressor: add LZ4 decompressor module (credits to Kyungsik Lee)
- lib: add support for LZ4-compressed kernel (credits to Kyungsik Lee)
- lib: add lz4 compressor module (credits to Chanho Min)
- lib/lz4: correct the LZ4 license (credits to Richard Laager)
- lz4: fix compression/decompression signedness mismatch (credits to Sergey Senozhatsky)
- lz4: ensure length does not wrap (credits to Greg Kroah-Hartman)
- lz4: fix another possible overrun (credits to Greg Kroah-Hartman)
- lz4: add overrun checks to lz4_uncompress_unknownoutputsize() (credits to Greg Kroah-Hartman)
- Update zram and zsmalloc up-to 3.17 kernel changes (credits to sirmordred)
- msm7x30: Remove high memory configurations (credits to Christopher83)
- msm7x30: Change all heap types to CMA (credits to sirmordred)
- msm7x30: Workaround deep sleep issue (credits to Christopher83)
- msm7x30: Increase ION memory heap for surfaceflinger (credits to Christopher83)
- defconfig: Update default and custom configurations (credits to Christopher83)
- f2fs: Sync F2FS to Jaegeuk's linux-3.4 branch (credits to Christopher83)
- selinux: fix inode security list corruption (credits to Stephen Smalley)
- Squashed update of kernel from 3.4.105 to 3.4.106 (credits to Christopher83)
- ipv4: try to cache dst_entries which would cause a redirect (credits to Hannes Frederic Sowa)
- USB: android: release spinlock before queuing work in android_setup (credits to Tarun Gupta)
- usb: gadget: Ignore the second set_config from the host (credits to ChandanaKishori Chiluveru)
- usb: android: Skip the work when set_config arrives with same value twice (credits to ChandanaKishori Chiluveru)
- usb: android: Fixup multiple lun support (credits to arco68)
- msm: camera: s5k4ecgx: Set mount angle from platform data (credits to sirmordred)
- USB: gadget: qdss: Fix strncmp length usage (credits to Kumar Gala)
- usb: android: Print LUN debug info (credits to Christopher83)
- Ramdisk updates (credits to Christopher83)
[B]31/12/2014 - K^Kernel 3.4 v1.0 for Lollipop ION+PMEM ADSP[/B]
- Kernel 3.4.105
- Built with my latest custom Linaro 4.9.3-2014.12 toolchain optimized for Cortex-A8
- ariesve: Set SELinux to be permissive (credits to Christopher83)
- defconfig: Set selinux permissive (credits to arco68)
- defconfig: Enable CONFIG_NETFILTER_XT_TARGET_IDLETIMER (credits to arco68)
- defconfig: Regenerate (credits to arco68)
- ext4: Add support for FIDTRIM, a best-effort ioctl for deep discard trim (credits to JP Abgrall)
- broadcom_wlan: Modify country code source (credits to arco68)
- net: ipv6: autoconf routes into per-device tables (credits to Lorenzo Colitti)
- netfilter: nf_conntrack: decrement global counter after object release (credits to Pablo Neira Ayuso)
- net: ipv6: Add a sysctl to make optimistic addresses useful candidates (credits to Erik Kline)
- Enable NEED_NETDEV for vendor command support. (credits to Subhani Shaik)
- cfg80211: ignore supported rates for nonexistant bands on scan (credits to Felix Fietkau)
- crypto: msm: check potential integer overflow (credits to William Clark)
- defconfig: Enable generic USB audio driver (credits to tobigun)
- i2c: chips: fsa9480: Add support for charging in USB-OTG mode (credits to tobigun)
- defconfig: Update custom defconfigs (credits to Christopher83)
- defconfig: Disable Frandom module (credits to Christopher83)
- i2c: chips: fsa9480: Add write-permission for USB-OTG charger type (credits to tobigun)
- Staging: android: binder: More offset validation. (credits to Arve Hjonnevag)
- fs: f2fs: Initial import from https://kernel.googlesource.com (credits to arco68)
- defconfig: Enable F2FS filesystem (credits to arco68)
Credits and Thanks to:
arco68, CastagnaIT and Ivendor for their awesome work and their kernel sources
Ezekeel, Doomlord, Faux123, Stratosk, Tegrak, ErasmuX, Imoseyon, Blefish, mikeioannina, Madridii and other devs I'm surely missing
CyanogenMod, Kernel.org, Code Aurora Forum, Google, Linaro GCC developers
XDA:DevDB Information
[GT-I8150][ION] K^Kernel 3.4 for LP 5.0 ION+PMEM ADSP, Kernel for the Samsung Galaxy W I8150
Contributors
Christopher83
Source Code: https://github.com/Christopher83/samsung-kernel-msm7x30/tree/cm-12.0
Kernel Special Features: Customized kernel 3.4.x for LP 5.0 rom (CM 12.0 and derivatives) with ION memory allocations
Version Information
Status: Stable
Current Stable Version: v2.0
Stable Release Date: 2015-03-11
Created 2014-12-31
Last Updated 2015-06-08
Special features and sysfs settings (Part 1):
Here you can find some useful scripts that can be used with the following described features:
Scripts
CPU voltage control VDD sys interface
This feature allows to customize the voltage assumed by each cpu scaling frequency.
It could be useful if you'd like to decrease one or more voltages for battery saving purposes (undervolting), or to increase/adjust them to prevent phone freezes (overvolting).
How to customize the voltages:
1) By downloading and using Trickster MOD or IncrediControl and changing the voltages table inside the SVS tab
2) By using customized init.d scripts (the custom values will be always restored after a reboot, if you don't format the system partition)
- Download one of the script named 01vdd_levels*
- If the file has been saved with .txt extension (stock browser), rename it by removing the .txt extension
- Edit the file by setting your customized voltages, where each line has this syntax
Code:
echo "[I][B][COLOR="Blue"]cpu_freq_HZ[/COLOR][/B][/I] [I][COLOR="SeaGreen"][B]mV[/B][/COLOR][/I]" > /sys/devices/system/cpu/cpu0/cpufreq/vdd_levels
cpu_freq_HZ is the cpu frequency in Hz you'd like to change
mV is the voltage you want to set
For example, the following line means that when the cpu frequency is 1516800 Hz = 1516 MHz, the voltage used will be 1175 mV
Code:
echo "1516800 1175" > /sys/devices/system/cpu/cpu0/cpufreq/vdd_levels
- Copy the new file inside /etc/init.d
- Give the rwxr-xr-x permissions to the file (read, write, execution for owner, read and execution for group users, read and execution for others)
- Reboot
3) By using Terminal Emulator (note that the values you set will be lost after a reboot/shutdown)
- Open Terminal Emulator
- Run these commands
Code:
su
# Run a command for each cpu frequency voltage you'd like to change
echo "[I][B][COLOR="Blue"]cpu_freq_HZ[/COLOR][/B][/I] [I][COLOR="SeaGreen"][B]mV[/B][/COLOR][/I]" > /sys/devices/system/cpu/cpu0/cpufreq/vdd_levels
cpu_freq_HZ is the cpu frequency in Hz you'd like to change
mV is the voltage you want to set
For example, the following line means that when the cpu frequency is 1516800 Hz = 1516 MHz, the voltage used will be 1175 mV
Code:
echo "1516800 1175" > /sys/devices/system/cpu/cpu0/cpufreq/vdd_levels
Alternative Extreme Undervolted (ExUV) settings
If after overclocking your I8150 you noticed some freezes when on ExUV kernel builds, you may use an alternative extremely undervolted setting with the init.d script you can find here: 01vdd_levels_alt_exuv
- Download the script
- If the file has been saved with .txt extension (stock browser), rename it by removing the .txt extension
- Copy the new file inside /etc/init.d
- Give the rwxr-xr-x permissions to the file (read, write, execution for owner, read and execution for group users, read and execution for others)
- Reboot
Force Fast Charge
This feature allows you to force AC charging for any charger that is detected as USB (eg. PC USB ports, USB Car Chargers) and pull the full current the charger can support, in such a way as to speed up the time required for a complete battery recharge.
By enabling this feature, the USB / ADB data transfers will be disabled (security limitation to protect your data).
How to enable/disable the Force Fast Charge:
1) By using the related setting inside System->Advanced->Force Fast Charge (only on CM 10 Beta 3 and next releases)
2) By downloading and using Trickster MOD or IncrediControl or NsTools
2) By directly editing the file /sys/kernel/fast_charge/force_fast_charge and setting 1 to enable the force charge, 0 to disable it (note that set value will be lost after a reboot/shutdown)
3) By using Terminal Emulator (note that set value will be lost after a reboot/shutdown)
- Open Terminal Emulator
- Run this command to enable the force fast charge feature
Code:
su
echo 1 > /sys/kernel/fast_charge/force_fast_charge
- Then, when you want to restore the normal status, run this command to disable the force fast charge feature
Code:
su
echo 0 > /sys/kernel/fast_charge/force_fast_charge
4) By using a customized init.d script, but I don't recommend it because you have to remember to disable the feature every time you want to connect your device to a pc for data transfering after every reboot
Battery life extender (BLX)
This feature has been developed by Ezekeel and allows to set a customized battery charging limit (100% is the default stock value, if you want, you can set a lower value).
As Ezekeel said, it is commonly accepted that both very low and very high charge states accelerate the degradation of the battery capacity (that is why you should store Li-Ion batteries at around 40% charge).
If you set a charging limit equal to 100, this feature will be disabled.
How to activate this feature and set a customized charging limit:
1) By downloading and using Trickster MOD or NsTools by setting the customized battery life extender charging limit
2) By using a customized init.d script (the custom value will be always restored after a reboot, if you don't format the system partition)
- Download the script named 15blx
- If the file has been saved with .txt extension (stock browser), rename it by removing the .txt extension
- Edit the file by setting your preferred charging limit (the downloaded script will set the charging limit to 95%)
- Copy the new file inside /etc/init.d
- Give the rwxr-xr-x permissions to the file (read, write, execution for owner, read and execution for group users, read and execution for others)
- Reboot
3) By directly editing the file /sys/class/misc/batterylifeextender/charging_limit (the value you set will be lost after a reboot/shutdown)
4) By using Terminal Emulator (note that set value will be lost after a reboot/shutdown)
- Open Terminal Emulator
- Run these commands (changing the charging limit = 95 with the preferred one)
Code:
su
echo 95 > /sys/class/misc/batterylifeextender/charging_limit
LowMemoryKiller
The LowMemoryKiller driver is used to kill a selected process and free the memory when it is under one of the defined thresholds.
The tuning of the driver could be achieved by means of two parameters exposed by the kernel module via sysfs interface:
- /sys/module/lowmemorykiller/parameters/minfree
This file includes a comma separated array of the threshold numbers for minfree memory size (in page units).
- /sys/module/lowmemorykiller/parameters/adj
This file includes the comma separated array of oomadj factors, if the corresponding minfree threshold has been reached, one of the process with an oomadj greater than this number will be killed.
The oomadj factor is a property associated to each process, its value is in a range from -17 to +15, the processes with a higher oomadj factor will be the first to be killed when a specific minfree threshold has been reached.
RAM Console
This feature is useful expecially for development and debugging purposes, when occurs kernel panic / unexpected shutdowns or reboots. Pratically, the kernel messages are also stored inside a little RAM portion and restored during reboot after a kernel panic, inside the file /proc/last_kmsg.
Dynamic FSync
This feature has been developed by Faux123 and allows to dynamically manage the synchronous writes performed on file system (FSync).
It uses asynchronous writes when the screen is on, instead of synchronous writes, to have better performance and a slightly lower battery drain, while when the screen is off the synchronous writes are re-enabled to flush all the outstanding writes and prevent possible data loss.
How to enable/disable the Dynamic FSync (default enabled):
1) By downloading and using Trickster MOD
2) By directly editing the file /sys/kernel/dyn_fsync/Dyn_fsync_active and setting 1 to enable the dynamic fsync, 0 to disable it (note that set value will be lost after a reboot/shutdown)
3) By using Terminal Emulator (note that set value will be lost after a reboot/shutdown)
- Open Terminal Emulator
- Run this command to disable the dynamic fsync feature
Code:
su
echo 0 > /sys/kernel/dyn_fsync/Dyn_fsync_active
- Or run this command to re-enable the dynamic fsync feature
Code:
su
echo 1 > /sys/kernel/dyn_fsync/Dyn_fsync_active
Dynamic dirty page writebacks
This feature has been developed by me and allows to dynamically manage the dirty page writebacks with two different intervals, one when the screen is on and another when the screen is off.
It is based on a commit of Francisco Franco, but instead of using hard coded values and of disabling at all the dirty page writebacks while the screen is on (possibility of data loss), I preferred to use a customizable higher dirty page writebacks interval (15 seconds) than the default one (5 seconds) while the screen is on and a customizable default interval (5 seconds) when the screen is off.
By using a higher interval we have better performance and less battery consumption, with a very low risk of data loss.
How to customize the dynamic dirty page writebacks feature (default enabled):
Three new procfs parameters are exposed inside /proc/sys/vm path:
- dynamic_dirty_writeback is the activation status of this feature, set 1 to enable it, set 0 to disable it and use the standard behaviour
- dirty_writeback_active_centisecs is the interval for the dirty page writebacks when the system is active (screen on), the default value is 1500 centisecs (15 seconds)
- dirty_writeback_suspend_centisecs is the interval for the dirty page writebacks when the system is suspended (screen off), the default value is 500 centisecs (5 seconds)
In my kernel builds, during boot, I set other customized values:
- an interval of 30 seconds while the screen is on
- an interval of 10 seconds when the screen is off
1) By directly editing one of the file written above inside /proc/sys/vm and setting the preferred value (note that set value will be lost after a reboot/shutdown)
2) By using Terminal Emulator (note that set value will be lost after a reboot/shutdown)
- Open Terminal Emulator
- Run this command to disable the dynamic dirty page writebacks feature
Code:
su
echo 0 > /proc/sys/vm/dynamic_dirty_writeback
- Or run this command to re-enable the dynamic dirty page writebacks feature
Code:
su
echo 1 > /proc/sys/vm/dynamic_dirty_writeback
- Run this command to set customize the two intervals (30 seconds while the screen is on, 10 seconds when the screen is off)
Code:
su
echo "3000" > /proc/sys/vm/dirty_writeback_active_centisecs
echo "1000" > /proc/sys/vm/dirty_writeback_suspend_centisecs
Special features and sysfs settings (Part 2):
Timer slack controller and dynamic management of the minimal timer slack value
The timer slack controller is a feature developed by Kirill Shutemov and it allows to set the minimal timer slack value for every process contained within a control group (cgroup).
A timer slack allows the kernel to manage processes wakeup requests at some future time.
Thanks to this feature, the kernel can set a specific timer slack for the involved processes, minimizing the number of wakeups and allowing a lower system's power consumption.
For further info: Timer slack for slacker developers
I also implemented a new feature in addition to the above one that allows the dynamic management of the minimal timer slack value.
So, it's possible to use different minimal timer slack value when the system is active and when has been suspended.
How to customize the dynamic timer slack controller feature:
Three new cgroup parameters are exposed inside each processes hierarchy contained in /dev/cpuctl path:
- timer_slack.min_slack_ns is the timer slack used when the system is active for the current processes hierarchy
- timer_slack.min_slack_suspend_ns is the timer slack used when the system is suspended for the current processes hierarchy
- timer_slack.effective_slack_suspend_ns is the timer slack currently used
At the moment, the values chosen and used by K^Kernel are the following:
- core processes (/dev/cpuctl), 0 ns when the system is active, 50000 ns when the system is suspended
- foreground apps/processes (/dev/cpuctl/apps), 0 ns when the system is active, 250000 ns when the system is suspended
- background non interactive apps/processes (/dev/cpuctl/apps/bg_non_interactive), 100000000 ns when the system is active, 250000000 ns when the system is suspended
1) By directly editing one of the file written above inside /dev/cpuctl and inside each hierarchy subfolder, by setting the preferred value (note that set value will be lost after a reboot/shutdown)
2) By using Terminal Emulator (note that set value will be lost after a reboot/shutdown)
- Open Terminal Emulator
- Run these commands to set the minimal timer slack for generic and core apps/processes
Code:
su
echo 0 > /dev/cpuctl/timer_slack.min_slack_ns
echo 50000 > /dev/cpuctl/timer_slack.min_slack_suspend_ns
- Run these commands to set the minimal timer slack for apps/processes in foreground
Code:
su
echo 0 > /dev/cpuctl/apps/timer_slack.min_slack_ns
echo 100000 > /dev/cpuctl/apps/timer_slack.min_slack_suspend_ns
- Run these commands to set the minimal timer slack for apps/processes in background and non interactive
Code:
su
echo 100000000 > /dev/cpuctl/apps/bg_non_interactive/timer_slack.min_slack_ns
echo 250000000 > /dev/cpuctl/apps/bg_non_interactive/timer_slack.min_slack_suspend_ns
LowMemoryKiller management of not killable processes
This feature allows to define processes and system processes white-lists filled with the preferred process names and to not be killed by lowmemorykiller, unless it is absolutely necessary.
This feature exposes four new lowmemorykiller parameters:
- donotkill_proc, is the flag to enable / disable this feature for the processes chosen by the user
- donotkill_sysproc, is the flag to enable / disable this feature for the system processes chosen by the user
- donotkill_proc_names, is the list of process names (comma separated) chosen by the user to be preserved from killing
- donotkill_sysproc_names, is the list of user system process names (comma separated) chosen by the user to be preserved from killing
When the lowmemorykiller needs to free ram, it will first kill the processes not included inside the two process name lists chosen by the user.
If there are no more standard killable processes, then it will be necessary to kill one of the processes included inside one of the two white-lists, to prevent system hangs, slowdowns, etc.
How to customize the white lists of processes to preserve from killing:
On K^Kernel the feature is enabled by default and the provided processes white lists are the following:
- donotkill_proc_names = "com.cyanogenmod.trebuchet,com.anddoes.launcher,com.teslacoilsw.launcher,org.adwfreak.launcher,gtp.nextlauncher,android.inputmethod.latin,com.touchtype.swiftkey"
this means that Trebuchet Launcher, Apex Launcher, Nova Launcher, ADW Launcher, Next Launcher, stock keyboard and SwiftKey keyboard will be preserved from killing
- donotkill_sysproc_names = "android.process.acore,com.android.phone,com.bel.android.dspmanager"
this means that the system process, the phone process and DSP Manager will be preserved from killing
1) By using a customized init.d script (the custom value will be always restored after a reboot, if you don't format the system partition)
- Download the script named 80dnkp
- If the file has been saved with .txt extension (stock browser), rename it by removing the .txt extension
- Edit the file by setting your preferred status and processes list
- Copy the new file inside /etc/init.d
- Give the rwxr-xr-x permissions to the file (read, write, execution for owner, read and execution for group users, read and execution for others)
- Reboot
2) By directly editing the files inside /sys/module/lowmemorykiller/parameters (note that set values will be lost after a reboot/shutdown)
3) By using Terminal Emulator (note that set values will be lost after a reboot/shutdown)
- Open Terminal Emulator
- Run these commands if you want to enable the feature
Code:
# To enable this feature for the processes chosen by the user
echo 1 > /sys/module/lowmemorykiller/parameters/donotkill_proc
# To enable this feature for the system processes chosen by the user
echo 1 > /sys/module/lowmemorykiller/parameters/donotkill_sysproc
- Run these commands if you want to disable the feature
Code:
# To disable this feature for the processes chosen by the user
echo 0 > /sys/module/lowmemorykiller/parameters/donotkill_proc
# To disable this feature for the system processes chosen by the user
echo 0 > /sys/module/lowmemorykiller/parameters/donotkill_sysproc
- Run this command if you want to add, for example, Trebuchet Launcher (CM default launcher) and the default keyboard to the processes white list
Code:
echo "com.cyanogenmod.trebuchet,android.inputmethod.latin" > /sys/module/lowmemorykiller/parameters/donotkill_proc_names
- Run this command if you want to add, for example, the system process, the phone process and DSP Manager to the system processes white list
Code:
echo "android.process.acore,com.android.phone,com.bel.android.dspmanager" > /sys/module/lowmemorykiller/parameters/donotkill_sysproc_names
ZRAM module
As explained on Wikipedia, this feature, provided in this kernel as a standalone loadable module, increases performance by avoiding paging on disk and instead uses a compressed block device in RAM in which paging takes place until it is necessary to use the swap space on the hard disk drive.
In few words, the memory pages no more used and so to be swapped are sent to zRam device blocks, compressed and stored in memory instead of disk allowing better performance and also lower memory usage, on the other hand, a little higher amount of cpu is needed to perform compression and decompression of memory pages.
Since we have a device with a low amount of free memory, this feature could be useful to have more free ram.
How to change the size of zRam or to disable it (thanks to @ktulu84 for sharing these scripts):
To change the size of zRam (the custom value will be always restored after a reboot, if you don't format the system partition):
- Download the script named 60zram
- If the file has been saved with .txt extension (stock browser), rename it by removing the .txt extension
- Edit the file by setting your preferred zRam size (change SIZE value, default is 100 MB)
- Copy the new file inside /etc/init.d
- Give the rwxr-xr-x permissions to the file (read, write, execution for owner, read and execution for group users, read and execution for others)
- Reboot
If you want to use default zRam size, simply remove the file placed inside /etc/init.d and reboot.
To disable zRam (the custom value will be always restored after a reboot, if you don't format the system partition):
- Download the script named 60disable_zram
- If the file has been saved with .txt extension (stock browser), rename it by removing the .txt extension
- Copy the new file inside /etc/init.d
- Give the rwxr-xr-x permissions to the file (read, write, execution for owner, read and execution for group users, read and execution for others)
- Reboot
If you want to re-enable zRam, simply remove the file placed inside /etc/init.d and reboot.
FAQ - Frequently asked questions:
Q: What are the differences between EXUV and UV kernel versions?
A: The EXUV kernel versions have extremely undervolted settings for the cpu frequencies, they allows to have a very low battery drain, instead the UV kernel versions have undervolted settings a bit higher than EXUV versions, but always lower than stock kernel settings.
The EXUV kernel versions could give some problems (freezes, shutdowns, huge lags) on some devices because the cpu doesn't support too low voltage settings.
For a lower battery consumption, I suggest you to try EXUV versions first and to switch to UV versions only if you encounter one of the above mentioned problems.
Q: For v1.0 kernel builds, what are the differences between 396MB, 406MB and 416MB versions?
A: 396MB, 406MB and 416MB kernel versions have different free ram available for user space, with a higher free ram your device will work better with heavy apps, many concurrently used apps, heavy games, etc.
- 396MB versions are more stable, everything is fully working, but you could have some slowdowns with apps that require a high amount of free memory.
- 406MB versions have additional 10 MB of free ram, they are suitable for the users that use the device primarly for calls, messages, simple apps and simple games. The camera, video recording (both 480p and 720p modes) and video playback are fully working.
- 416MB versions have additional 20 MB of free ram, they are suitable for the users that use the device also with heavy apps, various concurrently used apps and games. The camera, video recording (both 480p and 720p modes) and video playback are fully working.
Q: How can I get the Performance and Developer Options entries inside Settings menu?
A: Go inside Settings -> About Phone -> Scroll down and tap 7 times on Build number (it's an Easter Egg).
Q: How can I get the log after an unexpected shutdown / reboot?
A: After an unexpected shutdown / reboot of the device, if the problem may be kernel related, you should have the /proc/last_kmsg, if so, send me that log and I'll check it to find the possible cause of the problem.
Q: How can I get the logs when I encounter strange system issues while it's running?
A: Check first if the problems could be related to an app you're using and if you changed something in the last days before facing those issues.
If the problem started after installing the kernel, then let me have you logcat and dmesg:
- Open Terminal Emulator and execute these commands:
Code:
su
dmesg > /sdcard/dmesg.txt
locat -v time -d > /sdcard/logcat.txt
- Open you preferred file manager and go inside the internal sd card partition /sdcard
- Send me the dmesg.txt and logcat.txt files, if you want zip them first
Q: How can I mount a shared Windows folder with CIFS module?
1) By using Terminal Emulator
Code:
mount -o unc=\\\\[COLOR="DarkGreen"][I]ip[/I][/COLOR]\\[COLOR="Blue"][I]share[/I][/COLOR],noserverino,username=[I][COLOR="DarkOrange"]user[/COLOR][/I],password=[I][COLOR="Lime"]password[/COLOR][/I] -t cifs //[COLOR="DarkGreen"]ip[/COLOR]/[COLOR="Blue"]share[/COLOR] [I][COLOR="DarkSlateGray"]/mnt/cifs[/COLOR][/I]
2) Downloading and using CifsManager and configuring the new share as follow:
- Share Path = ip/share
- Mount Point = /mnt/cifs/share
- Username = username
- Password = password
- Options = unc=\\\\ip\\share,noserverino
Where:
ip is the ip address of your pc where the folder is shared
share is the shared folder name
user is the user name that can access the shared folder
password is the user password
/mnt/cifs is the mount point (must be created if you'd like to use the command approach with Terminal Emulator)
Reserved, just in case...
Notorious as always. Thanks, Christopher!
Awesome!!! I'll update my W soon *_*
P.s. Happy new year!!!
Wow! I bet this is your first 2015 kernel post
Sent from my GT-S6500 using XDA Free mobile app
Wow, so fast sir. You are the king of kernel :thumbup:
Chris, you're impeccable. Thanks for support.
i download n instal this kernel, but i got some trouble when i try to find Performance Setting.
i do have Developers Setting, but for Performing Setting i can't figure it where.
sorry for my bad english
Sent from indONEsia
ka12el said:
i download n instal this kernel, but i got some trouble when i try to find Performance Setting.
i do have Developers Setting, but for Performing Setting i can't figure it where.
sorry for my bad english
Sent from indONEsia
Click to expand...
Click to collapse
There is no performance settings at the moment in cm12. As an alternative use performance control
ilusi0n_ said:
There is no performance settings at the moment in cm12. As an alternative use performance control
Click to expand...
Click to collapse
thanks for your respon
but why on Q&A first page say i can get dev setiing and perform setting with press 7 times on build number.
ok i try the apps
thank you so much
Sent from my GT-I8150 using XDA Free mobile app
ka12el said:
thanks for your respon
but buy on Q&A first page say i can get dev setiing and perform setting with press 7 times on build number.
ok i try the apps
thank you so much
Sent from my GT-I8150 using XDA Free mobile app
Click to expand...
Click to collapse
Performance settings does not appear because cyanogenmod didn't implement it when Arco compile the rom for us. In a future build, the rom will have the performance settings.
Today I get kernel wakelock from apps wakelock detector
It is "rpc_read" wakelock about 12 h
Im using your kernel, christopher
Thank you
Is it working with the latest cm12?
riyosakura said:
Is it working with the latest cm12?
Click to expand...
Click to collapse
Yes it is.
riyosakura said:
Is it working with the latest cm12?
Click to expand...
Click to collapse
I think it should not be used, because it is not in sync with the latest changes in CM12
* Waiting for the new version update .
huongthanh8690 said:
I think it should not be used, because it is not in sync with the latest changes in CM12
* Waiting for the new version update .
Click to expand...
Click to collapse
you think so? i already flashed it lol.
so far so good though.
huongthanh8690 said:
I think it should not be used, because it is not in sync with the latest changes in CM12
* Waiting for the new version update .
Click to expand...
Click to collapse
using it with no problems.
CM12 Section
ONLY USE THIS KERNEL WITH ROM BASED ON
[ROM][LP][5.0.2][LRX22G] CyanogenMod 12.0 (20141230-UNOFFICIAL)
I'm not a developer, im taking effort to put more choices of kernel for our community
Please RATE this thread 5 STAR if you like it.. it absolutely encourage me more
Disclaimer
Code:
/*
* Your warranty is now void.
*
* I am not responsible for bricked devices, dead SD cards,
* thermonuclear war, or you getting fired because the alarm app failed. Please
* do some research if you have any concerns about features included in this ROM
* before flashing it! YOU are choosing to make these modifications, and if
* you point the finger at me for messing up your device, I will laugh at you.
*/
Features
List of Governors Available :-
- Lulzactive
- Powersave
- SmartAssV2
- interactive
- conservative
- ondemand
- performance
IO Scheduler
- noop
- deadline
- row
- cfq
- bfq
- sio
- vr
- fiops
Additional Features
- CPU voltage control VDD sys interface (voltage adjustable)
- Overclock support
- Added NEON compilation flag to VFP module
- SnapDragon Optimization
- dynamic read-ahead
- frandom
- Lowered display panel voltage
- Lowered wifi voltage
- Increase audio loudness
- Dynamic management of dirty page writebacks credit to Christopher83
- Dynamic Fsync
- Fixed 100% battery notification after charger unplug credits to Christopher83
- LowMemoryKiller management of not killable processes - credits to christopher
- Asynchronous I/O latency to a solid-state disk greatly increased
- CK3 tweaks (Credits to Con Kolivas) - adapted by Christopher
- Snappy Google Zram
- Random Tweaks
- Reduce WIFI wakelocks - credits to DerTeufel
- Implement Suspend Freeze (more battery friendly)
- exfat support
- add MSM-SLEEPER support(max screen off frequency) - 902Mhz
Explanation of Android Governors
My GitHub
Installation Guide:
1. Reboot To Recovery Mode
2. Wipe Cache & Dalvik Cache
3. Flash the kernel
4. Reboot
5. wait until the phone boot up
6. Reboot back for second time
Code:
[I]Credit to :-[/I]
- Our Master [URL="http://forum.xda-developers.com/member.php?u=3044346"][B]Arco[/B][/URL] for his kernel source ([I] go press thanks for any posted by arco :D without he, this kernel wont existed[/I] )
- AriesVE-DevCon-TEAM that make ION and PMEM can co-existed together.. big thanks for them :)
- educk for his tutorial and governors
- biagio7xD for extra governors and SnapDragon Optimization
- Christopher83 that helping me teach how to correct the error and advising me and thanks for his new linaro :)
- Xistance for his teaching
- CastagnaIT for his useful sources
- CyanogenMod developers that developing our CM
- Linaro GCC developers let me using this powerful compiler
- hadidjapri hadiconfig (more RAM)
- keff for governors code fixes
- credit to idcrisis for Crossbreeder MOD
- FelixMG for youtube video
- arsradu for kernel.zip
- others developer on GitHub
- xda-developers.com for all the teaching and members
XDA:DevDB Information
[Kernel][ION+PMEM][CM12] HurtSky's Kernel V1 5/1/2015, Kernel for the Samsung Galaxy W I8150
Contributors
hurtsky
Kernel Special Features:
Version Information
Status: Stable
Current Stable Version: V1
Stable Release Date: 2015-01-05
Created 2015-01-05
Last Updated 2015-01-05
DOWNLOAD LINK >HERE and Mirror Link
Changelogs of Revision Version
Do not expect me to explain all the commits/changes. i wont entertain your question unless for some reason.. GOOGLE IT than you will know
CM 12 github branch
CFS - CLICK HERE for changelogs
Code:
[B][I]V1 5/1/2015[/I][/B]
- configs: update custom configs (credits to Hurtsky)
- lib, net: make isodigit() public and use it (credits to Andy Shevchenko)
- random: check for increase of entropy_count because of signed conversion (credits to Hannes Frederic Sowa)
- random: fix nasty entropy accounting bug (credits to Theodore Ts'o)
- random: convert use of typedef ctl_table to struct ctl_table (credits to Joe Perches)
- random: fix BUG_ON caused by accounting simplification (credits to Theodore Ts'o)
- random: use the architectural HWRNG for the SHA's IV in extract_buf() (credits to Theodore Ts'o)
- random: entropy_bytes is actually bits (credits to Greg Price)
- random: simplify accounting code (credits to Greg Price)
- random: forget lock in lockless accounting (credits to Greg Price)
- random: simplify accounting logic (credits to Greg Price)
- random: fix comment on "account" (credits to Greg Price)
- random: simplify loop in random_read (credits to Greg Price)
- random: fix description of get_random_bytes (credits to Greg Price)
- random: fix comment on proc_do_uuid (credits to Greg Price)
- random: fix typos / spelling errors in comments (credits to Greg Price)
- random: add debugging code to detect early use of get_random_bytes() (credits to Theodore Ts'o)
- random: printk notifications for urandom pool initialization (credits to Theodore Ts'o)
- random: convert DEBUG_ENT to tracepoints (credits to Hurtsky)
- random: initialize the last_time field in struct timer_rand_state (credits to Theodore Ts'o)
- random: don't zap entropy count in rand_initialize() (credits to Theodore Ts'o)
- random: make add_timer_randomness() fill the nonblocking pool first (credits to Theodore Ts'o)
- random: push extra entropy to the output pools (credits to Theodore Ts'o)
- random: drop trickle mode (credits to Theodore Ts'o)
- random: adjust the generator polynomials in the mixing function slightly (credits to Theodore Ts'o)
- random: speed up the fast_mix function by a factor of four (credits to Theodore Ts'o)
- random: cap the rate which the /dev/urandom pool gets reseeded (credits to Theodore Ts'o)
- random: optimize the entropy_store structure (credits to Theodore Ts'o)
- random: optimize spinlock use in add_device_randomness() (credits to Theodore Ts'o)
- random: fix the tracepoint for get_random_bytes(_arch) (credits to Theodore Ts'o)
- random: allow architectures to optionally define random_get_entropy() (credits to Theodore Ts'o)
- random: account for entropy loss due to overwrites (credits to H. Peter Anvin)
- random: allow fractional bits to be tracked (credits to H. Peter Anvin)
- random: statically compute poolbitshift, poolbytes, poolbits (credits to H. Peter Anvin)
- random: mix in architectural randomness earlier in extract_buf() (credits to Theodore Ts'o)
- char: Convert use of typedef ctl_table to struct ctl_table (credits to Joe Perches)
- lib/string_helpers: introduce generic string_unescape (credits to Andy Shevchenko)
- drivers/char/random.c: fix priming of last_data (credits to Jarod Wilson)
- usb: feed USB device information to the /dev/random driver (credits to Theodore Ts'o)
- random: use the arch-specific rng in xfer_secondary_pool (credits to Theodore Ts'o)
- random: prime last_data value per fips requirements (credits to Jarod Wilson)
- random: fix locking dependency with the tasklist_lock (credits to Theodore Ts'o)
- netfilter: IDLETIMER: fix invalid deference of timer (credits to JP Abgrall)
- nf: IDLETIMER: Fix possible use before initialization in idletimer_resume (credits to Patrick Daly)
- crypto: add crypto_[un]register_shashes for [un]registering multiple shash entries at once (credits to Jussi Kivilinna)
- crypto: sha512 - Expose generic sha512 routine to be callable from other modules (credits to Tim Chen)
- crypto: sha256 - Expose SHA256 generic routine to be callable externally. (credits to Tim Chen)
- ARM: 8120/1: crypto: sha512: add ARM NEON implementation (credits to Jussi Kivilinna)
- ARM: 8119/1: crypto: sha1: add ARM NEON implementation (credits to Jussi Kivilinna)
- ARM: add .gitignore entry for aesbs-core.S (credits to Russell King)
- ARM: 7723/1: crypto: sha1-armv4-large.S: fix SP handling (credits to Ard Biesheuvel)
- ARM: 7837/3: fix Thumb-2 bug in AES assembler code (credits to Ard Biesheuvel)
- ARM: 7626/1: arm/crypto: Make asm SHA-1 and AES code Thumb-2 compatible (credits to Dave Martin)
- ARM: pull in <asm/simd.h> from asm-generic (credits to Ard Biesheuvel)
- ARM: move AES typedefs and function prototypes to separate header (credits to Ard Biesheuvel)
- crypto: ablk_helper - Replace memcpy with struct assignment (credits to kbuild test robot)
- crypto: create generic version of ablk_helper (credits to Ard Biesheuvel)
- ARM: add support for bit sliced AES using NEON instructions (credits to Hurtsky)
- ARM: 7835/2: fix modular build of xor_blocks() with NEON enabled (credits to Ard Biesheuvel)
- ARM: crypto: add NEON accelerated XOR implementation (credits to Ard Biesheuvel)
- ARM: add support for kernel mode NEON (credits to Ard Biesheuvel)
- ARM: vfpmodule: Move bounce stats file to seq_file and friends (credits to Stephen Boyd)
- ARM: be strict about FP exceptions in kernel mode (credits to Ard Biesheuvel)
- ARM: move VFP init to an earlier boot stage (credits to Ard Biesheuvel)
- ARM: vfp: initialize vfp driver before cpufreq (credits to Bongkyu Kim)
- configs: update custom config (credits to Hurtsky)
- defconfig: Enable F2FS filesystem (credits to Arne Coucheron)
- fs: f2fs: Initial import from https://kernel.googlesource.com (credits to Arne Coucheron)
- Staging: android: binder: More offset validation. (credits to Arve Hjonnevag)
- crypto: msm: check potential integer overflow (credits to William Clark)
- cfg80211: ignore supported rates for nonexistant bands on scan (credits to Felix Fietkau)
- Enable NEED_NETDEV for vendor command support. (credits to Subhani Shaik)
- net: ipv6: Add a sysctl to make optimistic addresses useful candidates (credits to Erik Kline)
- netfilter: nf_conntrack: decrement global counter after object release (credits to Pablo Neira Ayuso)
- net: ipv6: autoconf routes into per-device tables (credits to Lorenzo Colitti)
- broadcom_wlan: Modify country code source (credits to Arne Coucheron)
- ext4: Add support for FIDTRIM, a best-effort ioctl for deep discard trim (credits to JP Abgrall)
- defconfig: Regenerate (credits to Arne Coucheron)
- defconfig: Enable CONFIG_NETFILTER_XT_TARGET_IDLETIMER (credits to Arne Coucheron)
- defconfig: Set selinux permissive (credits to Arne Coucheron)
- ariesve: Set SELinux to be permissive (credits to Cristoforo Cataldo)
- configs: update custom config (credits to Hurtsky)
MIRROR Link
CLICK HERE FOR ALTERNATIVE DOWNLOAD LINK
Special Features
MSM_LIMITER
This function will limit the cpu in certain condition such as frequency during suspend, resume and min frequency. This features enabled in default and the frequency already been set for suspend freq to 900Mhz (screen off), min freq 245Mhz, resume freq 1.4Ghz. This feature may can reduce power consumption as it limit our cpu frequency after the screen off. If this features enabled, OC frequency will be override automatically after the screen off = 900Mhz and resume back to 1.4Ghz. Thus, you need to disable it if you like to make OC frequency stays,
so here the step to disable it: -
1. By using Terminal Emulator (note that set value will be lost after a reboot/shutdown)
- Open Terminal Emulator
- Run this command to disable msm_limiter feature
Code:
su
echo "0" > /sys/kernel/msm_limiter/limiter_enabled
echo "0" for disable or echo "1" for enable it back
2. Download the msm_limiter_switch.sh.pdf
- after download the script please rename the file by removing .pdf and the name of the file should be like this msm_limiter_switch.sh
- by using Script Manager application open the msm_limiter_switch as script and tick the the "boot"
- by doing this, the msm_limiter will stick disable after the boot
in advance step, you can adjust the frequency of suspend, resume and min frequency to suit your taste here the command
1. For resume frequency
Code:
su
echo "<put ur own frequency here>" > /sys/kernel/msm_limiter/resume_max_freq
example:-
Code:
su
echo "1824000" > /sys/kernel/msm_limiter/resume_max_freq
this will make your CPU freq up to 1.8Ghz when screen on.. it just an example.
2. For suspend frequency
Code:
su
echo "<put ur own frequency here>" > /sys/kernel/msm_limiter/suspend_max_freq
Table of our devices frequency
Code:
122880
245760
368640
768000
806400
902400
1017600
1024000
1113600
1209600
1305600
1401600
1516800
1555200
1612800
1804800
1824000
Android Logger ON/OFF mode
Android logger can be turn off/on when you need or did not need it in this kernel, this function was introduced to reduce A BIT cpu usage or ram consumption that be used by the logger. The android logger was set OFF in default for this kernel :-
Here the step to change the logger mode:-
-the option of the mode-
/*
* 0 - Enabled
* 1 - Auto Suspend
* 2 - Disabled
*/
1. By using Terminal Emulator (note that set value will be lost after a reboot/shutdown)
- Open Terminal Emulator
- Run this command to disable the logger
Code:
su
echo "you choice of logger mode" > /sys/module/logger/parameters/log_mode
Example
Code:
su
echo "2" > /sys/module/logger/parameters/log_mode
Gentle fair sleepers
Disable gentel fair sleepers will give you better UI performance.. disabling it will make your phone consume more power due to several reason (i forgot the source of this statement), btw you can change it to suit your taste
-the option of the mode-
/*
* 0 - Disabled
* 1 - Enabled
*/
Code:
su
echo "you choice" >/sys/kernel/sched/gentle_fair_sleepers
Example
Code:
su
echo "1" >/sys/kernel/sched/gentle_fair_sleepers
-
reserved third
Unleashed the Hurtsky Kernel for CM12 .. Enjoy
hurtsky said:
CM11 Section
ONLY USE THIS KERNEL WITH ROM BASED ON
[ROM][KK][4.4.2][KOT49H] CyanogenMod 11.0 (UNOFFICIAL)
Click to expand...
Click to collapse
i think this is a mistake
iwjosi said:
i think this is a mistake
Click to expand...
Click to collapse
thank you for letting me know
Thanks!
where can i find the performance settings in cm12?
SkyLaci said:
Thanks!
where can i find the performance settings in cm12?
Click to expand...
Click to collapse
Its not implemented by the cyanogen-team yet.
i get fc with performance control after flashing
xSmart007x said:
i get fc with performance control after flashing
Click to expand...
Click to collapse
sorry for late reply, i had trouble to open xda for long time.. i will try to solve the problem in next version.. thank you
Is it working with the latest build?
riyosakura said:
Is it working with the latest build?
Click to expand...
Click to collapse
nope.. wait for next update.. still busy right now to update the kernel
hurtsky said:
sorry for late reply, i had trouble to open xda for long time.. i will try to solve the problem in next version.. thank you
Click to expand...
Click to collapse
hello sir, i already tested the performance control on stock ROM and kernel, seems the apps also force close so this problem maybe caused by the incompatibility to CM12
Sir..can i flash this kerenel for liquid smooth(5.0.2)
"LukoSius Kernel"(LK) is Custom Kernel for CM/AOSP Based Roms!
Just a statement regarding kernel source: The Kernel Source is of course covered under GPL version 2. Free software does NOT mean no work or time was spent working on it. I have donated a large sum of my free time. If you use my modified kernel source in parts or in its entirety, I kindly ask you mention its origins and to send me a github pull request or PM whenever you find bugs or think you can help improve my kernel further. This way the entire community will truly benefit from the spirit of open source. Thank you !
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
THIS KERNEL is BASED ON TeamHackLG Source Code. So it is COMPATIBLE WITH ALL Kitkat/Lollipop Builds.
Kernel Features:
Based on 3.4.108kernel version
block updated to r7v7
Built with powerful 5.2 ubertc 2015-10-01
Google Snappy Algorithm
Optimized build flags
Added /dev/frandom support
Updated random
More governor
Full lollipop support
Allowed forced fast charge! hack.
Disable Gentle Fair Sleepers
Optimized SLUB memory allocator
Smooth optizimation
Optimized Parameters from L Speed
Dynamic FSYNC
Improve 3x faster integer sqrt.
CK3 tweaks
zCache
fixed few leaks
BLN (BackLight Notification) support
Async support
Disabled Gentle Fair Sleepers
Optimized ARM RWSEM algorithm
fs/dyn_sync control
updated ion
Compiled with -O2 flags and hardware neon-vfpv4 FPU enabled.
File systems support: Ext2/3/4, FAT32, CIFS, USB OTG.
Support F2FS filesystem!
Support EXFAT filesystem!
and lots off more just check github...
Downloads:
Click here!
Here's a step by step instruction to install this kernel:
1. download the above file (via phone directly or to a PC)
2. copy the downloaded zip file to /sdcard/download/
3. Open ROM Manager and select "Reboot into Recovery" and select "OK"
3.*Or use any other method to get into recovery.
4. Once in recovery, select "wipe cache partition", select "Yes", then select "advanced", then select "Wipe Dalvik Cache", then select "Yes" again. Once finished, click the back button to go back to the main recovery menu. On that menu, select "Install Zip From SDCad", then select "Choose zip from SDCard", then go to /sdcard/download and select the downloaded zip file and let it run its script.
5. Once the script is done, select "reboot system now"
Note: After FLASHING, the first reboot may take longer than usual, please be patient... After the first reboot, it may lag during initial load (let everything finish loading). Once everything is loaded and phone is ready for use, reboot the phone a 2nd time and the lag will be gone and everything should be silky smooth...
INFO FOR USER!!! READ ME FIRST:
*About force fast charge. not all devices/models support that HACK.
If it's NOT WORKING FOR YOU. no need to complain. it's HACK. not LG feature.
Change logs:
r1:
Code:
complete rebuild from lean kernel
r2:
Code:
*fixed wifi
*added bln
*and other stuff check github
r3:
Code:
*Merged fixes to WIFI driver.
*merged fixes for BLN .
*Merged updates to PM configs from aurora.
*Major code cleanup for msm cpufreq driver and cpu code. works great and in sync with android 5.1.
*Merged updates to USB driver.
*Merged updates to MMC driver.
*using kernel mode neon.
*Compiled and used new UBERTC 4.9 kernel build Toolchain! very advanced and powerful tool.
*Removed logs from camera when it's active. no one care..
*Updated Kernel MSM HotPlug.
*Enabled auto grouping of system tasks. to boost performance.
*Merged NET fixes from aurora.
*fixed frandom support.
*merged Always set noatime no diratime on all partitions
*using msm_ion instead of ion.
*Set 1024 kbytes as Max Readahead.
*merged stuff needed for Lp ril.
*tuned swapness.
*enabled Optimized ARM RWSEM algorithm.
*Merged update to netfilter code.
*merged some fixes for audio.
*Improved handling for bad sd cards.
*removed logs that I don't need.
*merged updates to cpufreq, mm, block and etc.
*merged Dynamic File Sync .
*Merged Fixes for msm_fb
* tuned smartassH3 awake freq.
*and other good stuff check github.
r4:
Code:
*Merged samsung patch to: WIFI, TIME, BT, AUDIT, USB, NET
*Merged more Selinux and NET updates from aurora 3.7.y kernel.
*Removed some logs
*support for e612/p700/p705
r5:
Code:
Revert "debug: remove: mach-msm remove smd debugging"
c9cea08 Revert "msm: mdp.c fix deadlock which causes blue screen"
7165693 Revert "cpufreq: Add cpu-boost driver"
78758c4 Revert "cpufreq: Add a sync limit to cpu-boost"
e6ddad9 Revert "cpufreq: Add Input Boost feature to the cpu-boost driver"
6b29ad7 Revert "cpufreq: Disable cpu-boost by default"
5ce0d31 update defconfigs
248c037 USB On-The-Go (OTG) Support!
a6ad7f2 clean up
2879757 mmc: core: Sorry change log is 5000+ commits so its nonsense to post it here
commits are:
3.4.5 --> 3.4.108enable eMMC5.0 card detection
6e1bbc9 block: row: Fix crash when adding a new field in bio struct
92681f0 mmc: core: invoke low power mode if card is not present
3c72844 mmc: core: enhance card removal judgement for slow removal
a474d8a net: wireless: Increase scan entry expiration to fit new scan time
b889d25 msm_fb: Fix RGB pipe offset issue
8bb49ec msm: mdp.c fix deadlock which causes blue screen
f4469e6 msm_fb: Enable MDP4 IGC LUT
8e27684 msm_fb: Fix GC & IGC LUT
b7e9f43 f2fs: Sync F2FS to Jaegeuk's linux-3.4 branch
ac69274 fs: f2fs: Initial import from https://kernel.googlesource.com
67dc2dd rwsem-spinlock: Implement writer lock-stealing for better scalability
55c11ba random: remove warning
0a2b123 random: prevent add_input from doing anything
2049b94 kernel: alarm: :fix the BUG that device automatically powers on
a068e3c staging: android: lowmemorykiller: Change default debug_level to 1
8844dd9 Input: Send events one packet at a time
6000a46 cpufreq: ondemand: Fix kernel warning in cpufreq_governor_dbs
675084f switch do_fsync() to fget_light()
56a90b4 dynamic fsync: favor true case since most will be using this feature
cc43be2 Bluetooth: Replace sprintf with snprintf
6f47a20 ARM: 7809/1: perf: fix event validation for software group leaders It is
087e073 sock_diag: Fix out-of-bounds access to sock_diag_handlers[]
cd2d80e SELinux: Reduce overhead of mls_level_isvalid() function call
af74f82 Staging: zram: Fix memory leak by refcount mismatch
ede832d Staging: zram: Fix access of NULL pointer
e066a76 module: fix out-by-one error in kallsyms
7dbe01c module: taint kernel when lve module is loaded
572d600 hashtable: introduce a small and naive hashtable
23855c2 block: recursive merge requests
9210752 block,elevator: use new hashtable implementation
d579062 msm: Allow lowmem to be non contiguous and mixed.
1b5c927 swap: allow swap readahead to be merged
f7ae10d fs/dcache.c: adaptive vfs_cache_pressure on suspend / resume
6f2a4ca cpufreq: Disable cpu-boost by default
1be3111 cpufreq: Add Input Boost feature to the cpu-boost driver
83afdf7 cpufreq: Add a sync limit to cpu-boost
823d83c cpufreq: Add cpu-boost driver
c8d0de6 debug: remove: arm unwind: remove logspam while in debug mode
ad356fc debug: remove: remove some dmesg logspam from Linux mainline 3.4 fs
02dd1cf debug: remove: tty makefile remove smux_debug
2453087 debug: remove: mach-msm remove smd debugging
r6:
Code:
Revert "touchscreen: Bring in DoubleTap2Wake
b271c93 touchscreen: Bring in DoubleTap2Wake
9afeac1 makefile fixes
61d4f6d include: Add support for GCC 5.0 and 6.0
7304fbc kernel: add support for gcc 5
f71924c block: Reserve only one queue tag for sync IO if only 3 tags are availab
9a6a8bc mmc/core: disable crc to improve performance
ab968dc fs: Add exFat support version 1.2.9 (kitkat source drop)
578da25 fs: Add exFat support version 1.2.7 (Samsung OSRC)
0fd613a logger: Add sys fs kernel interface to configure Android logger
1807fb3 printk: Add sys kernel interface to configure linux printk logging
dec9c78 Update setlocalversion
6fab90d build: Fix some warnings with GCC 4.9
418613c Fix gcc-4.9.0 miscompilation of load_balance() in scheduler
b1a4066 sched: Fix memory leakage in build_sched_groups()
c09db71 fs/namei.c: fix potential memory leak in path_lookupat
f8f64cc Bluetooth: fix possible info leak in bt_sock_recvmsg()
9cea22c mm: frontswap: add frontswap header file
c744db9 ext4: prevent kernel panic in case of uninitialized jinode
044b162 add optimisation
r7:
Code:
[M4] defconfigs Set selinux permissive
496e7ba selinux: Report permissive mode in avc: denied messages.
d10bf86 Revert "Input: Send events one packet at a time"
459e698 Revert "Revert "Revert "LZ4 Compressor module"""
97fd873 Revert "Revert "Revert "enable lz4"""
332b613 Revert "add changelog"
r8:
Code:
e95b886 intelliactive: rework input register/unregister
0f2ac0a intelliactive: make touch boost interface generic
fbe9004 intelliactive: add upstream patches
d3fc952 Revert "net: ipv6: allow choosing optimistic addresses with use_optid3fc952 Revert "net: ipv6: allow choosing optimistic addresses with use_opti
mistic"
7ee2a4f regulator: add notifier event for regulator enable
a70117e pstore: selinux: add security in-core xattr support for pstore and debugfs
094bf8c netfilter: IDLETIMER: fix invalid deference of timer
13d89a7 net: ipv6: allow choosing optimistic addresses with use_optimistic
57fb721 HID: input: generic hidinput_input_event handler
58aca06 mm: fix prctl_set_vma_anon_name
5010091 staging: android: ashmem: add missing include
69a3425 mnt: Prevent pivot_root from creating a loop in the mount tree
551e17e mnt: Only change user settable mount flags in remount
9208f57 netfilter: conntrack: disable generic tracking for known protocols
7aec8e1 net: llc: use correct size for sysctl timeout entries
edefed8 ipv4: Missing sk_nulls_node_init() in ping_unhash().
ac6eb20 update defconfigs
87497aa Simple IO scheduler plus
fb6c5d3 Zen IO scheduler
41da2eb IntelliActive Governor
r9:
Code:
suspend: Return error when pending wakeup source is found.
subsystem: CPU FREQUENCY DRIVERS- Set cpu_load calculation on current frequency
msm: vidc: cache-flush encoder output buffers after alloc
msm: vidc: Fix res_trk_get_mem_type when vidc is not using ION memory
video: msm: Configure blend before DMA for LCDC panel too
video: msm: Clear previous histogram data on next startup
video: msm: Check for null in LCDC IRQ handler
video: msm: Tone down logging
Revert "Revert "[M4] defconfigs Set selinux permissive""
Revert "cpufreq: Add bacon governor"
Revert "enable bacon gov"
Revert "SELinux: Fix kernel BUG on empty security contexts."
selinux: fix inode security list corruption
SELinux: include definition of new capabilities
Add google snappy
SELinux: Fix kernel BUG on empty security contexts.
netlink: fix possible spoofing from non-root processes
msm: msm_watchdog_v2: Increase watchdog bark timeout during panic
fix false disconnect due to a signal sent to the reading process
kernel: Allow exfat module load without hassle
mdss: Notify userspace of changes to blank status
enable bacon gov
cpufreq: Add bacon governor
r10:
Code:
4631b21 can: dev: fix crtlmode_supported check
ba5a19c ftrace/jprobes/x86: Fix conflict between jprobes and function graph trac
4ce4899 gpio: fix memory and reference leaks in gpiochip_add error path
8f8dab3 mm: fix corner case in anon_vma endless growing prevention
833e188 mm: Don't count the stack guard page towards RLIMIT_STACK
25fb31a USB: console: fix potential use after free
9d01c86 gpio: sysfs: fix gpio attribute-creation race
9a7b6a0 gpio: sysfs: fix gpio device-attribute leak
6a94774 gpiolib: Refactor gpio_export
12b86b8 gpio: sysfs: fix gpio-chip device-attribute leak
0bb91f0 driver core: Introduce device_create_groups
dca27e8 sysfs.h: add ATTRIBUTE_GROUPS() macro
84f6fd9 scripts/recordmcount.pl: There is no -m32 gcc option on Super-H anymore
036c126 regulator: core: fix race condition in regulator_put()
de4e829 nl80211: fix per-station group key get/del and memory leak
890cdf8 net: sctp: fix slab corruption from use after free on INIT collisions
d7e482c ipv6: replacing a rt6_info needs to purge possible propagated rt6_infos
a516aa3 vm: add VM_FAULT_SIGSEGV handling support
a962e27 vm: make stack guard page errors return VM_FAULT_SIGSEGV rather than SIG
4739d0f net: sctp: fix panic on duplicate ASCONF chunks
7dc4ea1 net: sctp: fix skb_over_panic when receiving malformed ASCONF chunks
4e9e0bb gpio: sysfs: fix memory leak in gpiod_export_link
004662f gpio: sysfs: fix memory leak in gpiod_sysfs_set_active_low
0aa2926 net: sctp: fix passing wrong parameter header to param_type2af in sctp_p
0efea9a net: sctp: fix NULL pointer dereference in af->from_addr_param on malfor
8b6c256 ipvs: rerouting to local clients is not needed anymore
df3ff4c VFS: Make more complete truncate operation available to CacheFiles
0a5162e SELinux: use deletion-safe iterator to free list
e79c4a2 SELinux: per-command whitelisting of ioctls
18542a6 security: lsm_audit: add ioctl specific auditing
34004e0 SELinux: Update policy version to support constraints info
f70e327 SELinux: add default_type statements
ce5b815 SELinux: allow default source/target selectors for user/role/range
39fd776 selinux/nlmsg: add XFRM_MSG_MIGRATE
9cf9161 selinux/nlmsg: add XFRM_MSG_REPORT
ce5b815 SELinux: allow default source/target selectors for user/role/range
39fd776 selinux/nlmsg: add XFRM_MSG_MIGRATE
9cf9161 selinux/nlmsg: add XFRM_MSG_REPORT
9171c8b selinux/nlmsg: add XFRM_MSG_[NEW|GET]SADINFO
e67f864 selinux/nlmsg: add XFRM_MSG_GETSPDINFO
1c99172 selinux/nlmsg: add XFRM_MSG_NEWSPDINFO
d11fc4b gpu: ion: Modify ION_NUM_HEAPS to reflect actual max
43b373e ARM: 7493/1: use generic unaligned.h
6d1a336 msm: display: Allow MDP clocks to use Max clock.
2c6ca73 Revert "kcal"
ec81c1d kcal
ac85522 USB: android: Fix memory leak in mass_storage_function_init()
620fe85 selinux: add SOCK_DIAG_BY_FAMILY to the list of netlink message types
7e0d390 Bluetooth: Fix invalid length check in l2cap_information_rsp()
755946f Bluetooth: Fix missing length checks for L2CAP signalling PDUs
fab89f3 Bluetooth: Fix crash in l2cap_build_cmd() with small MTU
10ec71b Bluetooth: Cancel power_on and power_off work
67477fa Bluetooth: Prevent Bluetooth L2CAP Remote Heap Memory Corruption
463a799 sched: Implement smarter wake-affine logic
9ec13bc Bluetooth: ath3k: workaround the compatibility issue with xHCI controlle
4ad5428 Bluetooth: Fix issue with USB suspend in btusb driver
c28a522 Bluetooth: Add support for Mediatek Bluetooth device [0e8d:763f]
345136e Bluetooth: Add support for Sony Vaio T-Series
709760f Bluetooth: Add support for Foxconn/Hon Hai AR5BBU22 0489:E03C
307e256 Bluetooth: Add support for Dell[QCA 0cf3:0036]
5fecbd7 Bluetooth: Add support for Apple vendor-specific devices
8ff83f3 Audit: Disable Audit
a33dec4 staging: android: logger: Improve logging
30296ad staging: android: logger: fixed checkpatch.pl warnings.
143d29a 0u support
r11:
Code:
Sorry change log don"t fit into tread
http://pastebin.com/Jm5a1hmg
r12:
Code:
Sorry change log is 5000+ commits so its nonsense to post it here
commits are:
3.4.5 --> 3.4.108
r13:
Code:
Lots of stability fixes and reverted back to 3.4.104 with aditional changes
r14:
Code:
built with Linaro GCC 4.9 Toolchain for generic Cortex-A cpu
updates and clean ups
Update build.sh
colorize more and fix output
fix build
add myself
clean up
edit zip output and improve script
new cpu check
Colorize and add text parameters
Revert "update build script"
m4 defconfig:enable zCache
arch/arm/mach-msm/Kconfig: decouple QCACHE from MSM board selection
zcache-main.c: fix compilation error due to API update
staging: zcache: fix cleancache race condition with shrinker
staging: zcache: fix spelling of comment
staging: zcache: cleanup the code between tmem_obj_init and tmem_obj_find
staging: zcache: introduce get_zcache_client
staging: zcache: cleanup zcache_do_preload and zcache_put_page
staging: zcache: optimize zcache_do_preload
staging: zcache: cleanup zbud_init
staging: zcache: mark zbud_init/zcache_comp_init as __init
staging: zcache: remove unnecessary config option dependence
staging: zcache: fix a compile warning
staging: zcache: fix refcount leak
staging: zcache: don't limit number of pools per client
update build script
r15:
Code:
reverted to 3.4.0 for stability
c54ecef Revert "kgsl: disable tracing and postmortem Dont DUMP in my House!"
0196a10 softirq: reduce latencies
45996f2 net: loopback: set default mtu to 64K
741ec2c jbd2: optimize jbd2_journal_force_commit
c6255f5 readahead: make context readahead more conservative
4f1f30c ARM: smp: Wait just 1 second for other CPU to halt
0fc3e9d ext4: fix memory leak in xattr
0fc3e9d ext4: fix memory leak in xattr
a473645 msm: kgsl: Fix mem leak when page allocation fails
df28d42 kgsl: disable tracing and postmortem Dont DUMP in my House!
cc51887 kgsl: z180 - disable tracing and postmortem
b18fa80 remove empty folder
42f54ca m4/u0 update defconfigs
fb66b3a block: Add bio_for_each_segment_all()
dbb2266 sysctl: tweak ip enum
972ef40 audit: wait_for_auditd() should use TASK_UNINTERRUPTIBLE
69e7c92 audit: fix info leak in AUDIT_GET requests
da09846 audit: use nlmsg_len() to get message payload length
96a7c4b audit: printk USER_AVC messages when audit isn't enabled
d56fa7a eCryptfs: Remove buggy and unnecessary write in file name decode routine
f76a0ce Revert "KGSL: Add a simple GPU governor for Adreno xxx GPU series"
8472223 Revert "workqueue: don't use WQ_HIGHPRI for unbound workqueues"
0fd6db0 The Ultra Kernel Samepage Merging feature Ultra KSM. Copyright (C) 2011-2012 Nai Xia
241dc20 KGSL: Add a simple GPU governor for Adreno xxx GPU series
6c2f680 workqueue: don't use WQ_HIGHPRI for unbound workqueues
r16:
Code:
Built with powerful 5.2 ubertc 2015-10-01
620122f up for v16
1fce2b7 tweak values 2
82efe04 tweak values
be1c752 add graphite flags
c1a4b23 remove l7
438e557 lowered latency
3cff57e init: scream bloody murder if interrupts are enabled too early
a4a0e59 security: SELinux: Disable useless message
9fd7195 Revert "disable lge panic handling (demigod)"
7648cf0 disable lge panic handling (demigod)
b3cb7d4 Merge pull request #2 from aidasaidas75/cm-12.1-exp
c54ecef Revert "kgsl: disable tracing and postmortem Dont DUMP in my House!"
r16.1:
Code:
3.4.0>>3.4.108
BUGS:
None at the moment
Post reports, i will fix.
Standard disclaimer:
By installing this kernel YOU will take full responsibility for any damage to your device!
Hardware or software! no one forcing you to install it.
So please do not blame me if you read wrong! or didn't read at all the instructions that i have written for YOU.
But you can feel SAFE to use it, as 2-3 testers test every release on their phone!
Before I publish it for download.
SOURCE CODE
Click here!
Special thanks to:
TeamHackLG(PecanCM) - For good base kernel.
Jobloxx for kernel logo.
If you find this Kernel useful, feel free to hit the [Thanks] button below
Excellent kernel good work !
For what android?
Sent from my e-tab4 using XDA Free mobile app
fbli_41 said:
For what android?
Sent from my e-tab4 using XDA Free mobile app
Click to expand...
Click to collapse
5.0 and 4.4
domenicogalati45 said:
5.0 and 4.4
Click to expand...
Click to collapse
Deleted.
Thanks anyway...
aidasaidas75 said:
leanKernel is not for everyone.
Click to expand...
Click to collapse
Convince me to move me to this kernel and leave skernel
Any e612 build ? (for deep sleep)
Works on e612?
i think it will work,but it can have problems with deepsleep,not sure.anyway its a great work.
Bully! It looks like skernel has got a serious competition
junephel said:
Bully! It looks like skernel has got a serious competition
Click to expand...
Click to collapse
This is using SKernel sources xD
Lets watch!
Come soon @skyinfo!
4Freedom said:
Convince me to move me to this kernel and leave skernel
Click to expand...
Click to collapse
I'd stick to SKernel
Sent from my IdeaTab A2107A-F using XDA Free mobile app
is it better than skernel? what about screen freezes?
Sent from my LG-E610 using XDA Free mobile app
droidxx9 said:
This is using SKernel sources xD
Lets watch!
Come soon @skyinfo!
I'd stick to SKernel
Sent from my IdeaTab A2107A-F using XDA Free mobile app
Click to expand...
Click to collapse
Well for now, I'll stick around with skernel since it is more optimized and stabilized with the ROM I am using now.
Moreover, the one with BLN and tap2unlock support is far more convincing. And I'll definitely stick to the one whichever adds it.
junephel said:
Well for now, I'll stick around with skernel since it is more optimized and stabilized with the ROM I am using now.
Moreover, the one with BLN and tap2unlock support is far more convincing. And I'll definitely stick to the one whichever adds it.
Click to expand...
Click to collapse
actually mine is more optimized but nvm.. maybe you mean doubletap2wake?
new version is out check op
Can't wait to try this on CarbonROM, but preparing for ice storm.
aidasaidas75 said:
actually mine is more optimized but nvm.. maybe you mean doubletap2wake?
Click to expand...
Click to collapse
No. I do mean tap2unlock. http://forum.xda-developers.com/showthread.php?t=2965344
Is it possible for you to add this patch bro? that'd be awesome.
Double tap to wake would be interesting as well @aidasaidas75 is it possible? And, can u update Carbon ROM? Its awesome but outdated..
Sent from my IdeaTab A2107A-F using XDA Free mobile app
Want to install but no E612 version
---------- Post added at 02:48 PM ---------- Previous post was at 02:45 PM ----------
Pico has BLN support
http://forum.xda-developers.com/showthread.php?p=52754606
Hi I tried this kernel, it's good!
Will report after observing for more time..
Possible BLN and Tap2Wake?
Sent from my IdeaTab A2107A-F using XDA Free mobile app