| icache[m] = mkientry(true, mkinode(m0, md, false, m2, 0, m3)), files[m0] = mkfile(m1, md0, m2, content), err = ESUCCESS, files0 = (files ⊕ pcache) ⊕ icache, icache-cons(icache, dirs, files), m0 ∈ files, m ∈ icache ⊦ [icache_set_status#(m, false; err, icache)] (files0 = (files[m0, mkfile(m3, md, m2, content)] ⊕ pcache) ⊕ icache) |
asynced ↔ false, files[m0] = mkfile(m1, md0, m2, content), icache[m] = mkientry(true, mkinode(m0, md, false, m2, 0, m3)), err = ESUCCESS, files0 = (files ⊕ pcache) ⊕ icache, ino = m, icache-cons(icache, dirs, files), m ∈ icache, m0 ∈ files ⊦ [if ino ∈ icache then icache[ino].dirty := asynced else err := EFAIL] (files0 = (files[m0, mkfile(m3, md, m2, content)] ⊕ pcache) ⊕ icache)
Used simplifier rules: icache_set_status#(INO, DIRTY; ERR, ICACHE) {if INO ∈ ICACHE then ICACHE[INO].dirty := DIRTY else ERR := EFAIL};