[Nexus 6 Android Development] xanaxdroid:
benzoCore Marshmallow Build 8​

Changes:

-Updated SaberMod GCC 6.0 toolchain

-Added latest Android security patches

-A whole bunch of updates. See below

benzoCore-M8

Revert "cpufreq: add linux 3.18 interactive governor (squashed)"

ARM: avoid unwanted GCC memset()/memcpy() optimisations for IO variants

ARM: 7884/1: mm: Fix ECC mem policy printk

ARM: alignment: correctly decode instructions in BE8 mode.

ARM: optimize memset_io()/memcpy_fromio()/memcpy_toio()

sched: Fix sleep time double accounting in enqueue entity

sched: Don't mix use of typedef ctl_table and struct ctl_table

sched: Remove WARN_ON(!sd) from init_sched_groups_power()

sched: Fix memory leakage in build_sched_groups()

sched: Use cached value of span instead of calling sched_domain_span()

sched: Create for_each_sd_topology()

sched: Don't set sd->child to NULL when it is already NULL

sched: Don't initialize alloc_state in build_sched_domains()

sched: Remove unused params of build_sched_domain()

sched: Remove the useless declaration in kernel/sched/fair.c

sched: Refine the code in unthrottle_cfs_rq()

sched/rt: Simplify pull_rt_task() logic and remove .leaf_rt_rq_list

sched: Use swap() macro in scale_stime()

sched/rt: Remove redundant nr_cpus_allowed test

sched/rt: Fix task_tick_rt() comment

sched: Update rq clock earlier in unthrottle_cfs_rq

sched: Update rq clock before setting fair group shares

sched: Update rq clock before migrating tasks out of dying CPU

ARM: elf: add new hwcap for identifying atomic ldrd/strd instructions

ARM: 8313/1: Use read_cpuid_ext() macro instead of inline asm

ARM: 8292/1: mm: fix size rounding-down of arm_add_memory() function

ARM: hwcap: disable HWCAP_SWP if the CPU advertises it has exclusives

benzo_defconfig: Refresh

timers, sched/clock: Optimize cache line usage

sched: Remove a wake_affine() condition

rcu: Avoid IPIing idle CPUs from synchronize_sched_expedited()

compiler: Allow 1- and 2-byte smp_load_acquire() and smp_store_release()

ARM: fix csum_tcpudp_magic() miscompilation

ARM: cache-v7: use movw/movt instructions

ARM: smp_on_up: move inline asm ALT_SMP patching macro out of spinlock.h

ARM: locks: prefetch the destination word for write prior to strex

ARM: prefetch: add support for prefetchw using pldw on SMP ARMv7+ CPUs

ARM: 7992/1: boot: compressed: ignore bswapsdi2.S

ARM: ensure delay timer has sufficient accuracy for delays

ARM: 8137/1: fix get_user BE behavior for target variable with size of 8 bytes

ARM: 8091/2: add get_user() support for 8 byte types

ARM: choose highest resolution delay timer

ARM: 7990/1: asm: rename logical shift macros push pull into lspush lspull

ARM: 7984/1: prefetch: add prefetchw invocations for barriered atomics

ARM: 7907/1: lib: delay-loop: Add align directive to fix BogoMIPS calculation

ARM: 7893/1: bitops: only emit .arch_extension mp if CONFIG_SMP

ARM: bitops: prefetch the destination word for write prior to strex

lib/sort: Add 64 bit swap function

lib/sort.c: move include inside #if 0

lib/sort.c: use simpler includes

lib/genalloc.c: check result of devres_alloc()

lib/genalloc.c: remove redundant include

genalloc: fix device node resource counter

random32: add prandom_seed_full_state helper

random32: improvements to prandom_bytes

lib/random32.c: minor cleanups and kdoc fix

random32: avoid attempt to late reseed if in the middle of seeding

random32: use msecs_to_jiffies for reseed timer

random32: add __init prefix to prandom_start_seed_timer

random32: add test cases for taus113 implementation

random32: upgrade taus88 generator to taus113 from errata paper

