rebuild
This commit is contained in:
33
src/hook/zvfs_hook_seek.h
Normal file
33
src/hook/zvfs_hook_seek.h
Normal file
@@ -0,0 +1,33 @@
|
||||
#ifndef __ZVFS_HOOK_SEEK_H__
|
||||
#define __ZVFS_HOOK_SEEK_H__
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <unistd.h>
|
||||
|
||||
/*
|
||||
* lseek:更新 of->offset(非 O_APPEND fd)。
|
||||
*
|
||||
* truncate / ftruncate:
|
||||
* 更新 inode->logical_size,同步 st_size(ftruncate 到真实 fd),
|
||||
* 若 new_size < old_size,截断对 blob 的写入范围(blob_resize)。
|
||||
*
|
||||
* fallocate / posix_fallocate:
|
||||
* zvfs 无"空洞"概念,blob 按需增长。
|
||||
* 对 zvfs fd,fallocate 只更新 logical_size(预占逻辑空间),
|
||||
* 不调用 blob_resize(避免提前分配 SPDK cluster)。
|
||||
* FALLOC_FL_KEEP_SIZE 模式:不改 logical_size,直接返回 0。
|
||||
* FALLOC_FL_PUNCH_HOLE:暂不支持,返回 ENOTSUP。
|
||||
*/
|
||||
|
||||
off_t lseek(int fd, off_t offset, int whence);
|
||||
off_t lseek64(int fd, off_t offset, int whence);
|
||||
|
||||
int truncate(const char *path, off_t length);
|
||||
int truncate64(const char *path, off_t length);
|
||||
int ftruncate(int fd, off_t length);
|
||||
int ftruncate64(int fd, off_t length);
|
||||
|
||||
int fallocate(int fd, int mode, off_t offset, off_t len);
|
||||
int posix_fallocate(int fd, off_t offset, off_t len);
|
||||
|
||||
#endif // __ZVFS_HOOK_SEEK_H__
|
||||
Reference in New Issue
Block a user