Re: + include-linux-sched-mmh-uninline-mmdrop_async-etc.patch added to -mm tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 15 Sep 2017 09:12:28 +0200 Michal Hocko <mhocko@xxxxxxxxxx> wrote:

> On Fri 15-09-17 09:07:31, Michal Hocko wrote:
> > On Thu 14-09-17 13:19:38, Andrew Morton wrote:
> > > From: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
> > > Subject: include/linux/sched/mm.h: uninline mmdrop_async(), etc
> > > 
> > > mmdrop_async() is only used in fork.c.  Move that and its support
> > > functions into fork.c, uninline it all.
> > 
> > Is this really an improvement? Why do we want to discourage more code
> > paths to use mmdrop_async? It sounds like a useful api and it has been
> > removed only because it lost its own user in oom code. Now that we have
> > a user I would just keep it where it was before.
> 
> Dohh, I have mixed mmput_async with mmdrop_async. Anyway I still think
> that this is universal enough to have it in a header rather than hiding
> it in fork.c

Async free is a hack.  It consumes more resources (runtime and memory)
than a synchronous free.  It introduces a risk of memory exhaustion
when an unbounded number of async frees are pending, not yet serviced. 
It introduces a risk of unbounded latency when an unbounded number of
async frees are serviced by the kernel thread.

Synchronous frees are simply better, so we shouldn't encourage the use
of async frees.

--
To unsubscribe from this list: send the line "unsubscribe mm-commits" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Kernel Archive]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]

  Powered by Linux