file_operations结构体中相关函数的返回值不太理解,想请教一下老师


想问下老师,在用户空间调用 read() 和 write() 函数的返回值是不是等于上图中驱动程序中hello_drv_read() 和 hello_dev_write() 的返回值。

但是从第二张图片来看,为啥驱动程序中 hello_drv_mmap() 函数如果成功执行返回值为 0,但用户空间调用 mmap() 函数返回值就是指针类型?

可不可以总结出驱动程序中 file_operations 结构体中的函数值与用户空间调用的对应函数的返回值没有任何关系的结论呢?那 hello_drv_read() 和 hello_dev_write() 是不是返回任何值都可以呢?因为与用户空间的 write() 和 read() 函数的返回值没有关系。还是说 mmap() 函数比较特殊