Re: [PATCH 0/2] mm/shrinker: make unregister_shrinker() less fragile

2015-07-14 Thread Christoph Hellwig
On Mon, Jul 13, 2015 at 06:34:42PM +0900, Sergey Senozhatsky wrote: > Yes. 'Nice' used in a sense that drivers have logic to release the > memory anyway; mm asks volunteers (the drivers that have registered > shrinker callbacks) to release some spare/wasted/etc. when things > are getting tough (the

Re: [PATCH 0/2] mm/shrinker: make unregister_shrinker() less fragile

2015-07-13 Thread Sergey Senozhatsky
On (07/13/15 02:03), Christoph Hellwig wrote: > On Mon, Jul 13, 2015 at 03:52:53PM +0900, Sergey Senozhatsky wrote: > > Why? In some sense, shrinker callbacks are just a way to be nice. > > No one writes a driver just to be able to handle shrinker calls. An > > ability to react to those calls is ju

Re: [PATCH 0/2] mm/shrinker: make unregister_shrinker() less fragile

2015-07-13 Thread Christoph Hellwig
On Mon, Jul 13, 2015 at 03:52:53PM +0900, Sergey Senozhatsky wrote: > Why? In some sense, shrinker callbacks are just a way to be nice. > No one writes a driver just to be able to handle shrinker calls. An > ability to react to those calls is just additional option; it does > not directly affect or

Re: [PATCH 0/2] mm/shrinker: make unregister_shrinker() less fragile

2015-07-12 Thread Sergey Senozhatsky
On (07/12/15 23:33), Christoph Hellwig wrote: > On Sun, Jul 12, 2015 at 11:47:32AM +0900, Sergey Senozhatsky wrote: > > Yes, but the main difference here is that it seems that shrinker users > > don't tend to treat shrinker registration failures as fatal errors and > > just continue with shrinker f

Re: [PATCH 0/2] mm/shrinker: make unregister_shrinker() less fragile

2015-07-12 Thread Christoph Hellwig
On Sun, Jul 12, 2015 at 11:47:32AM +0900, Sergey Senozhatsky wrote: > Yes, but the main difference here is that it seems that shrinker users > don't tend to treat shrinker registration failures as fatal errors and > just continue with shrinker functionality disabled. And it makes sense. > > (copy

Re: [PATCH 0/2] mm/shrinker: make unregister_shrinker() less fragile

2015-07-11 Thread Sergey Senozhatsky
Hello Christoph, On (07/11/15 03:02), Christoph Hellwig wrote: > > Shrinker API does not handle nicely unregister_shrinker() on a > > not-registered > > ->shrinker. Looking at shrinker users, they all have to > > (a) carry on some sort of a flag to make sure that "unregister_shrinker()" > > will

Re: [PATCH 0/2] mm/shrinker: make unregister_shrinker() less fragile

2015-07-11 Thread Christoph Hellwig
On Sat, Jul 11, 2015 at 11:51:53AM +0900, Sergey Senozhatsky wrote: > Hello, > > Shrinker API does not handle nicely unregister_shrinker() on a not-registered > ->shrinker. Looking at shrinker users, they all have to > (a) carry on some sort of a flag to make sure that "unregister_shrinker()" > wi

[PATCH 0/2] mm/shrinker: make unregister_shrinker() less fragile

2015-07-10 Thread Sergey Senozhatsky
Hello, Shrinker API does not handle nicely unregister_shrinker() on a not-registered ->shrinker. Looking at shrinker users, they all have to (a) carry on some sort of a flag to make sure that "unregister_shrinker()" will not blow up later (b) be fishy (potentially can Oops) (c) access private memb