On Wed 24-01-18 11:27:15, Michel Dänzer wrote: > On 2018-01-24 10:28 AM, Michal Hocko wrote: [...] > > So how exactly then helps to kill one of those processes? The memory > > stays pinned behind or do I still misunderstand? > > Fundamentally, the memory is only released once all references to the > BOs are dropped. That's true no matter how the memory is accounted for > between the processes referencing the BO. > > > In practice, this should be fine: > > 1. The amount of memory used for shared BOs is normally small compared > to the amount of memory used for non-shared BOs (and other things). So > regardless of how shared BOs are accounted for, the OOM killer should > first target the process which is responsible for more memory overall. OK. So this is essentially the same as with the normal shared memory which is a part of the RSS in general. > 2. If the OOM killer kills a process which is sharing BOs with another > process, this should result in the other process dropping its references > to the BOs as well, at which point the memory is released. OK. How exactly are those BOs mapped to the userspace? -- Michal Hocko SUSE Labs