Revision ee912ccf

b/hw/e1000.c
698 698
                                          copy_size);
699 699
            }
700 700
            desc_offset += desc_size;
701
            desc.length = cpu_to_le16(desc_size);
701 702
            if (desc_offset >= total_size) {
702
                desc.length = cpu_to_le16(desc_size);
703 703
                desc.status |= E1000_RXD_STAT_EOP | E1000_RXD_STAT_IXSM;
704 704
            } else {
705
                desc.length = cpu_to_le16(desc_size);
705
                /* Guest zeroing out status is not a hardware requirement.
706
                   Clear EOP in case guest didn't do it. */
707
                desc.status &= ~E1000_RXD_STAT_EOP;
706 708
            }
707 709
        } else { // as per intel docs; skip descriptors with null buf addr
708 710
            DBGOUT(RX, "Null RX descriptor!!\n");

Also available in: Unified diff