Version 2.02.94 -
====================================
+ Revert free of allocated segtype in init segment error path (2.02.89).
Test dm_hash_insert() failures in filter-persistent.c and fid_add_mda().
Ensure clvmd message is always \0 terminated after read.
Better detection of missing dmeventd fifo connection (2.02.93).
do {
if ((segtype = raid_segtype_fn[i](cmd)) &&
- !lvm_register_segtype(seglib, segtype)) {
- dm_free(segtype);
+ !lvm_register_segtype(seglib, segtype))
+ /* segtype is already destroyed */
return_0;
- }
} while (raid_segtype_fn[++i]);
return 1;
segtype->private = NULL;
segtype->flags = SEG_REPLICATOR;
- if (!lvm_register_segtype(seglib, segtype)) {
- dm_free(segtype);
+ if (!lvm_register_segtype(seglib, segtype))
+ /* segtype is already destroyed */
return_0;
- }
log_very_verbose("Initialised segtype: " REPLICATOR_MODULE);
segtype->private = NULL;
segtype->flags = SEG_REPLICATOR_DEV;
- if (!lvm_register_segtype(seglib, segtype)) {
- dm_free(segtype);
+ if (!lvm_register_segtype(seglib, segtype))
+ /* segtype is already destroyed */
return_0;
- }
log_very_verbose("Initialised segtype: " REPLICATOR_DEV_MODULE);
segtype->flags |= SEG_MONITORED;
# endif /* DMEVENTD */
#endif
- if (!lvm_register_segtype(seglib, segtype)) {
- dm_free(segtype);
+ if (!lvm_register_segtype(seglib, segtype))
+ /* segtype is already destroyed */
return_0;
- }
log_very_verbose("Initialised segtype: %s", segtype->name);
}