random: allow architectures to optionally define random_get_entropy()

random32: move rnd_state to linux/random.h

random32: add prandom_reseed_late() and call when nonblocking pool becomes initialized

random32: add periodic reseeding

lib: radix_tree: tree node interface

mm: filemap: move radix tree hole searching here

lib: radix-tree: add radix_tree_delete_item()

lib/radix-tree.c: swapoff tmpfs radix_tree: remember to rcu_read_unlock

lib/radix-tree.c: make radix_tree_node_alloc() work correctly within interrupt

lib/md5.c: simplify include

lib: list_sort.c: Limit number of unused cmp callbacks

crypto: LLVMLinux: Remove VLAIS usage from libcrc32c.c

crypto: LLVMLinux: Add macro to remove use of VLAIS in crypto code

lib/lcm.c: lcm(n,0)=lcm(0,n) is 0, not n

lib/lcm.c: ensure correct result whenever it fits

kfifo: use BUG_ON

kfifo: kfifo_copy_{to,from}_user: fix copied bytes calculation

lib/halfmd4.c: use rol32 inline function in the ROUND macro

lib/halfmd4.c: simplify includes

lib/digsig.c: kernel-doc warning fixes

lib/digsig.c: use ERR_CAST inlined function instead of ERR_PTR(PTR_ERR(...))

lib/decompress_unlzma: Do a NULL check for pointer

lib/decompress_inflate.c: include appropriate header file

lib/decompress: set the compressor name to NULL on error

lib/decompress.c: consistency of compress formats for kernel image

net/sctp: Refactor SCTP skb checksum computation

net: sctp: prevent checksum.h from double inclusion

lib/crc7: Shift crc7() output left 1 bit

lib: crc32: Add some additional __pure annotations

lib: crc32: Mark test data __initconst

lib: crc32: Greatly shrink CRC combining code

lib/crc32.c: remove unnecessary __constant

lib: crc32: reduce number of cases for crc32{, c}_combine

lib: crc32: conditionally resched when running testcases

lib: crc32: add test cases for crc32{, c}_combine routines

lib: crc32: add functionality to combine two crc32{, c}s in GF(2)

lib: crc32: clean up spacing in test cases

lib/crc32: update the comments of crc32_{be,le}_generic()

ARM: 8287/1: add bitrev.h file to support rbit instruction

ARM: 8187/1: add CONFIG_HAVE_ARCH_BITREVERSE to support rbit instruction

zlib_deflate/deftree: remove bi_reverse()

zlib: clean up some dead code

lib/is_single_threaded.c: change current_is_single_threaded() to use for_each_thread()

fuse: break infinite loop in fuse_fill_write_pages()

benzo_defconfig: Enable Async Fsync

af_unix: Revert 'lock_interruptible' in stream receive code

PM / Sleep: Fix compile warning

benzo_defconfig: Enable HAVE_ARCH_MMAP_RND_BITS

PM / sleep: Allow devices without runtime PM to do direct-complete

PM / sleep: Mechanism to avoid resuming runtime-suspended devices unnecessarily

PM / Runtime: Fix error path for prepare

PM / Sleep: new trace event to print device suspend and resume times

PM / Sleep: fix async suspend_late/freeze_late error handling

PM / sleep: we don't have reinit_completion so revert to the old pal INIT_COMPLETION

PM / sleep: Asynchronous threads for suspend_late

PM / sleep: Asynchronous threads for suspend_noirq

PM / sleep: Asynchronous threads for resume_early

PM / sleep: Asynchronous threads for resume_noirq

PM / sleep: Two flags for async suspend_noirq and suspend_late

UPSTREAM: KEYS: Fix keyring ref leak in join_session_keyring()

UPSTREAM: memcg: Only free spare array when readers are done

UPSTREAM: seccomp: cap SECCOMP_RET_ERRNO data to MAX_ERRNO

FROMLIST: arm: mm: support ARCH_MMAP_RND_BITS.

FROMLIST: mm: mmap: Add new /proc tunable for mmap_base ASLR.

