Fix segfault in sinic

dev/sinic.cc:
    check that there is a fault before testing the fault type

--HG--
extra : convert_revision : 0cc95ba660655766b779e77d912dbc685cd476a8
This commit is contained in:
Nathan Binkert
2006-04-25 10:20:37 -04:00
parent 6f590b4ddc
commit b505af87d1

View File

@@ -363,7 +363,7 @@ Device::read(MemReqPtr &req, uint8_t *data)
assert(config.command & PCI_CMD_MSE);
Fault fault = readBar(req, data);
if (fault->isMachineCheckFault()) {
if (fault && fault->isMachineCheckFault()) {
panic("address does not map to a BAR pa=%#x va=%#x size=%d",
req->paddr, req->vaddr, req->size);
@@ -459,7 +459,7 @@ Device::write(MemReqPtr &req, const uint8_t *data)
assert(config.command & PCI_CMD_MSE);
Fault fault = writeBar(req, data);
if (fault->isMachineCheckFault()) {
if (fault && fault->isMachineCheckFault()) {
panic("address does not map to a BAR pa=%#x va=%#x size=%d",
req->paddr, req->vaddr, req->size);