Skip to content
  • Trond Myklebust's avatar
    LOCKD: Fix a race when initialising nlmsvc_timeout · 5381655a
    Trond Myklebust authored
    
    
    commit 06bed7d18c2c07b3e3eeadf4bd357f6e806618cc upstream.
    
    This commit fixes a race whereby nlmclnt_init() first starts the lockd
    daemon, and then calls nlm_bind_host() with the expectation that
    nlmsvc_timeout has already been initialised. Unfortunately, there is no
    no synchronisation between lockd() and lockd_up() to guarantee that this
    is the case.
    
    Fix is to move the initialisation of nlmsvc_timeout into lockd_create_svc
    
    Fixes: 9a1b6bf818e74 ("LOCKD: Don't call utsname()->nodename...")
    Cc: Bruce Fields <bfields@fieldses.org>
    Cc: stable@vger.kernel.org # 3.10.x
    Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    5381655a