mirror of
git://sourceware.org/git/lvm2.git
synced 2024-12-21 13:34:40 +03:00
d8ba8ee9ae
When mapping regions to a file descriptor, a temporary table of extent descriptors is built using the dm_pool object building interface. Previously this use borrowed the dms->mem region and counter table pool (since nothing can interleave with the allocation while the caller is still in dm_stats_create_regions_from_fd()). This turns out to be problematic for error recovery. When a region creation operation fails partway through file mapping, we need to roll back the set of already created regions and this requires a listed handle: the dm_stats_list() will then allocate from the same pool as the extents; we either have to throw away valid list data, or leak the extent table, to return the handle in a valid state. Avoid this problem by creating a new, temporary mem pool in _stats_create_file_regions() to hold the extent data, and discarding it on exit from the function. |
||
---|---|---|
.. | ||
datastruct | ||
ioctl | ||
misc | ||
mm | ||
regex | ||
.exported_symbols | ||
.exported_symbols.Base | ||
.exported_symbols.DM_1_02_97 | ||
.exported_symbols.DM_1_02_98 | ||
.exported_symbols.DM_1_02_99 | ||
.exported_symbols.DM_1_02_100 | ||
.exported_symbols.DM_1_02_101 | ||
.exported_symbols.DM_1_02_103 | ||
.exported_symbols.DM_1_02_104 | ||
.exported_symbols.DM_1_02_105 | ||
.exported_symbols.DM_1_02_106 | ||
.exported_symbols.DM_1_02_107 | ||
.exported_symbols.DM_1_02_110 | ||
.exported_symbols.DM_1_02_113 | ||
.exported_symbols.DM_1_02_124 | ||
.exported_symbols.DM_1_02_128 | ||
.exported_symbols.DM_1_02_129 | ||
.exported_symbols.DM_1_02_131 | ||
.exported_symbols.DM_1_02_133 | ||
.exported_symbols.DM_1_02_135 | ||
libdevmapper.h | ||
libdevmapper.pc.in | ||
libdm-common.c | ||
libdm-common.h | ||
libdm-config.c | ||
libdm-deptree.c | ||
libdm-file.c | ||
libdm-report.c | ||
libdm-stats.c | ||
libdm-string.c | ||
libdm-targets.c | ||
libdm-timestamp.c | ||
Makefile.in |