• Mikulas Patocka's avatar
    dm-verity: restart or panic on an I/O error · e6a3531d
    Mikulas Patocka authored
    Maxim Suhanov reported that dm-verity doesn't crash if an I/O error
    happens. In theory, this could be used to subvert security, because an
    attacker can create sectors that return error with the Write Uncorrectable
    command. Some programs may misbehave if they have to deal with EIO.
    
    This commit fixes dm-verity, so that if "panic_on_corruption" or
    "restart_on_corruption" was specified and an I/O error happens, the
    machine will panic or restart.
    
    This commit also changes kernel_restart to emergency_restart -
    kernel_restart calls reboot notifiers and these reboot notifiers may wait
    for the bio that failed. emergency_restart doesn't call the notifiers.
    Reported-by: default avatarMaxim Suhanov <dfirblog@gmail.com>
    Signed-off-by: default avatarMikulas Patocka <mpatocka@redhat.com>
    Cc: stable@vger.kernel.org
    e6a3531d
dm-verity-target.c 40.6 KB