On Wed, Jul 05, 2017 at 12:13:22PM -0500, Eric DeVolder wrote: > When generating an ELF core dump file, if a segment size > is not an exact multiple of PAGE_SIZE, then the corresponding > generated segment is erroneously truncated to a PAGE_SIZE multiple. > Thus a small loss of data up to PAGE_SIZE-1 bytes can occur. Some nit picks below... [...] > With the patch applied, the file size is again correct. > > Signed-off-by: Eric DeVolder <eric.devolder at oracle.com> > --- > v2: posted 05jul2017 to kexec-tools list > - feedback from Atsushi Kumagai pointed to real root of problem, > and patch changed accordingly > > v1: posted 03jul2017 to kexec-tools list > --- > makedumpfile.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/makedumpfile.c b/makedumpfile.c > index e69b6df..26296f1 100644 > --- a/makedumpfile.c > +++ b/makedumpfile.c > @@ -5410,7 +5410,8 @@ create_1st_bitmap_file(void) > if (pfn_start > info->max_mapnr) > continue; > pfn_end = MIN(pfn_end, info->max_mapnr); > - > + /* Account for last page if it has less than page_size data in it */ > + if (phys_end & (info->page_size-1)) ++pfn_end; Something is wrong with column alignment. Tabs instead of spaces? And "++pfn_end;" should be in new line. Daniel