2016-03-11 07:24:28

by Lu Bing

[permalink] [raw]
Subject: [PATCH] android: lmk: add swap pte pmd in tasksize

From: l00215322 <[email protected]>

Many android devices have zram,so we should add "MM_SWAPENTS" in tasksize.
Refer oom_kill.c,we add pte&pmd also.

Reviewed-by: Chen Feng <[email protected]>
Reviewed-by: Fu Jun <[email protected]>
Reviewed-by: Xu YiPing <[email protected]>
Reviewed-by: Yu DongBin <[email protected]>
Signed-off-by: Lu Bing <[email protected]>
---
drivers/staging/android/lowmemorykiller.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/staging/android/lowmemorykiller.c b/drivers/staging/android/lowmemorykiller.c
index 8b5a4a8..0817d3b 100644
--- a/drivers/staging/android/lowmemorykiller.c
+++ b/drivers/staging/android/lowmemorykiller.c
@@ -139,7 +139,9 @@ static unsigned long lowmem_scan(struct shrinker *s, struct shrink_control *sc)
task_unlock(p);
continue;
}
- tasksize = get_mm_rss(p->mm);
+ tasksize = get_mm_rss(p->mm) +
+ get_mm_counter(p->mm, MM_SWAPENTS) +
+ atomic_long_read(&p->mm->nr_ptes) + mm_nr_pmds(p->mm);
task_unlock(p);
if (tasksize <= 0)
continue;
--
1.8.3.2


2016-03-11 07:30:58

by yalin wang

[permalink] [raw]
Subject: Re: [PATCH] android: lmk: add swap pte pmd in tasksize


> On Mar 11, 2016, at 15:23, Lu Bing <[email protected]> wrote:
>
> From: l00215322 <[email protected]>
>
> Many android devices have zram,so we should add "MM_SWAPENTS" in tasksize.
> Refer oom_kill.c,we add pte&pmd also.
>
> Reviewed-by: Chen Feng <[email protected]>
> Reviewed-by: Fu Jun <[email protected]>
> Reviewed-by: Xu YiPing <[email protected]>
> Reviewed-by: Yu DongBin <[email protected]>
> Signed-off-by: Lu Bing <[email protected]>
> ---
> drivers/staging/android/lowmemorykiller.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/staging/android/lowmemorykiller.c b/drivers/staging/android/lowmemorykiller.c
> index 8b5a4a8..0817d3b 100644
> --- a/drivers/staging/android/lowmemorykiller.c
> +++ b/drivers/staging/android/lowmemorykiller.c
> @@ -139,7 +139,9 @@ static unsigned long lowmem_scan(struct shrinker *s, struct shrink_control *sc)
> task_unlock(p);
> continue;
> }
> - tasksize = get_mm_rss(p->mm);
> + tasksize = get_mm_rss(p->mm) +
> + get_mm_counter(p->mm, MM_SWAPENTS) +
> + atomic_long_read(&p->mm->nr_ptes) + mm_nr_pmds(p->mm);
why not introduce a mm_nr_ptes() help function here ?
more clear to see .

> task_unlock(p);
> if (tasksize <= 0)
> continue;
> --
> 1.8.3.2
>

2016-03-11 09:09:53

by Chen Feng

[permalink] [raw]
Subject: Re: [PATCH] android: lmk: add swap pte pmd in tasksize



On 2016/3/11 15:30, yalin wang wrote:
>
>> On Mar 11, 2016, at 15:23, Lu Bing <[email protected]> wrote:
>>
>> From: l00215322 <[email protected]>
>>
>> Many android devices have zram,so we should add "MM_SWAPENTS" in tasksize.
>> Refer oom_kill.c,we add pte&pmd also.
>>
>> Reviewed-by: Chen Feng <[email protected]>
>> Reviewed-by: Fu Jun <[email protected]>
>> Reviewed-by: Xu YiPing <[email protected]>
>> Reviewed-by: Yu DongBin <[email protected]>
>> Signed-off-by: Lu Bing <[email protected]>
>> ---
>> drivers/staging/android/lowmemorykiller.c | 4 +++-
>> 1 file changed, 3 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/staging/android/lowmemorykiller.c b/drivers/staging/android/lowmemorykiller.c
>> index 8b5a4a8..0817d3b 100644
>> --- a/drivers/staging/android/lowmemorykiller.c
>> +++ b/drivers/staging/android/lowmemorykiller.c
>> @@ -139,7 +139,9 @@ static unsigned long lowmem_scan(struct shrinker *s, struct shrink_control *sc)
>> task_unlock(p);
>> continue;
>> }
>> - tasksize = get_mm_rss(p->mm);
>> + tasksize = get_mm_rss(p->mm) +
>> + get_mm_counter(p->mm, MM_SWAPENTS) +
>> + atomic_long_read(&p->mm->nr_ptes) + mm_nr_pmds(p->mm);
> why not introduce a mm_nr_ptes() help function here ?
> more clear to see .
>
Since the code is in staging, we can add another patch to do this.


