[CRIU] Re: [PATCH v3] ipc: rename struct ipc_seg
Pavel Emelyanov
xemul at parallels.com
Mon Feb 13 11:13:21 EST 2012
On 02/13/2012 07:19 PM, Kinsbursky Stanislav wrote:
> v3:
> 1) rename dump_ipc_shm_obj ---> dump_ipc_shm_seg
> 2) rename prepare_ipc_shm_obj ---> prepare_ipc_shm_seg
>
> This name for the structure is obfuscating, because structure will be used
> also for queues and semaphores sets migration.
> This patch renames this structure int ipc_desc_entry. It also renames all
> related functions and prints to reflect structure name change.
>
> Signed-off-by: Stanislav Kinsbursky <skinsbursky at parallels.com>
Ack
> ---
> include/image.h | 4 ++--
> ipc_ns.c | 47 ++++++++++++++++++++++++-----------------------
> 2 files changed, 26 insertions(+), 25 deletions(-)
>
> diff --git a/include/image.h b/include/image.h
> index 01a3b86..ecf3aad 100644
> --- a/include/image.h
> +++ b/include/image.h
> @@ -126,7 +126,7 @@ struct ipc_var_entry {
> u32 mq_msgsize_max;
> } __packed;
>
> -struct ipc_seg {
> +struct ipc_desc_entry {
> u32 key;
> u32 uid;
> u32 gid;
> @@ -138,7 +138,7 @@ struct ipc_seg {
> } __packed;
>
> struct ipc_shm_entry {
> - struct ipc_seg seg;
> + struct ipc_desc_entry desc;
> u64 size;
> } __packed;
>
> diff --git a/ipc_ns.c b/ipc_ns.c
> index e9322d0..f9e19bf 100644
> --- a/ipc_ns.c
> +++ b/ipc_ns.c
> @@ -27,28 +27,29 @@
> #define SHM_SET 15
> #endif
>
> -static void print_ipc_seg(const struct ipc_seg *seg)
> +static void print_ipc_desc_entry(const struct ipc_desc_entry *desc)
> {
> - pr_info("id: %-10d key: 0x%08x ", seg->id, seg->key);
> - pr_info("uid: %-10d gid: %-10d ", seg->uid, seg->gid);
> - pr_info("cuid: %-10d cgid: %-10d ", seg->cuid, seg->cgid);
> - pr_info("mode: %-10o ", seg->mode);
> + pr_info("id: %-10d key: 0x%08x ", desc->id, desc->key);
> + pr_info("uid: %-10d gid: %-10d ", desc->uid, desc->gid);
> + pr_info("cuid: %-10d cgid: %-10d ", desc->cuid, desc->cgid);
> + pr_info("mode: %-10o ", desc->mode);
> }
>
> -static void fill_ipc_seg(int id, struct ipc_seg *seg, const struct ipc_perm *ipcp)
> +static void fill_ipc_desc(int id, struct ipc_desc_entry *desc,
> + const struct ipc_perm *ipcp)
> {
> - seg->id = id;
> - seg->key = ipcp->KEY;
> - seg->uid = ipcp->uid;
> - seg->gid = ipcp->gid;
> - seg->cuid = ipcp->cuid;
> - seg->cgid = ipcp->cgid;
> - seg->mode = ipcp->mode;
> + desc->id = id;
> + desc->key = ipcp->KEY;
> + desc->uid = ipcp->uid;
> + desc->gid = ipcp->gid;
> + desc->cuid = ipcp->cuid;
> + desc->cgid = ipcp->cgid;
> + desc->mode = ipcp->mode;
> }
>
> static void print_ipc_shm(const struct ipc_shm_entry *shm)
> {
> - print_ipc_seg(&shm->seg);
> + print_ipc_desc_entry(&shm->desc);
> pr_info("size: %-10lu\n", shm->size);
> }
>
> @@ -119,7 +120,7 @@ static int dump_ipc_shm_pages(int fd, const struct ipc_shm_entry *shm)
> void *data;
> int ret;
>
> - data = shmat(shm->seg.id, NULL, SHM_RDONLY);
> + data = shmat(shm->desc.id, NULL, SHM_RDONLY);
> if (data == (void *)-1) {
> pr_perror("Failed to attach IPC shared memory");
> return -errno;
> @@ -141,7 +142,7 @@ static int dump_ipc_shm_seg(int fd, int id, const struct shmid_ds *ds)
> struct ipc_shm_entry shm;
> int ret;
>
> - fill_ipc_seg(id, &shm.seg, &ds->shm_perm);
> + fill_ipc_desc(id, &shm.desc, &ds->shm_perm);
> shm.size = ds->shm_segsz;
> print_ipc_shm(&shm);
>
> @@ -303,7 +304,7 @@ static int prepare_ipc_shm_pages(int fd, const struct ipc_shm_entry *shm)
> int ret;
> void *data;
>
> - data = shmat(shm->seg.id, NULL, 0);
> + data = shmat(shm->desc.id, NULL, 0);
> if (data == (void *)-1) {
> pr_perror("Failed to attach IPC shared memory");
> return -errno;
> @@ -325,16 +326,16 @@ static int prepare_ipc_shm_seg(int fd, const struct ipc_shm_entry *shm)
> int ret, id;
> struct shmid_ds ds;
>
> - id = shmget(shm->seg.id, shm->size,
> - shm->seg.mode | IPC_CREAT | IPC_EXCL | IPC_PRESET);
> + id = shmget(shm->desc.id, shm->size,
> + shm->desc.mode | IPC_CREAT | IPC_EXCL | IPC_PRESET);
> if (id == -1) {
> pr_perror("Failed to create shm segment");
> return -errno;
> }
>
> - if (id != shm->seg.id) {
> + if (id != shm->desc.id) {
> pr_err("Failed to preset id (%d instead of %d)\n",
> - id, shm->seg.id);
> + id, shm->desc.id);
> return -EFAULT;
> }
>
> @@ -344,7 +345,7 @@ static int prepare_ipc_shm_seg(int fd, const struct ipc_shm_entry *shm)
> return -errno;
> }
>
> - ds.shm_perm.KEY = shm->seg.key;
> + ds.shm_perm.KEY = shm->desc.key;
> ret = shmctl(id, SHM_SET, &ds);
> if (ret < 0) {
> pr_perror("Failed to update shm key");
> @@ -373,7 +374,7 @@ static int prepare_ipc_shm(int pid)
>
> ret = read_img_eof(fd, &shm);
> if (ret < 0) {
> - pr_err("Failed to read IPC shared memory object\n");
> + pr_err("Failed to read IPC shared memory segment\n");
> return -EIO;
> }
> if (ret == 0)
>
More information about the CRIU
mailing list