* with this program; if not, see <http://www.gnu.org/licenses/>.
*/
-#include "qemu-common.h"
+#include "qemu/osdep.h"
+#include "migration/vmstate.h"
#include "qemu/fifo8.h"
void fifo8_create(Fifo8 *fifo, uint32_t capacity)
void fifo8_push(Fifo8 *fifo, uint8_t data)
{
- if (fifo->num == fifo->capacity) {
- abort();
- }
+ assert(fifo->num < fifo->capacity);
fifo->data[(fifo->head + fifo->num) % fifo->capacity] = data;
fifo->num++;
}
{
uint32_t start, avail;
- if (fifo->num + num > fifo->capacity) {
- abort();
- }
+ assert(fifo->num + num <= fifo->capacity);
start = (fifo->head + fifo->num) % fifo->capacity;
{
uint8_t ret;
- if (fifo->num == 0) {
- abort();
- }
+ assert(fifo->num > 0);
ret = fifo->data[fifo->head++];
fifo->head %= fifo->capacity;
fifo->num--;
{
uint8_t *ret;
- if (max == 0 || max > fifo->num) {
- abort();
- }
+ assert(max > 0 && max <= fifo->num);
*num = MIN(fifo->capacity - fifo->head, max);
ret = &fifo->data[fifo->head];
fifo->head += *num;
.version_id = 1,
.minimum_version_id = 1,
.fields = (VMStateField[]) {
- VMSTATE_VBUFFER_UINT32(data, Fifo8, 1, NULL, 0, capacity),
+ VMSTATE_VBUFFER_UINT32(data, Fifo8, 1, NULL, capacity),
VMSTATE_UINT32(head, Fifo8),
VMSTATE_UINT32(num, Fifo8),
VMSTATE_END_OF_LIST()