DPDK patches and discussions
 help / color / mirror / Atom feed
From: "shesha Sreenivasamurthy (shesha)" <shesha@cisco.com>
To: "Xie, Huawei" <huawei.xie@intel.com>
Cc: "dev@dpdk.org" <dev@dpdk.org>,
	"ms >> Michael S. Tsirkin" <mst@redhat.com>
Subject: Re: [dpdk-dev] Unlinking hugepage backing file after initialiation
Date: Tue, 29 Sep 2015 15:48:08 +0000	[thread overview]
Message-ID: <D22FFFC5.22271%shesha@cisco.com> (raw)
In-Reply-To: <C37D651A908B024F974696C65296B57B40F3D27A@SHSMSX101.ccr.corp.intel.com>

If huge pages are allocated for the guest and if the guest crashes there may be a chance that the new guest may not be able to get huge pages again as some other guest or process on the host used it. But I am not able to understand memory corruption you are talking about. In my opinion, if a process using a piece of memory goes away, it should not re-attach to the same piece of memory without running a sanity check on it.

--
- Thanks
char * (*shesha) (uint64_t cache, uint8_t F00D)
{ return 0x0000C0DE; }

From: "Xie, Huawei" <huawei.xie@intel.com<mailto:huawei.xie@intel.com>>
Date: Tuesday, September 29, 2015 at 8:15 AM
To: Cisco Employee <shesha@cisco.com<mailto:shesha@cisco.com>>
Cc: "dev@dpdk.org<mailto:dev@dpdk.org>" <dev@dpdk.org<mailto:dev@dpdk.org>>, "ms >> Michael S. Tsirkin" <mst@redhat.com<mailto:mst@redhat.com>>
Subject: Re: [dpdk-dev] Unlinking hugepage backing file after initialiation

On 9/29/2015 10:38 AM, Xie, Huawei wrote:
On 9/29/2015 8:04 AM, shesha Sreenivasamurthy (shesha) wrote:
Hello,
As of DPDK2.1, backing files are created in hugetablefs during mapping (in eal_memory.c::rte_eal_hugepage_init()) and these files are not cleaned up (unlinked) after initialization (mmap-ing). This means, when the application crashes or stopped, the memory is still consumed. Therefore, is there any reason not to unlink backing files after initialization ? If no, I will send a patch for the change.
shesha:
You remind me the virtio unexpected crashing issue. DPDK runs in user
space. It is quite possible it dies unexpectedly, either crash or being
killed.
When the dpdk virtio app crashes, it doesn't have a chance to notify
host, so host is still using its memory, backed by guest huge page.
If huge page files are still reserved in hugetlbfs, we have a chance to
recover virtio first, then unlink the huge pages.
Otherwise if the huge pages are allocated by other process, its memory
could be corrupted by host.

Certainly it is not implemented like that for this purpose, but i think
it is a temporary solution for this user space virtio driver issue.

I realized it is not a virtio specific issue, but apply to all user
space driver.
And the chance is very very small.

Also commented by Bruce/Konstantin, it is implemented this way for
multiple processes.


/huawei






--
- Thanks
char * (*shesha) (uint64_t cache, uint8_t F00D)
{ return 0x0000C0DE; }

  reply	other threads:[~2015-09-29 15:48 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-29  0:04 shesha Sreenivasamurthy (shesha)
2015-09-29  2:37 ` Xie, Huawei
2015-09-29 15:15   ` Xie, Huawei
2015-09-29 15:48     ` shesha Sreenivasamurthy (shesha) [this message]
2015-09-29 16:16       ` Michael S. Tsirkin
2015-09-29 17:50         ` shesha Sreenivasamurthy (shesha)
2015-09-29 21:35           ` Michael S. Tsirkin
2015-09-30 21:44             ` shesha Sreenivasamurthy (shesha)
2015-09-30 21:53               ` Ananyev, Konstantin
2015-09-30 22:04                 ` shesha Sreenivasamurthy (shesha)
2015-10-01  8:41                   ` Bruce Richardson
2015-10-05 13:08             ` Xie, Huawei
2015-10-05 20:20               ` Michael S. Tsirkin
2015-10-12  8:46                 ` Xie, Huawei
2015-09-29  9:03 ` Ananyev, Konstantin
2015-09-29 11:14   ` Bruce Richardson
2015-09-29 14:03     ` shesha Sreenivasamurthy (shesha)
2015-09-29  0:24 shesha Sreenivasamurthy (shesha)

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=D22FFFC5.22271%shesha@cisco.com \
    --to=shesha@cisco.com \
    --cc=dev@dpdk.org \
    --cc=huawei.xie@intel.com \
    --cc=mst@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).