From: Pavel Emelyanov Date: Mon, 17 May 2010 16:00:37 +0000 (+0400) Subject: nfsd: safer initialization order in find_file() X-Git-Tag: v2.6.35-rc1~489^2~1 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=47cee541a46a73b20dc279bf4c4690f776f6c81b;p=pandora-kernel.git nfsd: safer initialization order in find_file() The alloc_init_file() first adds a file to the hash and then initializes its fi_inode, fi_id and fi_had_conflict. The uninitialized fi_inode could thus be erroneously checked by the find_file(), so move the hash insertion lower. The client_mutex should prevent this race in practice; however, we eventually hope to make less use of the client_mutex, so the ordering here is an accident waiting to happen. I didn't find whether the same can be true for two other fields, but the common sense tells me it's better to initialize an object before putting it into a global hash table :) Signed-off-by: Pavel Emelyanov Signed-off-by: J. Bruce Fields --- Reading git-diff-tree failed