Statistics
| Branch: | Revision:

root @ 3c7b48b7

Name Size
  QMP
  audio
  block
  bsd-user
  darwin-user
  default-configs
  docs
  fpu
  gdb-xml
  hw
  linux-user
  net
  pc-bios
  roms
  slirp
  sysconfigs
  target-alpha
  target-arm
  target-cris
  target-i386
  target-m68k
  target-microblaze
  target-mips
  target-ppc
  target-s390x
  target-sh4
  target-sparc
  tcg
  tests
.gitignore 617 Bytes
.gitmodules 174 Bytes
CODING_STYLE 2.7 kB
COPYING 17.6 kB
COPYING.LIB 25.8 kB
Changelog 22.4 kB
LICENSE 637 Bytes
MAINTAINERS 2.3 kB
Makefile 10.4 kB
Makefile.hw 487 Bytes
Makefile.objs 5.5 kB
Makefile.target 10.9 kB
Makefile.user 426 Bytes
README 59 Bytes
TODO 1.1 kB
VERSION 8 Bytes
a.out.h 13.6 kB
acl.c 4.4 kB
acl.h 2.1 kB
aes.c 59.7 kB
aes.h 717 Bytes
aio.c 5.7 kB
alpha-dis.c 79.8 kB
alpha.ld 3.9 kB
arm-dis.c 156.4 kB
arm-semi.c 14.1 kB
arm.ld 4.6 kB
async.c 5.9 kB
balloon.h 658 Bytes
block-migration.c 16.8 kB
block-migration.h 504 Bytes
block.c 61.6 kB
block.h 8.7 kB
block_int.h 8.6 kB
bswap.h 4.9 kB
bt-host.c 5.4 kB
bt-host.h 123 Bytes
bt-vhci.c 4.5 kB
buffered_file.c 6.1 kB
buffered_file.h 916 Bytes
cache-utils.c 2.1 kB
cache-utils.h 1.1 kB
check-qdict.c 7.9 kB
check-qfloat.c 1.6 kB
check-qint.c 2 kB
check-qjson.c 17.5 kB
check-qlist.c 2.8 kB
check-qstring.c 2.7 kB
cmd.c 10.9 kB
cmd.h 2.2 kB
cocoa.m 37.1 kB
config.h 52 Bytes
configure 67.8 kB
console.c 46 kB
console.h 10.3 kB
cpu-all.h 26.4 kB
cpu-common.h 4.4 kB
cpu-defs.h 8.9 kB
cpu-exec.c 42.2 kB
create_config 2.1 kB
cris-dis.c 80.3 kB
curses.c 9.9 kB
curses_keys.h 13.6 kB
cutils.c 5.6 kB
d3des.c 15 kB
d3des.h 1.6 kB
def-helper.h 6.6 kB
device_tree.c 2.6 kB
device_tree.h 942 Bytes
dis-asm.h 18 kB
disas.c 11 kB
disas.h 1.2 kB
dma-helpers.c 4.7 kB
dma.h 1.1 kB
dyngen-exec.h 3.5 kB
elf.h 43 kB
envlist.c 5.3 kB
envlist.h 533 Bytes
exec-all.h 12.3 kB
exec.c 117.2 kB
feature_to_c.sh 2.1 kB
gdbstub.c 68.1 kB
gdbstub.h 1.1 kB
gen-icount.h 1.2 kB
host-utils.c 2.8 kB
host-utils.h 5.4 kB
hpet.h 618 Bytes
hppa-dis.c 100.1 kB
hppa.ld 8 kB
hxtool 720 Bytes
i386-dis.c 158.9 kB
i386.ld 4.7 kB
ia64.ld 8.2 kB
input.c 7.4 kB
ioport-user.c 1.6 kB
ioport.c 6.8 kB
ioport.h 1.8 kB
json-lexer.c 7.4 kB
json-lexer.h 977 Bytes
json-parser.c 12.8 kB
json-parser.h 421 Bytes
json-streamer.c 2.2 kB
json-streamer.h 959 Bytes
keymaps.c 5.7 kB
keymaps.h 2.4 kB
kvm-all.c 29 kB
kvm.h 4.4 kB
libfdt_env.h 1.1 kB
linux-aio.c 6.6 kB
m68k-dis.c 211.6 kB
m68k-semi.c 12.2 kB
m68k.ld 5.9 kB
microblaze-dis.c 61.9 kB
migration-exec.c 3.2 kB
migration-fd.c 3.1 kB
migration-tcp.c 4.9 kB
migration-unix.c 5.1 kB
migration.c 12.1 kB
migration.h 3.4 kB
mips-dis.c 204.7 kB
mips.ld 8.4 kB
module.c 1.3 kB
module.h 1.1 kB
monitor.c 124.9 kB
monitor.h 1.4 kB
nbd.c 13.9 kB
nbd.h 1.8 kB
net-checksum.c 2.2 kB
net.c 36 kB
net.h 5.6 kB
osdep.c 8 kB
osdep.h 2.4 kB
path.c 4.3 kB
pci-ids.txt 883 Bytes
posix-aio-compat.c 15.5 kB
ppc-dis.c 237 kB
ppc.ld 8.5 kB
ppc64.ld 7.8 kB
qbool.c 1.4 kB
qbool.h 535 Bytes
qdict-test-data.txt 88.4 kB
qdict.c 8.8 kB
qdict.h 1.6 kB
qemu-aio.h 2 kB
qemu-barrier.h 152 Bytes
qemu-binfmt-conf.sh 4.2 kB
qemu-char.c 65 kB
qemu-char.h 3.8 kB
qemu-common.h 7.9 kB
qemu-config.c 11.9 kB
qemu-config.h 583 Bytes
qemu-doc.texi 71.6 kB
qemu-img-cmds.hx 1.5 kB
qemu-img.c 37.1 kB
qemu-img.texi 6.4 kB
qemu-io.c 30.6 kB
qemu-lock.h 6 kB
qemu-log.h 2.1 kB
qemu-malloc.c 2.3 kB
qemu-monitor.hx 29.1 kB
qemu-nbd.c 13.1 kB
qemu-nbd.texi 1.5 kB
qemu-objects.h 490 Bytes
qemu-option.c 20.6 kB
qemu-option.h 4.9 kB
qemu-options.hx 71.6 kB
qemu-queue.h 22 kB
qemu-sockets.c 18.5 kB
qemu-tech.texi 22.3 kB
qemu-thread.c 3.3 kB
qemu-thread.h 1.1 kB
qemu-timer.h 2.1 kB
qemu-tool.c 1.7 kB
qemu-x509.h 239 Bytes
qemu.sasl 1.3 kB
qemu_socket.h 1.7 kB
qerror.c 8.6 kB
qerror.h 2.9 kB
qfloat.c 1.5 kB
qfloat.h 562 Bytes
qint.c 1.2 kB
qint.h 279 Bytes
qjson.c 6.1 kB
qjson.h 649 Bytes
qlist.c 3 kB
qlist.h 1.3 kB
qobject.h 2.7 kB
qstring.c 3.1 kB
qstring.h 621 Bytes
readline.c 12.8 kB
readline.h 1.5 kB
rules.mak 1.6 kB
rwhandler.c 2.6 kB
rwhandler.h 969 Bytes
s390-dis.c 90.2 kB
s390.ld 6.9 kB
savevm.c 45.8 kB
sdl.c 27.5 kB
sdl_keysym.h 8.5 kB
sdl_zoom.c 2.8 kB
sdl_zoom.h 578 Bytes
sdl_zoom_template.h 7 kB
sh4-dis.c 82.9 kB
softmmu-semi.h 2 kB
softmmu_defs.h 1.1 kB
softmmu_exec.h 2.7 kB
softmmu_header.h 4.8 kB
softmmu_template.h 11.8 kB
sparc-dis.c 170.9 kB
sparc.ld 4.7 kB
sparc64.ld 4.4 kB
sysemu.h 7.2 kB
targphys.h 720 Bytes
tcg-runtime.c 1.8 kB
texi2pod.pl 11.9 kB
thunk.c 8.2 kB
thunk.h 4.1 kB
translate-all.c 5 kB
uboot_image.h 5.9 kB
usb-bsd.c 17.4 kB
usb-linux.c 42.1 kB
usb-stub.c 1.8 kB
vgafont.h 93.3 kB
vl.c 157 kB
vnc-auth-sasl.c 19.1 kB
vnc-auth-sasl.h 2.3 kB
vnc-auth-vencrypt.c 5.6 kB
vnc-auth-vencrypt.h 1.4 kB
vnc-tls.c 13.9 kB
vnc-tls.h 2.2 kB
vnc.c 78.4 kB
vnc.h 9.7 kB
vnc_keysym.h 11.1 kB
vnchextile.h 4.6 kB
x86_64.ld 6.6 kB
x_keymap.c 5.9 kB
x_keymap.h 1.3 kB

