2c2
< * Copyright (c) 2014 ARM Limited
---
> * Copyright (c) 2014-2015 ARM Limited
207c207
< : VirtIO9PBase(params)
---
> : VirtIO9PBase(params), deviceUsed(false)
217c217
< VirtIO9PProxy::VirtIO9PProxy::serialize(CheckpointOut &cp) const
---
> VirtIO9PProxy::serialize(CheckpointOut &cp) const
219c219,226
< fatal("Can't checkpoint a system with a VirtIO 9p proxy!\n");
---
> if (deviceUsed) {
> warn("Serializing VirtIO9Base device after device has been used. It is "
> "likely that state will be lost, and that the device will cease "
> "to work!");
> }
> SERIALIZE_SCALAR(deviceUsed);
>
> VirtIO9PBase::serialize(cp);
225c232,239
< fatal("Can't checkpoint a system with a VirtIO 9p proxy!\n");
---
> UNSERIALIZE_SCALAR(deviceUsed);
>
> if (deviceUsed) {
> warn("Unserializing VirtIO9Base device after device has been used. It is "
> "likely that state has been lost, and that the device will cease "
> "to work!");
> }
> VirtIO9PBase::unserialize(cp);
232a247
> deviceUsed = true;