device: 0.886 graphic: 0.829 permissions: 0.723 network: 0.720 other: 0.534 debug: 0.512 vnc: 0.511 performance: 0.428 socket: 0.422 files: 0.350 boot: 0.329 semantic: 0.313 PID: 0.302 KVM: 0.059 cputlb: uninitialized local variable in tlb_set_page_with_attrs cause SIGSEGV when a CPU access an unmapped IOMMU page Description of problem: When a TCG cpu accesses an unmapped page within an IOMMU region that causes a translation fault, QEMU SIGSEGVs in `io_readx`. The reason was that in `address_space_translate_for_iotlb`, `xlat` is not set on a permission fault. As a result, `xlat` in `tlb_set_page_with_attr` is uninitialized. This in turn causes various mis-calculation and eventually crashes in `io_readx`.