[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PULL 09/22] dump: add API to write elf notes to buffer
From: |
Luiz Capitulino |
Subject: |
[Qemu-devel] [PULL 09/22] dump: add API to write elf notes to buffer |
Date: |
Thu, 13 Feb 2014 10:30:27 -0500 |
From: qiaonuohan <address@hidden>
the function can be used by write_elf32_notes/write_elf64_notes to write notes
to a buffer. If fd_write_vmcore is used, write_elf32_notes/write_elf64_notes
will write elf notes to vmcore directly. Instead, if buf_write_note is used,
elf notes will be written to opaque->note_buf at first.
Signed-off-by: Qiao Nuohan <address@hidden>
Reviewed-by: Laszlo Ersek <address@hidden>
Signed-off-by: Luiz Capitulino <address@hidden>
---
dump.c | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/dump.c b/dump.c
index 238ffa5..2b940bd 100644
--- a/dump.c
+++ b/dump.c
@@ -76,6 +76,9 @@ typedef struct DumpState {
int64_t begin;
int64_t length;
Error **errp;
+
+ uint8_t *note_buf; /* buffer for notes */
+ size_t note_buf_offset; /* the writing place in note_buf */
} DumpState;
static int dump_cleanup(DumpState *s)
@@ -749,6 +752,22 @@ static int write_buffer(int fd, off_t offset, const void
*buf, size_t size)
return 0;
}
+static int buf_write_note(const void *buf, size_t size, void *opaque)
+{
+ DumpState *s = opaque;
+
+ /* note_buf is not enough */
+ if (s->note_buf_offset + size > s->note_size) {
+ return -1;
+ }
+
+ memcpy(s->note_buf + s->note_buf_offset, buf, size);
+
+ s->note_buf_offset += size;
+
+ return 0;
+}
+
static ram_addr_t get_start_block(DumpState *s)
{
GuestPhysBlock *block;
--
1.8.1.4
- [Qemu-devel] [PULL 00/22] QMP queue, Luiz Capitulino, 2014/02/13
- [Qemu-devel] [PULL 01/22] hmp: migrate command (without -d) now blocks correctly, Luiz Capitulino, 2014/02/13
- [Qemu-devel] [PULL 02/22] QMP: allow JSON dict arguments in qmp-shell, Luiz Capitulino, 2014/02/13
- [Qemu-devel] [PULL 03/22] Use error_is_set() only when necessary, Luiz Capitulino, 2014/02/13
- [Qemu-devel] [PULL 05/22] dump: const-qualify the buf of WriteCoreDumpFunction, Luiz Capitulino, 2014/02/13
- [Qemu-devel] [PULL 06/22] dump: add argument to write_elfxx_notes, Luiz Capitulino, 2014/02/13
- [Qemu-devel] [PULL 04/22] qmp: expose list of supported character device backends, Luiz Capitulino, 2014/02/13
- [Qemu-devel] [PULL 07/22] dump: add API to write header of flatten format, Luiz Capitulino, 2014/02/13
- [Qemu-devel] [PULL 09/22] dump: add API to write elf notes to buffer,
Luiz Capitulino <=
- [Qemu-devel] [PULL 08/22] dump: add API to write vmcore, Luiz Capitulino, 2014/02/13
- [Qemu-devel] [PULL 10/22] dump: add support for lzo/snappy, Luiz Capitulino, 2014/02/13
- [Qemu-devel] [PULL 11/22] dump: add members to DumpState and init some of them, Luiz Capitulino, 2014/02/13
- [Qemu-devel] [PULL 12/22] dump: add API to write dump header, Luiz Capitulino, 2014/02/13
- [Qemu-devel] [PULL 13/22] dump: add API to write dump_bitmap, Luiz Capitulino, 2014/02/13
- [Qemu-devel] [PULL 14/22] dump: add APIs to operate DataCache, Luiz Capitulino, 2014/02/13
- [Qemu-devel] [PULL 15/22] dump: add API to write dump pages, Luiz Capitulino, 2014/02/13
- [Qemu-devel] [PULL 18/22] dump: add 'query-dump-guest-memory-capability' command, Luiz Capitulino, 2014/02/13
- [Qemu-devel] [PULL 16/22] dump: make kdump-compressed format available for 'dump-guest-memory', Luiz Capitulino, 2014/02/13
- [Qemu-devel] [PULL 19/22] monitor: Add device_del id argument completion., Luiz Capitulino, 2014/02/13