|
@@ -1688,26 +1688,6 @@ static void create_kdump_vmcore(DumpState *s, Error **errp)
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
-static int validate_start_block(DumpState *s)
|
|
|
|
-{
|
|
|
|
- GuestPhysBlock *block;
|
|
|
|
-
|
|
|
|
- if (!dump_has_filter(s)) {
|
|
|
|
- return 0;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- QTAILQ_FOREACH(block, &s->guest_phys_blocks.head, next) {
|
|
|
|
- /* This block is out of the range */
|
|
|
|
- if (block->target_start >= s->filter_area_begin + s->filter_area_length ||
|
|
|
|
- block->target_end <= s->filter_area_begin) {
|
|
|
|
- continue;
|
|
|
|
- }
|
|
|
|
- return 0;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- return -1;
|
|
|
|
-}
|
|
|
|
-
|
|
|
|
static void get_max_mapnr(DumpState *s)
|
|
static void get_max_mapnr(DumpState *s)
|
|
{
|
|
{
|
|
GuestPhysBlock *last_block;
|
|
GuestPhysBlock *last_block;
|
|
@@ -1857,12 +1837,6 @@ static void dump_init(DumpState *s, int fd, bool has_format,
|
|
goto cleanup;
|
|
goto cleanup;
|
|
}
|
|
}
|
|
|
|
|
|
- /* Is the filter filtering everything? */
|
|
|
|
- if (validate_start_block(s) == -1) {
|
|
|
|
- error_setg(errp, QERR_INVALID_PARAMETER, "begin");
|
|
|
|
- goto cleanup;
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
/* get dump info: endian, class and architecture.
|
|
/* get dump info: endian, class and architecture.
|
|
* If the target architecture is not supported, cpu_get_dump_info() will
|
|
* If the target architecture is not supported, cpu_get_dump_info() will
|
|
* return -1.
|
|
* return -1.
|