| .. | .. |
|---|
| 750 | 750 | /* |
|---|
| 751 | 751 | * Cleanup zoned device information. |
|---|
| 752 | 752 | */ |
|---|
| 753 | | -static void dmz_put_zoned_device(struct dm_target *ti) |
|---|
| 753 | +static void dmz_put_zoned_devices(struct dm_target *ti) |
|---|
| 754 | 754 | { |
|---|
| 755 | 755 | struct dmz_target *dmz = ti->private; |
|---|
| 756 | 756 | int i; |
|---|
| 757 | 757 | |
|---|
| 758 | | - for (i = 0; i < dmz->nr_ddevs; i++) { |
|---|
| 759 | | - if (dmz->ddev[i]) { |
|---|
| 758 | + for (i = 0; i < dmz->nr_ddevs; i++) |
|---|
| 759 | + if (dmz->ddev[i]) |
|---|
| 760 | 760 | dm_put_device(ti, dmz->ddev[i]); |
|---|
| 761 | | - dmz->ddev[i] = NULL; |
|---|
| 762 | | - } |
|---|
| 763 | | - } |
|---|
| 761 | + |
|---|
| 762 | + kfree(dmz->ddev); |
|---|
| 764 | 763 | } |
|---|
| 765 | 764 | |
|---|
| 766 | 765 | static int dmz_fixup_devices(struct dm_target *ti) |
|---|
| .. | .. |
|---|
| 951 | 950 | err_meta: |
|---|
| 952 | 951 | dmz_dtr_metadata(dmz->metadata); |
|---|
| 953 | 952 | err_dev: |
|---|
| 954 | | - dmz_put_zoned_device(ti); |
|---|
| 953 | + dmz_put_zoned_devices(ti); |
|---|
| 955 | 954 | err: |
|---|
| 956 | 955 | kfree(dmz->dev); |
|---|
| 957 | 956 | kfree(dmz); |
|---|
| .. | .. |
|---|
| 982 | 981 | |
|---|
| 983 | 982 | bioset_exit(&dmz->bio_set); |
|---|
| 984 | 983 | |
|---|
| 985 | | - dmz_put_zoned_device(ti); |
|---|
| 984 | + dmz_put_zoned_devices(ti); |
|---|
| 986 | 985 | |
|---|
| 987 | 986 | mutex_destroy(&dmz->chunk_lock); |
|---|
| 988 | 987 | |
|---|