/* Reads a page of a directory's index table. Having metadata mapped into the directory inode's address space presents a multitude of problems. We avoid this by mapping to the absolute address space outside of the *_metapage routines  */
static struct metapage* read_index_page(struct inode *inode, s64 blkno)
/* Reads a page of a directory's index table. Having metadata mapped into the directory inode's address space presents a multitude of problems. We avoid this by mapping to the absolute address space outside of the *_metapage routines  */
static struct metapage* read_index_page(struct inode *inode, s64 blkno)
{
	int rc;
	s64 xaddr;
	int xflag;
	s32 xlen;
	rc = xtLookup(inode, blkno, 1, &xflag, &xaddr, &xlen, 1);
	if (rc || (xaddr == 0))
		return NULL;
	return read_metapage(inode, xaddr, PSIZE, 1);
}