net: fix IP early demux races

cpufreq: add linux 3.18 interactive governor (squashed)

ARM: dts: msm: Update to current smem binding for APQ8084

genirq: Remove invalid export

genirq: Fix null pointer reference in irq_set_affinity_hint()

genirq: Set initial affinity in irq_set_affinity_hint()

benzo_defconfig: Refresh

Remove GENERIC_HARDIRQ config option

lib: make memzero_explicit more robust against dead store elimination

cpuidle: kick all cpu after idle handler installed

arm: idle: add missing need_resched check

idr: reorder the fields

idr: remove unused prototype of idr_free()

lib/idr.c: fix out-of-bounds pointer dereference

idr: reduce the unneeded check in free_layer()

idr: don't need to shink the free list when idr_remove()

idr: fix idr_replace()'s returned error code

idr: fix NULL pointer dereference when ida_remove(unallocated_id)

idr: fix unexpected ID-removal when idr_remove(unallocated_id)

lib/idr.c: use RCU_INIT_POINTER(x, NULL)

idr: remove dead code

idr: Add new function idr_is_empty()

idr: print a stack dump after ida_remove warning

usb: use %*pb[l] to print bitmaps including cpumasks and nodemasks

scsi: use %*pb[l] to print bitmaps including cpumasks and nodemasks

net: use %*pb[l] to print bitmaps including cpumasks and nodemasks

workqueue: use %*pb[l] to format bitmaps including cpumasks and nodemasks

percpu: use %*pb[l] to print bitmaps including cpumasks and nodemasks

sched: use %*pb[l] to print bitmaps including cpumasks and nodemasks

drivers/base: use %*pb[l] to print bitmaps including cpumasks and nodemasks

input: use %*pb[l] to print bitmaps including cpumasks and nodemasks

lib/vsprintf: implement bitmap printing through '%*pb[l]'

sched: Reduce overestimating rq->avg_idle

cpumask, nodemask: implement cpumask/nodemask_pr_args()

linux/nodemask.h: update bitmap wrappers to take unsigned int

numa: Mark __node_set() as __always_inline

proc: add a reschedule point in proc_readfd_common()

mm: microoptimize zonelist operations

mm: memcontrol: micro-optimize mem_cgroup_split_huge_fixup()

mm/msync.c: sync only the requested range in msync()

mm: optimize put_mems_allowed() usage

net: rfkill: move poll work to power efficient workqueue

rcu: Move SRCU grace period work to power efficient workqueue

net: wireless: move regulatory timeout work to power efficient workqueue

firmware: use power efficient workqueue for unloading and aborting fw load

mm/vmacache: inline vmacache_valid_mm()

timer/hrtimer: reprogram remote CPU's timer hardware

irq_work: Implement remote queueing

irq_work: Split raised and lazy lists

UPSTREAM: include/linux/poison.h: fix LIST_POISON{1,2} offset

UPSTREAM: mm: more aggressive page stealing for UNMOVABLE allocations

UPSTREAM: mm: always steal split buddies in fallback allocations

UPSTREAM: mm: page_alloc: use unsigned int for order in more places

UPSTREAM: mm: when stealing freepages, also take pages created by splitting buddy page

UPSTREAM: mm/page_alloc: prevent MIGRATE_RESERVE pages from being misplaced

UPSTREAM: mm: __rmqueue_fallback() should respect pageblock type

UPSTREAM: mm: get rid of unnecessary overhead of trace_mm_page_alloc_extfrag()

UPSTREAM: mm/page_alloc.c: fix the value of fallback_migratetype in alloc_extfrag tracepoint()

UPSTREAM: mm/page_allo.c: restructure free-page stealing code and fix a bug

ANDROID: rtc-palmas: correct for bcd year

UPSTREAM: rtc: rtc-palmas: make of_device_id array const

mm, slub: fix some indenting in cmpxchg_double_slab()

mm: slub: SLUB_DEBUG=n: use the same alloc/free hooks as for SLUB_DEBUG=y

