mirror of
https://gitlab.com/qemu-project/qemu
synced 2024-11-05 20:35:44 +00:00
removed unused code - init timers earlier
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@2011 c046a42c-6fe2-441c-8c8c-71466251a162
This commit is contained in:
parent
6b1575b746
commit
be995c2764
1 changed files with 10 additions and 118 deletions
128
vl.c
128
vl.c
|
@ -92,11 +92,7 @@
|
||||||
//#define DEBUG_UNUSED_IOPORT
|
//#define DEBUG_UNUSED_IOPORT
|
||||||
//#define DEBUG_IOPORT
|
//#define DEBUG_IOPORT
|
||||||
|
|
||||||
#if !defined(CONFIG_SOFTMMU)
|
|
||||||
#define PHYS_RAM_MAX_SIZE (256 * 1024 * 1024)
|
|
||||||
#else
|
|
||||||
#define PHYS_RAM_MAX_SIZE (2047 * 1024 * 1024)
|
#define PHYS_RAM_MAX_SIZE (2047 * 1024 * 1024)
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef TARGET_PPC
|
#ifdef TARGET_PPC
|
||||||
#define DEFAULT_RAM_SIZE 144
|
#define DEFAULT_RAM_SIZE 144
|
||||||
|
@ -3860,20 +3856,6 @@ void dumb_display_init(DisplayState *ds)
|
||||||
ds->dpy_refresh = dumb_refresh;
|
ds->dpy_refresh = dumb_refresh;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if !defined(CONFIG_SOFTMMU)
|
|
||||||
/***********************************************************/
|
|
||||||
/* cpu signal handler */
|
|
||||||
static void host_segv_handler(int host_signum, siginfo_t *info,
|
|
||||||
void *puc)
|
|
||||||
{
|
|
||||||
if (cpu_signal_handler(host_signum, info, puc))
|
|
||||||
return;
|
|
||||||
if (stdio_nb_clients > 0)
|
|
||||||
term_exit();
|
|
||||||
abort();
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/***********************************************************/
|
/***********************************************************/
|
||||||
/* I/O handling */
|
/* I/O handling */
|
||||||
|
|
||||||
|
@ -5133,23 +5115,13 @@ void help(void)
|
||||||
"\n"
|
"\n"
|
||||||
"When using -nographic, press 'ctrl-a h' to get some help.\n"
|
"When using -nographic, press 'ctrl-a h' to get some help.\n"
|
||||||
,
|
,
|
||||||
#ifdef CONFIG_SOFTMMU
|
|
||||||
"qemu",
|
"qemu",
|
||||||
#else
|
|
||||||
"qemu-fast",
|
|
||||||
#endif
|
|
||||||
DEFAULT_RAM_SIZE,
|
DEFAULT_RAM_SIZE,
|
||||||
#ifndef _WIN32
|
#ifndef _WIN32
|
||||||
DEFAULT_NETWORK_SCRIPT,
|
DEFAULT_NETWORK_SCRIPT,
|
||||||
#endif
|
#endif
|
||||||
DEFAULT_GDBSTUB_PORT,
|
DEFAULT_GDBSTUB_PORT,
|
||||||
"/tmp/qemu.log");
|
"/tmp/qemu.log");
|
||||||
#ifndef CONFIG_SOFTMMU
|
|
||||||
printf("\n"
|
|
||||||
"NOTE: this version of QEMU is faster but it needs slightly patched OSes to\n"
|
|
||||||
"work. Please use the 'qemu' executable to have a more accurate (but slower)\n"
|
|
||||||
"PC emulation.\n");
|
|
||||||
#endif
|
|
||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -5512,10 +5484,17 @@ int main(int argc, char **argv)
|
||||||
int usb_devices_index;
|
int usb_devices_index;
|
||||||
|
|
||||||
LIST_INIT (&vm_change_state_head);
|
LIST_INIT (&vm_change_state_head);
|
||||||
#if !defined(CONFIG_SOFTMMU)
|
#ifndef _WIN32
|
||||||
/* we never want that malloc() uses mmap() */
|
{
|
||||||
mallopt(M_MMAP_THRESHOLD, 4096 * 1024);
|
struct sigaction act;
|
||||||
|
sigfillset(&act.sa_mask);
|
||||||
|
act.sa_flags = 0;
|
||||||
|
act.sa_handler = SIG_IGN;
|
||||||
|
sigaction(SIGPIPE, &act, NULL);
|
||||||
|
}
|
||||||
#endif
|
#endif
|
||||||
|
init_timers();
|
||||||
|
|
||||||
register_machines();
|
register_machines();
|
||||||
machine = first_machine;
|
machine = first_machine;
|
||||||
initrd_filename = NULL;
|
initrd_filename = NULL;
|
||||||
|
@ -5922,15 +5901,7 @@ int main(int argc, char **argv)
|
||||||
boot_device = 'd';
|
boot_device = 'd';
|
||||||
}
|
}
|
||||||
|
|
||||||
#if !defined(CONFIG_SOFTMMU)
|
|
||||||
/* must avoid mmap() usage of glibc by setting a buffer "by hand" */
|
|
||||||
{
|
|
||||||
static uint8_t stdout_buf[4096];
|
|
||||||
setvbuf(stdout, stdout_buf, _IOLBF, sizeof(stdout_buf));
|
|
||||||
}
|
|
||||||
#else
|
|
||||||
setvbuf(stdout, NULL, _IOLBF, 0);
|
setvbuf(stdout, NULL, _IOLBF, 0);
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef _WIN32
|
#ifdef _WIN32
|
||||||
socket_init();
|
socket_init();
|
||||||
|
@ -5954,45 +5925,11 @@ int main(int argc, char **argv)
|
||||||
/* init the memory */
|
/* init the memory */
|
||||||
phys_ram_size = ram_size + vga_ram_size + bios_size;
|
phys_ram_size = ram_size + vga_ram_size + bios_size;
|
||||||
|
|
||||||
#ifdef CONFIG_SOFTMMU
|
|
||||||
phys_ram_base = qemu_vmalloc(phys_ram_size);
|
phys_ram_base = qemu_vmalloc(phys_ram_size);
|
||||||
if (!phys_ram_base) {
|
if (!phys_ram_base) {
|
||||||
fprintf(stderr, "Could not allocate physical memory\n");
|
fprintf(stderr, "Could not allocate physical memory\n");
|
||||||
exit(1);
|
exit(1);
|
||||||
}
|
}
|
||||||
#else
|
|
||||||
/* as we must map the same page at several addresses, we must use
|
|
||||||
a fd */
|
|
||||||
{
|
|
||||||
const char *tmpdir;
|
|
||||||
|
|
||||||
tmpdir = getenv("QEMU_TMPDIR");
|
|
||||||
if (!tmpdir)
|
|
||||||
tmpdir = "/tmp";
|
|
||||||
snprintf(phys_ram_file, sizeof(phys_ram_file), "%s/vlXXXXXX", tmpdir);
|
|
||||||
if (mkstemp(phys_ram_file) < 0) {
|
|
||||||
fprintf(stderr, "Could not create temporary memory file '%s'\n",
|
|
||||||
phys_ram_file);
|
|
||||||
exit(1);
|
|
||||||
}
|
|
||||||
phys_ram_fd = open(phys_ram_file, O_CREAT | O_TRUNC | O_RDWR, 0600);
|
|
||||||
if (phys_ram_fd < 0) {
|
|
||||||
fprintf(stderr, "Could not open temporary memory file '%s'\n",
|
|
||||||
phys_ram_file);
|
|
||||||
exit(1);
|
|
||||||
}
|
|
||||||
ftruncate(phys_ram_fd, phys_ram_size);
|
|
||||||
unlink(phys_ram_file);
|
|
||||||
phys_ram_base = mmap(get_mmap_addr(phys_ram_size),
|
|
||||||
phys_ram_size,
|
|
||||||
PROT_WRITE | PROT_READ, MAP_SHARED | MAP_FIXED,
|
|
||||||
phys_ram_fd, 0);
|
|
||||||
if (phys_ram_base == MAP_FAILED) {
|
|
||||||
fprintf(stderr, "Could not map physical memory\n");
|
|
||||||
exit(1);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* we always create the cdrom drive, even if no disk is there */
|
/* we always create the cdrom drive, even if no disk is there */
|
||||||
bdrv_init();
|
bdrv_init();
|
||||||
|
@ -6097,51 +6034,6 @@ int main(int argc, char **argv)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/* setup cpu signal handlers for MMU / self modifying code handling */
|
|
||||||
#if !defined(CONFIG_SOFTMMU)
|
|
||||||
|
|
||||||
#if defined (TARGET_I386) && defined(USE_CODE_COPY)
|
|
||||||
{
|
|
||||||
stack_t stk;
|
|
||||||
signal_stack = memalign(16, SIGNAL_STACK_SIZE);
|
|
||||||
stk.ss_sp = signal_stack;
|
|
||||||
stk.ss_size = SIGNAL_STACK_SIZE;
|
|
||||||
stk.ss_flags = 0;
|
|
||||||
|
|
||||||
if (sigaltstack(&stk, NULL) < 0) {
|
|
||||||
perror("sigaltstack");
|
|
||||||
exit(1);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
{
|
|
||||||
struct sigaction act;
|
|
||||||
|
|
||||||
sigfillset(&act.sa_mask);
|
|
||||||
act.sa_flags = SA_SIGINFO;
|
|
||||||
#if defined (TARGET_I386) && defined(USE_CODE_COPY)
|
|
||||||
act.sa_flags |= SA_ONSTACK;
|
|
||||||
#endif
|
|
||||||
act.sa_sigaction = host_segv_handler;
|
|
||||||
sigaction(SIGSEGV, &act, NULL);
|
|
||||||
sigaction(SIGBUS, &act, NULL);
|
|
||||||
#if defined (TARGET_I386) && defined(USE_CODE_COPY)
|
|
||||||
sigaction(SIGFPE, &act, NULL);
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifndef _WIN32
|
|
||||||
{
|
|
||||||
struct sigaction act;
|
|
||||||
sigfillset(&act.sa_mask);
|
|
||||||
act.sa_flags = 0;
|
|
||||||
act.sa_handler = SIG_IGN;
|
|
||||||
sigaction(SIGPIPE, &act, NULL);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
init_timers();
|
|
||||||
|
|
||||||
machine->init(ram_size, vga_ram_size, boot_device,
|
machine->init(ram_size, vga_ram_size, boot_device,
|
||||||
ds, fd_filename, snapshot,
|
ds, fd_filename, snapshot,
|
||||||
kernel_filename, kernel_cmdline, initrd_filename);
|
kernel_filename, kernel_cmdline, initrd_filename);
|
||||||
|
|
Loading…
Reference in a new issue