Date: Tue, 24 Feb 2015 15:07:10 +0000 (UTC) From: Nathan Whitehorn <nwhitehorn@FreeBSD.org> To: src-committers@freebsd.org, svn-src-user@freebsd.org Subject: svn commit: r279238 - user/nwhitehorn/ppc64-pmap-rework/pseries Message-ID: <201502241507.t1OF7AwJ059680@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: nwhitehorn Date: Tue Feb 24 15:07:09 2015 New Revision: 279238 URL: https://svnweb.freebsd.org/changeset/base/279238 Log: IFC Modified: user/nwhitehorn/ppc64-pmap-rework/pseries/phyp_vscsi.c Directory Properties: user/nwhitehorn/ppc64-pmap-rework/ (props changed) Modified: user/nwhitehorn/ppc64-pmap-rework/pseries/phyp_vscsi.c ============================================================================== --- user/nwhitehorn/ppc64-pmap-rework/pseries/phyp_vscsi.c Tue Feb 24 13:07:31 2015 (r279237) +++ user/nwhitehorn/ppc64-pmap-rework/pseries/phyp_vscsi.c Tue Feb 24 15:07:09 2015 (r279238) @@ -931,10 +931,11 @@ vscsi_check_response_queue(struct vscsi_ mtx_assert(&sc->io_lock, MA_OWNED); - phyp_hcall(H_VIO_SIGNAL, sc->unit, 0); - bus_dmamap_sync(sc->crq_tag, sc->crq_map, BUS_DMASYNC_POSTREAD); - while (sc->crq_queue[sc->cur_crq].valid != 0) { + /* The hypercalls at both ends of this are not optimal */ + phyp_hcall(H_VIO_SIGNAL, sc->unit, 0); + bus_dmamap_sync(sc->crq_tag, sc->crq_map, BUS_DMASYNC_POSTREAD); + crq = &sc->crq_queue[sc->cur_crq]; switch (crq->valid) { @@ -983,9 +984,9 @@ vscsi_check_response_queue(struct vscsi_ crq->valid = 0; sc->cur_crq = (sc->cur_crq + 1) % sc->n_crqs; - }; - bus_dmamap_sync(sc->crq_tag, sc->crq_map, BUS_DMASYNC_PREWRITE); - phyp_hcall(H_VIO_SIGNAL, sc->unit, 1); + bus_dmamap_sync(sc->crq_tag, sc->crq_map, BUS_DMASYNC_PREWRITE); + phyp_hcall(H_VIO_SIGNAL, sc->unit, 1); + } }
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201502241507.t1OF7AwJ059680>