> On 16 Jan 2018, at 8:28, Jason Wang <jasow...@redhat.com> wrote: > > > > On 2018年01月16日 10:48, Michael S. Tsirkin wrote: >> On Tue, Jan 09, 2018 at 12:10:10PM +1100, David Gibson wrote: >>> On Mon, Jan 08, 2018 at 08:10:23PM +0200, Michael S. Tsirkin wrote: >>>> On Mon, Jan 08, 2018 at 09:14:41AM +0000, Peter Maydell wrote: >>>>> On 21 December 2017 at 23:43, Michael S. Tsirkin <m...@redhat.com> wrote: >>>>>>> you also need to drop "hw/pci: remove obsolete PCIDevice->init()" >>>>>>> (applied in your tree as 18951fce55d5aa58cd1629b4cb704ee51bab4420) >>>>>>> else the not-yet-QOM'ified NVME won't work anymore. >>>>>> Done that too, thanks a lot >>>>> Hi. I'm afraid this pullreq (merge of 880b1ff) has new runtime >>>>> errors from the clang sanitizer: >>>>> >>>>> /home/petmay01/linaro/qemu-for-merges/hw/net/net_tx_pkt.c:201:27: >>>>> runtime error: member access within misaligned address 0x55b4ffee8246 >>>>> for type 'struct ip_header', which requires 4 byte alignment >>>>> 0x55b4ffee8246: note: pointer points here >>>>> 01 00 00 00 45 00 01 a9 01 00 00 00 40 11 78 45 00 00 00 00 ff ff >>>>> ff ff 00 00 00 00 00 00 00 00 >>>>> ^ >>>>> /home/petmay01/linaro/qemu-for-merges/hw/net/net_tx_pkt.c:201:27: >>>>> runtime error: load of misaligned address 0x55b4ffee8246 for type >>>>> 'uint8_t' (aka 'unsigned char'), which requires 4 byte alignment >>>>> 0x55b4ffee8246: note: pointer points here >>>>> 01 00 00 00 45 00 01 a9 01 00 00 00 40 11 78 45 00 00 00 00 ff ff >>>>> ff ff 00 00 00 00 00 00 00 00 >>>>> ^ >>>>> /home/petmay01/linaro/qemu-for-merges/hw/net/net_tx_pkt.c:208:65: >>>>> runtime error: member access within misaligned address 0x55b4ffee8246 >>>>> for type 'struct ip_header', which requires 4 byte alignment >>>>> 0x55b4ffee8246: note: pointer points here >>>>> 01 00 00 00 45 00 01 a9 01 00 00 00 40 11 78 45 00 00 00 00 ff ff >>>>> ff ff 00 00 00 00 00 00 00 00 >>>>> ^ >>>>> /home/petmay01/linaro/qemu-for-merges/hw/net/net_tx_pkt.c:210:13: >>>>> runtime error: member access within misaligned address 0x55b4ffee8246 >>>>> for type 'struct ip_header', which requires 4 byte alignment >>>>> 0x55b4ffee8246: note: pointer points here >>>>> 01 00 00 00 45 00 01 a9 01 00 00 00 40 11 78 45 00 00 00 00 ff ff >>>>> ff ff 00 00 00 00 00 00 00 00 >>>>> ^ >>>>> /home/petmay01/linaro/qemu-for-merges/hw/net/net_tx_pkt.c:210:13: >>>>> runtime error: load of misaligned address 0x55b4ffee8246 for type >>>>> 'uint8_t' (aka 'unsigned char'), which requires 4 byte alignment >>>>> 0x55b4ffee8246: note: pointer points here >>>>> 01 00 00 00 45 00 01 a9 01 00 00 00 40 11 78 45 00 00 00 00 ff ff >>>>> ff ff 00 00 00 00 00 00 00 00 >>>>> ^ >>>>> >>>>> Sorry for the late report, I didn't quite have time >>>>> to process the pull before Christmas holidays. >>>>> >>>>> thanks >>>>> -- PMM >>>> So I bisected and the reason is this commit: >>>> >>>> commit 18b20bb43a2f37f0c8ae23a3e9b3d9a4a05b6bd4 >>>> Author: David Gibson <da...@gibson.dropbear.id.au> >>>> Date: Tue Dec 19 15:45:22 2017 +1100 >>>> >>>> tests/pxe-test: Add some extra tests >>>> Previously virtio-net was only tested for ppc64 in "slow" mode. >>>> That >>>> doesn't make much sense since virtio-net is used much more often in >>>> practice than the spapr-vlan device which was tested always. So, move >>>> virtio-net to always be tested on ppc64. >>>> We had no tests at all for the q35 machine, which doesn't seem >>>> wise >>>> given its increasing prominence. Add a couple of tests for it, >>>> including testing the newer e1000e adapter. >>>> Signed-off-by: David Gibson <da...@gibson.dropbear.id.au> >>>> Reviewed-by: Thomas Huth <th...@redhat.com> >>>> Reviewed-by: Michael S. Tsirkin <m...@redhat.com> >>>> Signed-off-by: Michael S. Tsirkin <m...@redhat.com> >>>> >>>> :040000 040000 5a982bfea24b9ac3c651b84425a39b3c85f4871e >>>> 771af3fdfb2778c6d6ed6b1098d1e79c181d6fb0 M tests >>>> >>>> Pls either fix or drop e1000e test >>> Feel free to drop this patch for now. I'll debug and repost it when I >>> have a chance. >>> >>> -- >>> David Gibson | I'll have my music baroque, and my >>> code >>> david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ >>> _other_ >>> | _way_ _around_! >>> http://www.ozlabs.org/~dgibson >> BTw, Jason, you might want to take a look. >> I suspect it's a bug somewhere in the e1000e emulation. >> > > Will have a look. > > cc Dmitry for more thoughts.
Not all uint8_t fields in IP header are aligned by 32 bit. Should type of those fields be changed to something that does not require alignment? > > Thanks