Lines Matching refs:eFileLock
23597 unsigned char eFileLock; /* The type of lock held on this fd */ member
24248 static const char *azFileLock(int eFileLock){
24249 switch( eFileLock ){
24670 unsigned char eFileLock; /* One of SHARED_LOCK, RESERVED_LOCK etc. */
24984 if( pFile->pInode->eFileLock>SHARED_LOCK ){
25084 static int unixLock(sqlite3_file *id, int eFileLock){
25131 azFileLock(eFileLock), azFileLock(pFile->eFileLock),
25132 azFileLock(pFile->pInode->eFileLock), pFile->pInode->nShared , getpid()));
25138 if( pFile->eFileLock>=eFileLock ){
25140 azFileLock(eFileLock)));
25149 assert( pFile->eFileLock!=NO_LOCK || eFileLock==SHARED_LOCK );
25150 assert( eFileLock!=PENDING_LOCK );
25151 assert( eFileLock!=RESERVED_LOCK || pFile->eFileLock==SHARED_LOCK );
25161 if( (pFile->eFileLock!=pInode->eFileLock &&
25162 (pInode->eFileLock>=PENDING_LOCK || eFileLock>SHARED_LOCK))
25172 if( eFileLock==SHARED_LOCK &&
25173 (pInode->eFileLock==SHARED_LOCK || pInode->eFileLock==RESERVED_LOCK) ){
25174 assert( eFileLock==SHARED_LOCK );
25175 assert( pFile->eFileLock==0 );
25177 pFile->eFileLock = SHARED_LOCK;
25190 if( eFileLock==SHARED_LOCK
25191 || (eFileLock==EXCLUSIVE_LOCK && pFile->eFileLock<PENDING_LOCK)
25193 lock.l_type = (eFileLock==SHARED_LOCK?F_RDLCK:F_WRLCK);
25209 if( eFileLock==SHARED_LOCK ){
25211 assert( pInode->eFileLock==0 );
25238 pFile->eFileLock = SHARED_LOCK;
25242 }else if( eFileLock==EXCLUSIVE_LOCK && pInode->nShared>1 ){
25251 assert( 0!=pFile->eFileLock );
25254 assert( eFileLock==RESERVED_LOCK || eFileLock==EXCLUSIVE_LOCK );
25255 if( eFileLock==RESERVED_LOCK ){
25280 && pFile->eFileLock<=SHARED_LOCK
25281 && eFileLock==RESERVED_LOCK
25291 pFile->eFileLock = eFileLock;
25292 pInode->eFileLock = eFileLock;
25293 }else if( eFileLock==EXCLUSIVE_LOCK ){
25294 pFile->eFileLock = PENDING_LOCK;
25295 pInode->eFileLock = PENDING_LOCK;
25300 OSTRACE(("LOCK %d %s %s (unix)\n", pFile->h, azFileLock(eFileLock),
25331 static int posixUnlock(sqlite3_file *id, int eFileLock, int handleNFSUnlock){
25338 OSTRACE(("UNLOCK %d %d was %d(%d,%d) pid=%d (unix)\n", pFile->h, eFileLock,
25339 pFile->eFileLock, pFile->pInode->eFileLock, pFile->pInode->nShared,
25342 assert( eFileLock<=SHARED_LOCK );
25343 if( pFile->eFileLock<=eFileLock ){
25349 if( pFile->eFileLock>SHARED_LOCK ){
25350 assert( pInode->eFileLock==pFile->eFileLock );
25373 if( eFileLock==SHARED_LOCK ){
25445 pInode->eFileLock = SHARED_LOCK;
25452 if( eFileLock==NO_LOCK ){
25463 pInode->eFileLock = NO_LOCK;
25467 pInode->eFileLock = NO_LOCK;
25468 pFile->eFileLock = NO_LOCK;
25485 if( rc==SQLITE_OK ) pFile->eFileLock = eFileLock;
25496 static int unixUnlock(sqlite3_file *id, int eFileLock){
25498 assert( eFileLock==SHARED_LOCK || ((unixFile *)id)->nFetchOut==0 );
25500 return posixUnlock(id, eFileLock, 0);
25663 if( pFile->eFileLock>SHARED_LOCK ){
25704 static int dotlockLock(sqlite3_file *id, int eFileLock) {
25713 if( pFile->eFileLock > NO_LOCK ){
25714 pFile->eFileLock = eFileLock;
25741 pFile->eFileLock = eFileLock;
25754 static int dotlockUnlock(sqlite3_file *id, int eFileLock) {
25760 OSTRACE(("UNLOCK %d %d was %d pid=%d (dotlock)\n", pFile->h, eFileLock,
25761 pFile->eFileLock, getpid()));
25762 assert( eFileLock<=SHARED_LOCK );
25765 if( pFile->eFileLock==eFileLock ){
25772 if( eFileLock==SHARED_LOCK ){
25773 pFile->eFileLock = SHARED_LOCK;
25778 assert( eFileLock==NO_LOCK );
25792 pFile->eFileLock = NO_LOCK;
25859 if( pFile->eFileLock>SHARED_LOCK ){
25931 static int flockLock(sqlite3_file *id, int eFileLock) {
25939 if (pFile->eFileLock > NO_LOCK) {
25940 pFile->eFileLock = eFileLock;
25955 pFile->eFileLock = eFileLock;
25957 OSTRACE(("LOCK %d %s %s (flock)\n", pFile->h, azFileLock(eFileLock),
25975 static int flockUnlock(sqlite3_file *id, int eFileLock) {
25979 OSTRACE(("UNLOCK %d %d was %d pid=%d (flock)\n", pFile->h, eFileLock,
25980 pFile->eFileLock, getpid()));
25981 assert( eFileLock<=SHARED_LOCK );
25984 if( pFile->eFileLock==eFileLock ){
25989 if (eFileLock==SHARED_LOCK) {
25990 pFile->eFileLock = eFileLock;
26001 pFile->eFileLock = NO_LOCK;
26051 if( pFile->eFileLock>SHARED_LOCK ){
26067 reserved = (pFile->eFileLock < SHARED_LOCK);
26109 static int semLock(sqlite3_file *id, int eFileLock) {
26117 if (pFile->eFileLock > NO_LOCK) {
26118 pFile->eFileLock = eFileLock;
26130 pFile->eFileLock = eFileLock;
26143 static int semUnlock(sqlite3_file *id, int eFileLock) {
26149 OSTRACE(("UNLOCK %d %d was %d pid=%d (sem)\n", pFile->h, eFileLock,
26150 pFile->eFileLock, getpid()));
26151 assert( eFileLock<=SHARED_LOCK );
26154 if( pFile->eFileLock==eFileLock ){
26159 if (eFileLock==SHARED_LOCK) {
26160 pFile->eFileLock = eFileLock;
26173 pFile->eFileLock = NO_LOCK;
26302 if( pFile->pInode->eFileLock>SHARED_LOCK ){
26355 static int afpLock(sqlite3_file *id, int eFileLock){
26363 azFileLock(eFileLock), azFileLock(pFile->eFileLock),
26364 azFileLock(pInode->eFileLock), pInode->nShared , getpid()));
26370 if( pFile->eFileLock>=eFileLock ){
26372 azFileLock(eFileLock)));
26381 assert( pFile->eFileLock!=NO_LOCK || eFileLock==SHARED_LOCK );
26382 assert( eFileLock!=PENDING_LOCK );
26383 assert( eFileLock!=RESERVED_LOCK || pFile->eFileLock==SHARED_LOCK );
26393 if( (pFile->eFileLock!=pInode->eFileLock &&
26394 (pInode->eFileLock>=PENDING_LOCK || eFileLock>SHARED_LOCK))
26404 if( eFileLock==SHARED_LOCK &&
26405 (pInode->eFileLock==SHARED_LOCK || pInode->eFileLock==RESERVED_LOCK) ){
26406 assert( eFileLock==SHARED_LOCK );
26407 assert( pFile->eFileLock==0 );
26409 pFile->eFileLock = SHARED_LOCK;
26419 if( eFileLock==SHARED_LOCK
26420 || (eFileLock==EXCLUSIVE_LOCK && pFile->eFileLock<PENDING_LOCK)
26433 if( eFileLock==SHARED_LOCK ){
26438 assert( pInode->eFileLock==0 );
26463 pFile->eFileLock = SHARED_LOCK;
26467 }else if( eFileLock==EXCLUSIVE_LOCK && pInode->nShared>1 ){
26477 assert( 0!=pFile->eFileLock );
26478 if (eFileLock >= RESERVED_LOCK && pFile->eFileLock < RESERVED_LOCK) {
26485 if (!failed && eFileLock == EXCLUSIVE_LOCK) {
26516 pFile->eFileLock = eFileLock;
26517 pInode->eFileLock = eFileLock;
26518 }else if( eFileLock==EXCLUSIVE_LOCK ){
26519 pFile->eFileLock = PENDING_LOCK;
26520 pInode->eFileLock = PENDING_LOCK;
26525 OSTRACE(("LOCK %d %s %s (afp)\n", pFile->h, azFileLock(eFileLock),
26537 static int afpUnlock(sqlite3_file *id, int eFileLock) {
26548 OSTRACE(("UNLOCK %d %d was %d(%d,%d) pid=%d (afp)\n", pFile->h, eFileLock,
26549 pFile->eFileLock, pFile->pInode->eFileLock, pFile->pInode->nShared,
26552 assert( eFileLock<=SHARED_LOCK );
26553 if( pFile->eFileLock<=eFileLock ){
26559 if( pFile->eFileLock>SHARED_LOCK ){
26560 assert( pInode->eFileLock==pFile->eFileLock );
26580 if( pFile->eFileLock==EXCLUSIVE_LOCK ){
26582 if( rc==SQLITE_OK && (eFileLock==SHARED_LOCK || pInode->nShared>1) ){
26590 if( rc==SQLITE_OK && pFile->eFileLock>=PENDING_LOCK ){
26593 if( rc==SQLITE_OK && pFile->eFileLock>=RESERVED_LOCK && context->reserved ){
26599 if( rc==SQLITE_OK && (eFileLock==SHARED_LOCK || pInode->nShared>1)){
26600 pInode->eFileLock = SHARED_LOCK;
26603 if( rc==SQLITE_OK && eFileLock==NO_LOCK ){
26619 pInode->eFileLock = NO_LOCK;
26620 pFile->eFileLock = NO_LOCK;
26633 if( rc==SQLITE_OK ) pFile->eFileLock = eFileLock;
26683 static int nfsUnlock(sqlite3_file *id, int eFileLock){
26684 return posixUnlock(id, eFileLock, 1);
27370 *(int*)pArg = pFile->eFileLock;
30607 if( pFile->eFileLock!=NO_LOCK ){
30674 if( pFile->eFileLock!=NO_LOCK ){
30864 static int proxyLock(sqlite3_file *id, int eFileLock) {
30871 rc = proxy->pMethod->xLock((sqlite3_file*)proxy, eFileLock);
30872 pFile->eFileLock = proxy->eFileLock;
30888 static int proxyUnlock(sqlite3_file *id, int eFileLock) {
30895 rc = proxy->pMethod->xUnlock((sqlite3_file*)proxy, eFileLock);
30896 pFile->eFileLock = proxy->eFileLock;