view src/impl/fs_impl.h @ 332:37a3a8661f8a

tweak...
author anatofuz <anatofuz@cr.ie.u-ryukyu.ac.jp>
date Sun, 09 Feb 2020 19:22:48 +0900
parents e64c8734a802
children 8cdd4088bb1d
line wrap: on
line source

typedef struct fs_impl <Type, Isa> impl fs {
    __code allocinode(Type* fs_impl, uint dev, struct superblock* sb, __code next(...));
    __code allocinode_loop(Type* fs_impl, uint inum, uint dev, short type, struct superblock* sb, struct buf* bp, struct dinode* dip, __code next(...));
    __code allocinode_loopcheck(Type* fs_impl, uint inum, uint dev, struct superblock* sb, struct buf* bp, struct dinode* dip, __code next(...));
    __code allocinode_noloop(Type* fs_impl, uint inum, uint dev, short type, struct superblock* sb, struct buf* bp, struct dinode* dip, __code next(int ret, ...));
    __code lockinode1(Type* fs_impl, struct inode* ip, struct buf* bp, struct dinode* dip, __code next(...));
    __code lockinode2(Type* fs_impl, struct inode* ip, struct buf* bp, struct dinode* dip, __code next(...));
    __code lockinode_sleepcheck(Type* fs_impl, struct inode* ip, __code next(...));
    __code iput_check(Type* fs_impl, struct inode* ip, __code next(...));
    __code iput_inode_nolink(Type* fs_impl, struct inode* ip, __code next(...));
    __code readi_check_diskinode(Type* fs_impl,struct inode* ip, char* dst, uint n, __code next(int ret, ...));
    __code readi_loopcheck(Type* fs_impl, uint tot, uint m, char* dst, uint off, uint n, __code next(...));
    __code readi_loop(Type* fs_impl, struct inode* ip, struct buf* bp, uint tot, uint m, char* dst, uint off, uint n, __code next(...));
    __code readi_noloop(Type* fs_impl, uint n, __code next(int ret, ...));
    __code writei_check_diskinode(Type* fs_impl,struct inode* ip, char* src, uint n, __code next(int ret, ...));
    __code writei_loopcheck(Type* fs_impl, uint tot, uint m, char* src, uint off, uint n, __code next(...));
    __code writei_loop(Type* fs_impl, struct inode* ip, struct buf* bp, uint tot, uint m, char* src, uint off, uint n, __code next(...));
    __code writei_noloop(Type* fs_impl, struct inode* ip, uint n, uint off, __code next(int ret, ...));
    __code dirlookup_loopcheck(Type* fs_impl, struct inode* dp, char* name, uint off, uint* poff, dirent* de, __code next(...));
    __code dirlookup_loop(Type* fs_impl, struct inode* dp, char* name, uint off, uint inum, uint* poff, dirent* de, __code next(int ret, ...));
    __code dirlookup_noloop(Type* fs_impl, __code next(int ret, ...));
    __code dirlink_namecheck(Type* fs_impl, struct inode* ip, __code next(int ret, ...));
    __code dirlink_loopcheck(Type* fs_impl, struct dirent* de, struct inode* dp, uint off, __code next(...));
    __code dirlink_loop(Type* fs_impl, struct dirent* de, struct inode* dp, uint off, uint inum, __code next(...));
    __code dirlink_noloop(Type* fs_impl, struct dirent* de, struct inode* dp, uint off, uint inum, char* name, __code next(int ret, ...));

    __code next(...);
    __code next2(...);
} fs_impl;