Whamcloud - gitweb
LU-4113 gss: uncatched error in gss_svc_upcall causes drops 60/7960/2
authorThomas Stibor <thomas@stibor.net>
Wed, 16 Oct 2013 14:00:06 +0000 (16:00 +0200)
committerOleg Drokin <oleg.drokin@intel.com>
Fri, 25 Oct 2013 03:06:06 +0000 (03:06 +0000)
commit5d9d8eb41a7465d4810c82c08d97e70c3f3749c2
tree0045c40b5aedf6b343b009c9a31f93fc359b0cd7
parentc0d3e6a3b639104a262b34be3e5753dd8f5dcdac
LU-4113 gss: uncatched error in gss_svc_upcall causes drops

Since kernel version 2.6.20 the function cache_check() in
net/sunrpc/cache.c can return the error -ETIMEDOUT. This
error should cause to recheck the cache. In current
implementation gss_svc_upcall_handle_init() is not
handling the error which causes to fall through the
switch statement returning GOTO(out, rc = SECSVC_DROP).
As a consequence this error is propagating to
ERROR:do_nego_rpc(): status: -110 (Unknown error 18446744073709551506)
ERROR:lgssc_negotiation(): negotiation rpc error: -85
ERROR:lgssc_kr_negotiate(): key 08786b66: failed to negotiation
and causes client hanging after switching to flavor krb5i/krb5p.

Signed-off-by: Thomas Stibor <thomas@stibor.net>
Change-Id: I7301bea70d96193e0f4a332c6e4b34ba326134ff
Reviewed-on: http://review.whamcloud.com/7960
Tested-by: Hudson
Reviewed-by: Andreas Dilger <andreas.dilger@intel.com>
Reviewed-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Andrew Korty <ajk@iu.edu>
Reviewed-by: Ken Hornstein <kenh@cmf.nrl.navy.mil>
Reviewed-by: Oleg Drokin <oleg.drokin@intel.com>
lustre/ptlrpc/gss/gss_svc_upcall.c