[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v5 6/9] dump: Add API to write dump_bitmap
From: |
Stefan Hajnoczi |
Subject: |
Re: [Qemu-devel] [PATCH v5 6/9] dump: Add API to write dump_bitmap |
Date: |
Tue, 16 Jul 2013 10:25:28 +0800 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
On Tue, Jul 09, 2013 at 03:30:11PM +0800, Qiao Nuohan wrote:
> +/* set dump_bitmap sequencely */
> +static int set_dump_bitmap(int64_t last_pfn, int64_t pfn, uint32_t value,
> + void *buf, DumpState *s)
> +{
> + off_t old_offset, new_offset;
> + off_t offset_bitmap1, offset_bitmap2;
> + uint32_t byte, bit;
> +
> + /* should not set the previous place */
> + if (last_pfn > pfn) {
> + return -1;
> + }
> +
> + /*
> + * if the block needed to be set is not same as the one cached in buf,
> flush
> + * the cached buf to vmcore firstly
> + */
> + old_offset = BUFSIZE_BITMAP * (last_pfn / PFN_BUFBITMAP);
> + new_offset = BUFSIZE_BITMAP * (pfn / PFN_BUFBITMAP);
> +
> + while (old_offset < new_offset) {
> + /* calculate the offset and write dump_bitmap */
> + offset_bitmap1 = s->offset_dump_bitmap + old_offset;
> + if (write_buffer(s->fd, s->flag_flatten, offset_bitmap1, buf,
> + BUFSIZE_BITMAP) < 0) {
> + return -1;
> + }
> +
> + /* dump level 1 is chosen, so 1st and 2nd bitmap are same */
> + offset_bitmap2 = s->offset_dump_bitmap + s->len_dump_bitmap / 2 +
> + old_offset;
> + if (write_buffer(s->fd, s->flag_flatten, offset_bitmap2, buf,
> + BUFSIZE_BITMAP) < 0) {
> + return -1;
> + }
Can you reuse sync_dump_bitmap() here instead of duplicating this code?
- [Qemu-devel] [PATCH v5 0/9] Make 'dump-guest-memory' dump in kdump-compressed format, Qiao Nuohan, 2013/07/09
- [Qemu-devel] [PATCH v5 1/9] dump: Add argument to write_elfxx_notes, Qiao Nuohan, 2013/07/09
- [Qemu-devel] [PATCH v5 2/9] dump: Add API to write header of flatten format, Qiao Nuohan, 2013/07/09
- [Qemu-devel] [PATCH v5 3/9] dump: Add API to write vmcore, Qiao Nuohan, 2013/07/09
- [Qemu-devel] [PATCH v5 7/9] dump: Add APIs to operate DataCache, Qiao Nuohan, 2013/07/09
- [Qemu-devel] [PATCH v5 4/9] dump: Add API to write elf notes to buffer, Qiao Nuohan, 2013/07/09
- [Qemu-devel] [PATCH v5 6/9] dump: Add API to write dump_bitmap, Qiao Nuohan, 2013/07/09
- Re: [Qemu-devel] [PATCH v5 6/9] dump: Add API to write dump_bitmap,
Stefan Hajnoczi <=
- [Qemu-devel] [PATCH v5 9/9] dump: Make kdump-compressed format available for 'dump-guest-memory', Qiao Nuohan, 2013/07/09
- [Qemu-devel] [PATCH v5 8/9] dump: Add API to write dump pages, Qiao Nuohan, 2013/07/09
- [Qemu-devel] [PATCH v5 5/9] dump: add API to write dump header, Qiao Nuohan, 2013/07/09
- Re: [Qemu-devel] [PATCH v5 0/9] Make 'dump-guest-memory' dump in kdump-compressed format, Qiao Nuohan, 2013/07/09