Comparing changes
Open a pull request
base repository: dazjo/huawei-kernel-3.4
base: 87fd6d0254ff^
head repository: dazjo/huawei-kernel-3.4
compare: 2a999b34cb25
- 8 commits
- 11 files changed
- 5 contributors
Commits on Nov 16, 2013
-
Add a userspace visible knob to tell the VM to keep an extra amount of memory free, by increasing the gap between each zone's min and low watermarks. This is useful for realtime applications that call system calls and have a bound on the number of allocations that happen in any short time period. In this application, extra_free_kbytes would be left at an amount equal to or larger than than the maximum number of allocations that happen in any burst. It may also be useful to reduce the memory use of virtual machines (temporarily?), in a way that does not cause memory fragmentation like ballooning does. [ccross] Revived for use on old kernels where no other solution exists. The tunable will be removed on kernels that do better at avoiding direct reclaim. Change-Id: I765a42be8e964bfd3e2886d1ca85a29d60c3bb3e Signed-off-by: Rik van Riel<riel@redhat.com> Signed-off-by: Colin Cross <ccross@android.com>
Rik van Riel authored and Daz Jones committedNov 16, 2013 -
CHROMIUM: zsmalloc: add MODULE_LICENSE
It won't load as a module without MODULE_LICENSE. BUG=chromium-os:32328 TEST=modprobe zsmalloc works with this change Change-Id: Ic62fe20816e5079d92ce1da6a9d8a9cdbc7a5074 Signed-off-by: Luigi Semenzato <semenzato@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/26627 Reviewed-by: Olof Johansson <olofj@chromium.org>
Luigi Semenzato authored and Daz Jones committedNov 16, 2013 -
CHROMIUM: BACKPORT: staging: zsmalloc: Finish conversion to a separat…
…e module Need BACKPORT, rather than UPSTREAM, since it won't apply cleanly because we had already fixed the MODULE_LICENSE problem. ---original comment: ZSMALLOC is tristate, but the code has no MODULE_LICENSE and since it depends on GPL-only symbols it cannot be loaded as a module. This in turn breaks zram which now depends on it. I assume it's meant to be Dual BSD/GPL like the other z-stuff. There is also no module_exit, which will make it impossible to unload. Add the appropriate module_init and module_exit declarations suggested by comments. Reported-by: Christian Ohm <chr.ohm@gmx.net> References: http://bugs.debian.org/677273 Cc: stable@vger.kernel.org # v3.4 Signed-off-by: Ben Hutchings <ben@decadent.org.uk> Reviewed-by: Jonathan Nieder <jrnieder@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Conflicts: drivers/staging/zsmalloc/zsmalloc-main.c BUG=chromium-os:36829 TEST=extensively tested manually Change-Id: I82bc7ffffe3007b82601ec71f43873be2059586c Signed-off-by: Luigi Semenzato <semenzato@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/38998 Reviewed-by: Olof Johansson <olofj@chromium.org>
-
CHROMIUM: UPSTREAM: staging: zsmalloc: remove x86 dependency
This patch replaces the page table assisted object mapping method, which has x86 dependencies, with a arch-independent method that does a simple copy into a temporary per-cpu buffer. While a copy seems like it would be worse than mapping the pages, tests demonstrate the copying is always faster and, in the case of running inside a KVM guest, roughly 4x faster. Signed-off-by: Seth Jennings <sjenning@linux.vnet.ibm.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> BUG=chromium-os:36829 TEST=extensive manual testing Change-Id: I8b41c92eb146c5cf0af40682802ba443f7810a0b Signed-off-by: Luigi Semenzato <semenzato@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/38999 Reviewed-by: Olof Johansson <olofj@chromium.org>
Seth Jennings authored and Daz Jones committedNov 16, 2013 -
CHROMIUM: UPSTREAM: staging: zram/zcache: swtich Kconfig dependency f…
…rom X86 to ZSMALLOC upstream: commit 6e2361720b9da9ec830d407da058ca1827e62b12 This patch switches zcache and zram dependency to ZSMALLOC rather than X86. There is no net change since ZSMALLOC depends on X86, however, this prevent further changes to these files as zsmalloc dependencies change. Signed-off-by: Seth Jennings <sjenning@linux.vnet.ibm.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> BUG=chromium-os:36829 TEST=compile, verify that zram module is updated and /boot/config is correct Change-Id: I91f6ed46549fe62a9fe3035063d98beb2f5d966a Signed-off-by: Luigi Semenzato <semenzato@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/39289 Tested-by: Luigi Semenzato <semenzato@google.com> Reviewed-by: Sonny Rao <sonnyrao@chromium.org> Commit-Ready: Luigi Semenzato <semenzato@google.com>
Seth Jennings authored and Daz Jones committedNov 16, 2013 -
CHROMIUM: zram: fix 32-bit overflow
The 64-bit division operator is not available in 32-bit kernels, so have to use do_div. BUG=chromium:245703 TEST=compiled Change-Id: I44ab763ea9e115cef6212f6524518cf7d9eac8c7 Signed-off-by: Luigi Semenzato <semenzato@chromium.org> Reviewed-on: https://gerrit.chromium.org/gerrit/64695 Reviewed-by: Doug Anderson <dianders@chromium.org>
Luigi Semenzato authored and Daz Jones committedNov 16, 2013 -
CHROMIUM: zram: finish fixing 32-bit overflow
Nasty bug. PAGE_MASK is unsigned, so it extends to 64 bit with zeros. The first read in the zram block device is done by mkswap, which tries to read at the end of device. zram_set_disksize is a side effect of the first read, so the disk size is now silently changed from 6GB to 2GB. The read fails, but mkswap does not complain either: it finds the size of the device by trial and error and continues. Swapon detects the mismatch and fails. BUG=chromium:245703 TEST=ran before and after change with various printks Signed-off-by: Luigi Semenzato <semenzato@chromium.org> Change-Id: I01750554964756c2759375df1f14d7bb8b859ccf Reviewed-on: https://gerrit.chromium.org/gerrit/65752 Tested-by: Luigi Semenzato <semenzato@chromium.org> Reviewed-by: Mike Frysinger <vapier@chromium.org> Commit-Queue: Luigi Semenzato <semenzato@chromium.org>
Luigi Semenzato authored and Daz Jones committedNov 16, 2013 -
u8815/u8833: enable ZRAM and memory cgroups
Daz Jones committedNov 16, 2013
This comparison is taking too long to generate.
Unfortunately it looks like we can’t render this comparison for you right now. It might be too big, or there might be something weird with your repository.
You can try running this command locally to see the comparison on your machine:
git diff 87fd6d0254ff^...2a999b34cb25