Lines Matching refs:ipimap

107 int diMount(struct inode *ipimap)  in diMount()  argument
126 mp = read_metapage(ipimap, in diMount()
127 IMAPBLKNO << JFS_SBI(ipimap->i_sb)->l2nbperpage, in diMount()
170 imap->im_ipimap = ipimap; in diMount()
171 JFS_IP(ipimap)->i_imap = imap; in diMount()
191 int diUnmount(struct inode *ipimap, int mounterror) in diUnmount() argument
193 struct inomap *imap = JFS_IP(ipimap)->i_imap; in diUnmount()
199 if (!(mounterror || isReadOnly(ipimap))) in diUnmount()
200 diSync(ipimap); in diUnmount()
205 truncate_inode_pages(ipimap->i_mapping, 0); in diUnmount()
219 int diSync(struct inode *ipimap) in diSync() argument
222 struct inomap *imp = JFS_IP(ipimap)->i_imap; in diSync()
230 mp = get_metapage(ipimap, in diSync()
231 IMAPBLKNO << JFS_SBI(ipimap->i_sb)->l2nbperpage, in diSync()
263 filemap_write_and_wait(ipimap->i_mapping); in diSync()
265 diWriteSpecial(ipimap, 0); in diSync()
308 struct inode *ipimap; in diRead() local
321 ipimap = sbi->ipimap; in diRead()
322 JFS_IP(ip)->ipimap = ipimap; in diRead()
328 imap = JFS_IP(ipimap)->i_imap; in diRead()
329 IREAD_LOCK(ipimap, RDWRLOCK_IMAP); in diRead()
331 IREAD_UNLOCK(ipimap); in diRead()
378 mp = read_metapage(ipimap, pageno << sbi->l2nbperpage, PSIZE, 1); in diRead()
445 JFS_IP(ip)->ipimap = sbi->ipaimap2; in diReadSpecial()
448 JFS_IP(ip)->ipimap = sbi->ipaimap; in diReadSpecial()
486 if ((inum == FILESYSTEM_I) && (JFS_IP(ip)->ipimap == sbi->ipaimap)) { in diReadSpecial()
606 struct inode *ipimap; in diWrite() local
614 ipimap = jfs_ip->ipimap; in diWrite()
620 JFS_IP(ipimap)->i_imap->im_nbperiext)) { in diWrite()
650 mp = read_metapage(ipimap, pageno << sbi->l2nbperpage, PSIZE, 1); in diWrite()
665 txLock(tid, ipimap, mp, tlckINODE | tlckENTRY)) == NULL) in diWrite()
865 struct inode *ipimap = JFS_SBI(ip->i_sb)->ipimap; in diFree() local
866 struct inomap *imap = JFS_IP(ipimap)->i_imap; in diFree()
905 IREAD_LOCK(ipimap, RDWRLOCK_IMAP); in diFree()
910 IREAD_UNLOCK(ipimap); in diFree()
930 IREAD_UNLOCK(ipimap); in diFree()
942 IREAD_UNLOCK(ipimap); in diFree()
971 IREAD_UNLOCK(ipimap); in diFree()
993 IREAD_UNLOCK(ipimap); in diFree()
1126 IREAD_UNLOCK(ipimap); in diFree()
1242 tid = txBegin(ipimap->i_sb, COMMIT_FORCE); in diFree()
1243 mutex_lock(&JFS_IP(ipimap)->commit_mutex); in diFree()
1252 tlck = txLock(tid, ipimap, mp, tlckINODE | tlckFREE); in diFree()
1260 iplist[0] = ipimap; in diFree()
1276 mutex_unlock(&JFS_IP(ipimap)->commit_mutex); in diFree()
1284 IREAD_UNLOCK(ipimap); in diFree()
1339 struct inode *ipimap; in diAlloc() local
1348 ipimap = JFS_SBI(pip->i_sb)->ipimap; in diAlloc()
1349 imap = JFS_IP(ipimap)->i_imap; in diAlloc()
1350 JFS_IP(ip)->ipimap = ipimap; in diAlloc()
1396 IREAD_LOCK(ipimap, RDWRLOCK_IMAP); in diAlloc()
1401 IREAD_UNLOCK(ipimap); in diAlloc()
1439 IREAD_UNLOCK(ipimap); in diAlloc()
1508 IREAD_UNLOCK(ipimap); in diAlloc()
1522 IREAD_UNLOCK(ipimap); in diAlloc()
1576 IREAD_UNLOCK(ipimap); in diAlloc()
1589 IREAD_UNLOCK(ipimap); in diAlloc()
2168 struct inode *ipimap; in diNewExt() local
2185 ipimap = imap->im_ipimap; in diNewExt()
2186 sbi = JFS_SBI(ipimap->i_sb); in diNewExt()
2266 if ((rc = dbAlloc(ipimap, hint, (s64) imap->im_nbperiext, &blkno))) in diNewExt()
2280 dmp = get_metapage(ipimap, blkno + i, PSIZE, 1); in diNewExt()
2449 struct inode *ipimap; in diNewIAG() local
2460 ipimap = imap->im_ipimap; in diNewIAG()
2461 sb = ipimap->i_sb; in diNewIAG()
2482 IWRITE_LOCK(ipimap, RDWRLOCK_IMAP); in diNewIAG()
2484 if (ipimap->i_size >> L2PSIZE != imap->im_nextiag + 1) { in diNewIAG()
2485 IWRITE_UNLOCK(ipimap); in diNewIAG()
2501 IWRITE_UNLOCK(ipimap); in diNewIAG()
2515 if ((rc = dbAlloc(ipimap, 0, (s64) xlen, &xaddr))) { in diNewIAG()
2517 IWRITE_UNLOCK(ipimap); in diNewIAG()
2527 mutex_lock(&JFS_IP(ipimap)->commit_mutex); in diNewIAG()
2531 xtInsert(tid, ipimap, 0, blkno, xlen, &xaddr, 0))) { in diNewIAG()
2533 mutex_unlock(&JFS_IP(ipimap)->commit_mutex); in diNewIAG()
2537 dbFree(ipimap, xaddr, (s64) xlen); in diNewIAG()
2540 IWRITE_UNLOCK(ipimap); in diNewIAG()
2546 ipimap->i_size += PSIZE; in diNewIAG()
2547 inode_add_bytes(ipimap, PSIZE); in diNewIAG()
2550 mp = get_metapage(ipimap, blkno, PSIZE, 0); in diNewIAG()
2556 xtTruncate(tid, ipimap, ipimap->i_size - PSIZE, in diNewIAG()
2561 mutex_unlock(&JFS_IP(ipimap)->commit_mutex); in diNewIAG()
2564 IWRITE_UNLOCK(ipimap); in diNewIAG()
2596 iplist[0] = ipimap; in diNewIAG()
2600 mutex_unlock(&JFS_IP(ipimap)->commit_mutex); in diNewIAG()
2615 diSync(ipimap); in diNewIAG()
2618 IWRITE_UNLOCK(ipimap); in diNewIAG()
2622 IREAD_LOCK(ipimap, RDWRLOCK_IMAP); in diNewIAG()
2626 IREAD_UNLOCK(ipimap); in diNewIAG()
2670 struct inode *ipimap = imap->im_ipimap; in diIAGRead() local
2674 blkno = IAGTOLBLK(iagno, JFS_SBI(ipimap->i_sb)->l2nbperpage); in diIAGRead()
2677 *mpp = read_metapage(ipimap, blkno, PSIZE, 0); in diIAGRead()
2730 diUpdatePMap(struct inode *ipimap, in diUpdatePMap() argument
2743 imap = JFS_IP(ipimap)->i_imap; in diUpdatePMap()
2748 jfs_error(ipimap->i_sb, "the iag is outside the map\n"); in diUpdatePMap()
2752 IREAD_LOCK(ipimap, RDWRLOCK_IMAP); in diUpdatePMap()
2754 IREAD_UNLOCK(ipimap); in diUpdatePMap()
2776 jfs_error(ipimap->i_sb, in diUpdatePMap()
2781 jfs_error(ipimap->i_sb, in diUpdatePMap()
2797 jfs_error(ipimap->i_sb, in diUpdatePMap()
2803 jfs_error(ipimap->i_sb, in diUpdatePMap()
2852 int diExtendFS(struct inode *ipimap, struct inode *ipbmap) in diExtendFS() argument
2855 struct inomap *imap = JFS_IP(ipimap)->i_imap; in diExtendFS()
2896 jfs_error(ipimap->i_sb, "unexpected value of iagnum\n"); in diExtendFS()
2972 jfs_error(ipimap->i_sb, "numinos or numfree incorrect\n"); in diExtendFS()