/* Read uncompressed id lookup table indexes from disk into memory  */
__le64* squashfs_read_id_index_table(struct super_block *sb, u64 id_table_start, unsigned short no_ids)
/* Read uncompressed id lookup table indexes from disk into memory  */
__le64* squashfs_read_id_index_table(struct super_block *sb, u64 id_table_start, unsigned short no_ids)
{
	unsigned int length = SQUASHFS_ID_BLOCK_BYTES(no_ids);
	__le64 *id_table;
	int err;
	TRACE("In read_id_index_table, length %d\n", length);
	id_table = kmalloc(length, GFP_KERNEL);
	if (id_table == NULL) {
		ERROR("Failed to allocate id index table\n");
		return ERR_PTR(-ENOMEM);
	}
	err = squashfs_read_table(sb, id_table, id_table_start, length);
	if (err < 0) {
		ERROR("unable to read id index table\n");
		kfree(id_table);
		return ERR_PTR(err);
	}
	return id_table;
}