HomeFreeBSD

savecore: fix space calculation with respect to `minfree` in check_space(..)

Description

savecore: fix space calculation with respect to minfree in check_space(..)

  • Use strtoll(3) instead of atoi(3), because atoi(3) limits the representable data to INT_MAX. Check the values received from strtoll(3), trimming trailing whitespace off the end to maintain POLA.
  • Use KiB instead of kB when describing free space, total space, etc. I am now fully aware of KiB being the IEC standard for 1024 bytes and kB being the IEC standard for 1000 bytes.
  • Store available number of KiB in available so it can be more easily queried and compared to ensure that there are enough KiB to store the dump image on disk.
  • Print out the reserved space on disk, per minfree, so end-users can troubleshoot why check_space(..) is reporting that there isn't enough free space.

MFC after: 7 weeks
Reviewed by: Anton Rang <rang@acm.com> (earlier diff), cem (earlier diff)
Tested with: positive/negative cases (see review); make tinderbox
Sponsored by: Dell EMC Isilon
Differential Revision: D10379