Latest revisions

# Date Author Comment
3c7b48b7 03/12/2010 08:44 pm Paul Brook

Target specific usermode cleanup

Disable various target specific code that is only relevant to system emulation.

Signed-off-by: Paul Brook <>

b3755a91 03/12/2010 08:34 pm Paul Brook

Disable phsyical memory handling in userspace emulation.

Code to handle physical memory access is not meaningful in usrmode emulation,
so disable it.

Signed-off-by: Paul Brook <>

4fcc562b 03/12/2010 08:34 pm Paul Brook

Remove cpu_get_phys_page_debug from userspace emulation

cpu_get_phys_page_debug makes no sense for userspace emulation, so remove it.

Signed-off-by: Paul Brook <>

20cb400d 03/12/2010 08:34 pm Paul Brook

Remove TLB from userspace

Remove TLB from userspace CPU structure.

Signed-off-by: Paul Brook <>

41c1b1c9 03/12/2010 07:23 pm Paul Brook

Add tb_page_addr_t

The page tracking code in exec.c is used by both userspace and system
emulation. Userspace emulation uses it to track virtual pages, and
system emulation to track ram pages. Introduce a new type to hold this
kind of address.

Signed-off-by: Paul Brook <>

376a7909 03/12/2010 06:31 pm Richard Henderson

