Merge branch 'linux-linaro-lsk-v4.4-android' of git://git.linaro.org/kernel/linux...
[firefly-linux-kernel-4.4.55.git] / ipc / msgutil.c
index 491e71f2a1b862a72e78a54e7b16e08812a13f3d..ed81aafd239263c7523db5f7ae2983770fea06cb 100644 (file)
@@ -31,7 +31,10 @@ DEFINE_SPINLOCK(mq_lock);
 struct ipc_namespace init_ipc_ns = {
        .count          = ATOMIC_INIT(1),
        .user_ns = &init_user_ns,
-       .proc_inum = PROC_IPC_INIT_INO,
+       .ns.inum = PROC_IPC_INIT_INO,
+#ifdef CONFIG_IPC_NS
+       .ns.ops = &ipcns_operations,
+#endif
 };
 
 atomic_t nr_ipc_ns = ATOMIC_INIT(1);
@@ -41,15 +44,15 @@ struct msg_msgseg {
        /* the next part of the message follows immediately */
 };
 
-#define DATALEN_MSG    (int)(PAGE_SIZE-sizeof(struct msg_msg))
-#define DATALEN_SEG    (int)(PAGE_SIZE-sizeof(struct msg_msgseg))
+#define DATALEN_MSG    ((size_t)PAGE_SIZE-sizeof(struct msg_msg))
+#define DATALEN_SEG    ((size_t)PAGE_SIZE-sizeof(struct msg_msgseg))
 
 
-static struct msg_msg *alloc_msg(int len)
+static struct msg_msg *alloc_msg(size_t len)
 {
        struct msg_msg *msg;
        struct msg_msgseg **pseg;
-       int alen;
+       size_t alen;
 
        alen = min(len, DATALEN_MSG);
        msg = kmalloc(sizeof(*msg) + alen, GFP_KERNEL);
@@ -80,12 +83,12 @@ out_err:
        return NULL;
 }
 
-struct msg_msg *load_msg(const void __user *src, int len)
+struct msg_msg *load_msg(const void __user *src, size_t len)
 {
        struct msg_msg *msg;
        struct msg_msgseg *seg;
        int err = -EFAULT;
-       int alen;
+       size_t alen;
 
        msg = alloc_msg(len);
        if (msg == NULL)
@@ -117,10 +120,9 @@ out_err:
 struct msg_msg *copy_msg(struct msg_msg *src, struct msg_msg *dst)
 {
        struct msg_msgseg *dst_pseg, *src_pseg;
-       int len = src->m_ts;
-       int alen;
+       size_t len = src->m_ts;
+       size_t alen;
 
-       BUG_ON(dst == NULL);
        if (src->m_ts > dst->m_ts)
                return ERR_PTR(-EINVAL);
 
@@ -147,9 +149,9 @@ struct msg_msg *copy_msg(struct msg_msg *src, struct msg_msg *dst)
        return ERR_PTR(-ENOSYS);
 }
 #endif
-int store_msg(void __user *dest, struct msg_msg *msg, int len)
+int store_msg(void __user *dest, struct msg_msg *msg, size_t len)
 {
-       int alen;
+       size_t alen;
        struct msg_msgseg *seg;
 
        alen = min(len, DATALEN_MSG);