>> task_unlock(p);
>> if (tasksize <= 0)
>> continue;
>> --
>> 1.8.3.2
>>
>
>
> .
>

2016-03-11 17:12:17

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Re: [PATCH] android: lmk: add swap pte pmd in tasksize

On Fri, Mar 11, 2016 at 05:05:45PM +0800, Chen Feng wrote:
>
>
> On 2016/3/11 15:30, yalin wang wrote:
> >
> >> On Mar 11, 2016, at 15:23, Lu Bing <[email protected]> wrote:
> >>
> >> From: l00215322 <[email protected]>
> >>
> >> Many android devices have zram,so we should add "MM_SWAPENTS" in tasksize.
> >> Refer oom_kill.c,we add pte&pmd also.
> >>
> >> Reviewed-by: Chen Feng <[email protected]>
> >> Reviewed-by: Fu Jun <[email protected]>
> >> Reviewed-by: Xu YiPing <[email protected]>
> >> Reviewed-by: Yu DongBin <[email protected]>
> >> Signed-off-by: Lu Bing <[email protected]>
> >> ---
> >> drivers/staging/android/lowmemorykiller.c | 4 +++-
> >> 1 file changed, 3 insertions(+), 1 deletion(-)
> >>
> >> diff --git a/drivers/staging/android/lowmemorykiller.c b/drivers/staging/android/lowmemorykiller.c
> >> index 8b5a4a8..0817d3b 100644
> >> --- a/drivers/staging/android/lowmemorykiller.c
> >> +++ b/drivers/staging/android/lowmemorykiller.c
> >> @@ -139,7 +139,9 @@ static unsigned long lowmem_scan(struct shrinker *s, struct shrink_control *sc)
> >> task_unlock(p);
> >> continue;
> >> }
> >> - tasksize = get_mm_rss(p->mm);
> >> + tasksize = get_mm_rss(p->mm) +
> >> + get_mm_counter(p->mm, MM_SWAPENTS) +
> >> + atomic_long_read(&p->mm->nr_ptes) + mm_nr_pmds(p->mm);
> > why not introduce a mm_nr_ptes() help function here ?
> > more clear to see .
> >
> Since the code is in staging, we can add another patch to do this.

I do not understand this, please explain.

thanks,

greg k-h

2016-03-14 01:26:51

by Chen Feng

[permalink] [raw]
Subject: Re: [PATCH] android: lmk: add swap pte pmd in tasksize

Hi greg,

On 2016/3/12 1:12, Greg KH wrote:
> On Fri, Mar 11, 2016 at 05:05:45PM +0800, Chen Feng wrote:
>>
>>
>> On 2016/3/11 15:30, yalin wang wrote:
>>>
>>>> On Mar 11, 2016, at 15:23, Lu Bing <[email protected]> wrote:
>>>>
>>>> From: l00215322 <[email protected]>
>>>>
>>>> Many android devices have zram,so we should add "MM_SWAPENTS" in tasksize.
>>>> Refer oom_kill.c,we add pte&pmd also.
>>>>
>>>> Reviewed-by: Chen Feng <[email protected]>
>>>> Reviewed-by: Fu Jun <[email protected]>
>>>> Reviewed-by: Xu YiPing <[email protected]>
>>>> Reviewed-by: Yu DongBin <[email protected]>
>>>> Signed-off-by: Lu Bing <[email protected]>
>>>> ---
>>>> drivers/staging/android/lowmemorykiller.c | 4 +++-
>>>> 1 file changed, 3 insertions(+), 1 deletion(-)
>>>>
>>>> diff --git a/drivers/staging/android/lowmemorykiller.c b/drivers/staging/android/lowmemorykiller.c
>>>> index 8b5a4a8..0817d3b 100644
>>>> --- a/drivers/staging/android/lowmemorykiller.c
>>>> +++ b/drivers/staging/android/lowmemorykiller.c
>>>> @@ -139,7 +139,9 @@ static unsigned long lowmem_scan(struct shrinker *s, struct shrink_control *sc)
>>>> task_unlock(p);
>>>> continue;
>>>> }
>>>> - tasksize = get_mm_rss(p->mm);
>>>> + tasksize = get_mm_rss(p->mm) +
>>>> + get_mm_counter(p->mm, MM_SWAPENTS) +
>>>> + atomic_long_read(&p->mm->nr_ptes) + mm_nr_pmds(p->mm);
>>> why not introduce a mm_nr_ptes() help function here ?
>>> more clear to see .
>>>
>> Since the code is in staging, we can add another patch to do this.
>
> I do not understand this, please explain.
>
I mean that we can submit another patch to add mm_nr_ptes() in mm-module and replace the code used nr_ptes
with this interface(mm_nr_ptes()).

