code: func mustReleaseLock(c context.Context, lock fslock.Handle, fn func() error) error {
  	defer func() {
  		if err := lock.Unlock(); err != nil {
  			errors.Log(c, errors.Annotate(err, "failed to release lock").Err())
  			// TODO(maruel): There's a bug somewhere here that cases failures on
  			// Swarming tasks. Since they are running in a contained environment, it
  			// is not as much as a big deal. Experimenting if a Swarming task can
  			// survive the fact that the lock is not released.
  			// https://crbug.com/869227
  			//panic(err)
  		}
  	}()
  	return fn()
  }
docs: // mustReleaseLock calls the wrapped function, releasing the lock at the end
  // of its execution. If the lock could not be released, this function will
  // panic, since the locking state can no longer be determined.