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 --- |