* Rename and expose createTask() to TaskCreateNamed()
* add comments
Signed-off-by: Vincent Batts <vbatts@redhat.com>
| ... | ... |
@@ -63,7 +63,7 @@ var ( |
| 63 | 63 |
ErrGetLibraryVersion = errors.New("dm_get_library_version failed")
|
| 64 | 64 |
ErrCreateRemoveTask = errors.New("Can't create task of type DeviceRemove")
|
| 65 | 65 |
ErrRunRemoveDevice = errors.New("running RemoveDevice failed")
|
| 66 |
- ErrInvalidAddNode = errors.New("Invalide AddNoce type")
|
|
| 66 |
+ ErrInvalidAddNode = errors.New("Invalid AddNode type")
|
|
| 67 | 67 |
ErrGetLoopbackBackingFile = errors.New("Unable to get loopback backing file")
|
| 68 | 68 |
ErrLoopbackSetCapacity = errors.New("Unable set loopback capacity")
|
| 69 | 69 |
ErrBusy = errors.New("Device is Busy")
|
| ... | ... |
@@ -104,6 +104,20 @@ func (t *Task) destroy() {
|
| 104 | 104 |
} |
| 105 | 105 |
} |
| 106 | 106 |
|
| 107 |
+// TaskCreateNamed is a convenience function for TaskCreate when a name |
|
| 108 |
+// will be set on the task as well |
|
| 109 |
+func TaskCreateNamed(t TaskType, name string) (*Task, error) {
|
|
| 110 |
+ task := TaskCreate(t) |
|
| 111 |
+ if task == nil {
|
|
| 112 |
+ return nil, fmt.Errorf("Can't create task of type %d", int(t))
|
|
| 113 |
+ } |
|
| 114 |
+ if err := task.SetName(name); err != nil {
|
|
| 115 |
+ return nil, fmt.Errorf("Can't set task name %s", name)
|
|
| 116 |
+ } |
|
| 117 |
+ return task, nil |
|
| 118 |
+} |
|
| 119 |
+ |
|
| 120 |
+// TaskCreate initializes a devicemapper task of tasktype |
|
| 107 | 121 |
func TaskCreate(tasktype TaskType) *Task {
|
| 108 | 122 |
Ctask := DmTaskCreate(int(tasktype)) |
| 109 | 123 |
if Ctask == nil {
|
| ... | ... |
@@ -298,7 +312,7 @@ func GetLibraryVersion() (string, error) {
|
| 298 | 298 |
func RemoveDevice(name string) error {
|
| 299 | 299 |
log.Debugf("[devmapper] RemoveDevice START")
|
| 300 | 300 |
defer log.Debugf("[devmapper] RemoveDevice END")
|
| 301 |
- task, err := createTask(DeviceRemove, name) |
|
| 301 |
+ task, err := TaskCreateNamed(DeviceRemove, name) |
|
| 302 | 302 |
if task == nil {
|
| 303 | 303 |
return err |
| 304 | 304 |
} |
| ... | ... |
@@ -354,7 +368,7 @@ func BlockDeviceDiscard(path string) error {
|
| 354 | 354 |
|
| 355 | 355 |
// This is the programmatic example of "dmsetup create" |
| 356 | 356 |
func CreatePool(poolName string, dataFile, metadataFile *os.File, poolBlockSize uint32) error {
|
| 357 |
- task, err := createTask(DeviceCreate, poolName) |
|
| 357 |
+ task, err := TaskCreateNamed(DeviceCreate, poolName) |
|
| 358 | 358 |
if task == nil {
|
| 359 | 359 |
return err |
| 360 | 360 |
} |
| ... | ... |
@@ -383,7 +397,7 @@ func CreatePool(poolName string, dataFile, metadataFile *os.File, poolBlockSize |
| 383 | 383 |
} |
| 384 | 384 |
|
| 385 | 385 |
func ReloadPool(poolName string, dataFile, metadataFile *os.File, poolBlockSize uint32) error {
|
| 386 |
- task, err := createTask(DeviceReload, poolName) |
|
| 386 |
+ task, err := TaskCreateNamed(DeviceReload, poolName) |
|
| 387 | 387 |
if task == nil {
|
| 388 | 388 |
return err |
| 389 | 389 |
} |
| ... | ... |
@@ -405,19 +419,8 @@ func ReloadPool(poolName string, dataFile, metadataFile *os.File, poolBlockSize |
| 405 | 405 |
return nil |
| 406 | 406 |
} |
| 407 | 407 |
|
| 408 |
-func createTask(t TaskType, name string) (*Task, error) {
|
|
| 409 |
- task := TaskCreate(t) |
|
| 410 |
- if task == nil {
|
|
| 411 |
- return nil, fmt.Errorf("Can't create task of type %d", int(t))
|
|
| 412 |
- } |
|
| 413 |
- if err := task.SetName(name); err != nil {
|
|
| 414 |
- return nil, fmt.Errorf("Can't set task name %s", name)
|
|
| 415 |
- } |
|
| 416 |
- return task, nil |
|
| 417 |
-} |
|
| 418 |
- |
|
| 419 | 408 |
func GetDeps(name string) (*Deps, error) {
|
| 420 |
- task, err := createTask(DeviceDeps, name) |
|
| 409 |
+ task, err := TaskCreateNamed(DeviceDeps, name) |
|
| 421 | 410 |
if task == nil {
|
| 422 | 411 |
return nil, err |
| 423 | 412 |
} |
| ... | ... |
@@ -428,7 +431,7 @@ func GetDeps(name string) (*Deps, error) {
|
| 428 | 428 |
} |
| 429 | 429 |
|
| 430 | 430 |
func GetInfo(name string) (*Info, error) {
|
| 431 |
- task, err := createTask(DeviceInfo, name) |
|
| 431 |
+ task, err := TaskCreateNamed(DeviceInfo, name) |
|
| 432 | 432 |
if task == nil {
|
| 433 | 433 |
return nil, err |
| 434 | 434 |
} |
| ... | ... |
@@ -450,9 +453,9 @@ func GetDriverVersion() (string, error) {
|
| 450 | 450 |
} |
| 451 | 451 |
|
| 452 | 452 |
func GetStatus(name string) (uint64, uint64, string, string, error) {
|
| 453 |
- task, err := createTask(DeviceStatus, name) |
|
| 453 |
+ task, err := TaskCreateNamed(DeviceStatus, name) |
|
| 454 | 454 |
if task == nil {
|
| 455 |
- log.Debugf("GetStatus: Error createTask: %s", err)
|
|
| 455 |
+ log.Debugf("GetStatus: Error TaskCreateNamed: %s", err)
|
|
| 456 | 456 |
return 0, 0, "", "", err |
| 457 | 457 |
} |
| 458 | 458 |
if err := task.Run(); err != nil {
|
| ... | ... |
@@ -475,7 +478,7 @@ func GetStatus(name string) (uint64, uint64, string, string, error) {
|
| 475 | 475 |
} |
| 476 | 476 |
|
| 477 | 477 |
func SetTransactionId(poolName string, oldId uint64, newId uint64) error {
|
| 478 |
- task, err := createTask(DeviceTargetMsg, poolName) |
|
| 478 |
+ task, err := TaskCreateNamed(DeviceTargetMsg, poolName) |
|
| 479 | 479 |
if task == nil {
|
| 480 | 480 |
return err |
| 481 | 481 |
} |
| ... | ... |
@@ -495,7 +498,7 @@ func SetTransactionId(poolName string, oldId uint64, newId uint64) error {
|
| 495 | 495 |
} |
| 496 | 496 |
|
| 497 | 497 |
func SuspendDevice(name string) error {
|
| 498 |
- task, err := createTask(DeviceSuspend, name) |
|
| 498 |
+ task, err := TaskCreateNamed(DeviceSuspend, name) |
|
| 499 | 499 |
if task == nil {
|
| 500 | 500 |
return err |
| 501 | 501 |
} |
| ... | ... |
@@ -506,7 +509,7 @@ func SuspendDevice(name string) error {
|
| 506 | 506 |
} |
| 507 | 507 |
|
| 508 | 508 |
func ResumeDevice(name string) error {
|
| 509 |
- task, err := createTask(DeviceResume, name) |
|
| 509 |
+ task, err := TaskCreateNamed(DeviceResume, name) |
|
| 510 | 510 |
if task == nil {
|
| 511 | 511 |
return err |
| 512 | 512 |
} |
| ... | ... |
@@ -528,7 +531,7 @@ func CreateDevice(poolName string, deviceId *int) error {
|
| 528 | 528 |
log.Debugf("[devmapper] CreateDevice(poolName=%v, deviceId=%v)", poolName, *deviceId)
|
| 529 | 529 |
|
| 530 | 530 |
for {
|
| 531 |
- task, err := createTask(DeviceTargetMsg, poolName) |
|
| 531 |
+ task, err := TaskCreateNamed(DeviceTargetMsg, poolName) |
|
| 532 | 532 |
if task == nil {
|
| 533 | 533 |
return err |
| 534 | 534 |
} |
| ... | ... |
@@ -556,7 +559,7 @@ func CreateDevice(poolName string, deviceId *int) error {
|
| 556 | 556 |
} |
| 557 | 557 |
|
| 558 | 558 |
func DeleteDevice(poolName string, deviceId int) error {
|
| 559 |
- task, err := createTask(DeviceTargetMsg, poolName) |
|
| 559 |
+ task, err := TaskCreateNamed(DeviceTargetMsg, poolName) |
|
| 560 | 560 |
if task == nil {
|
| 561 | 561 |
return err |
| 562 | 562 |
} |
| ... | ... |
@@ -576,7 +579,7 @@ func DeleteDevice(poolName string, deviceId int) error {
|
| 576 | 576 |
} |
| 577 | 577 |
|
| 578 | 578 |
func ActivateDevice(poolName string, name string, deviceId int, size uint64) error {
|
| 579 |
- task, err := createTask(DeviceCreate, name) |
|
| 579 |
+ task, err := TaskCreateNamed(DeviceCreate, name) |
|
| 580 | 580 |
if task == nil {
|
| 581 | 581 |
return err |
| 582 | 582 |
} |
| ... | ... |
@@ -614,7 +617,7 @@ func CreateSnapDevice(poolName string, deviceId *int, baseName string, baseDevic |
| 614 | 614 |
} |
| 615 | 615 |
|
| 616 | 616 |
for {
|
| 617 |
- task, err := createTask(DeviceTargetMsg, poolName) |
|
| 617 |
+ task, err := TaskCreateNamed(DeviceTargetMsg, poolName) |
|
| 618 | 618 |
if task == nil {
|
| 619 | 619 |
if doSuspend {
|
| 620 | 620 |
ResumeDevice(baseName) |