当前位置: 首页 > news >正文

【linux内核】super_lock

 

struct super_block {struct list_head	s_list;		/* Keep this first */dev_t			s_dev;		/* search index; _not_ kdev_t */unsigned char		s_blocksize_bits;unsigned long		s_blocksize;loff_t			s_maxbytes;	/* Max file size */struct file_system_type	*s_type;const struct super_operations	*s_op;const struct dquot_operations	*dq_op;const struct quotactl_ops	*s_qcop;const struct export_operations *s_export_op;unsigned long		s_flags;unsigned long		s_iflags;	/* internal SB_I_* flags */unsigned long		s_magic;struct dentry		*s_root;struct rw_semaphore	s_umount;int			s_count;atomic_t		s_active;
#ifdef CONFIG_SECURITYvoid                    *s_security;
#endifconst struct xattr_handler **s_xattr;
#ifdef CONFIG_FS_ENCRYPTIONconst struct fscrypt_operations	*s_cop;struct fscrypt_keyring	*s_master_keys; /* master crypto keys in use */
#endif
#ifdef CONFIG_FS_VERITYconst struct fsverity_operations *s_vop;
#endif
#ifdef CONFIG_UNICODEstruct unicode_map *s_encoding;__u16 s_encoding_flags;
#endifstruct hlist_bl_head	s_roots;	/* alternate root dentries for NFS */struct list_head	s_mounts;	/* list of mounts; _not_ for fs use */struct block_device	*s_bdev;struct backing_dev_info *s_bdi;struct mtd_info		*s_mtd;struct hlist_node	s_instances;unsigned int		s_quota_types;	/* Bitmask of supported quota types */struct quota_info	s_dquot;	/* Diskquota specific options */struct sb_writers	s_writers;/** Keep s_fs_info, s_time_gran, s_fsnotify_mask, and* s_fsnotify_marks together for cache efficiency. They are frequently* accessed and rarely modified.*/void			*s_fs_info;	/* Filesystem private info *//* Granularity of c/m/atime in ns (cannot be worse than a second) */u32			s_time_gran;/* Time limits for c/m/atime in seconds */time64_t		   s_time_min;time64_t		   s_time_max;
#ifdef CONFIG_FSNOTIFY__u32			s_fsnotify_mask;struct fsnotify_mark_connector __rcu	*s_fsnotify_marks;
#endifchar			s_id[32];	/* Informational name */uuid_t			s_uuid;		/* UUID */unsigned int		s_max_links;fmode_t			s_mode;/** The next field is for VFS *only*. No filesystems have any business* even looking at it. You had been warned.*/struct mutex s_vfs_rename_mutex;	/* Kludge *//** Filesystem subtype.  If non-empty the filesystem type field* in /proc/mounts will be "type.subtype"*/const char *s_subtype;const struct dentry_operations *s_d_op; /* default d_op for dentries *//** Saved pool identifier for cleancache (-1 means none)*/int cleancache_poolid;struct shrinker s_shrink;	/* per-sb shrinker handle *//* Number of inodes with nlink == 0 but still referenced */atomic_long_t s_remove_count;/** Number of inode/mount/sb objects that are being watched, note that* inodes objects are currently double-accounted.*/atomic_long_t s_fsnotify_connectors;/* Being remounted read-only */int s_readonly_remount;/* per-sb errseq_t for reporting writeback errors via syncfs */errseq_t s_wb_err;/* AIO completions deferred from interrupt context */struct workqueue_struct *s_dio_done_wq;struct hlist_head s_pins;/** Owning user namespace and default context in which to* interpret filesystem uids, gids, quotas, device nodes,* xattrs and security labels.*/struct user_namespace *s_user_ns;/** The list_lru structure is essentially just a pointer to a table* of per-node lru lists, each of which has its own spinlock.* There is no need to put them into separate cachelines.*/struct list_lru		s_dentry_lru;struct list_lru		s_inode_lru;struct rcu_head		rcu;struct work_struct	destroy_work;struct mutex		s_sync_lock;	/* sync serialisation lock *//** Indicates how deep in a filesystem stack this SB is*/int s_stack_depth;/* s_inode_list_lock protects s_inodes */spinlock_t		s_inode_list_lock ____cacheline_aligned_in_smp;struct list_head	s_inodes;	/* all inodes */spinlock_t		s_inode_wblist_lock;struct list_head	s_inodes_wb;	/* writeback inodes */
} __randomize_layout;

 

http://www.jsqmd.com/news/21012/

相关文章:

  • OPPO手机“绿线”障碍争议,高价等于高端,何以分食iPhone市场?
  • k8s中nginx和headless服务搭配使用引发的小问题
  • 2025 年家用电梯厂家最新推荐榜单:实力厂商安全性能与定制优势深度解析,助别墅 / 自建房用户精准选购适配产品
  • SpringBoot整合SpringDoc
  • GEO靠谱推荐:GEO技术开启精准农业与资源管理新纪元 - 勤懒调和者
  • 下一代 AI Agent 的基石:Real-Time AI 新基建丨Convo AIRTE2025
  • 2025 年水性透水地坪专用漆制造商最新推荐榜:聚焦企业专利技术、品质管控及知名客户合作案例的权威解析
  • 区间摩尔投票 - 教程
  • 一张图讲清楚企业微信的好友和群
  • 中国企业DevOps工具链选型:本土化适配与安全可控成关键考量
  • 技术拐点将至:AI 大模型的挑战突围与产业重构 - 指南
  • 详细介绍:如何将华为手机的照片转移到电脑
  • Executing System Commands in Python - ENGINEER
  • 【读论文】AI笔记(一)9月26日组会前 - 教程
  • 2025中国DevOps平台选型全景洞察:本土化与安全可控成关键考量
  • 增强AI股票预测分析报告 - 2025年10月24日 - 10:18:59
  • 容器主机名解析在香港服务器内部网络的调试方案 - 教程
  • win10开始安装vs2022时闪退问题记录
  • 领取快手的3个月的 KAT-Coder-Pro V1 编程 Tokens 资源包
  • (WebSocket)心理咨询管理系统开发ing......
  • NACOS 2.4.1 数据库表详解
  • 2025 年硅砂模块实力厂家最新推荐排行榜:涵盖新型 / 第三代承插型等多类型产品,多维度解析优质企业优势
  • 1基础的UActorComponent基类实现功能模块化
  • 2025 泳池设备厂家专业解决方案与设备优势,推荐 Firsle 法思乐,全产业链服务解析
  • 2025年10月杭州模拟人开发公司对比榜:服务链路深度拆解
  • 医用制氧机哪家好?2025医用制氧机厂家权威排行榜
  • NativeMessaging通信失败问题
  • 2025年10月自行车品牌评价榜:十款热门车型数据对比
  • 2025年10月深圳酒店推荐榜:四海商圈高性价比住宿对比
  • 2025年10月中国电缆品牌评价榜:十强参数与口碑全解析