qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Qemu-devel] [Bug 1333688] [NEW] vhost-user: VHOST_USER_SET_MEM_TABLE do


From: Damjan Marion
Subject: [Qemu-devel] [Bug 1333688] [NEW] vhost-user: VHOST_USER_SET_MEM_TABLE doesn't contain all regions
Date: Tue, 24 Jun 2014 13:11:39 -0000

Public bug reported:


vhost-user implementation doesn't provide information about all memory regions, 
and in some cases client is not able to map buffer memory as he is missing 
memory region information for specific address.

Same thing is implemented properly for vhost-net. Below gdb outputs are 
showing memory regions information provided to the vhost-net and vhost-user.


==== memory regions information provided to vhost-net  ====

(gdb) p/x hdev->mem->regions[0]
$21 = {
  guest_phys_addr = 0x100000000,
  memory_size = 0xc0000000,
  userspace_addr = 0x2aab6ac00000,
  flags_padding = 0x0
}
(gdb) p/x hdev->mem->regions[1]
$22 = {
  guest_phys_addr = 0xfffc0000,
  memory_size = 0x40000,
  userspace_addr = 0x7ffff4a00000,
  flags_padding = 0x0
}
(gdb) p/x hdev->mem->regions[2]
$23 = {
  guest_phys_addr = 0x0,
  memory_size = 0xa0000,
  userspace_addr = 0x2aaaaac00000,
  flags_padding = 0x0
}
(gdb) p/x hdev->mem->regions[3]
$24 = {
  guest_phys_addr = 0xc0000,
  memory_size = 0xbff40000,
  userspace_addr = 0x2aaaaacc0000,
  flags_padding = 0x0
}
(gdb)


==== memory regions information provided to vhost-user  ====

(gdb) p/x msg.memory.nregions
$28 = 0x1
(gdb) p/x msg.memory.regions[0]
$29 = {
  guest_phys_addr = 0x0,
  memory_size = 0x180000000,
  userspace_addr = 0x2aaaaac00000
}
(gdb)

** Affects: qemu
     Importance: Undecided
         Status: New

-- 
You received this bug notification because you are a member of qemu-
devel-ml, which is subscribed to QEMU.
https://bugs.launchpad.net/bugs/1333688

Title:
  vhost-user: VHOST_USER_SET_MEM_TABLE doesn't contain all regions

Status in QEMU:
  New

Bug description:

  vhost-user implementation doesn't provide information about all memory 
regions, 
  and in some cases client is not able to map buffer memory as he is missing 
  memory region information for specific address.

  Same thing is implemented properly for vhost-net. Below gdb outputs are 
  showing memory regions information provided to the vhost-net and vhost-user.


  ==== memory regions information provided to vhost-net  ====

  (gdb) p/x hdev->mem->regions[0]
  $21 = {
    guest_phys_addr = 0x100000000,
    memory_size = 0xc0000000,
    userspace_addr = 0x2aab6ac00000,
    flags_padding = 0x0
  }
  (gdb) p/x hdev->mem->regions[1]
  $22 = {
    guest_phys_addr = 0xfffc0000,
    memory_size = 0x40000,
    userspace_addr = 0x7ffff4a00000,
    flags_padding = 0x0
  }
  (gdb) p/x hdev->mem->regions[2]
  $23 = {
    guest_phys_addr = 0x0,
    memory_size = 0xa0000,
    userspace_addr = 0x2aaaaac00000,
    flags_padding = 0x0
  }
  (gdb) p/x hdev->mem->regions[3]
  $24 = {
    guest_phys_addr = 0xc0000,
    memory_size = 0xbff40000,
    userspace_addr = 0x2aaaaacc0000,
    flags_padding = 0x0
  }
  (gdb)

  
  ==== memory regions information provided to vhost-user  ====

  (gdb) p/x msg.memory.nregions
  $28 = 0x1
  (gdb) p/x msg.memory.regions[0]
  $29 = {
    guest_phys_addr = 0x0,
    memory_size = 0x180000000,
    userspace_addr = 0x2aaaaac00000
  }
  (gdb)

To manage notifications about this bug go to:
https://bugs.launchpad.net/qemu/+bug/1333688/+subscriptions



reply via email to

[Prev in Thread] Current Thread [Next in Thread]