<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/staging/android, branch v3.16</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/drivers/staging/android?h=v3.16</id>
<link rel='self' href='https://git.amat.us/linux/atom/drivers/staging/android?h=v3.16'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2014-06-20T00:33:37Z</updated>
<entry>
<title>staging: android: timed_output: fix use after free of dev</title>
<updated>2014-06-20T00:33:37Z</updated>
<author>
<name>Yi Zhang</name>
<email>yizhang@marvell.com</email>
</author>
<published>2014-06-03T13:03:08Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b28e7d5807051184270c40d4bc48db947189f107'/>
<id>urn:sha1:b28e7d5807051184270c40d4bc48db947189f107</id>
<content type='text'>
tdev-&gt;dev has been freed in device_destroy(), it's not right to
use dev_set_drvdata() after that;

Signed-off-by: Yi Zhang &lt;yizhang@marvell.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip into next</title>
<updated>2014-06-03T21:00:15Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2014-06-03T21:00:15Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=c84a1e32ee58fc1cc9d3fd42619b917cce67e30a'/>
<id>urn:sha1:c84a1e32ee58fc1cc9d3fd42619b917cce67e30a</id>
<content type='text'>
Pull scheduler updates from Ingo Molnar:
 "The main scheduling related changes in this cycle were:

   - various sched/numa updates, for better performance

   - tree wide cleanup of open coded nice levels

   - nohz fix related to rq-&gt;nr_running use

   - cpuidle changes and continued consolidation to improve the
     kernel/sched/idle.c high level idle scheduling logic.  As part of
     this effort I pulled cpuidle driver changes from Rafael as well.

   - standardized idle polling amongst architectures

   - continued work on preparing better power/energy aware scheduling

   - sched/rt updates

   - misc fixlets and cleanups"

* 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (49 commits)
  sched/numa: Decay -&gt;wakee_flips instead of zeroing
  sched/numa: Update migrate_improves/degrades_locality()
  sched/numa: Allow task switch if load imbalance improves
  sched/rt: Fix 'struct sched_dl_entity' and dl_task_time() comments, to match the current upstream code
  sched: Consolidate open coded implementations of nice level frobbing into nice_to_rlimit() and rlimit_to_nice()
  sched: Initialize rq-&gt;age_stamp on processor start
  sched, nohz: Change rq-&gt;nr_running to always use wrappers
  sched: Fix the rq-&gt;next_balance logic in rebalance_domains() and idle_balance()
  sched: Use clamp() and clamp_val() to make sys_nice() more readable
  sched: Do not zero sg-&gt;cpumask and sg-&gt;sgp-&gt;power in build_sched_groups()
  sched/numa: Fix initialization of sched_domain_topology for NUMA
  sched: Call select_idle_sibling() when not affine_sd
  sched: Simplify return logic in sched_read_attr()
  sched: Simplify return logic in sched_copy_attr()
  sched: Fix exec_start/task_hot on migrated tasks
  arm64: Remove TIF_POLLING_NRFLAG
  metag: Remove TIF_POLLING_NRFLAG
  sched/idle: Make cpuidle_idle_call() void
  sched/idle: Reflow cpuidle_idle_call()
  sched/idle: Delay clearing the polling bit
  ...
</content>
</entry>
<entry>
<title>staging: android: binder.c: Use more appropriate functions for euid retrieval</title>
<updated>2014-06-01T18:36:47Z</updated>
<author>
<name>Tair Rzayev</name>
<email>tair.rzayev@gmail.com</email>
</author>
<published>2014-05-31T19:43:34Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=57bab7cb353d71c10611c34571fcb3c9f38b4792'/>
<id>urn:sha1:57bab7cb353d71c10611c34571fcb3c9f38b4792</id>
<content type='text'>
Instead of getting the reference to whole credential structure, use
task_euid() and current_euid() to get it.

Signed-off-by: Tair Rzayev &lt;tair.rzayev@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>staging: ion: shrink highmem pages on kswapd</title>
<updated>2014-05-29T20:40:46Z</updated>
<author>
<name>Heesub Shin</name>
<email>heesub.shin@samsung.com</email>
</author>
<published>2014-05-28T06:52:59Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=0cd2dc4db3ba23ff8ab38b8ae81b126626f795d5'/>
<id>urn:sha1:0cd2dc4db3ba23ff8ab38b8ae81b126626f795d5</id>
<content type='text'>
ION system heap keeps pages in its pool for better performance. When the
system is under memory pressure, slab shrinker calls the callback
registered and then the pages pooled get freed.

When the shrinker is called, it checks gfp_mask and determines whether
the pages from highmem need to be freed or the pages from lowmem.
Usually, slab shrinker is invoked on kswapd context which gfp_mask is
always GFP_KERNEL, so only lowmem pages are released on kswapd context.
This means that highmem pages in the pool are never reclaimed until
direct reclaim occurs. This can be problematic when the page pool holds
excessive amounts of highmem.

For now, the shrinker callback cannot know exactly which zone should be
targeted for reclamation, as enough information are not passed to. Thus,
it makes sense to shrink both lowmem and highmem zone on kswapd context.

