func Remove(name string) error {
	return ioctlTable(unix.DM_DEV_REMOVE, name, "", 0, true, nil)
}
Remove remove the device and destroys its tables.
package devmapper
import (
	"fmt"
	"unsafe"
	"golang.org/x/sys/unix"
)
const SectorSize = 512
const (
	ReadOnlyFlag = unix.DM_READONLY_FLAG
)
type Table interface {
	startSector() uint64
	length() uint64
	targetType() string
	buildSpec() string  
}
var errNotImplemented = fmt.Errorf("Message functionality is not implemented")
func Create(name string, uuid string) error {
	return ioctlTable(unix.DM_DEV_CREATE, name, uuid, 0, false, nil)
}
func CreateAndLoad(name string, uuid string, flags uint32, tables ...Table) error {
	if err := Create(name, uuid); err != nil {
		return err
	}
	if err := Load(name, flags, tables...); err != nil {
		_ = Remove(name)
		return err
	}
	return Resume(name)
}
func Message(name string, sector int, message string) error {
	return errNotImplemented
}
func Suspend(name string) error {
	return ioctlTable(unix.DM_DEV_SUSPEND, name, "", unix.DM_SUSPEND_FLAG, false, nil)
}
func Resume(name string) error {
	return ioctlTable(unix.DM_DEV_SUSPEND, name, "", 0, true, nil)
}
func Load(name string, flags uint32, tables ...Table) error {
	flags &= unix.DM_READONLY_FLAG
	return ioctlTable(unix.DM_TABLE_LOAD, name, "", flags, false, tables)
}
func Rename(old, new string) error {
	return errNotImplemented
}
func SetUUID(name, uuid string) error {
	return errNotImplemented
}