'Return the total and free capacity of the storage pool.'

def get_pool_info(self):

    result = self.run_raidcom('get', 'dp_pool')
    p_pool_match = self._pattern['p_pool'].search(result[1])
    result = self.run_raidcom('get', 'pool', '-key', 'opt')
    pool_match = self._pattern['pool'].search(result[1])
    if ((not p_pool_match) or (not pool_match)):
        msg = utils.output_log(MSG.POOL_NOT_FOUND, pool=self.storage_info['pool_id'])
        raise exception.VSPError(msg)
    tp_cap = (float(p_pool_match.group('tp_cap')) / units.Ki)
    tl_cap = (float(p_pool_match.group('tl_cap')) / units.Ki)
    vcap = ('infinite' if (pool_match.group('vcap') == _INFINITE) else int(pool_match.group('vcap')))
    if (vcap == 'infinite'):
        return ('unknown', 'unknown')
    else:
        total_gb = int(math.floor((tp_cap * (vcap / 100.0))))
        free_gb = int(math.floor((total_gb - tl_cap)))
        return (total_gb, free_gb)
