root / qemu-tool.c @ 67d8cec3
History | View | Annotate | Download (1.3 kB)
1 | 03ff3ca3 | aliguori | /*
|
---|---|---|---|
2 | 03ff3ca3 | aliguori | * Compatibility for qemu-img/qemu-nbd
|
3 | 03ff3ca3 | aliguori | *
|
4 | 03ff3ca3 | aliguori | * Copyright IBM, Corp. 2008
|
5 | 03ff3ca3 | aliguori | *
|
6 | 03ff3ca3 | aliguori | * Authors:
|
7 | 03ff3ca3 | aliguori | * Anthony Liguori <aliguori@us.ibm.com>
|
8 | 03ff3ca3 | aliguori | *
|
9 | 03ff3ca3 | aliguori | * This work is licensed under the terms of the GNU GPL, version 2. See
|
10 | 03ff3ca3 | aliguori | * the COPYING file in the top-level directory.
|
11 | 03ff3ca3 | aliguori | *
|
12 | 03ff3ca3 | aliguori | */
|
13 | 03ff3ca3 | aliguori | |
14 | 03ff3ca3 | aliguori | #include "qemu-common.h" |
15 | 03ff3ca3 | aliguori | #include "console.h" |
16 | 03ff3ca3 | aliguori | #include "sysemu.h" |
17 | 03ff3ca3 | aliguori | #include "qemu-timer.h" |
18 | 03ff3ca3 | aliguori | |
19 | 03ff3ca3 | aliguori | #include <sys/time.h> |
20 | 03ff3ca3 | aliguori | |
21 | 03ff3ca3 | aliguori | QEMUClock *rt_clock; |
22 | 03ff3ca3 | aliguori | |
23 | 03ff3ca3 | aliguori | struct QEMUBH
|
24 | 03ff3ca3 | aliguori | { |
25 | 03ff3ca3 | aliguori | QEMUBHFunc *cb; |
26 | 03ff3ca3 | aliguori | void *opaque;
|
27 | 03ff3ca3 | aliguori | }; |
28 | 03ff3ca3 | aliguori | |
29 | 03ff3ca3 | aliguori | void term_printf(const char *fmt, ...) |
30 | 03ff3ca3 | aliguori | { |
31 | 03ff3ca3 | aliguori | } |
32 | 03ff3ca3 | aliguori | |
33 | 03ff3ca3 | aliguori | void term_print_filename(const char *filename) |
34 | 03ff3ca3 | aliguori | { |
35 | 03ff3ca3 | aliguori | } |
36 | 03ff3ca3 | aliguori | |
37 | 03ff3ca3 | aliguori | QEMUBH *qemu_bh_new(QEMUBHFunc *cb, void *opaque)
|
38 | 03ff3ca3 | aliguori | { |
39 | 03ff3ca3 | aliguori | QEMUBH *bh; |
40 | 03ff3ca3 | aliguori | |
41 | 03ff3ca3 | aliguori | bh = qemu_malloc(sizeof(*bh));
|
42 | 03ff3ca3 | aliguori | if (bh) {
|
43 | 03ff3ca3 | aliguori | bh->cb = cb; |
44 | 03ff3ca3 | aliguori | bh->opaque = opaque; |
45 | 03ff3ca3 | aliguori | } |
46 | 03ff3ca3 | aliguori | |
47 | 03ff3ca3 | aliguori | return bh;
|
48 | 03ff3ca3 | aliguori | } |
49 | 03ff3ca3 | aliguori | |
50 | 03ff3ca3 | aliguori | int qemu_bh_poll(void) |
51 | 03ff3ca3 | aliguori | { |
52 | 03ff3ca3 | aliguori | return 0; |
53 | 03ff3ca3 | aliguori | } |
54 | 03ff3ca3 | aliguori | |
55 | 03ff3ca3 | aliguori | void qemu_bh_schedule(QEMUBH *bh)
|
56 | 03ff3ca3 | aliguori | { |
57 | 03ff3ca3 | aliguori | bh->cb(bh->opaque); |
58 | 03ff3ca3 | aliguori | } |
59 | 03ff3ca3 | aliguori | |
60 | 03ff3ca3 | aliguori | void qemu_bh_cancel(QEMUBH *bh)
|
61 | 03ff3ca3 | aliguori | { |
62 | 03ff3ca3 | aliguori | } |
63 | 03ff3ca3 | aliguori | |
64 | 03ff3ca3 | aliguori | void qemu_bh_delete(QEMUBH *bh)
|
65 | 03ff3ca3 | aliguori | { |
66 | 03ff3ca3 | aliguori | qemu_free(bh); |
67 | 03ff3ca3 | aliguori | } |
68 | 03ff3ca3 | aliguori | |
69 | 03ff3ca3 | aliguori | int qemu_set_fd_handler2(int fd, |
70 | 03ff3ca3 | aliguori | IOCanRWHandler *fd_read_poll, |
71 | 03ff3ca3 | aliguori | IOHandler *fd_read, |
72 | 03ff3ca3 | aliguori | IOHandler *fd_write, |
73 | 03ff3ca3 | aliguori | void *opaque)
|
74 | 03ff3ca3 | aliguori | { |
75 | 03ff3ca3 | aliguori | return 0; |
76 | 03ff3ca3 | aliguori | } |
77 | 03ff3ca3 | aliguori | |
78 | 03ff3ca3 | aliguori | int64_t qemu_get_clock(QEMUClock *clock) |
79 | 03ff3ca3 | aliguori | { |
80 | 03ff3ca3 | aliguori | struct timeval tv;
|
81 | 03ff3ca3 | aliguori | gettimeofday(&tv, NULL);
|
82 | 03ff3ca3 | aliguori | return (tv.tv_sec * 1000000000LL + (tv.tv_usec * 1000)) / 1000000; |
83 | 03ff3ca3 | aliguori | } |