summaryrefslogtreecommitdiff
path: root/target/linux/generic/patches-3.18/090-overlayfs-fallback-to-readonly-when-full.patch
diff options
context:
space:
mode:
authorJonas Gorski <jogo@openwrt.org>2015-06-17 09:54:55 +0000
committerJonas Gorski <jogo@openwrt.org>2015-06-17 09:54:55 +0000
commit9a59b350b7587eae4bcf6091b4dc86a4ee92bcf6 (patch)
tree3c4aef6e759fbdd74af7f5e14a495f531dc88515 /target/linux/generic/patches-3.18/090-overlayfs-fallback-to-readonly-when-full.patch
parente952654f0b002e6494cfdb705ee8f0646798dd6c (diff)
downloadmtk-20170518-9a59b350b7587eae4bcf6091b4dc86a4ee92bcf6.zip
mtk-20170518-9a59b350b7587eae4bcf6091b4dc86a4ee92bcf6.tar.gz
mtk-20170518-9a59b350b7587eae4bcf6091b4dc86a4ee92bcf6.tar.bz2
kernel: update 3.18 to 3.18.16
Changelogs: * https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.18.15 * https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.18.16 Signed-off-by: Jonas Gorski <jogo@openwrt.org> SVN-Revision: 46011
Diffstat (limited to 'target/linux/generic/patches-3.18/090-overlayfs-fallback-to-readonly-when-full.patch')
-rw-r--r--target/linux/generic/patches-3.18/090-overlayfs-fallback-to-readonly-when-full.patch60
1 files changed, 30 insertions, 30 deletions
diff --git a/target/linux/generic/patches-3.18/090-overlayfs-fallback-to-readonly-when-full.patch b/target/linux/generic/patches-3.18/090-overlayfs-fallback-to-readonly-when-full.patch
index 53d9e51..340a412 100644
--- a/target/linux/generic/patches-3.18/090-overlayfs-fallback-to-readonly-when-full.patch
+++ b/target/linux/generic/patches-3.18/090-overlayfs-fallback-to-readonly-when-full.patch
@@ -45,53 +45,53 @@ Miklos
--- a/fs/overlayfs/copy_up.c
+++ b/fs/overlayfs/copy_up.c
@@ -300,6 +300,9 @@ int ovl_copy_up_one(struct dentry *paren
- struct cred *override_cred;
- char *link = NULL;
-
+ struct cred *override_cred;
+ char *link = NULL;
+
+ if (WARN_ON(!workdir))
+ return -EROFS;
+
- ovl_path_upper(parent, &parentpath);
- upperdir = parentpath.dentry;
-
+ ovl_path_upper(parent, &parentpath);
+ upperdir = parentpath.dentry;
+
--- a/fs/overlayfs/dir.c
+++ b/fs/overlayfs/dir.c
@@ -222,6 +222,9 @@ static struct dentry *ovl_clear_empty(st
- struct kstat stat;
- int err;
-
+ struct kstat stat;
+ int err;
+
+ if (WARN_ON(!workdir))
+ return ERR_PTR(-EROFS);
+
- err = ovl_lock_rename_workdir(workdir, upperdir);
- if (err)
- goto out;
+ err = ovl_lock_rename_workdir(workdir, upperdir);
+ if (err)
+ goto out;
@@ -322,6 +325,9 @@ static int ovl_create_over_whiteout(stru
- struct dentry *newdentry;
- int err;
-
+ struct dentry *newdentry;
+ int err;
+
+ if (WARN_ON(!workdir))
+ return -EROFS;
+
- err = ovl_lock_rename_workdir(workdir, upperdir);
- if (err)
- goto out;
+ err = ovl_lock_rename_workdir(workdir, upperdir);
+ if (err)
+ goto out;
@@ -506,6 +512,9 @@ static int ovl_remove_and_whiteout(struc
- struct dentry *opaquedir = NULL;
- int err;
-
+ struct dentry *opaquedir = NULL;
+ int err;
+
+ if (WARN_ON(!workdir))
+ return -EROFS;
+
- if (is_dir) {
- opaquedir = ovl_check_empty_and_clear(dentry);
- err = PTR_ERR(opaquedir);
+ if (is_dir) {
+ opaquedir = ovl_check_empty_and_clear(dentry);
+ err = PTR_ERR(opaquedir);
--- a/fs/overlayfs/super.c
+++ b/fs/overlayfs/super.c
@@ -740,9 +740,15 @@ static int ovl_fill_super(struct super_b
- ufs->workdir = ovl_workdir_create(ufs->upper_mnt, workpath.dentry);
- err = PTR_ERR(ufs->workdir);
- if (IS_ERR(ufs->workdir)) {
+ ufs->workdir = ovl_workdir_create(ufs->upper_mnt, workpath.dentry);
+ err = PTR_ERR(ufs->workdir);
+ if (IS_ERR(ufs->workdir)) {
- pr_err("overlayfs: failed to create directory %s/%s\n",
- ufs->config.workdir, OVL_WORKDIR_NAME);
- goto out_put_lower_mnt;
@@ -104,6 +104,6 @@ Miklos
+ ufs->config.workdir, OVL_WORKDIR_NAME);
+ goto out_put_lower_mnt;
+ }
- }
-
- /*
+ }
+
+ /*