Reported-by: Wonseo Choi &lt;wonseo.choi@samsung.com&gt;
Signed-off-by: Heesub Shin &lt;heesub.shin@samsung.com&gt;
Reviewed-by: Mitchel Humpherys &lt;mitchelh@codeaurora.org&gt;
Tested-by: John Stultz &lt;john.stultz@linaro.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>staging: ion: use compound pages on high order pages for system heap</title>
<updated>2014-05-29T20:40:33Z</updated>
<author>
<name>Heesub Shin</name>
<email>heesub.shin@samsung.com</email>
</author>
<published>2014-05-28T06:52:55Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=bdeb9f1c4276864e97a725c8c0a8bc9a8686edfe'/>
<id>urn:sha1:bdeb9f1c4276864e97a725c8c0a8bc9a8686edfe</id>
<content type='text'>
Using compound pages relieves burden on tracking the meta information
which are currently stored in page_info.

Signed-off-by: Heesub Shin &lt;heesub.shin@samsung.com&gt;
Reviewed-by: Mitchel Humpherys &lt;mitchelh@codeaurora.org&gt;
Tested-by: John Stultz &lt;john.stultz@linaro.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>staging: ion: remove struct ion_page_pool_item</title>
<updated>2014-05-29T20:40:33Z</updated>
<author>
<name>Heesub Shin</name>
<email>heesub.shin@samsung.com</email>
</author>
<published>2014-05-28T06:52:54Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=38c003b113ceab37f80d020999d3ec2cbf784da3'/>
<id>urn:sha1:38c003b113ceab37f80d020999d3ec2cbf784da3</id>
<content type='text'>
The page pool uses an internal data structure, ion_page_pool_item, for
wrapping pooled pages and constructing a list. As the struct page
already provides ways for doing exactly the same thing, we do not need
to reinvent the wheel. This commit removes the data structure and slab
allocations for it.

Signed-off-by: Heesub Shin &lt;heesub.shin@samsung.com&gt;
Reviewed-by: Mitchel Humpherys &lt;mitchelh@codeaurora.org&gt;
Tested-by: John Stultz &lt;john.stultz@linaro.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>staging: ion: simplify ion_page_pool_total()</title>
<updated>2014-05-29T20:40:33Z</updated>
<author>
<name>Heesub Shin</name>
<email>heesub.shin@samsung.com</email>
</author>
<published>2014-05-28T06:52:53Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=80cb77dc6310a72002f6cb8255316c5aaea78807'/>
<id>urn:sha1:80cb77dc6310a72002f6cb8255316c5aaea78807</id>
<content type='text'>
ion_page_pool_total() returns the total number of pages in the pool.
Depending on the argument passed, it counts highmem pages in or not.
This commit simplifies the code lines for better readability.

Signed-off-by: Heesub Shin &lt;heesub.shin@samsung.com&gt;
Reviewed-by: Mitchel Humpherys &lt;mitchelh@codeaurora.org&gt;
Tested-by: John Stultz &lt;john.stultz@linaro.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>staging: ion: tidy up a bit</title>
<updated>2014-05-29T20:40:33Z</updated>
<author>
<name>Heesub Shin</name>
<email>heesub.shin@samsung.com</email>
</author>
<published>2014-05-28T06:52:52Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=792407484a09b455064722c5190b45e1e1f2cecd'/>
<id>urn:sha1:792407484a09b455064722c5190b45e1e1f2cecd</id>
<content type='text'>
For aesthetics and readability, rename goto labels, remove
useless code lines, and clarify function return type.

Signed-off-by: Heesub Shin &lt;heesub.shin@samsung.com&gt;
Reviewed-by: Mitchel Humpherys &lt;mitchelh@codeaurora.org&gt;
Tested-by: John Stultz &lt;john.stultz@linaro.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>staging: android: describe use of memory barrier on sync.c</title>
<updated>2014-05-25T18:09:14Z</updated>
<author>
<name>Niv Yehezkel</name>
<email>executerx@gmail.com</email>
</author>
<published>2014-05-24T14:28:07Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=296066093b5f5ccf30a9c3b2047eb6a8875a88f0'/>
<id>urn:sha1:296066093b5f5ccf30a9c3b2047eb6a8875a88f0</id>
<content type='text'>
Added comments describing the purpose of using write memory
barrier in the context of sync_timeline_destory.

Signed-off-by: Niv Yehezkel &lt;executerx@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>staging: ion: WARN when the handle kmap_cnt is going to wrap around</title>
<updated>2014-05-23T22:23:15Z</updated>
<author>
<name>Mitchel Humpherys</name>
<email>mitchelh@codeaurora.org</email>
</author>
<published>2014-05-23T20:01:22Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=22f6b9789aef2e0b0b409b1d7708cc653540248c'/>
<id>urn:sha1:22f6b9789aef2e0b0b409b1d7708cc653540248c</id>
<content type='text'>
There are certain client bugs (double unmap, for example) that can cause
the handle-&gt;kmap_cnt (an unsigned int) to wrap around from zero. This
causes problems when the handle is destroyed because we have:

        while (handle-&gt;kmap_cnt)
                ion_handle_kmap_put(handle);

which takes a long time to complete when kmap_cnt starts at ~0 and can
result in a watchdog timeout.

WARN and bail when kmap_cnt is about to wrap around from zero.

Signed-off-by: Mitchel Humpherys &lt;mitchelh@codeaurora.org&gt;
Acked-by: Colin Cross &lt;ccross@android.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
</feed>
