hc
2024-02-20 102a0743326a03cd1a1202ceda21e175b7d3575c
kernel/drivers/md/dm-zoned-target.c
....@@ -750,17 +750,16 @@
750750 /*
751751 * Cleanup zoned device information.
752752 */
753
-static void dmz_put_zoned_device(struct dm_target *ti)
753
+static void dmz_put_zoned_devices(struct dm_target *ti)
754754 {
755755 struct dmz_target *dmz = ti->private;
756756 int i;
757757
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])
760760 dm_put_device(ti, dmz->ddev[i]);
761
- dmz->ddev[i] = NULL;
762
- }
763
- }
761
+
762
+ kfree(dmz->ddev);
764763 }
765764
766765 static int dmz_fixup_devices(struct dm_target *ti)
....@@ -951,7 +950,7 @@
951950 err_meta:
952951 dmz_dtr_metadata(dmz->metadata);
953952 err_dev:
954
- dmz_put_zoned_device(ti);
953
+ dmz_put_zoned_devices(ti);
955954 err:
956955 kfree(dmz->dev);
957956 kfree(dmz);
....@@ -982,7 +981,7 @@
982981
983982 bioset_exit(&dmz->bio_set);
984983
985
- dmz_put_zoned_device(ti);
984
+ dmz_put_zoned_devices(ti);
986985
987986 mutex_destroy(&dmz->chunk_lock);
988987