diff options
author | peter <peter@FreeBSD.org> | 2001-06-09 01:41:03 +0000 |
---|---|---|
committer | peter <peter@FreeBSD.org> | 2001-06-09 01:41:03 +0000 |
commit | 9fa3fbc741aabce4021b9e9b971f1e54328067a3 (patch) | |
tree | fc61ade65ec51dbf67f81f99b533d505250cdd66 /sbin/savecore | |
parent | 174326d6ed44c52b9152169dda9266402b384182 (diff) | |
download | FreeBSD-src-9fa3fbc741aabce4021b9e9b971f1e54328067a3.zip FreeBSD-src-9fa3fbc741aabce4021b9e9b971f1e54328067a3.tar.gz |
dumpmag is 'u_long dumpmag' in the kernel, not 'int'. If this worked on
the Alpha, it was because of luck that it was little endian.
Tidy up the dumpsize/dumppages confusion and the out of date comments.
Diffstat (limited to 'sbin/savecore')
-rw-r--r-- | sbin/savecore/savecore.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/sbin/savecore/savecore.c b/sbin/savecore/savecore.c index 1de4fde..e91ea11 100644 --- a/sbin/savecore/savecore.c +++ b/sbin/savecore/savecore.c @@ -102,8 +102,10 @@ struct nlist dump_nl[] = { /* Name list for dumped system. */ }; /* Types match kernel declarations. */ +u_long dumpmag; /* magic number in dump */ + +/* Based on kernel variables, but with more convenient types. */ off_t dumplo; /* where dump starts on dumpdev */ -int dumpmag; /* magic number in dump */ off_t dumpsize; /* amount of memory dumped */ char *kernel; /* user-specified kernel */ @@ -579,12 +581,12 @@ get_crashtime() void get_dumpsize() { - unsigned int dumppages; + int kdumpsize; /* Read the dump size. */ - DumpRead(dumpfd, &dumppages, sizeof(dumppages), + DumpRead(dumpfd, &kdumpsize, sizeof(kdumpsize), (off_t)(dumplo + ok(dump_nl[X_DUMPSIZE].n_value)), L_SET); - dumpsize = dumppages * getpagesize(); + dumpsize = kdumpsize * getpagesize(); } /* |