• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /macosx-10.9.5/Heimdal-323.92.1/lib/sqlite/

Lines Matching refs:pInode

24581   unixInodeInfo *pInode;              /* Info about locks on this inode */
25656 unixInodeInfo *pInode = pFile->pInode;
25659 for(p=pInode->pUnused; p; p=pNext){
25664 pInode->pUnused = 0;
25674 unixInodeInfo *pInode = pFile->pInode;
25676 if( ALWAYS(pInode) ){
25677 pInode->nRef--;
25678 if( pInode->nRef==0 ){
25679 assert( pInode->pShmNode==0 );
25681 if( pInode->pPrev ){
25682 assert( pInode->pPrev->pNext==pInode );
25683 pInode->pPrev->pNext = pInode->pNext;
25685 assert( inodeList==pInode );
25686 inodeList = pInode->pNext;
25688 if( pInode->pNext ){
25689 assert( pInode->pNext->pPrev==pInode );
25690 pInode->pNext->pPrev = pInode->pPrev;
25692 sqlite3_free(pInode);
25715 unixInodeInfo *pInode = 0; /* Candidate unixInodeInfo object */
25764 pInode = inodeList;
25765 while( pInode && memcmp(&fileId, &pInode->fileId, sizeof(fileId)) ){
25766 pInode = pInode->pNext;
25768 if( pInode==0 ){
25769 pInode = sqlite3_malloc( sizeof(*pInode) );
25770 if( pInode==0 ){
25773 memset(pInode, 0, sizeof(*pInode));
25774 memcpy(&pInode->fileId, &fileId, sizeof(fileId));
25775 pInode->nRef = 1;
25776 pInode->pNext = inodeList;
25777 pInode->pPrev = 0;
25778 if( inodeList ) inodeList->pPrev = pInode;
25779 inodeList = pInode;
25781 pInode->nRef++;
25783 *ppInode = pInode;
25802 unixEnterMutex(); /* Because pFile->pInode is shared across threads */
25805 if( pFile->pInode->eFileLock>SHARED_LOCK ){
25812 if( !reserved && !pFile->pInode->bProcessLock ){
25855 unixInodeInfo *pInode = pFile->pInode;
25857 assert( pInode!=0 );
25858 if( ((pFile->ctrlFlags & UNIXFILE_EXCL)!=0 || pInode->bProcessLock)
25861 if( pInode->bProcessLock==0 ){
25863 assert( pInode->nLock==0 );
25870 pInode->bProcessLock = 1;
25871 pInode->nLock++;
25946 unixInodeInfo *pInode = pFile->pInode;
25953 azFileLock(pInode->eFileLock), pInode->nShared , getpid()));
25974 /* This mutex is needed because pFile->pInode is shared across threads
25977 pInode = pFile->pInode;
25982 if( (pFile->eFileLock!=pInode->eFileLock &&
25983 (pInode->eFileLock>=PENDING_LOCK || eFileLock>SHARED_LOCK))
25994 (pInode->eFileLock==SHARED_LOCK || pInode->eFileLock==RESERVED_LOCK) ){
25997 assert( pInode->nShared>0 );
25999 pInode->nShared++;
26000 pInode->nLock++;
26031 assert( pInode->nShared==0 );
26032 assert( pInode->eFileLock==0 );
26060 pInode->nLock++;
26061 pInode->nShared = 1;
26063 }else if( eFileLock==EXCLUSIVE_LOCK && pInode->nShared>1 ){
26113 pInode->eFileLock = eFileLock;
26116 pInode->eFileLock = PENDING_LOCK;
26131 unixInodeInfo *pInode = pFile->pInode;
26133 p->pNext = pInode->pUnused;
26134 pInode->pUnused = p;
26154 unixInodeInfo *pInode;
26161 pFile->eFileLock, pFile->pInode->eFileLock, pFile->pInode->nShared,
26170 pInode = pFile->pInode;
26171 assert( pInode->nShared!=0 );
26173 assert( pInode->eFileLock==pFile->eFileLock );
26276 pInode->eFileLock = SHARED_LOCK;
26288 pInode->nShared--;
26289 if( pInode->nShared==0 ){
26297 pInode->eFileLock = NO_LOCK;
26301 pInode->eFileLock = NO_LOCK;
26310 pInode->nLock--;
26311 assert( pInode->nLock>=0 );
26312 if( pInode->nLock==0 ){
26375 /* unixFile.pInode is always valid here. Otherwise, a different close
26378 assert( pFile->pInode->nLock>0 || pFile->pInode->bProcessLock==0 );
26379 if( ALWAYS(pFile->pInode) && pFile->pInode->nLock ){
26382 ** descriptor to pInode->pUnused list. It will be automatically closed
26876 sem_t *pSem = pFile->pInode->pSem;
26931 sem_t *pSem = pFile->pInode->pSem;
26964 sem_t *pSem = pFile->pInode->pSem;
27118 unixEnterMutex(); /* Because pFile->pInode is shared across threads */
27121 if( pFile->pInode->eFileLock>SHARED_LOCK ){
27177 unixInodeInfo *pInode = pFile->pInode;
27183 azFileLock(pInode->eFileLock), pInode->nShared , getpid()));
27204 /* This mutex is needed because pFile->pInode is shared across threads
27207 pInode = pFile->pInode;
27212 if( (pFile->eFileLock!=pInode->eFileLock &&
27213 (pInode->eFileLock>=PENDING_LOCK || eFileLock>SHARED_LOCK))
27224 (pInode->eFileLock==SHARED_LOCK || pInode->eFileLock==RESERVED_LOCK) ){
27227 assert( pInode->nShared>0 );
27229 pInode->nShared++;
27230 pInode->nLock++;
27256 assert( pInode->nShared==0 );
27257 assert( pInode->eFileLock==0 );
27263 pInode->sharedByte = (lk & mask)%(SHARED_SIZE - 1);
27265 SHARED_FIRST+pInode->sharedByte, 1, 1);
27283 pInode->nLock++;
27284 pInode->nShared = 1;
27286 }else if( eFileLock==EXCLUSIVE_LOCK && pInode->nShared>1 ){
27311 pInode->sharedByte, 1, 0)) ){
27317 SHARED_FIRST + pInode->sharedByte, 1, 1)) ){
27336 pInode->eFileLock = eFileLock;
27339 pInode->eFileLock = PENDING_LOCK;
27359 unixInodeInfo *pInode;
27368 pFile->eFileLock, pFile->pInode->eFileLock, pFile->pInode->nShared,
27376 pInode = pFile->pInode;
27377 assert( pInode->nShared!=0 );
27379 assert( pInode->eFileLock==pFile->eFileLock );
27401 if( rc==SQLITE_OK && (eFileLock==SHARED_LOCK || pInode->nShared>1) ){
27403 int sharedLockByte = SHARED_FIRST+pInode->sharedByte;
27418 if( rc==SQLITE_OK && (eFileLock==SHARED_LOCK || pInode->nShared>1)){
27419 pInode->eFileLock = SHARED_LOCK;
27428 unsigned long long sharedLockByte = SHARED_FIRST+pInode->sharedByte;
27429 pInode->nShared--;
27430 if( pInode->nShared==0 ){
27438 pInode->eFileLock = NO_LOCK;
27443 pInode->nLock--;
27444 assert( pInode->nLock>=0 );
27445 if( pInode->nLock==0 ){
27465 if( pFile->pInode && pFile->pInode->nLock ){
27468 ** descriptor to pInode->aPending. It will be automatically closed when
28189 unixInodeInfo *pInode; /* unixInodeInfo that owns this SHM node */
28316 unixShmNode *p = pFd->pInode->pShmNode;
28320 assert( p->pInode==pFd->pInode );
28334 p->pInode->pShmNode = 0;
28378 unixInodeInfo *pInode; /* The inode of fd */
28392 pInode = pDbFd->pInode;
28393 pShmNode = pInode->pShmNode;
28402 if( osFstat(pDbFd->h, &sStat) && pInode->bProcessLock==0 ){
28428 pDbFd->pInode->pShmNode = pShmNode;
28429 pShmNode->pInode = pDbFd->pInode;
28436 if( pInode->bProcessLock==0 ){
28540 assert( pShmNode->pInode==pDbFd->pInode );
28541 assert( pShmNode->h>=0 || pDbFd->pInode->bProcessLock==1 );
28542 assert( pShmNode->h<0 || pDbFd->pInode->bProcessLock==0 );
28642 assert( pShmNode==pDbFd->pInode->pShmNode );
28643 assert( pShmNode->pInode==pDbFd->pInode );
28651 assert( pShmNode->h>=0 || pDbFd->pInode->bProcessLock==1 );
28652 assert( pShmNode->h<0 || pDbFd->pInode->bProcessLock==0 );
28770 assert( pShmNode==pDbFd->pInode->pShmNode );
28771 assert( pShmNode->pInode==pDbFd->pInode );
29114 assert( pNew->pInode==NULL );
29173 rc = findInodeInfo(pNew, &pNew->pInode);
29216 rc = findInodeInfo(pNew, &pNew->pInode);
29249 rc = findInodeInfo(pNew, &pNew->pInode);
29250 if( (rc==SQLITE_OK) && (pNew->pInode->pSem==NULL) ){
29251 char *zSemName = pNew->pInode->aSemName;
29257 pNew->pInode->pSem = sem_open(zSemName, O_CREAT, 0666, 1);
29258 if( pNew->pInode->pSem == SEM_FAILED ){
29260 pNew->pInode->aSemName[0] = '\0';
29401 unixInodeInfo *pInode;
29404 pInode = inodeList;
29405 while( pInode && (pInode->fileId.dev!=sStat.st_dev
29406 || pInode->fileId.ino!=sStat.st_ino) ){
29407 pInode = pInode->pNext;
29409 if( pInode ){
29411 for(pp=&pInode->pUnused; *pp && (*pp)->flags!=flags; pp=&((*pp)->pNext));
30694 if( conchFile->pInode && conchFile->pInode->nShared>1 ){