[RFC] Should lockd get into grace_period when statd start but not stop?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

   When using command "service nfslock stop" and "service nfsklock start"
to restart the nfslock service at RHEL with kernel 2.6.31, if start the service
after stop it more than the grace_period time, lock which lockd get before
cann't be reclaimed for the grace_period is timeout.

So, IMO, the lockd should get into grace_period when statd start not stop?

Some code at kernel: fs/lockd/svclock.c
 ....
 411         if (locks_in_grace() && !reclaim) {
 412                 ret = nlm_lck_denied_grace_period;
 413                 goto out;
 414         }
 415         if (reclaim && !locks_in_grace()) {
 416                 ret = nlm_lck_denied_grace_period;
 417                 goto out;
 418         }
 ....

I think it can implement it like that:
  1) When statd stop, it send a KILL signal to lockd,
     and lockd only release the lock, but don't get into grace_period.
  2) When statd start, it send one some other signal to lockd,
     and lockd only get into grace_period. The lock will be reclaimed.

thanks,
Mi Jinlong

--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux