All of lore.kernel.org
 help / color / mirror / Atom feed
From: Isaku Yamahata <yamahata@valinux.co.jp>
To: kvm@vger.kernel.org, qemu-devel@nongnu.org
Cc: yamahata@valinux.co.jp, t.hirofuchi@aist.go.jp, satoshi.itoh@aist.go.jp
Subject: [PATCH 16/21] umem.h: import Linux umem.h
Date: Thu, 29 Dec 2011 10:25:55 +0900	[thread overview]
Message-ID: <05992d353b971cc9e3f1f2683afd571f46e05b45.1325055140.git.yamahata@valinux.co.jp> (raw)
In-Reply-To: <cover.1325055139.git.yamahata@valinux.co.jp>
In-Reply-To: <cover.1325055139.git.yamahata@valinux.co.jp>

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
---
 linux-headers/linux/umem.h |   83 ++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 83 insertions(+), 0 deletions(-)
 create mode 100644 linux-headers/linux/umem.h

diff --git a/linux-headers/linux/umem.h b/linux-headers/linux/umem.h
new file mode 100644
index 0000000..e1a8633
--- /dev/null
+++ b/linux-headers/linux/umem.h
@@ -0,0 +1,83 @@
+/*
+ * User process backed memory.
+ * This is mainly for KVM post copy.
+ *
+ * Copyright (c) 2011,
+ * National Institute of Advanced Industrial Science and Technology
+ *
+ * https://sites.google.com/site/grivonhome/quick-kvm-migration
+ * Author: Isaku Yamahata <yamahata at valinux co jp>
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, see <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef __LINUX_UMEM_H
+#define __LINUX_UMEM_H
+
+#include <linux/types.h>
+#include <linux/ioctl.h>
+
+#ifdef __KERNEL__
+#include <linux/compiler.h>
+#else
+#define __user
+#endif
+
+#define UMEM_ID_MAX	256
+#define UMEM_NAME_MAX	256
+
+struct umem_name {
+	char id[UMEM_ID_MAX];		/* non-zero terminated */
+	char name[UMEM_NAME_MAX];	/* non-zero terminated */
+};
+
+struct umem_list {
+	__u32 nr;
+	__u32 padding;
+	struct umem_name names[0];
+};
+
+struct umem_create {
+	__u64 size;	/* in bytes */
+	__s32 umem_fd;
+	__s32 shmem_fd;
+	__u32 async_req_max;
+	__u32 sync_req_max;
+	struct umem_name name;
+};
+
+struct umem_page_request {
+	__u64 __user *pgoffs;
+	__u32 nr;
+	__u32 padding;
+};
+
+struct umem_page_cached {
+	__u64 __user *pgoffs;
+	__u32 nr;
+	__u32 padding;
+};
+
+#define UMEMIO	0x1E
+
+/* ioctl for umem_dev fd */
+#define UMEM_DEV_CREATE_UMEM	_IOWR(UMEMIO, 0x0, struct umem_create)
+#define UMEM_DEV_LIST		_IOWR(UMEMIO, 0x1, struct umem_list)
+#define UMEM_DEV_REATTACH	_IOWR(UMEMIO, 0x2, struct umem_create)
+
+/* ioctl for umem fd */
+#define UMEM_GET_PAGE_REQUEST	_IOWR(UMEMIO, 0x10, struct umem_page_request)
+#define UMEM_MARK_PAGE_CACHED	_IOW (UMEMIO, 0x11, struct umem_page_cached)
+#define UMEM_MAKE_VMA_ANONYMOUS	_IO  (UMEMIO, 0x12)
+
+#endif /* __LINUX_UMEM_H */
-- 
1.7.1.1


