'Gets the LUN geometry.'

def get_lun_geometry(self, path):

    geometry = {}
    lun_geo = netapp_api.NaElement('lun-get-geometry')
    lun_geo.add_new_child('path', path)
    try:
        result = self.connection.invoke_successfully(lun_geo, True)
        geometry['size'] = result.get_child_content('size')
        geometry['bytes_per_sector'] = result.get_child_content('bytes-per-sector')
        geometry['sectors_per_track'] = result.get_child_content('sectors-per-track')
        geometry['tracks_per_cylinder'] = result.get_child_content('tracks-per-cylinder')
        geometry['cylinders'] = result.get_child_content('cylinders')
        geometry['max_resize'] = result.get_child_content('max-resize-size')
    except Exception as e:
        LOG.error('LUN    %(path)s    geometry    failed.    Message    -    %(msg)s', {'path': path, 'msg': six.text_type(e)})
    return geometry
