| cache_unlink#(; P_INODE, C_INODE, DENT, ERR, DIRS, FILES, ICACHE, DCACHE, ASYNCED) {if pre-unlink(P_INODE, C_INODE, DENT, DIRS, FILES) then {afs_unlink#(; P_INODE, C_INODE, DENT, ERR, DIRS, FILES; ASYNCED); if ERR = ESUCCESS then let DIRTY = false in {icache_set#(C_INODE, DIRTY; ERR, ICACHE); icache_set#(P_INODE, DIRTY; ERR, ICACHE); dcache_delete#(P_INODE.ino, DENT.name; ERR, DCACHE)}} else abort } |