slub: use new node functions

mm: slub: share object_err function

slub: use %*pb[l] to print bitmaps including cpumasks and nodemasks

slab: fix for_each_kmem_cache_node()

slab: convert last use of __FUNCTION__ to __func__

mm: slab.h: wrap the whole file with guarding macro

slab common: add functions for kmem_cache_node access

slab: improve checking for invalid gfp_flags

mm/slab_common: allow NULL cache pointer in kmem_cache_destroy()

mm/slub: fix slab double-free in case of duplicate sysfs filename

slab: fix wrong retval on kmem_cache_create_memcg error path

usb: move hub init and LED blink work to power efficient workqueue

usb: don't use PREPARE_DELAYED_WORK

workqueue: Remove deprecated flush[_delayed]_work_sync()

workqueue: Spelling s/instensive/intensive/

workqueue: remove PREPARE_[DELAYED_]WORK()

workqueue: Remove deprecated __cancel_delayed_work()

workqueue.h: remove loops of single statement macros

workqueue: remove unused WORK_CPU_END

workqueue: move flush_scheduled_work() to workqueue.h

workqueue: remove unused work_clear_pending()

kernel/workqueue.c: pr_warning/pr_warn & printk/pr_info

workqueue: simplify wq_update_unbound_numa() by jumping to use_dfl_pwq if the target cpumask equals wq's

workqueue: wake regular worker if need_more_worker() when rescuer leave the pool

workqueue: alloc struct worker on its local node

workqueue: reuse the already calculated pwq in try_to_grab_pending()

workqueue: stronger test in process_one_work()

workqueue: remove useless WARN_ON_ONCE()

ARM: 7873/1: vfp: clear vfp_current_hw_state for dying cpu

benzo_defconfig: Enable SUSPEND_TIME_TIMEKEEPING

sched: Fix RLIMIT_RTTIME when PI-boosting to RT

sched: Queue RT tasks to head when prio drops

sched: Change autogroup_move_group() to use for_each_thread()

sched: Change thread_group_cputime() to use for_each_thread()

sched: print_rq(): Don't use tasklist_lock

sched: s/do_each_thread/for_each_process_thread/ in debug.c

sched: s/do_each_thread/for_each_process_thread/ in core.c

sched: Fix exec_start/task_hot on migrated tasks

net: ipc_router: use __GFP_NORETRY for high order allocations

ion: cma_heap: free mem if fail to create sg_table

PM / Sleep: Print last wakeup source on failed wakeup_count write

pm: suspend: read suspend time from timekeeping

kernel: sys : print task info on reboot or poweroff

cputime: Fix jiffies based cputime assumption on steal accounting

sched/core: Fix an SMP ordering race in try_to_wake_up() vs. schedule()

net: attempt a single high order allocation

net: use __GFP_NORETRY for high order allocations

net: allow > 0 order atomic page alloc in skb_page_frag_refill

net: refactor sk_page_frag_refill()

af_unix: fix bug on large send()

net: attempt high order allocations in sock_alloc_send_pskb()

af_unix: improve STREAM behavior with fragmented memory

IKSWM-5880:sched/rt: really force updates rq clock in pick_next_task_rt

UPSTREAM: proc: actually make proc_fd_permission() thread-friendly

UPSTREAM: proc: make proc_fd_permission() thread-friendly

Revert "rcu: Don't disable CPU hotplug during OOM notifiers"

kernel/workqueue.c: remove ifdefs over wq_power_efficient

workqueue: make the workqueues list RCU walkable

workqueue: Fix workqueue stall issue after cpu down failure

workqueue: clear POOL_DISASSOCIATED in rebind_workers()

wake gestures: add camera launch gesture

BCL: Don't let BCL hotplug CPUs

Download: benzoCore-M8

TWRP 3.0 with F2FS: twrp-3.0.0-0-shamu-f2fs-xanaxdroid

MultiROM TWRP 3.0 with F2FS: twrp-3.0.0-0-shamu-f2fs-multirom-xanaxdroid