lkml.org 
[lkml]   [2020]   [Feb]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: [PATCH RT] mm/memcontrol: Move misplaced local_unlock_irqrestore()
On 2020-01-26 21:19:45 [+0000], Matt Fleming wrote:
> There's no need to leave interrupts disabled when calling css_put_many().

For RT the interrupts are never actually disabled and for !RT they are
disabled with or without the change.
The comment about the disable function mentions just the counters and
css_put_many()'s callback just invokes a worker so it is probably save
to move the function as suggested.

May I ask how on earth you managed to open that file on a Sunday
evening?

> Cc: Daniel Wagner <wagi@monom.org>
> Signed-off-by: Matt Fleming <matt@codeblueprint.co.uk>
> ---
> mm/memcontrol.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/mm/memcontrol.c b/mm/memcontrol.c
> index 7b6f208c5a6b..1120b9d8dd86 100644
> --- a/mm/memcontrol.c
> +++ b/mm/memcontrol.c
> @@ -7062,10 +7062,10 @@ void mem_cgroup_swapout(struct page *page, swp_entry_t entry)
> mem_cgroup_charge_statistics(memcg, page, PageTransHuge(page),
> -nr_entries);
> memcg_check_events(memcg, page);
> + local_unlock_irqrestore(event_lock, flags);
>
> if (!mem_cgroup_is_root(memcg))
> css_put_many(&memcg->css, nr_entries);
> - local_unlock_irqrestore(event_lock, flags);
> }
>
> /**

Sebastian

\
 
 \ /
  Last update: 2020-02-03 19:18    [W:0.105 / U:0.848 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site