Re: [PATCH v2] kmemleak: survive in a low-memory situation

2019-01-07 Thread Qian Cai
On 1/7/19 9:06 PM, Qian Cai wrote: > > > On 1/7/19 5:43 AM, Catalin Marinas wrote: >> On Thu, Jan 03, 2019 at 06:07:35PM +0100, Michal Hocko wrote: > On Wed 02-01-19 13:06:19, Qian Cai wrote: > [...] >> diff --git a/mm/kmemleak.c b/mm/kmemleak.c >> index

Re: [PATCH v2] kmemleak: survive in a low-memory situation

2019-01-07 Thread Qian Cai
On 1/7/19 5:43 AM, Catalin Marinas wrote: > On Thu, Jan 03, 2019 at 06:07:35PM +0100, Michal Hocko wrote: On Wed 02-01-19 13:06:19, Qian Cai wrote: [...] > diff --git a/mm/kmemleak.c b/mm/kmemleak.c > index f9d9dc250428..9e1aa3b7df75 100644 > --- a/mm/kmemleak.c > +++

Re: [PATCH v2] kmemleak: survive in a low-memory situation

2019-01-07 Thread Catalin Marinas
On Thu, Jan 03, 2019 at 06:07:35PM +0100, Michal Hocko wrote: > > > On Wed 02-01-19 13:06:19, Qian Cai wrote: > > > [...] > > >> diff --git a/mm/kmemleak.c b/mm/kmemleak.c > > >> index f9d9dc250428..9e1aa3b7df75 100644 > > >> --- a/mm/kmemleak.c > > >> +++ b/mm/kmemleak.c > > >> @@ -576,6 +576,16

Re: [PATCH v2] kmemleak: survive in a low-memory situation

2019-01-03 Thread Michal Hocko
On Thu 03-01-19 11:51:57, Qian Cai wrote: > On 1/3/19 4:32 AM, Michal Hocko wrote: > > On Wed 02-01-19 13:06:19, Qian Cai wrote: > > [...] > >> diff --git a/mm/kmemleak.c b/mm/kmemleak.c > >> index f9d9dc250428..9e1aa3b7df75 100644 > >> --- a/mm/kmemleak.c > >> +++ b/mm/kmemleak.c > >> @@ -576,6

Re: [PATCH v2] kmemleak: survive in a low-memory situation

2019-01-03 Thread Qian Cai
On 1/3/19 4:32 AM, Michal Hocko wrote: > On Wed 02-01-19 13:06:19, Qian Cai wrote: > [...] >> diff --git a/mm/kmemleak.c b/mm/kmemleak.c >> index f9d9dc250428..9e1aa3b7df75 100644 >> --- a/mm/kmemleak.c >> +++ b/mm/kmemleak.c >> @@ -576,6 +576,16 @@ static struct kmemleak_object

Re: [PATCH v2] kmemleak: survive in a low-memory situation

2019-01-03 Thread Michal Hocko
On Wed 02-01-19 13:06:19, Qian Cai wrote: [...] > diff --git a/mm/kmemleak.c b/mm/kmemleak.c > index f9d9dc250428..9e1aa3b7df75 100644 > --- a/mm/kmemleak.c > +++ b/mm/kmemleak.c > @@ -576,6 +576,16 @@ static struct kmemleak_object *create_object(unsigned > long ptr, size_t size, > struct

[PATCH v2] kmemleak: survive in a low-memory situation

2019-01-02 Thread Qian Cai
Kmemleak could quickly fail to allocate an object structure and then disable itself in a low-memory situation. For example, running a mmap() workload triggering swapping and OOM [1]. Kmemleak allocation could fail even though the trackig object is succeeded. Hence, it could still try to start a