Lines Matching refs:Files
473 static FILESEM Files[FF_FS_LOCK]; /* Open object lock semaphores */ variable
958 if (Files[i].fs) { /* Existing entry */ in chk_share()
959 if (Files[i].fs == dp->obj.fs && /* Check if the object matches with an open object */ in chk_share()
960 Files[i].clu == dp->obj.sclust && in chk_share()
961 Files[i].ofs == dp->dptr) break; in chk_share()
971 return (acc != 0 || Files[i].ctr == 0x100) ? FR_LOCKED : FR_OK; in chk_share()
979 for (i = 0; i < FF_FS_LOCK && Files[i].fs; i++) ; /* Find a free entry */ in enq_share()
993 if (Files[i].fs == dp->obj.fs in inc_share()
994 && Files[i].clu == dp->obj.sclust in inc_share()
995 && Files[i].ofs == dp->dptr) break; in inc_share()
999 for (i = 0; i < FF_FS_LOCK && Files[i].fs; i++) ; /* Find a free entry */ in inc_share()
1001 Files[i].fs = dp->obj.fs; in inc_share()
1002 Files[i].clu = dp->obj.sclust; in inc_share()
1003 Files[i].ofs = dp->dptr; in inc_share()
1004 Files[i].ctr = 0; in inc_share()
1007 if (acc >= 1 && Files[i].ctr) return 0; /* Access violation (int err) */ in inc_share()
1009 Files[i].ctr = acc ? 0x100 : Files[i].ctr + 1; /* Set semaphore value */ in inc_share()
1024 n = Files[i].ctr; in dec_share()
1027 Files[i].ctr = n; in dec_share()
1029 …Files[i].fs = 0; /* Free the entry <<<If this memory write operation is not in atomic, FF_FS_REENT… in dec_share()
1046 if (Files[i].fs == fs) Files[i].fs = 0; in clear_share()