10900 Fix estimated scrub completion time

Review Request #1817 - Created May 2, 2019 and submitted

Toomas Soome
Currently, it is possible for the 'zpool scrub' command to
    progress slightly beyond 100% due to concurrent changes
    happening on the live pool. This behavior is expected, but
    the userspace code for 'zpool status' would subtract the
    expected amount of data from the amount of data already
    scrubbed, resulting in a negative integer being casted to a
    large positive one. This number was then used to calculate
    the estimated completion time, resulting in wildly wrong
    results. This code changes the behavior so that 'zpool status'
    does not attempt to report an estimate during this period.

    Reviewed by: Brian Behlendorf <behlendorf1@llnl.gov>
    Reviewed-by: Igor Kozhukhov <igor@dilos.org>
    Reviewed-by: George Melikov <mail@gmelikov.ru>
    Signed-off-by: Tom Caputi <tcaputi@datto.com>
    Closes #8611
    Closes #8687

zpool status does look correct (after zpool attach).

Toomas Soome
Jerry Jelinek
C Fraire
Toomas Soome
Review request changed

Status: Closed (submitted)