WARNING: multiple messages have this Message-ID (diff)
From: Isaku Yamahata <yamahata@valinux.co.jp>
To: kvm@vger.kernel.org, qemu-devel@nongnu.org
Cc: yamahata@valinux.co.jp, t.hirofuchi@aist.go.jp, satoshi.itoh@aist.go.jp
Subject: [Qemu-devel] [PATCH 16/21] umem.h: import Linux umem.h
Date: Thu, 29 Dec 2011 10:25:55 +0900	[thread overview]
Message-ID: <05992d353b971cc9e3f1f2683afd571f46e05b45.1325055140.git.yamahata@valinux.co.jp> (raw)
In-Reply-To: <cover.1325055139.git.yamahata@valinux.co.jp>
In-Reply-To: <cover.1325055139.git.yamahata@valinux.co.jp>

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
---
 linux-headers/linux/umem.h |   83 ++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 83 insertions(+), 0 deletions(-)
 create mode 100644 linux-headers/linux/umem.h

diff --git a/linux-headers/linux/umem.h b/linux-headers/linux/umem.h
new file mode 100644
index 0000000..e1a8633
--- /dev/null
+++ b/linux-headers/linux/umem.h
@@ -0,0 +1,83 @@
+/*
+ * User process backed memory.
+ * This is mainly for KVM post copy.
+ *
+ * Copyright (c) 2011,
+ * National Institute of Advanced Industrial Science and Technology
+ *
+ * https://sites.google.com/site/grivonhome/quick-kvm-migration
+ * Author: Isaku Yamahata <yamahata at valinux co jp>
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program; if not, see <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef __LINUX_UMEM_H
+#define __LINUX_UMEM_H
+
+#include <linux/types.h>
+#include <linux/ioctl.h>
+
+#ifdef __KERNEL__
+#include <linux/compiler.h>
+#else
+#define __user
+#endif
+
+#define UMEM_ID_MAX	256
+#define UMEM_NAME_MAX	256
+
+struct umem_name {
+	char id[UMEM_ID_MAX];		/* non-zero terminated */
+	char name[UMEM_NAME_MAX];	/* non-zero terminated */
+};
+
+struct umem_list {
+	__u32 nr;
+	__u32 padding;
+	struct umem_name names[0];
+};
+
+struct umem_create {
+	__u64 size;	/* in bytes */
+	__s32 umem_fd;
+	__s32 shmem_fd;
+	__u32 async_req_max;
+	__u32 sync_req_max;
+	struct umem_name name;
+};
+
+struct umem_page_request {
+	__u64 __user *pgoffs;
+	__u32 nr;
+	__u32 padding;
+};
+
+struct umem_page_cached {
+	__u64 __user *pgoffs;
+	__u32 nr;
+	__u32 padding;
+};
+
+#define UMEMIO	0x1E
+
+/* ioctl for umem_dev fd */
+#define UMEM_DEV_CREATE_UMEM	_IOWR(UMEMIO, 0x0, struct umem_create)
+#define UMEM_DEV_LIST		_IOWR(UMEMIO, 0x1, struct umem_list)
+#define UMEM_DEV_REATTACH	_IOWR(UMEMIO, 0x2, struct umem_create)
+
+/* ioctl for umem fd */
+#define UMEM_GET_PAGE_REQUEST	_IOWR(UMEMIO, 0x10, struct umem_page_request)
+#define UMEM_MARK_PAGE_CACHED	_IOW (UMEMIO, 0x11, struct umem_page_cached)
+#define UMEM_MAKE_VMA_ANONYMOUS	_IO  (UMEMIO, 0x12)
+
+#endif /* __LINUX_UMEM_H */
-- 
1.7.1.1

  parent reply	other threads:[~2011-12-29  1:26 UTC|newest]

