23 Dec, 2011
2 commits
-
This patch fixes some 80 chatacters limit warnings in the lowmemorykiller.c file
Signed-off-by: Marco Navarra
Signed-off-by: Greg Kroah-Hartman -
This patch fixes a simple tab-space warning in binder.h found by checkpatch tool
Signed-off-by: Marco Navarra
Signed-off-by: Greg Kroah-Hartman
22 Dec, 2011
7 commits
-
Fixes checkpatch warnings with the ashmem.c file
CC: Brian Swetland
CC: Colin Cross
CC: Arve Hjønnevåg
CC: Dima Zavin
CC: Robert Love
Signed-off-by: John Stultz
Signed-off-by: Greg Kroah-Hartman -
The arguments to shrink functions have changed, update
ashmem_shrink to match.Signed-off-by: Colin Cross
[jstultz: tweaked commit subject]
CC: Brian Swetland
CC: Colin Cross
CC: Arve Hjønnevåg
CC: Dima Zavin
CC: Robert Love
Signed-off-by: John Stultz
Signed-off-by: Greg Kroah-Hartman -
Signed-off-by: Bjorn Bringert
[jstultz: tweaked commit subject]
CC: Brian Swetland
CC: Colin Cross
CC: Arve Hjønnevåg
CC: Dima Zavin
CC: Robert Love
Signed-off-by: John Stultz
Signed-off-by: Greg Kroah-Hartman -
Signed-off-by: Colin Cross
CC: Brian Swetland
CC: Colin Cross
CC: Arve Hjønnevåg
CC: Dima Zavin
CC: Robert Love
Signed-off-by: John Stultz
Signed-off-by: Greg Kroah-Hartman -
Signed-off-by: Arve Hjønnevåg
CC: Brian Swetland
CC: Colin Cross
CC: Arve Hjønnevåg
CC: Dima Zavin
CC: Robert Love
Signed-off-by: John Stultz
Signed-off-by: Greg Kroah-Hartman -
Signed-off-by: Bjorn Bringert
[jstultz: Tweaked commit subject]
CC: Brian Swetland
CC: Colin Cross
CC: Arve Hjønnevåg
CC: Dima Zavin
CC: Robert Love
Signed-off-by: John Stultz
Signed-off-by: Greg Kroah-Hartman -
The anonymous shared memory (ashmem) subsystem provides a
Unix-y,file-based shared memory interface to user-space. It
works like anonymous memory (e.g. mmapping fd=0) except if
you share the file descriptor via the usual means, you will
share the mapping. The shared memory can be accessed via both
mmap or file I/O. The backing store is a simple shmem file.Additionally, ashmem introduces the concept of page pinning.
Pinned pages (the default) behave like any anonymous memory.
Unpinned pages are available to the kernel for eviction during
VM pressure. When repinning the pages, the return value
instructs user-space as to any eviction. In this manner,
user-space processes may implement caching and similar
resource management that efficiently integrates with kernel
memory management.Signed-off-by: Robert Love
ashmem: Don't install fault handler for private mmaps.
Ashmem is used to create named private heaps. If this heap is backed
by a tmpfs file it will allocate two pages for every page touched.
In 2.6.27, the extra page would later be freed, but 2.6.29 does not
scan anonymous pages when running without swap so the memory is not
freed while the file is referenced. This change changes the behavior
of private ashmem mmaps to match /dev/zero instead tmpfs.Signed-off-by: Arve Hjønnevåg
ashmem: Add common prefix to name reported in /proc/pid/maps
Signed-off-by: Arve Hjønnevåg
ashmem: don't require a page aligned size
This makes ashmem more similar to shmem and mmap, by
not requiring the specified size to be page aligned,
instead rounding it internally as needed.Signed-off-by: Marco Nelissen
[jstultz: Improved commit subject and included patch description
from rlove. Also moved ashmem files to staging dir, and reworked
code to avoid touching mm/shmem.c while we're in staging.]
CC: Brian Swetland
CC: Colin Cross
CC: Arve Hjønnevåg
CC: Dima Zavin
CC: Robert Love
Signed-off-by: John Stultz
Signed-off-by: Greg Kroah-Hartman
17 Dec, 2011
4 commits
-
This adds the Android pmem driver to the staging tree.
[At this point in time, it is dependent on the ARM platform, due to some
build issues that require it. - gregkh]Signed-off-by: Rebecca Schultz
Signed-off-by: Rebecca Schultz Zavin
Signed-off-by: Dima Zavin
Signed-off-by: Jamie Gennis
Cc: Brian Swetland
Cc: Arve Hjønnevåg
Cc: Colin Cross
Signed-off-by: Greg Kroah-Hartman -
This fixes a number of minor space issues in the Android switch code.
Signed-off-by: Greg Kroah-Hartman
-
This adds the Android switch driver code to the staging tree.
[Note, this code was located in drivers/switch/ in the Android kernel
releases, but as that api wasn't generally accepted, and the interface
is working toward changing to the newly proposed extcon inteface, this
driver was placed here until the extcon code is merged into mainline and
the Android userspace code is converted over to using it. - gregkh]Signed-off-by: Arve Hjønnevåg
Signed-off-by: Mike Lockwood
Cc: MyungJoo Ham
Cc: Kyungmin Park
Cc: Donggeun Kim
Cc: Arnd Bergmann
Cc: MyungJoo Ham
Cc: Linus Walleij
Cc: Dmitry Torokhov
Cc: NeilBrown
Cc: Morten CHRISTIANSEN
Cc: Mark Brown
Cc: John Stultz
Signed-off-by: Greg Kroah-Hartman -
This patch fixes some space-before-tabs warnings found by checkpatch tool on the staging android driver file logger.c
Signed-off-by: Marco Navarra
Signed-off-by: Greg Kroah-Hartman
30 Nov, 2011
22 commits
-
Allow the board file to pass a boot info string through the
platform data that is appended to the /proc/last_kmsg file.[moved the .h file to drivers/staging/android/ to be self-contained - gregkh]
Signed-off-by: Colin Cross
Signed-off-by: Greg Kroah-Hartman -
(port from common android-2.6.39
commit: 11430f16545205c614dd5bd58e4a7ee630fc0f9f)events: (no change, 256)
main: 64 -> 256
radio: 64 -> 256
system: 64 -> 256Signed-off-by: JP Abgrall
Signed-off-by: Greg Kroah-Hartman -
The arguments to shrink functions have changed, update
lowmem_shrink to match.Signed-off-by: Colin Cross
Signed-off-by: Greg Kroah-Hartman -
Signed-off-by: Arve Hjønnevåg
Signed-off-by: Greg Kroah-Hartman -
Signed-off-by: Colin Cross
Signed-off-by: Greg Kroah-Hartman -
Now that we're murder-synchronous, this code path will never be
called (and if it does, it doesn't tell us anything useful other
than we killed a task that was already being killed by somebody
else but hadn't gotten its' signal yet)Signed-off-by: San Mehat
Signed-off-by: Greg Kroah-Hartman -
binder_deferred_release was not unmapping the page from the buffer
before freeing it, causing memory corruption. This only happened
when page(s) had not been freed by binder_update_page_range, which
properly unmaps the pages.This only happens on architectures with VIPT aliasing.
To reproduce, create a program which opens, mmaps, munmaps, then closes
the binder very quickly. This should leave a page allocated when the
binder is released. When binder_deferrred_release is called on the
close, the page will remain mapped to the address in the linear
proc->buffer. Later, we may map the same physical page to a different
virtual address that has different coloring, and this may cause
aliasing to occur.PAGE_POISONING will greatly increase your chances of noticing any
problems.Signed-off-by: Christopher Lais
Signed-off-by: Greg Kroah-Hartman -
This patch optimizes lowmemkiller to not do any work when it has an outstanding
kill-request. This greatly reduces the pressure on the task_list lock
(improving interactivity), as well as improving the vmscan performance
when under heavy memory pressure (by up to 20x in tests).Note: For this enhancement to work, you need CONFIG_PROFILING
Signed-off-by: San Mehat
Signed-off-by: Greg Kroah-Hartman -
Under certain circumstances, a process can take awhile to
handle a sig-kill (especially if it's in a scheduler group with
a very low share ratio). When this occurs, lowmemkiller returns
to vmscan indicating the process memory has been freed - even
though the process is still waiting to die. Since the memory
hasn't actually freed, lowmemkiller is called again shortly after,
and picks the same process to die; regardless of the fact that
it has already been 'scheduled' to die and the memory has already
been reported to vmscan as having been freed.Solution is to check fatal_signal_pending() on the selected
task, and if it's already pending destruction return; indicating
to vmscan that no resources were freed on this pass.Signed-off-by: San Mehat
Signed-off-by: Greg Kroah-Hartman -
Some drivers flush the global workqueue when closed. This would deadlock if
the last reference to the file was released from the binder.Signed-off-by: Arve Hjønnevåg
Signed-off-by: Greg Kroah-Hartman -
The timed output device never previously checked the return value of sscanf,
resulting in an uninitialized int being passed to enable() if input value
was invalid.Signed-off-by: Mike Lockwood
Signed-off-by: Greg Kroah-Hartman -
Signed-off-by: Arve Hjønnevåg
Signed-off-by: Greg Kroah-Hartman -
Signed-off-by: Arve Hjønnevåg
Signed-off-by: Greg Kroah-Hartman -
Signed-off-by: San Mehat
Signed-off-by: Greg Kroah-Hartman -
Signed-off-by: Arve Hjønnevåg
Signed-off-by: Greg Kroah-Hartman -
Signed-off-by: Arve Hjønnevåg
Signed-off-by: Greg Kroah-Hartman -
[Note, this is part of a patch from Sam, just the drivers/staging/
portion, that adds a function that the apanic code calls, but the apanic
code isn't here, so just include part of this to make merges and diffs
easier and this keeps things self-contained - gregkh]Signed-off-by: San Mehat
Signed-off-by: Greg Kroah-Hartman -
This reverts commit 2cdf99ce2b9418c9d7c5f907195cfac421375520.
It now builds, so this can be reverted.
Cc: Arve Hjønnevåg
Cc: Brian Swetland
Signed-off-by: Greg Kroah-Hartman -
Signed-off-by: Greg Kroah-Hartman
-
Signed-off-by: Greg Kroah-Hartman
-
Signed-off-by: Corentin Chary
Signed-off-by: Greg Kroah-Hartman -
This reverts commit b0a0ccfad85b3657fe999805df65f5cfe634ab8a.
Turns out I was wrong, we want these in the tree.
Note, I've disabled the drivers from the build at the moment, so other
patches can be applied to fix some build issues due to internal api
changes since the code was removed from the tree.Cc: Arve Hjønnevåg
Cc: Brian Swetland
Signed-off-by: Greg Kroah-Hartman
12 Dec, 2009
1 commit
-
These drivers are no longer being developed and the original authors
seem to have abandonded them and hence, do not want them in the mainline
kernel tree.So sad :(
Cc: Brian Swetland
Signed-off-by: Greg Kroah-Hartman
31 Oct, 2009
1 commit
-
It's causing lots of build errors, so just mark it as broken. It is
scheduled to be removed in 2.6.33 anyway.Signed-off-by: Greg Kroah-Hartman
16 Sep, 2009
3 commits
-
This was done using a semantic patch (http://coccinelle.lip6.fr/) that
checks that the declaration is not inside a function definition, that the
defined variable is not exported using EXPORTED_SYMBOL, etc, and that the
defined variable does not occur in any other file. If these conditions
hold, static is added before the declaration.Signed-off-by: Julia Lawall
Signed-off-by: Greg Kroah-Hartman -
Move module_params to near the end of the source file so that
their references are already known/defined. Fixes build errors:drivers/staging/android/lowmemorykiller.c: In function '__check_cost':
drivers/staging/android/lowmemorykiller.c:60: error: 'lowmem_shrinker' undeclared (first use in this function)
drivers/staging/android/lowmemorykiller.c: At top level:
drivers/staging/android/lowmemorykiller.c:60: error: 'lowmem_shrinker' undeclared here (not in a function)
drivers/staging/android/lowmemorykiller.c:60: warning: type defaults to 'int' in declaration of 'type name'Signed-off-by: Randy Dunlap
Signed-off-by: Greg Kroah-Hartman -
Clean up 3 or so checkpatch errors from one of my prior patches.
Signed-off-by: Daniel Walker
Cc: Arve Hjønnevåg
Cc: Brian Swetland
Signed-off-by: Greg Kroah-Hartman