summaryrefslogtreecommitdiffstats
path: root/sys/vm
diff options
context:
space:
mode:
authormarcel <marcel@FreeBSD.org>2003-08-13 02:49:50 +0000
committermarcel <marcel@FreeBSD.org>2003-08-13 02:49:50 +0000
commitad2c7b64287bffb8f8d3a7ec4cce0294877037d5 (patch)
treeb2e88fb28504c0e0a31a498ee2feaa9b4175903e /sys/vm
parentf9f5048801a81809cdff46eebae48dd527ffeb46 (diff)
downloadFreeBSD-src-ad2c7b64287bffb8f8d3a7ec4cce0294877037d5.zip
FreeBSD-src-ad2c7b64287bffb8f8d3a7ec4cce0294877037d5.tar.gz
Put an instruction group break between the move to ar.rnat and the
move to ar.rsc. The RSE must be in enforced lazy mode when writing to RSE modifyable registers. In this case we restore the RSE NaT collection register ar.rnat. I have seen 2 general exception faults on pluto1 now that indicate that the move to ar.rsc has already happened prior to the move to ar.rnat, meaning that the RSE is not in enforced lazy mode anymore. The ia64 dependency and instruction ordering rules seem to allow having both registers written to in the same instruction group, provided ar.rsc is written to later than ar.rnat (based on the ordering semantics). It appears that we may be pushing our luck. For now, put them in seperate cycles (by means of the instruction group break). If we ever get a general exception fault on the move to ar.rnat again, we have definite proof that something else is fishy.
Diffstat (limited to 'sys/vm')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud