super.c (d9544c1b0d9e14a66936814dcc8a85861ea1b99f) super.c (f01d08899fd7fa808ff9b8d33ca4882ab44d42fa)
1// SPDX-License-Identifier: GPL-2.0-only
2/*
3 *
4 * Copyright (C) 2011 Novell Inc.
5 */
6
7#include <uapi/linux/magic.h>
8#include <linux/fs.h>

--- 171 unchanged lines hidden (view full) ---

180 if (S_ISDIR(inode->i_mode))
181 ovl_dir_cache_free(inode);
182 else
183 kfree(oi->lowerdata_redirect);
184}
185
186static void ovl_put_super(struct super_block *sb)
187{
1// SPDX-License-Identifier: GPL-2.0-only
2/*
3 *
4 * Copyright (C) 2011 Novell Inc.
5 */
6
7#include <uapi/linux/magic.h>
8#include <linux/fs.h>

--- 171 unchanged lines hidden (view full) ---

180 if (S_ISDIR(inode->i_mode))
181 ovl_dir_cache_free(inode);
182 else
183 kfree(oi->lowerdata_redirect);
184}
185
186static void ovl_put_super(struct super_block *sb)
187{
188 struct ovl_fs *ofs = sb->s_fs_info;
188 struct ovl_fs *ofs = OVL_FS(sb);
189
190 if (ofs)
191 ovl_free_fs(ofs);
192}
193
194/* Sync real dirty inodes in upper filesystem (if it exists) */
195static int ovl_sync_fs(struct super_block *sb, int wait)
196{
189
190 if (ofs)
191 ovl_free_fs(ofs);
192}
193
194/* Sync real dirty inodes in upper filesystem (if it exists) */
195static int ovl_sync_fs(struct super_block *sb, int wait)
196{
197 struct ovl_fs *ofs = sb->s_fs_info;
197 struct ovl_fs *ofs = OVL_FS(sb);
198 struct super_block *upper_sb;
199 int ret;
200
201 ret = ovl_sync_status(ofs);
202 /*
203 * We have to always set the err, because the return value isn't
204 * checked in syncfs, and instead indirectly return an error via
205 * the sb's writeback errseq, which VFS inspects after this call.

--- 1290 unchanged lines hidden (view full) ---

1496out_free_oe:
1497 ovl_free_entry(oe);
1498out_err:
1499 ovl_free_fs(ofs);
1500 sb->s_fs_info = NULL;
1501 return err;
1502}
1503
198 struct super_block *upper_sb;
199 int ret;
200
201 ret = ovl_sync_status(ofs);
202 /*
203 * We have to always set the err, because the return value isn't
204 * checked in syncfs, and instead indirectly return an error via
205 * the sb's writeback errseq, which VFS inspects after this call.

--- 1290 unchanged lines hidden (view full) ---

1496out_free_oe:
1497 ovl_free_entry(oe);
1498out_err:
1499 ovl_free_fs(ofs);
1500 sb->s_fs_info = NULL;
1501 return err;
1502}
1503
1504static struct file_system_type ovl_fs_type = {
1504struct file_system_type ovl_fs_type = {
1505 .owner = THIS_MODULE,
1506 .name = "overlay",
1507 .init_fs_context = ovl_init_fs_context,
1508 .parameters = ovl_parameter_spec,
1509 .fs_flags = FS_USERNS_MOUNT,
1510 .kill_sb = kill_anon_super,
1511};
1512MODULE_ALIAS_FS("overlay");

--- 48 unchanged lines hidden ---
1505 .owner = THIS_MODULE,
1506 .name = "overlay",
1507 .init_fs_context = ovl_init_fs_context,
1508 .parameters = ovl_parameter_spec,
1509 .fs_flags = FS_USERNS_MOUNT,
1510 .kill_sb = kill_anon_super,
1511};
1512MODULE_ALIAS_FS("overlay");

--- 48 unchanged lines hidden ---