Thread overview: 88+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-12-29  1:25 [PATCH 00/21][RFC] postcopy live migration Isaku Yamahata
2011-12-29  1:25 ` [Qemu-devel] " Isaku Yamahata
2011-12-29  1:25 ` [PATCH 01/21] arch_init: export sort_ram_list() and ram_save_block() Isaku Yamahata
2011-12-29  1:25   ` [Qemu-devel] " Isaku Yamahata
2011-12-29  1:25 ` [PATCH 02/21] arch_init: export RAM_SAVE_xxx flags for postcopy Isaku Yamahata
2011-12-29  1:25   ` [Qemu-devel] " Isaku Yamahata
2011-12-29  1:25 ` [PATCH 03/21] arch_init/ram_save: introduce constant for ram save version = 4 Isaku Yamahata
2011-12-29  1:25   ` [Qemu-devel] " Isaku Yamahata
2011-12-29  1:25 ` [PATCH 04/21] arch_init: refactor host_from_stream_offset() Isaku Yamahata
2011-12-29  1:25   ` [Qemu-devel] " Isaku Yamahata
2011-12-29  1:25 ` [PATCH 05/21] arch_init/ram_save_live: factor out RAM_SAVE_FLAG_MEM_SIZE case Isaku Yamahata
2011-12-29  1:25   ` [Qemu-devel] " Isaku Yamahata
2011-12-29  1:25 ` [PATCH 06/21] arch_init: refactor ram_save_block() Isaku Yamahata
2011-12-29  1:25   ` [Qemu-devel] " Isaku Yamahata
2011-12-29  1:25 ` [PATCH 07/21] arch_init/ram_save_live: factor out ram_save_limit Isaku Yamahata
2011-12-29  1:25   ` [Qemu-devel] " Isaku Yamahata
2011-12-29  1:25 ` [PATCH 08/21] arch_init/ram_load: refactor ram_load Isaku Yamahata
2011-12-29  1:25   ` [Qemu-devel] " Isaku Yamahata
2011-12-29  1:25 ` [PATCH 09/21] exec.c: factor out qemu_get_ram_ptr() Isaku Yamahata
2011-12-29  1:25   ` [Qemu-devel] " Isaku Yamahata
2011-12-29  1:25 ` [PATCH 10/21] exec.c: export last_ram_offset() Isaku Yamahata
2011-12-29  1:25   ` [Qemu-devel] " Isaku Yamahata
2011-12-29  1:25 ` [PATCH 11/21] savevm: export qemu_peek_buffer, qemu_peek_byte, qemu_file_skip Isaku Yamahata
2011-12-29  1:25   ` [Qemu-devel] " Isaku Yamahata
2011-12-29  1:25 ` [PATCH 12/21] savevm: qemu_pending_size() to return pending buffered size Isaku Yamahata
2011-12-29  1:25   ` [Qemu-devel] " Isaku Yamahata
2011-12-29  1:25 ` [PATCH 13/21] savevm, buffered_file: introduce method to drain buffer of buffered file Isaku Yamahata
2011-12-29  1:25   ` [Qemu-devel] " Isaku Yamahata
2011-12-29  1:25 ` [PATCH 14/21] migration: export migrate_fd_completed() and migrate_fd_cleanup() Isaku Yamahata
2011-12-29  1:25   ` [Qemu-devel] " Isaku Yamahata
2011-12-29  1:25 ` [PATCH 15/21] migration: factor out parameters into MigrationParams Isaku Yamahata
2011-12-29  1:25   ` [Qemu-devel] " Isaku Yamahata
2011-12-29  1:25 ` Isaku Yamahata [this message]
2011-12-29  1:25   ` [Qemu-devel] [PATCH 16/21] umem.h: import Linux umem.h Isaku Yamahata
2011-12-29  1:25 ` [PATCH 17/21] update-linux-headers.sh: teach umem.h to update-linux-headers.sh Isaku Yamahata
2011-12-29  1:25   ` [Qemu-devel] " Isaku Yamahata
2011-12-29  1:25 ` [PATCH 18/21] configure: add CONFIG_POSTCOPY option Isaku Yamahata
2011-12-29  1:25   ` [Qemu-devel] " Isaku Yamahata
2011-12-29  1:25 ` [PATCH 19/21] postcopy: introduce -postcopy and -postcopy-flags option Isaku Yamahata
2011-12-29  1:25   ` [Qemu-devel] " Isaku Yamahata
2011-12-29  1:25 ` [PATCH 20/21] postcopy outgoing: add -p and -n option to migrate command Isaku Yamahata
2011-12-29  1:25   ` [Qemu-devel] " Isaku Yamahata
2011-12-29  1:26 ` [PATCH 21/21] postcopy: implement postcopy livemigration Isaku Yamahata
2011-12-29  1:26   ` [Qemu-devel] " Isaku Yamahata
2011-12-29 15:51   ` Orit Wasserman
2011-12-29 15:51     ` Orit Wasserman
2012-01-04  3:34     ` Isaku Yamahata
2012-01-04  3:34       ` [Qemu-devel] " Isaku Yamahata
2011-12-29 16:06   ` Avi Kivity
2011-12-29 16:06     ` [Qemu-devel] " Avi Kivity
2012-01-04  3:29     ` Isaku Yamahata
2012-01-04  3:29       ` [Qemu-devel] " Isaku Yamahata
2012-01-12 14:15       ` Avi Kivity
2012-01-12 14:15         ` [Qemu-devel] " Avi Kivity
2011-12-29 22:39 ` [PATCH 00/21][RFC] postcopy live migration Anthony Liguori
2011-12-29 22:39   ` [Qemu-devel] " Anthony Liguori
2012-01-01  9:43   ` Orit Wasserman
2012-01-01  9:43     ` [Qemu-devel] " Orit Wasserman
2012-01-01 16:27     ` Stefan Hajnoczi
2012-01-01 16:27       ` Stefan Hajnoczi
2012-01-02  9:28       ` Dor Laor
2012-01-02  9:28         ` Dor Laor
2012-01-02 17:22         ` Stefan Hajnoczi
2012-01-02 17:22           ` [Qemu-devel] " Stefan Hajnoczi
2012-01-01  9:52   ` Dor Laor
2012-01-01  9:52     ` [Qemu-devel] " Dor Laor
2012-01-04  1:30     ` Takuya Yoshikawa
2012-01-04  1:30       ` [Qemu-devel] " Takuya Yoshikawa
2012-01-04  3:48     ` Michael Roth
2012-01-04  3:48       ` [Qemu-devel] " Michael Roth
2012-01-04  3:51   ` Isaku Yamahata
2012-01-04  3:51     ` Isaku Yamahata
     [not found] ` <BLU0-SMTP161AC380D472854F48E33A5BC9A0@phx.gbl>
