update to 2.6.9-rc1
[linux-flexiantxendom0-3.2.10.git] / fs / lockd / svcproc.c
index 2cf6818..3eca6cf 100644 (file)
@@ -71,7 +71,7 @@ nlmsvc_retrieve_args(struct svc_rqst *rqstp, struct nlm_args *argp,
 
        /* Obtain host handle */
        if (!(host = nlmsvc_lookup_host(rqstp))
-        || (argp->monitor && nsm_monitor(host) < 0))
+        || (argp->monitor && !host->h_monitored && nsm_monitor(host) < 0))
                goto no_locks;
        *hostp = host;
 
@@ -82,8 +82,9 @@ nlmsvc_retrieve_args(struct svc_rqst *rqstp, struct nlm_args *argp,
                *filp = file;
 
                /* Set up the missing parts of the file_lock structure */
-               lock->fl.fl_file  = &file->f_file;
+               lock->fl.fl_file  = file->f_file;
                lock->fl.fl_owner = (fl_owner_t) host;
+               lock->fl.fl_lmops = &nlmsvc_lock_operations;
        }
 
        return 0;