code: func DeleteDevice(poolName string, deviceID int) error {
  	task, err := TaskCreateNamed(deviceTargetMsg, poolName)
  	if task == nil {
  		return err
  	}
  
  	if err := task.setSector(0); err != nil {
  		return fmt.Errorf("devicemapper: Can't set sector %s", err)
  	}
  
  	if err := task.setMessage(fmt.Sprintf("delete %d", deviceID)); err != nil {
  		return fmt.Errorf("devicemapper: Can't set message %s", err)
  	}
  
  	dmSawBusy = false
  	dmSawEnoData = false
  	if err := task.run(); err != nil {
  		if dmSawBusy {
  			return ErrBusy
  		}
  		if dmSawEnoData {
  			logrus.Debugf("devicemapper: Device(id: %d) from pool(%s) does not exist", deviceID, poolName)
  			return nil
  		}
  		return fmt.Errorf("devicemapper: Error running DeleteDevice %s", err)
  	}
  	return nil
  }
docs: // DeleteDevice deletes a device with the specified poolName with the specified device id.