== Saugata Das sdas ==
=== Activity Summary ===
* Data tag patch pushed to mmc-next
* Debug session together with Venkat for the BKOPS issue
* Context ID patch prepared. Internal review ongoing
=== Plans ===
* Testing of context ID patch on Samsung eMMC
=== Issues ===
* None
=== Highlights ===
* Got buy in from Brian & Arve on my alternative monotonic evdev input
timestamp patch. Resent to input list and maintainer. Still haven't
heard anything back from maintainer about merging it or not. I suspect
this will end up having to wait for 3.4
* Worked to get the Android sub-team wiki page started up.
https://wiki.linaro.org/WorkingGroups/Kernel/AndroidUpstreaming
* Synced with Rafael about his wakelock/pm_stay_awake migration plan.
Likely a good candidate for alarmtimer interface testing.
* Ran the weekly Android sub-team meeting (over email) with Anton.
* Andrew Morton pushed my merge_config.sh script for merging.
Unfortunately it was sent to the kbuild maintainer and not to Linus, so
its unlikely to make it in for 3.3. The patch still is pending in -mm.
* Synced with Andrey, Nico and Deepak on Linaro kernel transition
* Reposted merge_config.sh script and sent it to Andrey for inclusion
into the linaro kernel. Looking to try to handle inconsistent config
issue which has been causing trouble recently.
* Tried to push 2 RTC fixes as well as some timekeeping cleanup patches
to Thomas for inclusion in 3.3. So far no response, so I've pinged tglx
again.
* Looked into lockdep warning I was getting with fadvise volatile
implementation. After spending a bit of time, I couldn't sort it out and
tried to see how ashmem avoids it. Ends up ashmem trips the same lockdep
warning and calling vmtruncate_range from a shrinker is the problem. Not
yet sure how to avoid this yet, but decided to table it for now.
* Started work on a range-tree algorithm for better managing the
volatile page ranges used with the fadvise volatile mapping alternative
to ashmem. Got some reasonable progress on an initial userspace
algorithm. I feel like I'm back in college (zig-zig/zig-zag/what?).
=== Plans ===
* Continue working on range-tree algorithm, trying to add self-balancing
to the tree. If that gets finished, try to integrate it into the kernel
& my fadvise code.
* Ping kbuild maintainer about merge_config.sh patch status
* Send out alarmtimer rework to greg & android devs for review
=== Issues ====
* Tried to provide some workarounds for sched_clock issues that are
cropping up on arm. Likely we need to add a middle-to-largeish work-item
for someone in Linaro to fix the generic sched_clock implementation, as
I suspect it isn't going to just go away. Unfortunately I don't have
enough time to dig in on it right now.
== Omar Ramirez <omarrmz> ==
=== Highlights ===
* Patches for iommu hwmod for OMAP seem to have settled down on the
comments, no changes requested yet, collecting Acks. Side investigation of
omap isp clocks spawned from this series.
* Discussions with Ohad and feedback on rpmsg and remoteproc against other
standards like MCAPI. Still syncing on the work to be done, currently
working on side items surrounding remoteproc.
=== Plans ===
* Look at omap-mailbox and omap-iommu for device tree conversion.
* Plan for a clean version of rpmsg code outside the kernel, decoupled of
TI sysbios code, currently marked as a nice-to-have priority.
=== Travel/Time Off ===.
* Outside of U.S. and waiting for new Visa (since 12/22/11).
* Time off (for Visa application) 12/19/11 - 12/23/11
OK, still can't manage to make it weekly stuff, but for now the main reason
for this is a somewhat disturbing long holidays (which I used as my
vacation); so, this status report actually covers just this week (except
Monday, which was a holiday as well).
== Community contributions ==
* Some work for power supply tree. Managed to review charger manager and
TI LP8727 drivers. This is now all in mainline via this pull request;
http://lkml.org/lkml/2012/1/10/514
* Sent a small missing patch for Android lowmemorykiller (well,
I thought that I sent it two days earlier, but for some reason it did
not get past my local MTA. But Greg says that it still has chances
to slip into 3.3);
http://lkml.org/lkml/2012/1/13/251
== Completed Work Items ==
* Performed some lowmemorykiller behaviour tests regarding how it
handles full file cache conditions (as suggested by KOSAKI Motohiro),
and there are indeed some problems: it starts killing processes even
if there is plenty of file cache (read free memory). Well, it also
might be "intentional", as rereading data from slow medium might be
a bad idea, and since we don't have much control what exactly file
cache contains, it might be better to kill unneeded tasks (and
free guaranteed amount of memory), then just reclaim random memory
from the cache;
* Apart from testing latest mainstream kernel and ensuring that the
new staging code does work, nothing much has been done.
== Plans ==
* Continue work on current lowmemorykiller, i.e. further work on file
cache issue, think about a better strategy. Investigate whether we
could get rid of tasklist_lock;
* Update blueprints;
* Finally pick over other patches that need upstreaming.
--
Anton Vorontsov
Email: cbouatmailru(a)gmail.com
OK, still can't manage to make it weekly stuff, but for now the main reason
for this is a somewhat disturbing long holidays (which I used as my
vacation); so, this status report actually covers just this week (except
Monday, which was a holiday as well).
== Community contributions ==
* Some work for power supply tree. Managed to review charger manager and
TI LP8727 drivers. This is now all in mainline via this pull request;
http://lkml.org/lkml/2012/1/10/514
* Sent a small missing patch for Android lowmemorykiller (well,
I thought that I sent it two days earlier, but for some reason it did
not get past my local MTA. But Greg says that it still has chances
to slip into 3.3);
http://lkml.org/lkml/2012/1/13/251
== Completed Work Items ==
* Performed some lowmemorykiller behaviour tests regarding how it
handles full file cache conditions (as suggested by KOSAKI Motohiro),
and there are indeed some problems: it starts killing processes even
if there is plenty of file cache (read free memory). Well, it also
might be "intentional", as rereading data from slow medium might be
a bad idea, and since we don't have much control what exactly file
cache contains, it might be better to kill unneeded tasks (and
free guaranteed amount of memory), then just reclaim random memory
from the cache;
* Apart from testing latest mainstream kernel and ensuring that the
new staging code does work, nothing much has been done.
== Plans ==
* Continue work on current lowmemorykiller, i.e. further work on file
cache issue, think about a better strategy. Investigate whether we
could get rid of tasklist_lock;
* Update blueprints;
* Finally pick over other patches that need upstreaming.
--
Anton Vorontsov
Email: cbouatmailru(a)gmail.com
From: Arve Hjønnevåg <arve(a)android.com>
If a process forked and the child process was killed by the
lowmemorykiller, the lowmemory killer would be disabled until
the parent process reaped the child or it died itself.
Signed-off-by: Arve Hjønnevåg <arve(a)android.com>
Signed-off-by: Anton Vorontsov <anton.vorontsov(a)linaro.org>
---
Noticed that the patch is missing. Any reason for not wanting it
in staging?
drivers/staging/android/lowmemorykiller.c | 5 ++++-
1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/drivers/staging/android/lowmemorykiller.c b/drivers/staging/android/lowmemorykiller.c
index 2d8d2b7..efc7dc1 100644
--- a/drivers/staging/android/lowmemorykiller.c
+++ b/drivers/staging/android/lowmemorykiller.c
@@ -54,6 +54,7 @@ static size_t lowmem_minfree[6] = {
static int lowmem_minfree_size = 4;
static struct task_struct *lowmem_deathpending;
+static unsigned long lowmem_deathpending_timeout;
#define lowmem_print(level, x...) \
do { \
@@ -103,7 +104,8 @@ static int lowmem_shrink(struct shrinker *s, struct shrink_control *sc)
* Note: Currently you need CONFIG_PROFILING
* for this to work correctly.
*/
- if (lowmem_deathpending)
+ if (lowmem_deathpending &&
+ time_before_eq(jiffies, lowmem_deathpending_timeout))
return 0;
if (lowmem_adj_size < array_size)
@@ -178,6 +180,7 @@ static int lowmem_shrink(struct shrinker *s, struct shrink_control *sc)
*/
#ifdef CONFIG_PROFILING
lowmem_deathpending = selected;
+ lowmem_deathpending_timeout = jiffies + HZ;
task_handoff_register(&task_nb);
#endif
force_sig(SIGKILL, selected);
--
1.7.7.3
== Dave Martin <dmart> ==
=== Activity Summary ===
* Porting the switcher to the GNU tools. Mostly complete with some help
from nico. Still needs tidy-up, and getting the final link working
still needs more work (however, we may be able to dodge around that
initially. Getting it perfect would be a waste of effort, since this
is of no relevance to the linux kernel).
=== Plans ===
* Finish merging the switcher patches together
* Get hold of the fast model and try to run the switcher. Then when
it fails, debug.
* Possibly post driver changes to replace NO_IRQ with a test compatible
with the "0 means no irq" convention.
* Sync with Deepak, Pawel etc. about what needs to be done for the
remaining DT bits (bindings, drivers)
=== Work Items ===
no update
=== Absences ===
none planned yet
== Linus Walleij linusw ==
=== Highlights ===
* Torvalds accepted and pulled in the 31 patches that were
accumulated for pin control last kernel cycle.
* Bug fixes for various ux500 Daniel Lezcano (PM) on
linux-next were applied by Russell and pulled into the
mainline tree with the other ARM patches.
* Fixed a build bug in SA1100 caused by the new dynamic
clksrc stuff. (Found in kisskb.)
* Updating Blueprints and such administrativa.
* Merged the PXA pin control (muxing only) driver by
Haoijan, it's a real nice driver and good example for
others.
* Ux500 mainlining since too little is happening:
- Prepared a set of PRCMU update patches.
- Helping our ALSA SoC authors to get started to get their
stuff upstream.
* Signed GPG keys for Sjur Brændeland and
Henrik Rydberg (the input/touch maintainer).
=== Plans ===
* New pin config table patch due ASAP. I am working on this.
There is a per-pin and per-group configuration call but this
does not suffice: developers want tables of configurations
to be handled by the pin controller core as well.
* Various pinctrl patches being applied and discussed among them
dummy pinmuxes akin to dummy regulators, we need to
see if this is a good idea or not.
* Prepare conference presentations for Android builders and
Embedded Linux Conference.
* Drive generalization of Nomadik GPIO
by using the pinctrl framework.
drivers/gpio/gpio-nomadik.c
* Test the PL08x patches on the Ericsson Research
PB11MPCore and submit platform data for using
pl08x DMA on that platform.
* Look into other Ux500 stuff in need of mainlining...
like
- Ux500 clocks
- the HWMON stuff.
=== Issues ===
* Nobody is mainlining Ux500, and being a subarch
maintainer I feel bad about not being able to do much about
it due to time shortage. This is creating problems for others
since core functionality is missing which makes other
subsystems suffer and other stuff cannot be mainlined. :-(
Thanks,
Linus Walleij
== Thomas Abraham <thomas-ab> ==
=== Highlights ===
* Submitted patch for a new lcd power control driver with device tree support.
This is required for controlling power to lcd panel that do not use a serial
command interface or memory mapped io interface.
* Submitted device tree support patch for generic power domains.
* Submitted device tree support patch for Samsung display controller.
* Not much progress on the Samsung pinmux/pinconfig driver.
=== Plans ===
* Complete device tree support patch for Samsung SPI controller.
* Re-start work on Samsung pinmux/pinconfig driver.
=== Device tree ===
* Reviewed imx pinctrl patch series from Aisheng, and had some
extensive discussion on how we should add DT binding for pinctrl
drivers.
=== imx6 maintenance ===
* Collected a number of imx tty/serial patches and sent them to Greg
for 3.3 merge window.
* Collected a couple of imx6 PM fixup patches from Eric Miao
* Reviewed imx6 IRAM patch from Jason Chen
* Reviewed imx6 anatop regulator bypass patch from Jason Chen
* Reviewed imx6 suspend patches from Jason Chen
* Reviewed cpufreq patch series from Richard Zhao
* Reviewed imx-sdma fixup patches from Richard Zhao
* Reviewed imx6 audio board level patches from Richard Zhao
* Sent a patch to fix !SMP build for imx6
* Sent a patch to fix v7_invalidate_l1 by adding I-Cache invalidation
* Reviewed irqdomain fixup patches from Thierry Reding
=== mxs maintenance ===
* Sent the clk-prepare series to fix mutex locking issue while moving
one step towards common-clk frame work
* Sent a patch to use CHIPID register to detect soc between imx23 and
imx28, so that we do not need to touch uncompress.h and mxs.h every
time a new board support is added. (Thanks for Wolfram Sang for
the suggestion)
* Managed to send 'Bluegiga APX4 Development Kit' board support from
Lauri Hintsala to arm-soc. Not sure if it will be in for 3.3 merge
window though.
* Tested the patch from Fabio Estevam adding audio support into
mxs_defconfig
=== Misc ===
* Sent a random u-boot patch on common/image.c to align usage of
fdt_high with initrd_high (come along with playing fdt_high on
imx6)
--
Regards,
Shawn