Linux内核API mnt_want_write

mnt_want_write()函数的功能是判断传入的参数vfsmount结构体是否可写。该函数工作在低等级的将要被写入数据的文件系统上,为其判断是否有可写权限。在写操作结束之后,必须得调用mnt_drop_write()函数,从而获得一个有效的引用计数。

mnt_want_write文件包含

#include <linux/mount.h>

mnt_want_write函数定义

在内核源码中的位置:linux-3.19.3/fs/namespace.c

函数定义格式:

int mnt_want_write(struct vfsmount *mnt)

mnt_want_write输入参数说明

  • mnt:要判断的是否有可写权限的vfsmount结构体变量,其定义及详细解释请参考极客笔记函数__mnt_is_readonly()的输入参数说明部分。

mnt_want_write返回参数说明

  • mnt_want_write()函数的返回值是整型变量,可能的取值是0或-EROFS,如果此结构体对应的挂载点是可写的,则返回0;否则,返回错误号-EROFS。其中宏EROFS定义在linux-3.19.3/include/uapi/asm-generic/errno-base.h中,值为30。

mnt_want_write实例解析

本函数实例解析参考极客笔记中的__mnt_is_readonly()函数中的实例解析。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程