parameters: (cls, vnode, loop_vnodes)
docstring: Iterates over the list of vnodes associated with the given one.
          Also traverses the parent chain for the vnode and adds each one.
docstring_summary: Iterates over the list of vnodes associated with the given one.
          Also traverses the parent chain for the vnode and adds each one.
docstring_tokens: Iterates over the list of vnodes associated with the given one . Also traverses the parent chain for the vnode and adds each one .
function: def _walk_vnode(cls, vnode, loop_vnodes):
          """
          Iterates over the list of vnodes associated with the given one.
          Also traverses the parent chain for the vnode and adds each one.
          """
          while vnode:
              if not cls._add_vnode(vnode, loop_vnodes):
                  break
  
              parent = cls._get_parent(vnode)
              while parent:
                  cls._walk_vnode(parent, loop_vnodes)
                  parent = cls._get_parent(parent)
  
              try:
                  vnode = vnode.v_mntvnodes.tqe_next
              except exceptions.InvalidAddressException:
                  break
function_tokens: def _walk_vnode ( cls , vnode , loop_vnodes ) : while vnode : if not cls . _add_vnode ( vnode , loop_vnodes ) : break parent = cls . _get_parent ( vnode ) while parent : cls . _walk_vnode ( parent , loop_vnodes ) parent = cls . _get_parent ( parent ) try : vnode = vnode . v_mntvnodes . tqe_next except exceptions . InvalidAddressException : break