code: func (util *RBDUtil) cleanOldRBDFile(plugin *rbdPlugin, rbdFile string) error {
  	mounter := &rbdMounter{
  		// util.rbdUnlock needs it to run command.
  		rbd: newRBD("", "", "", "", false, plugin, util),
  	}
  	fp, err := os.Open(rbdFile)
  	if err != nil {
  		return fmt.Errorf("rbd: open err %s/%s", rbdFile, err)
  	}
  	defer fp.Close()
  
  	decoder := json.NewDecoder(fp)
  	if err = decoder.Decode(mounter); err != nil {
  		return fmt.Errorf("rbd: decode err: %v.", err)
  	}
  
  	if err != nil {
  		klog.Errorf("failed to load rbd info from %s: %v", rbdFile, err)
  		return err
  	}
  	// Remove rbd lock if found.
  	// The disk is not attached to this node anymore, so the lock on image
  	// for this node can be removed safely.
  	err = util.rbdUnlock(*mounter)
  	if err == nil {
  		os.Remove(rbdFile)
  	}
  	return err
  }
docs: // cleanOldRBDFile read rbd info from rbd.json file and removes lock if found.
  // At last, it removes rbd.json file.