2012-01-11  2:45   ` 回??: " Isaku Yamahata
2012-01-11  2:45     ` [Qemu-devel] " Isaku Yamahata
2012-01-12  8:29     ` thfbjyddx
2012-01-12  8:29       ` [Qemu-devel] " thfbjyddx
2012-01-12  8:54       ` 回??: [PATCH 00/21][RFC] postcopy live?migration Isaku Yamahata
2012-01-12  8:54         ` [Qemu-devel] " Isaku Yamahata
2012-01-12 13:26         ` thfbjyddx
2012-01-12 13:26           ` [Qemu-devel] " thfbjyddx
2012-01-16  6:51           ` Isaku Yamahata
2012-01-16  6:51             ` [Qemu-devel] " Isaku Yamahata
2012-01-16 10:17             ` Isaku Yamahata
2012-01-16 10:17               ` [Qemu-devel] " Isaku Yamahata
2012-03-12  8:36               ` thfbjyddx
2012-03-12  8:36                 ` [Qemu-devel] " thfbjyddx
2012-03-13  3:21                 ` Isaku Yamahata
2012-03-13  3:21                   ` [Qemu-devel] " Isaku Yamahata

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=05992d353b971cc9e3f1f2683afd571f46e05b45.1325055140.git.yamahata@valinux.co.jp \
    --to=yamahata@valinux.co.jp \
    --cc=kvm@vger.kernel.org \
    --cc=qemu-devel@nongnu.org \
    --cc=satoshi.itoh@aist.go.jp \
    --cc=t.hirofuchi@aist.go.jp \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.