+---
> contrib/elf2dmp/download.c | 12 ++--
> contrib/elf2dmp/main.c | 168
> contrib/elf2dmp/pdb.c | 61 +++-
> contrib/elf2dmp/qemu_elf.c | 150 ++-
> contrib/elf2dmp/meson.build | 2 +-
> 11 files changed, 238 insertions(+), 231 deletions(-)
> ---
> base-commit: bfe8020c814a30479a4241aaa78b63960655962b
> change-id: 20240301-elf2dmp-1a6a551f8663
>
> Best regards,
>
> --
> Akihiko Odaki
Hi,
I've tested the series with Windows Server 2022 Standard (Build 20348), 4GiB, 4
vCPUs.
Tested-by: Viktor Prutyanov
,6 +3583,7 @@ F: util/iova-tree.c
>
> elf2dmp
> M: Viktor Prutyanov
> +R: Akihiko Odaki
> S: Maintained
> F: contrib/elf2dmp/
>
> --
> 2.44.0
Reviewed-by: Viktor Prutyanov
String sign_rsds isn't terminated, so the print length must be limited.
Fixes: Coverity CID 1521598
Signed-off-by: Viktor Prutyanov
---
contrib/elf2dmp/main.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/contrib/elf2dmp/main.c b/contrib/elf2dmp/main.c
index 5db163bdbe
This series tries to fix Coverity warnings.
v2: fix commit authorship, add CIDs
Viktor Prutyanov (2):
elf2dmp: limit print length for sign_rsds
elf2dmp: check array bounds in pdb_get_file_size
contrib/elf2dmp/main.c | 2 +-
contrib/elf2dmp/pdb.c | 13 +
2 files changed, 10
Index in file_size array must be checked against num_files, because the
entries we are looking for may be absent in the PDB.
Fixes: Coverity CID 1521597
Signed-off-by: Viktor Prutyanov
---
contrib/elf2dmp/pdb.c | 13 +
1 file changed, 9 insertions(+), 4 deletions(-)
diff --git
From: Viktor Prutyanov
String sign_rsds isn't terminated, so the print length must be limited.
Signed-off-by: Viktor Prutyanov
---
contrib/elf2dmp/main.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/contrib/elf2dmp/main.c b/contrib/elf2dmp/main.c
index 5db163bdbe
This series is dedicated to fixes of Coverity warnings.
Viktor Prutyanov (2):
elf2dmp: limit print length for sign_rsds
elf2dmp: check array bounds in pdb_get_file_size
contrib/elf2dmp/main.c | 2 +-
contrib/elf2dmp/pdb.c | 13 +
2 files changed, 10 insertions(+), 5 deletions
Index in file_size array must be checked against num_files, because the
entries we are looking for may be absent in the PDB.
Signed-off-by: Viktor Prutyanov
---
contrib/elf2dmp/pdb.c | 13 +
1 file changed, 9 insertions(+), 4 deletions(-)
diff --git a/contrib/elf2dmp/pdb.c b
Glib's g_mapped_file_new maps file with PROT_READ|PROT_WRITE and
MAP_PRIVATE. This leads to premature physical memory allocation of dump
file size on Linux hosts and may fail. On Linux, mapping the file with
MAP_NORESERVE limits the allocation by available memory.
Signed-off-by: Viktor Prutyanov
DMP supports 42 physical memory runs at most. So, merge adjacent
physical memory ranges from QEMU ELF when possible to minimize total
number of runs.
Signed-off-by: Viktor Prutyanov
---
contrib/elf2dmp/main.c | 56 --
1 file changed, 48 insertions(+), 8
PDB for Windows 11 kernel has slightly different structure compared to
previous versions. Since elf2dmp don't use the other fields, copy only
'segments' field from PDB_STREAM_INDEXES.
Signed-off-by: Viktor Prutyanov
---
contrib/elf2dmp/pdb.c | 15 ---
contrib/elf2dmp/pdb.h | 2
Physical memory ranges may not be aligned to page size in QEMU ELF, but
DMP can only contain page-aligned runs. So, align them.
Signed-off-by: Viktor Prutyanov
---
contrib/elf2dmp/addrspace.c | 31 +--
contrib/elf2dmp/addrspace.h | 1 +
contrib/elf2dmp/main.c
searching for Windows kernel image.
Buglink: https://bugzilla.redhat.com/show_bug.cgi?id=2165917
Signed-off-by: Viktor Prutyanov
---
contrib/elf2dmp/main.c | 93 +++---
1 file changed, 33 insertions(+), 60 deletions(-)
diff --git a/contrib/elf2dmp/main.c b
Windows Server 2022 and Windows 11 require more careful kernel PE image
search and handling of PDB than previous Windows versions.
Also, improve support of large ELF dump files, dumps with unaligned
memory ranges and with big number of ranges.
Viktor Prutyanov (5):
elf2dmp: replace PE export
> On 2023/09/14 7:46, Viktor Prutyanov wrote:
>
>> Glib's g_mapped_file_new maps file with PROT_READ|PROT_WRITE and
>> MAP_PRIVATE. This leads to premature physical memory allocation of dump
>> file size on Linux hosts and may fail. On Linux, mapping the file with
Physical memory ranges may not be aligned to page size in QEMU ELF, but
DMP can only contain page-aligned runs. So, align them.
Signed-off-by: Viktor Prutyanov
---
contrib/elf2dmp/addrspace.c | 31 +--
contrib/elf2dmp/addrspace.h | 1 +
contrib/elf2dmp/main.c
DMP supports 42 physical memory runs at most. So, merge adjacent
physical memory ranges from QEMU ELF when possible to minimize total
number of runs.
Signed-off-by: Viktor Prutyanov
---
contrib/elf2dmp/main.c | 56 --
1 file changed, 48 insertions(+), 8
Glib's g_mapped_file_new maps file with PROT_READ|PROT_WRITE and
MAP_PRIVATE. This leads to premature physical memory allocation of dump
file size on Linux hosts and may fail. On Linux, mapping the file with
MAP_NORESERVE limits the allocation by available memory.
Signed-off-by: Viktor Prutyanov
searching for Windows kernel image.
Buglink: https://bugzilla.redhat.com/show_bug.cgi?id=2165917
Signed-off-by: Viktor Prutyanov
---
contrib/elf2dmp/main.c | 93 +++---
1 file changed, 33 insertions(+), 60 deletions(-)
diff --git a/contrib/elf2dmp/main.c b
Windows Server 2022 and Windows 11 require more careful kernel PE image
search and handling of PDB than previous Windows versions.
Also, improve support of large ELF dump files, dumps with unaligned
memory ranges and with big number of ranges.
Viktor Prutyanov (5):
elf2dmp: replace PE export
PDB for Windows 11 kernel has slightly different structure compared to
previous versions. Since elf2dmp don't use the other fields, copy only
'segments' field from PDB_STREAM_INDEXES.
Signed-off-by: Viktor Prutyanov
---
contrib/elf2dmp/pdb.c | 10 +++---
1 file changed, 3 insertions(+), 7
>> On 2023/06/12 12:42, Viktor Prutyanov wrote:
>>
>>>> Prcb may be set to 0 for some CPUs if the dump was taken before they
>>>> start. The dump may still contain valuable information for started CPUs
>>>> so don't abandon conversion in suc
On Mon, Jun 26, 2023 at 12:13 PM Viktor Prutyanov wrote:
>
> When IOMMU and vhost are enabled together, QEMU tracks IOTLB or
> Device-TLB unmap events depending on whether Device-TLB is enabled. But
> even if Device-TLB and PCI ATS is enabled, the guest can reject to use
>
Add qemu-sta...@nongnu.org
On Thu, May 18, 2023 at 9:10 AM Jason Wang wrote:
>
> On Fri, May 12, 2023 at 9:51 PM Viktor Prutyanov wrote:
> >
> > According to PCIe Address Translation Services specification 5.1.3.,
> > ATS Control Register has Enable bit to enabl
ping
On Mon, Jul 3, 2023 at 11:25 AM Viktor Prutyanov wrote:
>
> On Mon, Jun 26, 2023 at 12:13 PM Viktor Prutyanov wrote:
> >
> > When IOMMU and vhost are enabled together, QEMU tracks IOTLB or
> > Device-TLB unmap events depending on whether Device-TLB is enabled. Bu
On Mon, Jun 26, 2023 at 12:13 PM Viktor Prutyanov wrote:
>
> When IOMMU and vhost are enabled together, QEMU tracks IOTLB or
> Device-TLB unmap events depending on whether Device-TLB is enabled. But
> even if Device-TLB and PCI ATS is enabled, the guest can reject to use
>
vhost_ops, use device_iotlb name
Viktor Prutyanov (2):
vhost: register and change IOMMU flag depending on Device-TLB state
virtio-net: pass Device-TLB enable/disable events to vhost
hw/net/virtio-net.c | 1 +
hw/virtio/vhost-stub.c| 4
hw/virtio/vhost.c | 38
If vhost is enabled for virtio-net, Device-TLB enable/disable events
must be passed to vhost for proper IOMMU unmap flag selection.
Signed-off-by: Viktor Prutyanov
Acked-by: Jason Wang
---
hw/net/virtio-net.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/hw/net/virtio-net.c b/hw/net
.
Buglink: https://bugzilla.redhat.com/show_bug.cgi?id=2001312
Signed-off-by: Viktor Prutyanov
Acked-by: Jason Wang
---
hw/virtio/vhost-stub.c| 4
hw/virtio/vhost.c | 38 ++
include/hw/virtio/vhost.h | 1 +
3 files changed, 31 insertions(+), 12
> On 2023/06/12 12:42, Viktor Prutyanov wrote:
>
>>> Prcb may be set to 0 for some CPUs if the dump was taken before they
>>> start. The dump may still contain valuable information for started CPUs
>>> so don't abandon conversion in such a case.
>
> Prcb may be set to 0 for some CPUs if the dump was taken before they
> start. The dump may still contain valuable information for started CPUs
> so don't abandon conversion in such a case.
>
> Signed-off-by: Akihiko Odaki
> ---
> contrib/elf2dmp/main.c | 5 +
> 1 file changed, 5
If vhost is enabled for virtio-net, Device-TLB enable/disable events
must be passed to vhost for proper IOMMU unmap flag selection.
Signed-off-by: Viktor Prutyanov
---
hw/net/virtio-net.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/hw/net/virtio-net.c b/hw/net/virtio-net.c
index
.
Buglink: https://bugzilla.redhat.com/show_bug.cgi?id=2001312
Signed-off-by: Viktor Prutyanov
---
hw/virtio/vhost.c | 38 ++
include/hw/virtio/vhost.h | 1 +
2 files changed, 27 insertions(+), 12 deletions(-)
diff --git a/hw/virtio/vhost.c b/hw/virtio
regardless of vhost backend,
move vhost_started check to generic part
v3: call virtio_pci_ats_ctrl_trigger directly, remove
IOMMU_NOTIFIER_UNMAP fallbacks
v2: remove memory_region_iommu_notify_flags_changed, move trigger to
VirtioDeviceClass, use vhost_ops, use device_iotlb name
Viktor
On Wed, May 24, 2023 at 11:25 AM Jason Wang wrote:
>
> On Sat, May 20, 2023 at 1:50 AM Viktor Prutyanov wrote:
> >
> > On Thu, May 18, 2023 at 9:14 AM Jason Wang wrote:
> > >
> > > On Fri, May 12, 2023 at 9:51 PM Viktor Prutyanov
> > > wrote:
&
On Thu, May 18, 2023 at 9:14 AM Jason Wang wrote:
>
> On Fri, May 12, 2023 at 9:51 PM Viktor Prutyanov wrote:
> >
> > The guest can disable or never enable Device-TLB. In these cases,
> > it can't be used even if enabled in QEMU. So, check Device-TLB state
> > bef
On Mon, May 8, 2023 at 8:28 AM Jason Wang wrote:
>
> On Mon, May 8, 2023 at 1:25 PM Jason Wang wrote:
> >
> > On Mon, May 1, 2023 at 10:02 AM Viktor Prutyanov wrote:
> > >
> > > The guest can disable or never enable Device-TLB. In these cases,
> > >
On Mon, May 8, 2023 at 8:26 AM Jason Wang wrote:
>
> On Mon, May 1, 2023 at 10:02 AM Viktor Prutyanov wrote:
> >
> > If vhost is enabled for virtio-net, Device-TLB enable/disable events
> > must be passed to vhost for proper IOMMU unmap flag selection.
>
> The
.
Buglink: https://bugzilla.redhat.com/show_bug.cgi?id=2001312
Signed-off-by: Viktor Prutyanov
---
hw/virtio/vhost-backend.c | 6 ++
hw/virtio/vhost.c | 30 ++
include/hw/virtio/vhost-backend.h | 3 +++
include/hw/virtio/vhost.h | 1
implementation.
Signed-off-by: Viktor Prutyanov
---
hw/virtio/virtio-pci.c | 36
include/hw/virtio/virtio.h | 2 ++
2 files changed, 38 insertions(+)
diff --git a/hw/virtio/virtio-pci.c b/hw/virtio/virtio-pci.c
index 02fb84a8fa..edbc0daa18 100644
If vhost is enabled for virtio-net, Device-TLB enable/disable events
must be passed to vhost for proper IOMMU unmap flag selection.
Signed-off-by: Viktor Prutyanov
---
hw/net/vhost_net.c | 11 +++
hw/net/virtio-net.c | 7 +++
include/net/vhost_net.h | 2 ++
3 files
: remove memory_region_iommu_notify_flags_changed, move trigger to
VirtioDeviceClass, use vhost_ops, use device_iotlb name
Viktor Prutyanov (3):
virtio-pci: add handling of PCI ATS and Device-TLB enable/disable
vhost: register and change IOMMU flag depending on Device-TLB state
virtio-net
On Wed, Apr 26, 2023 at 8:32 AM Jason Wang wrote:
>
>
> 在 2023/4/24 19:21, Viktor Prutyanov 写道:
> > According to PCIe Address Translation Services specification 5.1.3.,
> > ATS Control Register has Enable bit to enable/disable ATS.
> > Add a new field for a trigg
,iommu_platform=on,ats=on
-netdev tap,id=nd0,ifname=tap1,script=no,downscript=no,vhost=on
-device intel-iommu,intremap=on,eim=on,device-iotlb=on/off
Buglink: https://bugzilla.redhat.com/show_bug.cgi?id=2001312
Viktor Prutyanov (4):
pci: add handling of Enable bit in ATS Control Register
virtio-pci
Guest may enable or disable PCI ATS and, accordingly, Device-TLB for
the device. Add a flag and a trigger function to handle Device-TLB
enable/disable in VirtIO devices and hook it to ATS enable/disable for
PCI transport.
Signed-off-by: Viktor Prutyanov
---
hw/virtio/virtio-pci.c | 17
According to PCIe Address Translation Services specification 5.1.3.,
ATS Control Register has Enable bit to enable/disable ATS.
A trigger function is called at the Enable bit change, so that PCIe
devices can handle ATS enable/disable.
Signed-off-by: Viktor Prutyanov
---
hw/pci/pcie.c
.
Buglink: https://bugzilla.redhat.com/show_bug.cgi?id=2001312
Signed-off-by: Viktor Prutyanov
---
hw/virtio/vhost-backend.c | 6 ++
hw/virtio/vhost.c | 26 --
include/hw/virtio/vhost-backend.h | 4
include/hw/virtio/vhost.h | 1 +
4
If vhost is enabled for virtio-net, Device-TLB enable/disable events
must be passed to vhost for proper IOMMU unmap flag selection.
Signed-off-by: Viktor Prutyanov
---
hw/net/vhost_net.c | 11 +++
hw/net/virtio-net.c | 8
include/net/vhost_net.h | 2 ++
3 files
According to PCIe Address Translation Services specification 5.1.3.,
ATS Control Register has Enable bit to enable/disable ATS.
Add a new field for a trigger function which is called at the Enable
bit change, so that PCIe devices can handle ATS enable/disable.
Signed-off-by: Viktor Prutyanov
Guest may enable or disable ATS for the device. Add logic for handling
these events.
Signed-off-by: Viktor Prutyanov
---
hw/virtio/virtio-pci.c | 12
include/hw/virtio/virtio.h | 2 ++
2 files changed, 14 insertions(+)
diff --git a/hw/virtio/virtio-pci.c b/hw/virtio/virtio
,iommu_platform=on,ats=on
-netdev tap,id=nd0,ifname=tap1,script=no,downscript=no,vhost=on
-device intel-iommu,intremap=on,eim=on,device-iotlb=on/off
Buglink: https://bugzilla.redhat.com/show_bug.cgi?id=2001312
Viktor Prutyanov (4):
pci: add handling of Enable bit in ATS Control Register
virtio-pci
The guest can disable or never enable ATS. In these cases, Device-TLB
can't be used even if enabled in QEMU. So, check ATS state before
registering IOMMU notifier and select flag depending on that. Also,
change IOMMU notifier flag if ATS state is changed.
Signed-off-by: Viktor Prutyanov
---
hw
This interface helps if IOMMU notify_flag_changed should be triggered
after changing IOMMU notifier flags in the runtime.
Signed-off-by: Viktor Prutyanov
---
include/exec/memory.h | 2 ++
softmmu/memory.c | 12
2 files changed, 14 insertions(+)
diff --git a/include/exec
On Thu, Mar 30, 2023 at 7:49 PM Viktor Prutyanov wrote:
>
> Even if Device-TLB and PCI ATS is enabled, the guest can reject to use
> it. For example, this situation appears when Windows Server 2022 is
> running with intel-iommu with device-iotlb=on and virtio-net-pci with
> vhos
-TLB unmap events (IOMMU_NOTIFIER_DEVIOTLB_UNMAP) handling for
proper vhost IOTLB unmapping when the guest isn't aware of Device-TLB.
Buglink: https://bugzilla.redhat.com/show_bug.cgi?id=2001312
Signed-off-by: Viktor Prutyanov
---
Tested on Windows Server 2022 and Fedora guests with
-device
Thank you! Personally, I agree with any way to get the elf2dmp patch series
into the tree.
Best regards,
Viktor Prutyanov
> Hi,
>
> For now, elf2dmp is unable to convert ELF-dump to DMP-dump made of
> Windows Server 2022 guest. This patch series fixes it.
>
> v1: improve code-style fix
> v2: don't remove data directory entry RVA print and DOS header size check
>
> Viktor Prutyanov
Move out PE directory search functionality to be reused not only
for Debug Directory processing but for arbitrary PE directory.
Signed-off-by: Viktor Prutyanov
---
contrib/elf2dmp/main.c | 71 +-
1 file changed, 42 insertions(+), 29 deletions(-)
diff
is 'ntoskrnl.exe' actually.
So, introduce additional validation by checking image name from
Export Directory against 'ntoskrnl.exe'.
Signed-off-by: Viktor Prutyanov
Tested-by: Yuri Benditovich
---
contrib/elf2dmp/main.c | 28 ++--
contrib/elf2dmp/pe.h | 15 +++
2
Originally elf2dmp were added with some code style issues,
especially in pe.h header, and some were introduced by
2d0fc797faaa73fbc1d30f5f9e90407bf3dd93f0. Fix them now.
Signed-off-by: Viktor Prutyanov
---
contrib/elf2dmp/addrspace.c | 1 +
contrib/elf2dmp/main.c | 9 ++--
contrib
Hi,
For now, elf2dmp is unable to convert ELF-dump to DMP-dump made of
Windows Server 2022 guest. This patch series fixes it.
v1: improve code-style fix
v2: don't remove data directory entry RVA print and DOS header size check
Viktor Prutyanov (3):
contrib/elf2dmp: fix code style
contrib
Hello,
On Wed, Feb 22, 2023 at 10:07 PM Annie.li wrote:
>
> Hello Viktor,
>
> See my following comments inline,
>
> On 11/29/2022 7:03 PM, Viktor Prutyanov wrote:
> > Move out PE directory search functionality to be reused not only
> > for Debug Directory p
On Wed, Feb 22, 2023 at 10:07 PM Annie.li wrote:
>
>
> On 11/29/2022 7:03 PM, Viktor Prutyanov wrote:
> > Since its inception elf2dmp has checked MZ signatures within an
> > address space above IDT[0] interrupt vector and took first PE image
> > found as Windows Kernel
as we discussed, I'm waiting for the series to be accepted in some
form to continue my work about supporting guests who refuse Device-TLB
on systems with device-iotlb=on.
Tested-by: Viktor Prutyanov
Best regards,
Viktor Prutyanov
On 11/30/22 3:03 AM, Viktor Prutyanov wrote:
Hi,
For now, elf2dmp is unable to convert ELF-dump to DMP-dump made of
Windows Server 2022 guest. This patch series fixes it.
v1: improve code-style fix
Viktor Prutyanov (3):
contrib/elf2dmp: fix code style
contrib/elf2dmp: move PE dir search
is 'ntoskrnl.exe' actually.
So, introduce additional validation by checking image name from
Export Directory against 'ntoskrnl.exe'.
Signed-off-by: Viktor Prutyanov
Tested-by: Yuri Benditovich
---
contrib/elf2dmp/main.c | 28 ++--
contrib/elf2dmp/pe.h | 15 +++
2
Originally elf2dmp were added with some code style issues,
especially in pe.h header, and some were introduced by
2d0fc797faaa73fbc1d30f5f9e90407bf3dd93f0. Fix them now.
Signed-off-by: Viktor Prutyanov
---
contrib/elf2dmp/addrspace.c | 1 +
contrib/elf2dmp/main.c | 9 ++--
contrib
Move out PE directory search functionality to be reused not only
for Debug Directory processing but for arbitrary PE directory.
Signed-off-by: Viktor Prutyanov
---
contrib/elf2dmp/main.c | 66 +++---
1 file changed, 37 insertions(+), 29 deletions(-)
diff
Hi,
For now, elf2dmp is unable to convert ELF-dump to DMP-dump made of
Windows Server 2022 guest. This patch series fixes it.
v1: improve code-style fix
Viktor Prutyanov (3):
contrib/elf2dmp: fix code style
contrib/elf2dmp: move PE dir search to pe_get_data_dir_entry
contrib/elf2dmp: add
)) {
eprintf("Failed to extract entire KDBG\n");
+free(kdbg);
return NULL;
}
I suppose Philippe's R-b should be on this version of the patch, not
previous one. Also I'm not sure if this patch should go through Paolo's
branch or QEMU Trivial.
Reviewed-by: Viktor Prutyanov
Windows driver.
Signed-off-by: Viktor Prutyanov
---
dump/win_dump.c | 7 +++
1 file changed, 7 insertions(+)
diff --git a/dump/win_dump.c b/dump/win_dump.c
index fd91350fbb..f20b6051b6 100644
--- a/dump/win_dump.c
+++ b/dump/win_dump.c
@@ -273,6 +273,13 @@ static void patch_and_save_context
Add ELF header checking to prevent processing input file which is not
QEMU x86_64 guest memory dump or even not ELF.
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1013
Signed-off-by: Viktor Prutyanov
---
contrib/elf2dmp/qemu_elf.c | 53 ++
1 file
Add ELF header checking to prevent processing input file which is not
QEMU guest memory dump or even not ELF.
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1013
Signed-off-by: Viktor Prutyanov
---
contrib/elf2dmp/qemu_elf.c | 38 ++
1 file changed
Hello,
Thank you for the compiler warning fix.
Best regards,
Viktor Prutyanov
On Fri, Apr 22, 2022 at 1:16 PM wrote:
> From: Viktor Prutyanov
>
> Before this patch, 'dump-guest-memory -w' was accepting only 64-bit
> dump header provided by guest through vmcoreinfo and thu
ping
On Wed, 6 Apr 2022 20:15:54 +0300
Viktor Prutyanov wrote:
> From: Viktor Prutyanov
>
> Since 32-bit versions of Windows still exist, there is a need to take
> live and crash dumps of such guests along with 64-bit guests. So, add
> an ability for 'dump-guest-memory -w' to
Before this patch, 'dump-guest-memory -w' was accepting only 64-bit
dump header provided by guest through vmcoreinfo and thus was unable
to produce 32-bit guest Windows dump. So, add 32-bit guest Windows
dumping support.
Signed-off-by: Viktor Prutyanov
Reviewed-by: Philippe Mathieu-Daudé
These structures are required to produce 32-bit guest Windows Complete
Memory Dump. Add 32-bit Windows dump header, CPU context and physical
memory descriptor structures along with corresponding definitions.
Signed-off-by: Viktor Prutyanov
Reviewed-by: Philippe Mathieu-Daudé
Reviewed-by: Marc
Perform read access to Windows dump header fields via helper macros.
This is preparation for the next 32-bit guest Windows dump support.
Signed-off-by: Viktor Prutyanov
Reviewed-by: Marc-André Lureau
---
dump/win_dump.c | 100 +++-
1 file changed, 65
Context structure in 64-bit Windows differs from 32-bit one and it
should be reflected in its name.
Signed-off-by: Viktor Prutyanov
Reviewed-by: Philippe Mathieu-Daudé
Reviewed-by: Marc-André Lureau
---
contrib/elf2dmp/main.c | 6 +++---
dump/win_dump.c | 14
From: Viktor Prutyanov
Since 32-bit versions of Windows still exist, there is a need to take
live and crash dumps of such guests along with 64-bit guests. So, add
an ability for 'dump-guest-memory -w' to take dumps from 32-bit guest.
When running the command QEMU consumes 32-bit Complete Memory
Hi
On Wed, Apr 6, 2022 at 11:00 AM Marc-André Lureau
wrote:
>
> Hi
>
> On Fri, Mar 25, 2022 at 11:51 PM Viktor Prutyanov
> wrote:
> >
> > Before this patch, 'dump-guest-memory -w' was accepting only 64-bit
> > dump header provided by guest through vmcoreinfo a
Hi
On Wed, Apr 6, 2022 at 10:51 AM Marc-André Lureau
wrote:
>
> Hi
>
> On Fri, Mar 25, 2022 at 11:51 PM Viktor Prutyanov
> wrote:
> >
> > These structures are required to produce 32-bit guest Windows Complete
> > Memory Dump. Add 32-bit Windows dump header, CP
Before this patch, 'dump-guest-memory -w' was accepting only 64-bit
dump header provided by guest through vmcoreinfo and thus was unable
to produce 32-bit guest Windows dump. So, add 32-bit guest Windows
dumping support.
Signed-off-by: Viktor Prutyanov
Reviewed-by: Philippe Mathieu-Daudé
Context structure in 64-bit Windows differs from 32-bit one and it
should be reflected in its name.
Signed-off-by: Viktor Prutyanov
Reviewed-by: Philippe Mathieu-Daudé
---
contrib/elf2dmp/main.c | 6 +++---
dump/win_dump.c | 14 +++---
include/qemu/win_dump_defs.h
These structures are required to produce 32-bit guest Windows Complete
Memory Dump. Add 32-bit Windows dump header, CPU context and physical
memory descriptor structures along with corresponding definitions.
Signed-off-by: Viktor Prutyanov
Reviewed-by: Philippe Mathieu-Daudé
---
include/qemu
Perform read access to Windows dump header fields via helper macros.
This is preparation for the next 32-bit guest Windows dump support.
Signed-off-by: Viktor Prutyanov
---
dump/win_dump.c | 100 +++-
1 file changed, 65 insertions(+), 35 deletions
in logic, just split patches
- first introduce WIN_DUMP_* macros for x64 in a separate patch
- rename WinContext to WinContext64 in a separate patch
Viktor Prutyanov (4):
include/qemu: rename Windows context definitions to expose bitness
dump/win_dump: add helper macros for Windows dump
On Thu, 13 Jan 2022 03:52:46 +0300
Viktor Prutyanov wrote:
> Perform read access to Windows dump header fields via helper macros.
> This is preparation for the next 32-bit guest Windows dump support.
>
> Signed-off-by: Viktor Prutyanov
> ---
> dum
Before this patch, 'dump-guest-memory -w' was accepting only 64-bit
dump header provided by guest through vmcoreinfo and thus was unable
to produce 32-bit guest Windows dump. So, add 32-bit guest Windows
dumping support.
Signed-off-by: Viktor Prutyanov
---
dump/win_dump.c | 231
These structures are required to produce 32-bit guest Windows Complete
Memory Dump. Add 32-bit Windows dump header, CPU context and physical
memory descriptor structures along with corresponding definitions.
Signed-off-by: Viktor Prutyanov
---
include/qemu/win_dump_defs.h | 107
Context structure in 64-bit Windows differs from 32-bit one and it
should be reflected in its name.
Signed-off-by: Viktor Prutyanov
---
contrib/elf2dmp/main.c | 6 +++---
dump/win_dump.c | 14 +++---
include/qemu/win_dump_defs.h | 8
3 files changed, 14
Perform read access to Windows dump header fields via helper macros.
This is preparation for the next 32-bit guest Windows dump support.
Signed-off-by: Viktor Prutyanov
---
dump/win_dump.c | 100 +++-
1 file changed, 65 insertions(+), 35 deletions
- rename WinContext to WinContext64 in a separate patch
Viktor Prutyanov (4):
include/qemu: rename Windows context definitions to expose bitness
dump/win_dump: add helper macros for Windows dump header access
include/qemu: add 32-bit Windows dump structures
dump/win_dump: add 32-bit guest Windows
Before this patch, 'dump-guest-memory -w' was accepting only 64-bit
dump header provided by guest through vmcoreinfo and thus was unable
to produce 32-bit guest Windows dump. So, add 32-bit guest Windows
dumping support.
Signed-off-by: Viktor Prutyanov
---
dump/win_dump.c | 293
These structures are required to produce 32-bit guest Windows Complete
Memory Dump. Add 32-bit Windows dump header, CPU context and physical
memory descriptor structures along with corresponding definitions.
Signed-off-by: Viktor Prutyanov
---
contrib/elf2dmp/main.c | 6 +-
include/qemu
by guest driver through vmcoreinfo device as it was
previously done for 64-bit headers. 32-bit vmcoreinfo guest driver in
upstream virtio-win can fill such a header.
Viktor Prutyanov (2):
include/qemu: add 32-bit Windows dump structures and definitions
dump/win_dump: add 32-bit guest Windows support
Move out PE directory search functionality to be reused not only
for Debug Directory processing but for arbitrary PE directory.
Signed-off-by: Viktor Prutyanov
---
contrib/elf2dmp/main.c | 66 +++---
1 file changed, 37 insertions(+), 29 deletions(-)
diff
is 'ntoskrnl.exe' actually.
So, introduce additional validation by checking image name from
Export Directory against 'ntoskrnl.exe'.
Signed-off-by: Viktor Prutyanov
---
contrib/elf2dmp/main.c | 28 ++--
contrib/elf2dmp/pe.h | 15 +++
2 files changed, 41 insertions
Originally elf2dmp were added with some code style issues,
especially in pe.h header, and some were introduced by
2d0fc797faaa73fbc1d30f5f9e90407bf3dd93f0. Fix them now.
Signed-off-by: Viktor Prutyanov
---
contrib/elf2dmp/main.c | 9 ++--
contrib/elf2dmp/pe.h | 100
Hi,
For now, elf2dmp is unable to convert ELF-dump to DMP-dump made of
Windows Server 2022 guest. This patch series fixes it.
Viktor Prutyanov (3):
contrib/elf2dmp: fix code style
contrib/elf2dmp: move PE dir search to pe_get_data_dir_entry
contrib/elf2dmp: add PE name check and Windows
1 - 100 of 158 matches
Mail list logo