Messages in this thread |  | | From | Andi Kleen <> | | Subject | Re: [PATCH 1/1] x86: Add process memory layout to coredump file | | Date | Sat, 10 Dec 2011 12:02:39 -0800 |
| |
t cheney <cdmalord@gmail.com> writes:
> This patch just add memory layout(same as /proc/pid/maps) to > coredump file. The layout is appended to corenote segment with > flag NT_MAPS=7.
Seems like a reasonable idea, but can you please share code with the proc implementation?
It's a bit unusal to have ASCII in a coredump, but I suppose expressing this in binary would be somewhat ugly.
> + char *buf = notes->data; > + size_t core_limit = notes->datasz; > + gate_vma = get_gate_vma(current->mm); > +
It seems a bit dubious to do this without locking even in a core dump.
> + for (vma = first_vma(current, gate_vma); vma != NULL; > + vma = next_vma(vma, gate_vma)) { > + flags = vma->vm_flags; > + maps_size += len; > + if (file) { > + if (maps_size > core_limit) > + break;
You have a one-off bug here. Also below.
> + DUMP_WRITE(buf, len, foffset); > + }
-Andi -- ak@linux.intel.com -- Speaking for myself only
|  |