Fix last page errors in page_check_range and page_set_flags.

The addr < end comparison prevents iterating over the last
page in the guest address space; an iteration based on
length avoids this problem.

At the same time, assert that the given address is in the...

5cd2c5b6 03/12/2010 06:31 pm Richard Henderson

Implement multi-level page tables.

Define L1_MAP_ADDR_SPACE_BITS to be either the virtual address size
(in user mode) or physical address size (in system mode), and use
that to size l1_map. This rewrites page_find_alloc, page_flush_tb,
and walk_memory_regions....

14f24e14 03/12/2010 06:29 pm Richard Henderson

linux-user: Fix mmap_find_vma returning invalid addresses.

Don't return addresses that aren't properly aligned for the guest,
e.g. when the guest has a larger page size than the host. Don't
return addresses that are outside the virtual address space for the...

7bc7b099 03/12/2010 06:29 pm Richard Henderson

linux-user: Use h2g_valid in qemu_vmalloc.

Signed-off-by: Richard Henderson <>

b9f83121 03/12/2010 06:28 pm Richard Henderson

Use TARGET_VIRT_ADDR_SPACE_BITS in h2g_valid.

Previously, only 32-bit guests had a proper check for the
validity of the virtual address. Extend that check to 64-bit
guests with a restricted virtual address space.

Signed-off-by: Richard Henderson <>

View all revisions | View revisions

Also available in: Atom