On Tue, Mar 17, 2015 at 6:37 AM, Christoph Hellwig <hch@xxxxxxxxxxxxx> wrote: > On Mon, Mar 09, 2015 at 04:05:03PM -0400, Trond Myklebust wrote: >> The spec says that once all layouts that reference a given deviceid >> have been returned, then we are only allowed to continue to cache >> the deviceid if the metadata server supports notifications. > > This causes massive performance issues for object and block layout > servers where a GETDEVICEINFO (or rather the client processing of it) > is expensive. Also it increases the deadlock potential as the > GETDEVICEINFO generally isn't safe for writeback under memory pressure > (and yes, we'll need more fixes in that area). > > I've also filed an errata a while ago to update the language in the spec > in this area to be consistent and not enforce this behavior: > > http://www.rfc-editor.org/errata_search.php?rfc=5661&eid=4119 > > I think the right fix is to have a shrinker that allows the nfs client > to retire unused devices on a lru basis under memory pressure. No. The right fix is to make the server support device notifications. -- Trond Myklebust Linux NFS client maintainer, PrimaryData trond.myklebust@xxxxxxxxxxxxxxx -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html