From: Karol Lewandowski Date: Thu, 8 Aug 2019 10:52:02 +0000 (+0200) Subject: kdbus: Adjust for linux v4.14 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=b72e16862b8bdfcd9c70307e98663fc4e3453dfd;p=platform%2Fkernel%2Flinux-exynos.git kdbus: Adjust for linux v4.14 Change-Id: Ib04f90501a01ed820b499c11962a02798bdd8866 --- diff --git a/ipc/kdbus/bus.c b/ipc/kdbus/bus.c index 9d0679eb59f6..e4645bf226e7 100644 --- a/ipc/kdbus/bus.c +++ b/ipc/kdbus/bus.c @@ -12,12 +12,14 @@ * your option) any later version. */ +#include #include #include #include #include #include #include +#include #include #include #include diff --git a/ipc/kdbus/domain.c b/ipc/kdbus/domain.c index ac9f760c150d..e2fdcde550ec 100644 --- a/ipc/kdbus/domain.c +++ b/ipc/kdbus/domain.c @@ -12,6 +12,7 @@ * your option) any later version. */ +#include #include #include #include diff --git a/ipc/kdbus/domain.h b/ipc/kdbus/domain.h index 447a2bd4d972..41dba1f1a05c 100644 --- a/ipc/kdbus/domain.h +++ b/ipc/kdbus/domain.h @@ -18,6 +18,7 @@ #include #include #include +#include #include #include "node.h" diff --git a/ipc/kdbus/endpoint.c b/ipc/kdbus/endpoint.c index 174d274b113e..4efe5213528a 100644 --- a/ipc/kdbus/endpoint.c +++ b/ipc/kdbus/endpoint.c @@ -12,6 +12,7 @@ * your option) any later version. */ +#include #include #include #include diff --git a/ipc/kdbus/fs.c b/ipc/kdbus/fs.c index d01f33baaa0d..90344fae7fea 100644 --- a/ipc/kdbus/fs.c +++ b/ipc/kdbus/fs.c @@ -11,6 +11,7 @@ * your option) any later version. */ +#include #include #include #include @@ -126,9 +127,9 @@ static loff_t fs_dir_fop_llseek(struct file *file, loff_t offset, int whence) loff_t ret; /* protect f_off against fop_iterate */ - mutex_lock(&inode->i_mutex); + inode_lock(inode); ret = generic_file_llseek(file, offset, whence); - mutex_unlock(&inode->i_mutex); + inode_unlock(inode); return ret; } @@ -203,7 +204,7 @@ static struct inode *fs_inode_get(struct super_block *sb, inode->i_private = kdbus_node_ref(node); inode->i_mapping->a_ops = &empty_aops; inode->i_mode = node->mode & S_IALLUGO; - inode->i_atime = inode->i_ctime = inode->i_mtime = CURRENT_TIME; + inode->i_atime = inode->i_ctime = inode->i_mtime = current_time(inode); inode->i_uid = node->uid; inode->i_gid = node->gid; @@ -280,8 +281,8 @@ static int fs_super_fill(struct super_block *sb) struct inode *inode; int ret; - sb->s_blocksize = PAGE_CACHE_SIZE; - sb->s_blocksize_bits = PAGE_CACHE_SHIFT; + sb->s_blocksize = PAGE_SIZE; + sb->s_blocksize_bits = PAGE_SHIFT; sb->s_magic = KDBUS_SUPER_MAGIC; sb->s_maxbytes = MAX_LFS_FILESIZE; sb->s_op = &fs_super_sops; diff --git a/ipc/kdbus/metadata.c b/ipc/kdbus/metadata.c index 3adc6c2c2e76..44f058d723aa 100644 --- a/ipc/kdbus/metadata.c +++ b/ipc/kdbus/metadata.c @@ -22,6 +22,7 @@ #include #include #include +#include #include #include #include @@ -260,7 +261,7 @@ static int kdbus_meta_proc_collect_auxgroups(struct kdbus_meta_proc *mp) } for (i = 0; i < info->ngroups; i++) - mp->auxgrps[i] = GROUP_AT(info, i); + mp->auxgrps[i] = info->gid[i]; } mp->n_auxgrps = info->ngroups; @@ -335,7 +336,7 @@ static int kdbus_meta_proc_collect_cgroup(struct kdbus_meta_proc *mp) void *page; char *s; - page = (void *)__get_free_page(GFP_TEMPORARY); + page = (void *)__get_free_page(GFP_KERNEL); if (!page) return -ENOMEM; @@ -861,7 +862,7 @@ int kdbus_meta_export_prepare(struct kdbus_meta_proc *mp, size += KDBUS_ITEM_SIZE(strlen(mp->pid_comm) + 1); if (mp && (*mask & KDBUS_ATTACH_EXE)) { - exe_page = (void *)__get_free_page(GFP_TEMPORARY); + exe_page = (void *)__get_free_page(GFP_KERNEL); if (!exe_page) { ret = -ENOMEM; goto exit; @@ -1058,7 +1059,7 @@ int kdbus_meta_export(struct kdbus_meta_proc *mp, get_fs_root(current->fs, &p); if (path_equal(&p, &mp->root_path)) { - exe_page = (void *)__get_free_page(GFP_TEMPORARY); + exe_page = (void *)__get_free_page(GFP_KERNEL); if (!exe_page) { path_put(&p); ret = -ENOMEM; diff --git a/ipc/kdbus/names.c b/ipc/kdbus/names.c index df99e4df815b..e6d53531ea34 100644 --- a/ipc/kdbus/names.c +++ b/ipc/kdbus/names.c @@ -13,6 +13,7 @@ */ #include +#include #include #include #include diff --git a/ipc/kdbus/policy.c b/ipc/kdbus/policy.c index dd7fffaafa84..d43149a8dc80 100644 --- a/ipc/kdbus/policy.c +++ b/ipc/kdbus/policy.c @@ -12,6 +12,7 @@ * your option) any later version. */ +#include #include #include #include @@ -83,7 +84,7 @@ static void kdbus_policy_entry_free(struct kdbus_policy_db_entry *e) static unsigned int kdbus_strnhash(const char *str, size_t len) { - unsigned long hash = init_name_hash(); + unsigned long hash = init_name_hash(str); while (len--) hash = partial_name_hash(*str++, hash); @@ -192,7 +193,7 @@ int kdbus_policy_query_unlocked(struct kdbus_policy_db *db, } for (i = 0; i < cred->group_info->ngroups; i++) { - kgid_t gid = GROUP_AT(cred->group_info, i); + kgid_t gid = cred->group_info->gid[i]; if (gid_eq(gid, a->gid)) { highest = a->access; diff --git a/ipc/kdbus/pool.c b/ipc/kdbus/pool.c index 45dcdea505f4..e5713a521da0 100644 --- a/ipc/kdbus/pool.c +++ b/ipc/kdbus/pool.c @@ -587,7 +587,7 @@ kdbus_pool_slice_copy_iovec(const struct kdbus_pool_slice *slice, loff_t off, off += slice->off; iov_iter_init(&iter, WRITE, iov, iov_len, total_len); - len = vfs_iter_write(slice->pool->f, &iter, &off); + len = vfs_iter_write(slice->pool->f, &iter, &off, 0); return (len >= 0 && len != total_len) ? -EFAULT : len; } @@ -620,7 +620,7 @@ ssize_t kdbus_pool_slice_copy_kvec(const struct kdbus_pool_slice *slice, old_fs = get_fs(); set_fs(get_ds()); - len = vfs_iter_write(slice->pool->f, &iter, &off); + len = vfs_iter_write(slice->pool->f, &iter, &off, 0); set_fs(old_fs); return (len >= 0 && len != total_len) ? -EFAULT : len; @@ -651,7 +651,7 @@ int kdbus_pool_slice_copy(const struct kdbus_pool_slice *slice_dst, WARN_ON(slice_src->free || slice_dst->free)) return -EINVAL; - mutex_lock(&i_dst->i_mutex); + inode_lock(i_dst); old_fs = get_fs(); set_fs(get_ds()); while (len > 0) { @@ -663,9 +663,9 @@ int kdbus_pool_slice_copy(const struct kdbus_pool_slice *slice_dst, void *fsdata; long status; - page_off = off_dst & (PAGE_CACHE_SIZE - 1); + page_off = off_dst & (PAGE_SIZE - 1); copy_len = min_t(unsigned long, - PAGE_CACHE_SIZE - page_off, len); + PAGE_SIZE - page_off, len); status = aops->write_begin(f_dst, mapping_dst, off_dst, copy_len, 0, &page, &fsdata); @@ -696,7 +696,7 @@ int kdbus_pool_slice_copy(const struct kdbus_pool_slice *slice_dst, len -= copy_len; } set_fs(old_fs); - mutex_unlock(&i_dst->i_mutex); + inode_unlock(i_dst); return ret; } diff --git a/ipc/kdbus/util.h b/ipc/kdbus/util.h index 740b19880985..345578616acb 100644 --- a/ipc/kdbus/util.h +++ b/ipc/kdbus/util.h @@ -51,7 +51,7 @@ */ static inline unsigned int kdbus_strhash(const char *str) { - unsigned long hash = init_name_hash(); + unsigned long hash = init_name_hash(str); while (*str) hash = partial_name_hash(*str++, hash);