On 02/11/2018 05:34 AM, Tan, Jianfeng wrote:


-----Original Message-----
From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Tomasz Kulasek
Sent: Saturday, February 10, 2018 1:40 AM
To: y...@fridaylinux.org
Cc: dev@dpdk.org; Basierski, SebastianX
Subject: [dpdk-dev] [PATCH] vhost: reduce size of coredump file

If application coredumps with vhost-user devices connected to it,
the generated coredump file size is huge.

To limit its size, this patch adds call to madvise() with MADV_DONTDUMP
on memory regions mapped from the VM.

As virtqueue is on guest memory, by this patch, the vq information will not be 
available in the coredump.

Just wonder if adjusting /proc/pid/coredump_filter can help your case?

Yes it helps as by default I never have the guest memory in the
coredumps I receive.

Maxime

Thanks,
Jianfeng


Signed-off-by: Sebastian Basierski <sebastianx.basier...@intel.com>
Signed-off-by: Tomasz Kulasek <tomaszx.kula...@intel.com>
---
  lib/librte_vhost/vhost_user.c | 5 +++++
  1 file changed, 5 insertions(+)

diff --git a/lib/librte_vhost/vhost_user.c b/lib/librte_vhost/vhost_user.c
index 65ee33919..fc1f1a948 100644
--- a/lib/librte_vhost/vhost_user.c
+++ b/lib/librte_vhost/vhost_user.c
@@ -723,6 +723,11 @@ vhost_user_set_mem_table(struct virtio_net *dev,
struct VhostUserMsg *pmsg)
                        goto err_mmap;
                }

+               if (madvise(mmap_addr, mmap_size,
MADV_DONTDUMP) != 0) {
+                       RTE_LOG(INFO, VHOST_CONFIG,
+                               "MADV_DONTDUMP advice setting
failed.\n");
+               }
+
                reg->mmap_addr = mmap_addr;
                reg->mmap_size = mmap_size;
                reg->host_user_addr = (uint64_t)(uintptr_t)mmap_addr +
--
2.14.1

Reply via email to