Revision 94607e7a

b/nbd.c
583 583
    return 0;
584 584
}
585 585

  
586
int nbd_trip(BlockDriverState *bs, int csock, off_t size, uint64_t dev_offset,
587
             off_t *offset, uint32_t nbdflags, uint8_t *data, int data_size)
586
int nbd_trip(BlockDriverState *bs, int csock, off_t size,
587
             uint64_t dev_offset, uint32_t nbdflags,
588
             uint8_t *data, int data_size)
588 589
{
589 590
    struct nbd_request request;
590 591
    struct nbd_reply reply;
......
635 636
            reply.error = -ret;
636 637
            request.len = 0;
637 638
        }
638
        *offset += request.len;
639 639

  
640 640
        TRACE("Read %u byte(s)", request.len);
641 641

  
......
684 684
                request.len = 0;
685 685
            }
686 686

  
687
            *offset += request.len;
688

  
689 687
            if (request.type & NBD_CMD_FLAG_FUA) {
690 688
                ret = bdrv_flush(bs);
691 689
                if (ret < 0) {
b/nbd.h
72 72
int nbd_send_request(int csock, struct nbd_request *request);
73 73
int nbd_receive_reply(int csock, struct nbd_reply *reply);
74 74
int nbd_trip(BlockDriverState *bs, int csock, off_t size, uint64_t dev_offset,
75
             off_t *offset, uint32_t nbdflags, uint8_t *data, int data_size);
75
             uint32_t nbdflags, uint8_t *data, int data_size);
76 76
int nbd_client(int fd);
77 77
int nbd_disconnect(int fd);
78 78

  
b/qemu-nbd.c
248 248
{
249 249
    BlockDriverState *bs;
250 250
    off_t dev_offset = 0;
251
    off_t offset = 0;
252 251
    uint32_t nbdflags = 0;
253 252
    bool disconnect = false;
254 253
    const char *bindto = "0.0.0.0";
......
542 541
        for (i = 1; i < nb_fds && ret; i++) {
543 542
            if (FD_ISSET(sharing_fds[i], &fds)) {
544 543
                if (nbd_trip(bs, sharing_fds[i], fd_size, dev_offset,
545
                    &offset, nbdflags, data, NBD_BUFFER_SIZE) != 0) {
544
                    nbdflags, data, NBD_BUFFER_SIZE) != 0) {
546 545
                    close(sharing_fds[i]);
547 546
                    nb_fds--;
548 547
                    sharing_fds[i] = sharing_fds[nb_fds];

Also available in: Unified diff