static void virtio_blk_save_device(VirtIODevice *vdev, QEMUFile *f) { VirtIOBlock *s = VIRTIO_BLK(vdev); VirtIOBlockReq *req = s->rq; while (req) { qemu_put_sbyte(f, 1); qemu_put_buffer(f, (unsigned char *)req->elem, sizeof(VirtQueueElement)); req = req->next; } qemu_put_sbyte(f, 0); }
static void virtio_blk_save(QEMUFile *f, void *opaque) { VirtIOBlock *s = opaque; VirtIOBlockReq *req = s->rq; virtio_save(&s->vdev, f); while (req) { qemu_put_sbyte(f, 1); qemu_put_buffer(f, (unsigned char*)&req->elem, sizeof(req->elem)); req = req->next; } qemu_put_sbyte(f, 0); }
static void slirp_tcp_save(QEMUFile *f, struct tcpcb *tp) { int i; qemu_put_sbe16(f, tp->t_state); for (i = 0; i < TCPT_NTIMERS; i++) qemu_put_sbe16(f, tp->t_timer[i]); qemu_put_sbe16(f, tp->t_rxtshift); qemu_put_sbe16(f, tp->t_rxtcur); qemu_put_sbe16(f, tp->t_dupacks); qemu_put_be16(f, tp->t_maxseg); qemu_put_sbyte(f, tp->t_force); qemu_put_be16(f, tp->t_flags); qemu_put_be32(f, tp->snd_una); qemu_put_be32(f, tp->snd_nxt); qemu_put_be32(f, tp->snd_up); qemu_put_be32(f, tp->snd_wl1); qemu_put_be32(f, tp->snd_wl2); qemu_put_be32(f, tp->iss); qemu_put_be32(f, tp->snd_wnd); qemu_put_be32(f, tp->rcv_wnd); qemu_put_be32(f, tp->rcv_nxt); qemu_put_be32(f, tp->rcv_up); qemu_put_be32(f, tp->irs); qemu_put_be32(f, tp->rcv_adv); qemu_put_be32(f, tp->snd_max); qemu_put_be32(f, tp->snd_cwnd); qemu_put_be32(f, tp->snd_ssthresh); qemu_put_sbe16(f, tp->t_idle); qemu_put_sbe16(f, tp->t_rtt); qemu_put_be32(f, tp->t_rtseq); qemu_put_sbe16(f, tp->t_srtt); qemu_put_sbe16(f, tp->t_rttvar); qemu_put_be16(f, tp->t_rttmin); qemu_put_be32(f, tp->max_sndwnd); qemu_put_byte(f, tp->t_oobflags); qemu_put_byte(f, tp->t_iobc); qemu_put_sbe16(f, tp->t_softerror); qemu_put_byte(f, tp->snd_scale); qemu_put_byte(f, tp->rcv_scale); qemu_put_byte(f, tp->request_r_scale); qemu_put_byte(f, tp->requested_s_scale); qemu_put_be32(f, tp->ts_recent); qemu_put_be32(f, tp->ts_recent_age); qemu_put_be32(f, tp->last_ack_sent); }