| 763 | } |
| 764 | |
| 765 | void |
| 766 | mem_set_dump(void *ptr, size_t size, bool enable, uint64_t pagesz) |
| 767 | { |
| 768 | #ifdef MADV_DONTDUMP |
| 769 | void *start = RTE_PTR_ALIGN_FLOOR(ptr, pagesz); |
| 770 | uintptr_t end = RTE_ALIGN_CEIL((uintptr_t)ptr + size, pagesz); |
| 771 | size_t len = end - (uintptr_t)start; |
| 772 | |
| 773 | if (madvise(start, len, enable ? MADV_DODUMP : MADV_DONTDUMP) == -1) { |
| 774 | rte_log(RTE_LOG_INFO, vhost_config_log_level, |
| 775 | "VHOST_CONFIG: could not set coredump preference (%s).\n", strerror(errno)); |
| 776 | } |
| 777 | #endif |
| 778 | } |
| 779 | |
| 780 | static void |
| 781 | translate_ring_addresses(struct virtio_net **pdev, struct vhost_virtqueue **pvq) |
no test coverage detected