drbd: remove call to memset before free device/resource/connection
authorWang ShaoBo <bobo.shaobowang@huawei.com>
Thu, 24 Nov 2022 01:58:16 +0000 (09:58 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 31 Dec 2022 12:14:12 +0000 (13:14 +0100)
[ Upstream commit 6e7b854e4c1b02dba00760dfa79d8dbf6cce561e ]

This revert c2258ffc56f2 ("drbd: poison free'd device, resource and
connection structs"), add memset is odd here for debugging, there are
some methods to accurately show what happened, such as kdump.

Signed-off-by: Wang ShaoBo <bobo.shaobowang@huawei.com>
Link: https://lore.kernel.org/r/20221124015817.2729789-2-bobo.shaobowang@huawei.com
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Stable-dep-of: 8692814b77ca ("drbd: destroy workqueue when drbd device was freed")
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/block/drbd/drbd_main.c

index f4e38c2..be819f8 100644 (file)
@@ -2244,7 +2244,6 @@ void drbd_destroy_device(struct kref *kref)
                kref_put(&peer_device->connection->kref, drbd_destroy_connection);
                kfree(peer_device);
        }
-       memset(device, 0xfd, sizeof(*device));
        kfree(device);
        kref_put(&resource->kref, drbd_destroy_resource);
 }
@@ -2336,7 +2335,6 @@ void drbd_destroy_resource(struct kref *kref)
        idr_destroy(&resource->devices);
        free_cpumask_var(resource->cpu_mask);
        kfree(resource->name);
-       memset(resource, 0xf2, sizeof(*resource));
        kfree(resource);
 }
 
@@ -2677,7 +2675,6 @@ void drbd_destroy_connection(struct kref *kref)
        drbd_free_socket(&connection->data);
        kfree(connection->int_dig_in);
        kfree(connection->int_dig_vv);
-       memset(connection, 0xfc, sizeof(*connection));
        kfree(connection);
        kref_put(&resource->kref, drbd_destroy_resource);
 }