Print this page
NEX-3758 Support for remote stale lock detection
Reviewed by: Gordon Ross <gordon.ross@nexenta.com>

*** 17,27 **** --- 17,32 ---- * fields enclosed by brackets "[]" replaced with your own identifying * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END */ + /* + * Copyright 2015 Nexenta Systems, Inc. All rights reserved. + */ + + /* * Copyright 2004 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. * Copyright 2015 Joyent, Inc. */
*** 41,50 **** --- 46,56 ---- #include <sys/cmn_err.h> #include <sys/errno.h> #include <sys/systm.h> #include <sys/vnode.h> #include <sys/share.h> /* just to get GETSYSID def */ + #include <sys/time.h> #ifdef __cplusplus extern "C" { #endif
*** 80,89 **** --- 86,98 ---- int pvertex; /* index to proc vertex */ int l_status; /* status described below */ flk_nlm_status_t l_nlm_state; /* state of NLM server */ flk_callback_t *l_callbacks; /* callbacks, or NULL */ zoneid_t l_zoneid; /* zone of request */ + hrtime_t l_blocker; /* time when this lock */ + /* started to prevent other */ + /* locks from being set */ file_t *l_ofd; /* OFD-style reference */ }; typedef struct lock_descriptor lock_descriptor_t;
*** 396,405 **** --- 405,415 ---- (lock1)->l_start = (lock2)->l_start; \ (lock1)->l_end = (lock2)->l_end; \ (lock1)->l_flock = (lock2)->l_flock; \ (lock1)->l_zoneid = (lock2)->l_zoneid; \ (lock1)->pvertex = (lock2)->pvertex; \ + (lock1)->l_blocker = (lock2)->l_blocker; \ } /* * Clustering */