This patch is just change the score of task-size in low memory killer.

> thanks,
>
> greg k-h
>
> .
>

2016-03-31 01:27:22

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Re: [PATCH] android: lmk: add swap pte pmd in tasksize

On Fri, Mar 11, 2016 at 03:23:52PM +0800, Lu Bing wrote:
> From: l00215322 <[email protected]>

I need a name here, not a number, for an author.

Please resend in the proper format, so it can be applied.

thanks,

greg k-h

2016-03-31 01:27:36

by Greg Kroah-Hartman

[permalink] [raw]
Subject: Re: [PATCH] android: lmk: add swap pte pmd in tasksize

On Mon, Mar 14, 2016 at 09:26:00AM +0800, Chen Feng wrote:
> Hi greg,
>
> On 2016/3/12 1:12, Greg KH wrote:
> > On Fri, Mar 11, 2016 at 05:05:45PM +0800, Chen Feng wrote:
> >>
> >>
> >> On 2016/3/11 15:30, yalin wang wrote:
> >>>
> >>>> On Mar 11, 2016, at 15:23, Lu Bing <[email protected]> wrote:
> >>>>
> >>>> From: l00215322 <[email protected]>
> >>>>
> >>>> Many android devices have zram,so we should add "MM_SWAPENTS" in tasksize.
> >>>> Refer oom_kill.c,we add pte&pmd also.
> >>>>
> >>>> Reviewed-by: Chen Feng <[email protected]>
> >>>> Reviewed-by: Fu Jun <[email protected]>
> >>>> Reviewed-by: Xu YiPing <[email protected]>
> >>>> Reviewed-by: Yu DongBin <[email protected]>
> >>>> Signed-off-by: Lu Bing <[email protected]>
> >>>> ---
> >>>> drivers/staging/android/lowmemorykiller.c | 4 +++-
> >>>> 1 file changed, 3 insertions(+), 1 deletion(-)
> >>>>
> >>>> diff --git a/drivers/staging/android/lowmemorykiller.c b/drivers/staging/android/lowmemorykiller.c
> >>>> index 8b5a4a8..0817d3b 100644
> >>>> --- a/drivers/staging/android/lowmemorykiller.c
> >>>> +++ b/drivers/staging/android/lowmemorykiller.c
> >>>> @@ -139,7 +139,9 @@ static unsigned long lowmem_scan(struct shrinker *s, struct shrink_control *sc)
> >>>> task_unlock(p);
> >>>> continue;
> >>>> }
> >>>> - tasksize = get_mm_rss(p->mm);
> >>>> + tasksize = get_mm_rss(p->mm) +
> >>>> + get_mm_counter(p->mm, MM_SWAPENTS) +
> >>>> + atomic_long_read(&p->mm->nr_ptes) + mm_nr_pmds(p->mm);
> >>> why not introduce a mm_nr_ptes() help function here ?
> >>> more clear to see .
> >>>
> >> Since the code is in staging, we can add another patch to do this.
> >
> > I do not understand this, please explain.
> >
> I mean that we can submit another patch to add mm_nr_ptes() in mm-module and replace the code used nr_ptes
> with this interface(mm_nr_ptes()).
>
> This patch is just change the score of task-size in low memory killer.

Ok, I'll drop this from my queue.