Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/winsup
diff options
context:
space:
mode:
authorJon Turney <jon.turney@dronecode.org.uk>2020-07-04 17:57:31 +0300
committerJon Turney <jon.turney@dronecode.org.uk>2020-07-21 17:19:42 +0300
commit44103c062166dc66c54ac0640cd4b2ab80d5561e (patch)
tree5ed1c751faa66f46919500ed98bdbd3c62ea89f7 /winsup
parent0302c69164e5aac8b9c2dc03c70a2a23cfb6add4 (diff)
Cygwin: Drop excluded regions list from dumper
Drop excluded regions, now it's always empty
Diffstat (limited to 'winsup')
-rw-r--r--winsup/utils/dumper.cc48
-rw-r--r--winsup/utils/dumper.h17
2 files changed, 4 insertions, 61 deletions
diff --git a/winsup/utils/dumper.cc b/winsup/utils/dumper.cc
index 4577d2a3f..2a0c66002 100644
--- a/winsup/utils/dumper.cc
+++ b/winsup/utils/dumper.cc
@@ -83,7 +83,6 @@ dumper::dumper (DWORD pid, DWORD tid, const char *file_name)
this->pid = pid;
this->tid = tid;
core_bfd = NULL;
- excl_list = new exclusion (20);
list = last = NULL;
@@ -125,19 +124,16 @@ dumper::close ()
{
if (core_bfd)
bfd_close (core_bfd);
- if (excl_list)
- delete excl_list;
if (hProcess)
CloseHandle (hProcess);
core_bfd = NULL;
hProcess = NULL;
- excl_list = NULL;
}
int
dumper::sane ()
{
- if (hProcess == NULL || core_bfd == NULL || excl_list == NULL)
+ if (hProcess == NULL || core_bfd == NULL)
return 0;
return 1;
}
@@ -226,42 +222,6 @@ dumper::add_mem_region (LPBYTE base, SIZE_T size)
return 1;
}
-/* split_add_mem_region scans list of regions to be excluded from dumping process
- (excl_list) and removes all "excluded" parts from given region. */
-int
-dumper::split_add_mem_region (LPBYTE base, SIZE_T size)
-{
- if (!sane ())
- return 0;
-
- if (base == NULL || size == 0)
- return 1; // just ignore empty regions
-
- LPBYTE last_base = base;
-
- for (process_mem_region * p = excl_list->region;
- p < excl_list->region + excl_list->last;
- p++)
- {
- if (p->base >= base + size || p->base + p->size <= base)
- continue;
-
- if (p->base <= base)
- {
- last_base = p->base + p->size;
- continue;
- }
-
- add_mem_region (last_base, p->base - last_base);
- last_base = p->base + p->size;
- }
-
- if (last_base < base + size)
- add_mem_region (last_base, base + size - last_base);
-
- return 1;
-}
-
int
dumper::add_module (LPVOID base_address)
{
@@ -413,14 +373,14 @@ dumper::collect_memory_sections ()
last_size += mbi.RegionSize;
else
{
- split_add_mem_region (last_base, last_size);
+ add_mem_region (last_base, last_size);
last_base = (LPBYTE) mbi.BaseAddress;
last_size = mbi.RegionSize;
}
}
else
{
- split_add_mem_region (last_base, last_size);
+ add_mem_region (last_base, last_size);
last_base = NULL;
last_size = 0;
}
@@ -429,7 +389,7 @@ dumper::collect_memory_sections ()
}
/* dump last sections, if any */
- split_add_mem_region (last_base, last_size);
+ add_mem_region (last_base, last_size);
return 1;
};
diff --git a/winsup/utils/dumper.h b/winsup/utils/dumper.h
index 78592b61e..6e624a983 100644
--- a/winsup/utils/dumper.h
+++ b/winsup/utils/dumper.h
@@ -62,22 +62,6 @@ typedef struct _process_entity
struct _process_entity* next;
} process_entity;
-class exclusion
-{
-public:
- size_t last;
- size_t size;
- size_t step;
- process_mem_region* region;
-
- exclusion ( size_t step ) { last = size = 0;
- this->step = step;
- region = NULL; }
- ~exclusion () { free ( region ); }
- int add ( LPBYTE mem_base, SIZE_T mem_size );
- int sort_and_check ();
-};
-
#define PAGE_BUFFER_SIZE 4096
class dumper
@@ -87,7 +71,6 @@ class dumper
HANDLE hProcess;
process_entity* list;
process_entity* last;
- exclusion* excl_list;
char* file_name;
bfd* core_bfd;