search for: target_page_size

Displaying 20 results from an estimated 24 matches for "target_page_size".

2009 Aug 11
0
[PATCH] ioemu: build fix: use TARGET_PAGE_SIZE
Hi! Consistenly use TARGET_PAGE_SIZE in ioemu''s block-vbd.c. Fixes build error on NetBSD. Signed-off-by: Christoph Egger <Christoph.Egger@amd.com> -- ---to satisfy European Law for business letters: Advanced Micro Devices GmbH Karl-Hammerschmidt-Str. 34, 85609 Dornach b. Muenchen Geschaeftsfuehrer: Thomas M. McCoy,...
2012 Jul 23
2
[PATCH V2] qemu-xen-traditionnal, Fix dirty logging during migration.
...;, buffer); return; } + if (xen_logdirty_enable && was_written) { + unsigned long addr = (paddr_index << MCACHE_BUCKET_SHIFT) + + ((unsigned long)buffer) - ((unsigned long)entry->vaddr_base); + if (access_len == 0) + access_len = TARGET_PAGE_SIZE; + xc_hvm_modified_memory(xc_handle, domid, + addr >> TARGET_PAGE_BITS, + ((addr + access_len + TARGET_PAGE_SIZE - 1) >> TARGET_PAGE_BITS) + - (addr >> TARGET_PAGE_BITS)); + } + entry->lock--; if (entry->lock > 0 || pen...
2006 Mar 16
0
[PATCH 3a/3] Add shadow VRAM
..._graphic(VGAState *s printf("w=%d h=%d v=%d line_offset=%d cr[0x09]=0x%02x cr[0x17]=0x%02x linecmp=%d sr[0x01]=0x%02x\n", width, height, v, line_offset, s->cr[9], s->cr[0x17], s->line_compare, s->sr[0x01]); #endif + for (y = 0; y < s->vram_size; y += TARGET_PAGE_SIZE) + if (vram_dirty(s, y, TARGET_PAGE_SIZE)) + cpu_physical_memory_set_dirty(s->vram_offset + y); addr1 = (s->start_addr * 4); bwidth = width * 4; y_start = -1; @@ -1536,8 +1619,17 @@ static void vga_draw_blank(VGAState *s, void vga_update_display(void) { + static int...
2008 Jan 08
1
[PATCH] QEMU KVM balloon support
...t;status = 1; + } + len += sizeof(struct virtio_balloon_hdr); + virtqueue_push(vq, &elem, len); + virtio_notify(vdev, vq); + } +} + +static void virtio_balloon_update_config(VirtIODevice *vdev, uint8_t *config) +{ + struct virtio_balloon_config cfg; + + cfg.target_nrpages = target_ramsize / TARGET_PAGE_SIZE; + + memcpy(config, &cfg, sizeof(cfg)); +} + +void *virtio_balloon_init(PCIBus *bus) +{ + VirtIOBalloon *n; + + /* XXX: pif=0x80? */ + n = (VirtIOBalloon *)virtio_init_pci(bus, "virtio-kvm-balloon", 0x1AF4, + 0x1003, 0, VIRTIO_ID_BALLOON, + 0xff, 0x80, 0x00, 4, +...
2008 Jan 08
1
[PATCH] QEMU KVM balloon support
...t;status = 1; + } + len += sizeof(struct virtio_balloon_hdr); + virtqueue_push(vq, &elem, len); + virtio_notify(vdev, vq); + } +} + +static void virtio_balloon_update_config(VirtIODevice *vdev, uint8_t *config) +{ + struct virtio_balloon_config cfg; + + cfg.target_nrpages = target_ramsize / TARGET_PAGE_SIZE; + + memcpy(config, &cfg, sizeof(cfg)); +} + +void *virtio_balloon_init(PCIBus *bus) +{ + VirtIOBalloon *n; + + /* XXX: pif=0x80? */ + n = (VirtIOBalloon *)virtio_init_pci(bus, "virtio-kvm-balloon", 0x1AF4, + 0x1003, 0, VIRTIO_ID_BALLOON, + 0xff, 0x80, 0x00, 4, +...
2016 Apr 01
0
Ballooning on TPS!=HPS hosts
...han the > target page size. > > static void balloon_page(void *addr, int deflate) > { > #if defined(__linux__) > if (!qemu_balloon_is_inhibited() && (!kvm_enabled() || > kvm_has_sync_mmu())) { > qemu_madvise(addr, TARGET_PAGE_SIZE, > deflate ? QEMU_MADV_WILLNEED : QEMU_MADV_DONTNEED); > } > #endif > } > > The virtio-balloon code only does stuff through ballon_page, > and an madvise DONTNEED should fail if you try and do it on > a size smaller than the host page size. So does ball...
2016 Apr 01
0
Ballooning on TPS!=HPS hosts
...han the > target page size. > > static void balloon_page(void *addr, int deflate) > { > #if defined(__linux__) > if (!qemu_balloon_is_inhibited() && (!kvm_enabled() || > kvm_has_sync_mmu())) { > qemu_madvise(addr, TARGET_PAGE_SIZE, > deflate ? QEMU_MADV_WILLNEED : QEMU_MADV_DONTNEED); > } > #endif > } > > The virtio-balloon code only does stuff through ballon_page, > and an madvise DONTNEED should fail if you try and do it on > a size smaller than the host page size. So does ball...
2008 Jul 08
0
[PATCH] stubdom: Fix modified_memory size calculation
...c Fri Jul 04 19:52:08 2008 +0100 +++ b/tools/ioemu/target-i386-dm/exec-dm.c Tue Jul 08 12:17:23 2008 +0100 @@ -573,8 +573,8 @@ #ifdef CONFIG_STUBDOM if (logdirty_bitmap != NULL) xc_hvm_modified_memory(xc_handle, domid, _addr >> TARGET_PAGE_BITS, - (_addr + _len + TARGET_PAGE_SIZE - 1) >> TARGET_PAGE_BITS - - _addr >> TARGET_PAGE_BITS); + ((_addr + _len + TARGET_PAGE_SIZE - 1) >> TARGET_PAGE_BITS) + - (_addr >> TARGET_PAGE_BITS)); #endif mapcache_unlock(); __________________________________...
2012 Feb 25
9
[xen-unstable bisection] complete test-amd64-i386-rhel6hvm-amd
branch xen-unstable xen branch xen-unstable job test-amd64-i386-rhel6hvm-amd test redhat-install Tree: linux git://git.kernel.org/pub/scm/linux/kernel/git/jeremy/xen.git Tree: qemu git://xenbits.xen.org/staging/qemu-xen-unstable.git Tree: qemuu git://xenbits.xen.org/staging/qemu-upstream-unstable.git Tree: xen http://xenbits.xen.org/staging/xen-unstable.hg *** Found and reproduced problem
2016 Mar 04
2
[Qemu-devel] [RFC qemu 0/4] A PV solution for live migration optimization
...we get a page is balloon_page. > and > > static void balloon_page(void *addr, int deflate) { #if defined(__linux__) > if (!qemu_balloon_is_inhibited() && (!kvm_enabled() || > kvm_has_sync_mmu())) { > qemu_madvise(addr, TARGET_PAGE_SIZE, > deflate ? QEMU_MADV_WILLNEED : QEMU_MADV_DONTNEED); > } > #endif > } > > > Do you see anything that tracks pages to help migration skip the ballooned > memory? I don't. > No. And it's exactly what I mean. The ballooned memory is still pr...
2016 Mar 04
2
[Qemu-devel] [RFC qemu 0/4] A PV solution for live migration optimization
...we get a page is balloon_page. > and > > static void balloon_page(void *addr, int deflate) { #if defined(__linux__) > if (!qemu_balloon_is_inhibited() && (!kvm_enabled() || > kvm_has_sync_mmu())) { > qemu_madvise(addr, TARGET_PAGE_SIZE, > deflate ? QEMU_MADV_WILLNEED : QEMU_MADV_DONTNEED); > } > #endif > } > > > Do you see anything that tracks pages to help migration skip the ballooned > memory? I don't. > No. And it's exactly what I mean. The ballooned memory is still pr...
2009 May 20
0
[PATCHv2-RFC 2/2] qemu-kvm: use common code for assigned msix
...t;= r_dev->msix_table_addr && - real_region->base_addr + real_region->size >= - r_dev->msix_table_addr) { - int offset = r_dev->msix_table_addr - real_region->base_addr; - ret = munmap(region->u.r_virtbase + offset, TARGET_PAGE_SIZE); - if (ret == 0) - DEBUG("munmap done, virt_base 0x%p\n", - region->u.r_virtbase + offset); - else { - fprintf(stderr, "%s: fail munmap msix table!\n", __func__); - exit(1); -...
2009 May 20
0
[PATCHv2-RFC 2/2] qemu-kvm: use common code for assigned msix
...t;= r_dev->msix_table_addr && - real_region->base_addr + real_region->size >= - r_dev->msix_table_addr) { - int offset = r_dev->msix_table_addr - real_region->base_addr; - ret = munmap(region->u.r_virtbase + offset, TARGET_PAGE_SIZE); - if (ret == 0) - DEBUG("munmap done, virt_base 0x%p\n", - region->u.r_virtbase + offset); - else { - fprintf(stderr, "%s: fail munmap msix table!\n", __func__); - exit(1); -...
2009 May 11
0
[PATCH 2/2] qemu-kvm: use common code for assigned msix
...t;= r_dev->msix_table_addr && - real_region->base_addr + real_region->size >= - r_dev->msix_table_addr) { - int offset = r_dev->msix_table_addr - real_region->base_addr; - ret = munmap(region->u.r_virtbase + offset, TARGET_PAGE_SIZE); - if (ret == 0) - DEBUG("munmap done, virt_base 0x%p\n", - region->u.r_virtbase + offset); - else { - fprintf(stderr, "%s: fail munmap msix table!\n", __func__); - exit(1); -...
2009 May 11
0
[PATCH 2/2] qemu-kvm: use common code for assigned msix
...t;= r_dev->msix_table_addr && - real_region->base_addr + real_region->size >= - r_dev->msix_table_addr) { - int offset = r_dev->msix_table_addr - real_region->base_addr; - ret = munmap(region->u.r_virtbase + offset, TARGET_PAGE_SIZE); - if (ret == 0) - DEBUG("munmap done, virt_base 0x%p\n", - region->u.r_virtbase + offset); - else { - fprintf(stderr, "%s: fail munmap msix table!\n", __func__); - exit(1); -...
2016 Mar 04
0
[Qemu-devel] [RFC qemu 0/4] A PV solution for live migration optimization
...} so all that happens when we get a page is balloon_page. and static void balloon_page(void *addr, int deflate) { #if defined(__linux__) if (!qemu_balloon_is_inhibited() && (!kvm_enabled() || kvm_has_sync_mmu())) { qemu_madvise(addr, TARGET_PAGE_SIZE, deflate ? QEMU_MADV_WILLNEED : QEMU_MADV_DONTNEED); } #endif } Do you see anything that tracks pages to help migration skip the ballooned memory? I don't. > > > The only advantage of ' inflating the balloon before live migration' is simple, > > n...
2016 Mar 04
5
[Qemu-devel] [RFC qemu 0/4] A PV solution for live migration optimization
> Subject: Re: [Qemu-devel] [RFC qemu 0/4] A PV solution for live migration > optimization > > On Fri, Mar 04, 2016 at 09:08:44AM +0000, Li, Liang Z wrote: > > > On Fri, Mar 04, 2016 at 01:52:53AM +0000, Li, Liang Z wrote: > > > > > I wonder if it would be possible to avoid the kernel changes > > > > > by parsing /proc/self/pagemap - if that
2016 Mar 04
5
[Qemu-devel] [RFC qemu 0/4] A PV solution for live migration optimization
> Subject: Re: [Qemu-devel] [RFC qemu 0/4] A PV solution for live migration > optimization > > On Fri, Mar 04, 2016 at 09:08:44AM +0000, Li, Liang Z wrote: > > > On Fri, Mar 04, 2016 at 01:52:53AM +0000, Li, Liang Z wrote: > > > > > I wonder if it would be possible to avoid the kernel changes > > > > > by parsing /proc/self/pagemap - if that
2016 Mar 05
0
[Qemu-devel] [RFC qemu 0/4] A PV solution for live migration optimization
.... > > and > > > > static void balloon_page(void *addr, int deflate) { #if defined(__linux__) > > if (!qemu_balloon_is_inhibited() && (!kvm_enabled() || > > kvm_has_sync_mmu())) { > > qemu_madvise(addr, TARGET_PAGE_SIZE, > > deflate ? QEMU_MADV_WILLNEED : QEMU_MADV_DONTNEED); > > } > > #endif > > } > > > > > > Do you see anything that tracks pages to help migration skip the ballooned > > memory? I don't. > > > > No. And it'...
2009 Aug 25
3
Extending virtio_console to support multiple ports
Hello all, Here is a new iteration of the patch series that implements a transport for guest and host communications. The code has been updated to reuse the virtio-console device instead of creating a new virtio-serial device. I've tested for compatibility (old qemu & new kernel, new qemu & old kernel, new qemu & new kernel) and it all works fine. There are a few items on my