Revert "Convert atexit users to exit_notifier"

This reverts commit d7234f4d7e373a708e1df9ab565a71b71b189025.

Conflicts:

	hw/xen_machine_pv.c

This should have never been committed.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
diff --git a/curses.c b/curses.c
index 44ab1a5..b78c468 100644
--- a/curses.c
+++ b/curses.c
@@ -333,7 +333,6 @@
 void curses_display_init(DisplayState *ds, int full_screen)
 {
     DisplayChangeListener *dcl;
-    static Notifier notifier = { .notify = curses_atexit };
 #ifndef _WIN32
     if (!isatty(1)) {
         fprintf(stderr, "We need a terminal output\n");
@@ -343,7 +342,7 @@
 
     curses_setup();
     curses_keyboard_setup();
-    exit_notifier_add(&notifier);
+    atexit(curses_atexit);
 
 #ifndef _WIN32
 #if defined(SIGWINCH) && defined(KEY_RESIZE)
diff --git a/hw/xen_backend.h b/hw/xen_backend.h
index 991a7b7..f07f7d4 100644
--- a/hw/xen_backend.h
+++ b/hw/xen_backend.h
@@ -97,7 +97,7 @@
 void xen_init_display(int domid);
 
 /* configuration (aka xenbus setup) */
-void xen_config_cleanup(Notifier *notifier);
+void xen_config_cleanup(void);
 int xen_config_dev_blk(DriveInfo *disk);
 int xen_config_dev_nic(NICInfo *nic);
 int xen_config_dev_vfb(int vdev, const char *type);
diff --git a/hw/xen_devconfig.c b/hw/xen_devconfig.c
index 028f47e..ea8f8c4 100644
--- a/hw/xen_devconfig.c
+++ b/hw/xen_devconfig.c
@@ -17,7 +17,7 @@
     QTAILQ_INSERT_TAIL(&xs_cleanup, d, list);
 }
 
-void xen_config_cleanup(Notifier *notifier)
+void xen_config_cleanup(void)
 {
     struct xs_dirs *d;
 
diff --git a/hw/xen_domainbuild.c b/hw/xen_domainbuild.c
index b735ca4..2f59856 100644
--- a/hw/xen_domainbuild.c
+++ b/hw/xen_domainbuild.c
@@ -211,7 +211,7 @@
 }
 
 /* normal cleanup */
-static void xen_domain_cleanup(Notifier *notifier)
+static void xen_domain_cleanup(void)
 {
     char *dom;
 
@@ -232,7 +232,6 @@
     unsigned int xenstore_port = 0, console_port = 0;
     unsigned long xenstore_mfn = 0, console_mfn = 0;
     int rc;
-    static Notifier exit_notifier = { .notify = xen_domain_cleanup };
 
     memcpy(uuid, qemu_uuid, sizeof(uuid));
     rc = xc_domain_create(xen_xc, ssidref, uuid, flags, &xen_domid);
@@ -241,7 +240,7 @@
         goto err;
     }
     qemu_log("xen: created domain %d\n", xen_domid);
-    exit_notifier_add(&exit_notifier);
+    atexit(xen_domain_cleanup);
     if (xen_domain_watcher() == -1) {
         goto err;
     }
diff --git a/hw/xen_machine_pv.c b/hw/xen_machine_pv.c
index fe7d35c..162f88d 100644
--- a/hw/xen_machine_pv.c
+++ b/hw/xen_machine_pv.c
@@ -42,7 +42,6 @@
     CPUState *env;
     DriveInfo *dinfo;
     int i;
-    static Notifier exit_notifier = { .notify = xen_config_cleanup };
 
     /* Initialize a dummy CPU */
     if (cpu_model == NULL) {
@@ -106,7 +105,7 @@
     }
 
     /* config cleanup hook */
-    exit_notifier_add(&exit_notifier);
+    atexit(xen_config_cleanup);
 
     /* setup framebuffer */
     xen_init_display(xen_domid);
diff --git a/qemu-char.c b/qemu-char.c
index c02dfae..a3d6e64 100644
--- a/qemu-char.c
+++ b/qemu-char.c
@@ -713,15 +713,9 @@
     fcntl(0, F_SETFL, old_fd0_flags);
 }
 
-static void term_exit_notifier(Notifier *notifier)
-{
-    term_exit();
-}
-
 static void term_init(QemuOpts *opts)
 {
     struct termios tty;
-    static Notifier exit_notifier = { .notify = term_exit_notifier };
 
     tcgetattr (0, &tty);
     oldtty = tty;
@@ -741,9 +735,8 @@
 
     tcsetattr (0, TCSANOW, &tty);
 
-    if (!term_atexit_done++) {
-        exit_notifier_add(&exit_notifier);
-    }
+    if (!term_atexit_done++)
+        atexit(term_exit);
 
     fcntl(0, F_SETFL, O_NONBLOCK);
 }
diff --git a/sdl.c b/sdl.c
index 8dc78cd..16a48e9 100644
--- a/sdl.c
+++ b/sdl.c
@@ -827,7 +827,7 @@
         SDL_SetCursor(guest_sprite);
 }
 
-static void sdl_cleanup(Notifier *notifier)
+static void sdl_cleanup(void)
 {
     if (guest_sprite)
         SDL_FreeCursor(guest_sprite);
@@ -840,7 +840,6 @@
     uint8_t data = 0;
     DisplayAllocator *da;
     const SDL_VideoInfo *vi;
-    static Notifier exit_notifier = { .notify = sdl_cleanup };
 
 #if defined(__APPLE__)
     /* always use generic keymaps */
@@ -893,7 +892,7 @@
     sdl_cursor_hidden = SDL_CreateCursor(&data, &data, 8, 1, 0, 0);
     sdl_cursor_normal = SDL_GetCursor();
 
-    exit_notifier_add(&exit_notifier);
+    atexit(sdl_cleanup);
     if (full_screen) {
         gui_fullscreen = 1;
         gui_fullscreen_initial_grab = 1;
diff --git a/vl.c b/vl.c
index 8274c1d..26b638c 100644
--- a/vl.c
+++ b/vl.c
@@ -537,7 +537,7 @@
 }
 
 #ifdef _WIN32
-static void socket_cleanup(Notifier *obj)
+static void socket_cleanup(void)
 {
     WSACleanup();
 }
@@ -546,7 +546,6 @@
 {
     WSADATA Data;
     int ret, err;
-    static Notifier notifier = { .notify = socket_cleanup };
 
     ret = WSAStartup(MAKEWORD(2,2), &Data);
     if (ret != 0) {
@@ -554,7 +553,7 @@
         fprintf(stderr, "WSAStartup: %d\n", err);
         return -1;
     }
-    exit_notifier_add(&notifier);
+    atexit(socket_cleanup);
     return 0;
 }
 #endif
@@ -3803,8 +3802,6 @@
 
     error_set_progname(argv[0]);
 
-    exit_notifier_init();
-
     init_clocks();
 
     qemu_cache_utils_init(envp);