first commit

First commit.

New files

Update .gitignore and defconfig

Update: Linux upstream 2.6.35.10 > 2.6.35.13

Update: Linux upstream 2.6.35.13 > 2.6.35.14

sched: automated per-uid task group
Android is a privilege-separated operating system, in which each application
runs with a distinct system identity: the Linux user ID (uid).

Automatically create CFS task groups per UID. Each Android application runs
with its own distinct UID, so grouping tasks by UID and put them in the same
task group allows to get a fair share of CPU time per application.

Testcase:
  - run 4 cpu hog in background as user app_35 (com.android.email in my case)
  - run the Quadrant benchmark (http://www.aurorasoftworks.com/products/quadrant)
    as a different user and measure the result with and without the patch

 # su - app_35
 $ for i in `seq 4`; do yes >/dev/null & done

Without the patch (output of top):
  PID  PPID USER     STAT   VSZ %MEM CPU %CPU COMMAND
 6533   123 10070    R     202m 48.6   0 20.0 com.aurorasoftworks.quadrant.ui.st
 6506     1 10035    R     1128  0.2   0 20.0 yes
 6507     1 10035    R     1128  0.2   0 20.0 yes
 6508     1 10035    R     1128  0.2   0 20.0 yes
 6509     1 10035    R     1128  0.2   0 20.0 yes

Benchmark result: 676

 uid 10035 (cpu hog)  : 60.0 % cpu quota
 uid 10070 (benchmark): 20.0 % cpu quota

With automated per-uid task group (output of top):
  PID  PPID USER     STAT   VSZ %MEM CPU %CPU COMMAND
 6784   123 10070    S     209m 51.4   0 50.0 com.aurorasoftworks.quadrant.ui.st
 6852     1 10035    R     1128  0.2   0 12.5 yes
 6853     1 10035    R     1128  0.2   0 12.5 yes
 6854     1 10035    R     1128  0.2   0 12.5 yes
 6855     1 10035    R     1128  0.2   0 12.5 yes

Benchmark result: 816

 uid 10035 (cpu hog)  : 45.9 % cpu quota
 uid 10070 (benchmark): 46.0 % cpu quota

Total speedup: ~1.2 (the benchmark is about 20% faster in this case)

Based on the patch "sched: automated per tty task groups" by Mike Galbraith.

Signed-off-by: Andrea Righi <arighi@develer.com>
Signed-off-by: Mike Galbraith <efault@gmx.de>

.gitignore: ignore *.rej

block: prepare I/O context code for BFQ

block: add cgroups, kconfig and build bits for BFQ

block: introduce the BFQ I/O scheduler

Fix atomic functions in bfq

msm: Add CONFIG_MSM7X27_OVERCLOCK

Fix overclock bug causing panics

Export frequency table in MSM cpufreq driver

Fix proximity sensor.

sysctl: some tweaks

cgroup: fix cpuset permission check

Fix: kernel/sched.c missing function in sched_move_task

UPDATE: misc ext4 tweaks

ADD: Implemented Simple I/O Scheduler

msm: vidc: Support dynamic change of interlaced format.

staging: android: lowmemorykiller: Minfree tweaks

staging: android: lowmemorykiller: Fix check for other_free pages

msm: camera: Free buffers from frame queue at open

msm cpufreq Improve initial frequency selection - CodeAurora

[PATCH] net/ipv4: Eliminate kstrdup memory leak

net sched: fix some kernel memory leaks

zram: Update from old ramzswap driver

Wifi set to FAST

USB: gadget: f_mtp: MTP driver cleanup:

ADD: Speed tweak in jhash

vidc: vdec: Set correct divx codec type

Change by andys request

Deleted and Added:
Added: Interactive governor with many patches for it.
Deleted: Old Ramzswap drivers

Update defconfig, new patches

CPUFREQ: Update CPUFREQ code from 3.0rc6 Kernel

Some useful patches
CSW USB Performance hacks,
Added 2 Governors: smartass2 and minmax,
Added TINY_PREEMPT_RCU, RCU tweaks.

drivers/cpufreq/cpufreq_stats.c Prevent memory leak on hotplug (Pershoot)

Added a discrete touchscreen driver for LG's P500. Touchscreen driver is based on MCS6000_gb version but improved for speed

msm: qdsp5: Real Video Decoder support

Fixes for compiling and blackscreen bug fix

added support for Android ndk

added support for Android ndk

Revert "msm: Add CONFIG_MSM7X27_OVERCLOCK"

msm: added AXI overclocking

Now using Android NDK r7b

Updated BFQ to V3.0 - port from kernel 3.0

Updated EarlySuspend and WakeLock (ACA)

Updated the built-in wakelock (ACA)

Port Vocpcm Module (R7): support voice in-call recording

Fast Sleep, wake lock timer change. (wistilt2)

Fix compiling and Updated Defconfig

Disable CONFIG_FRAMEBUFFER_CONSOLE due to blackscreen bug

Clean up

Trying to fix blackscreen

Lower radio/event log for more ram

Make system more quck

Update Defconfig and cleanup

Rewritten all again:
I have just rewritten all again. Kernel is reverted to 2.6.35.10, from original LGE Open Source, i applied almost patches, except those:
https://github.com/thachtunganh/lge-kernel-thunderg/commit/7acaccb8ec33957c9c9fd5997241408554d8101e
https://github.com/thachtunganh/lge-kernel-thunderg/commit/d40af6ab6cfc1460a0b849c7d7cd7a6a11f44102
https://github.com/thachtunganh/lge-kernel-thunderg/commit/f2c9f0ade548cecd070eb98bfaf0ab67d5cc8914
and all BFQ I/O Scheduler patches

Update defconfig

New changes

thunderg: Decrease AMP value
Decrease AMP value from 125 to 120, this will decrease the vibration and save the phone power.

power_supply: Fix use after free and memory leak
device_unregister() might free its argument.  This leads to freed
memory use in kfree().  Also use put_device() instead of kfree()
as dev may be already used in another layer after call to device_add().

Signed-off-by: Vasiliy Kulikov <segoon@openwall.com>
Signed-off-by: Anton Vorontsov <cbouatmailru@gmail.com>

thunderg: Update defconfig

claim more free ram

gpu: msm: Update GPU drivers from 3.0 kernel
Ofcourse there are somes fix for compilation.

Revert "gpu: msm: Update GPU drivers from 3.0 kernel"
This reverts commit d24c11417b.

Add some missing gpu drivers

thunderg: Update defconfig

thunderg: revert some patches
This reverts commit 99a46f1.
Increase Wifi Voltage for stability, set AXI value back to 160000 instead of max for power saving.

update video decoder to latest versions

cpufreq: tweaks for ondemand governor.

Update: Linux upstream 2.6.35.10 > 2.6.35.13

thunderg: Update defconfig

sched: 2.6.35 automated per-tty task groups.
Plus a small tweaks for calibrate.c

thunderg: Update defconfig
And add a missing file

USB patches from andy with USB accessory included.

Add files USB accessory.

Change LINUX_COMPILE_BY from "lge-electronics" to "thactunganh".

jhash tweaks and some testing for my touchscreen drivers.

tcp: Increase the initial congestion window to 10

Fix for audio making weird noises while at low clocks. (Modified size of MSM_PMEM_AUDIO_SIZE and PMEM_KERNEL_EBI1_SIZE.)

thunderg: increase voltage of cpu frequencies.
For more stability; increased voltage of 122,245Mhz,320Mhz,480Mhz. Decreasing Voltage of 600Mhz and hinger frequencies is dangerous!

Increase "VM_MAX_READAHEAD" value to 512 kbytes.

Reverts "CSW USB Performance hacks".
This reverts a part of commit 4197a81.

thunderg: Update defconfig.

media: video: msm: msm_camera fix.

Fix: kernel/sched.c missing function in sched_move_task

PM: Make it possible to avoid races between wakeup and system sleep

PM: Do not use dynamically allocated objects in pm_wakeup_event()

PM: Prevent waiting forever on asynchronous resume after failing suspend

PM: Fix signed/unsigned warning in dpm_show_time()

PM: Fix potential issue with failing asynchronous suspend

PM: Allow wakeup events to abort freezing of tasks

PM: Lock PM device list mutex in show_dev_hash()

PM: Use proper ccflag flag in kernel/power/Makefile

PM: Prevent dpm_prepare() from returning errors unnecessarily

PM: Avoid compiler warning in pm_noirq_op()

PM: Use a different list of devices for each stage of device suspend

PM: Remove redundant checks from core device resume routines

PM: Use dev_name() in core device suspend and resume routines

PM: Prototype the pm_generic_ operations

Wakelock patches.

Revert some patches.

thunderg: Revert "... some testing for my touchscreen drivers."
This reverts a part of commit 2e32ff4.

thunderg: Update defconfig.

thunderg: AXI Overclocking CPU Frequencies.

USB: android gadget: mass_storage: read/write performance enhancement

UPDATE: more FS tweaks

fs: add hole punching to fallocate

fs/select.c: fix information leak to userspace

fs: Use this_cpu_xx operations in buffer.c

fs: Use this_cpu_inc_return in buffer.c

thunderg: Update defconfig.

Fill some missing line.

Fixes.

Add the missing thing.

thunderg: Update defconfig.

Update .gitignore

Revert back to 2.6.35.11.

Rewrote all again - Part 2.

thunderg: Change defconfig name.
And Update .gitignore.

Final commit.
Merge branch 'gingerbread' of github.com:thachtunganh/lge-kernel-thunderg into gingerbread