== 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
=== Device Tree ===
* Start looking at the DT support for imx audio driver. The first
step would be consolidating SSI driver between PowerPC family and
i.MX family. Since the hardware IP is basically the same one for
PowerPC and i.MX, it does not make sense to Tabi Timur (PowerPC
SSI developer from Freescale) that we keep forking the driver for
these two architecture, so he NAK-ed the patch adding DT probe
support into i.MX SSI driver. Instead, he requested to make the
PowerPC one work for i.MX, since the DT support is already there.
But that is a much bigger effort than simply adding DT probe based
on imx SSI driver, and will need to take some time.
* After an extensive discussion with Stephen Warren and Aisheng on
pinctrl DT binding, we are approaching some level of agreement.
Stephen came up a draft proposal based on the discussion, which
should work at least for imx and tegra.
=== imx6 maintenance ===
* Tested BSYM usage fixing series from Rob Herring on imx6q
* Tested smp_twd runtime registration series from Marc Zyngier on imx6q
* Reviewed the second version of audio board level changes and imx-dma
driver fix-up series from Richard Zhao
* Sent a patch to add missing twd_clk for imx6q clock, and I queued
this one for 3.3-rc series.
=== mxs maintenance ===
* Reviewed a apx4devkit saif board level fixing from Lauri Hintsala
* Helped on a couple mx28 fec clock queries
=== Misc ===
* Sent v2 of patch common/image.c to align usage of fdt_high with
initrd_high to update fdt_high documentation and fix an issue with
0xffffffff case.
=== Vacation ===
* 2 weeks (Jan 23 and Jan 30) China Spring Festival Holiday (Will
try to check email from time to time though)
--
Regards,
Shawn
== 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