Changeset 0d77d30 in mainline


Ignore:
Timestamp:
2025-01-12T15:58:35Z (4 months ago)
Author:
Miroslav Cimerman <mc@…>
Children:
4660649
Parents:
efc6259
Message:

hr: hr_io_worker(): ENOMEM handling for WRITEs

Call state callback on rc == ENOMEM only if the
IO is a WRITE.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/bd/hr/io.c

    refc6259 r0d77d30  
    7373        }
    7474
    75         if (rc != EOK)
     75        /*
     76         * We don't have to invalidate extents who got ENOMEM
     77         * on READ/SYNC. But when we get ENOMEM on a WRITE, we have
     78         * to invalidate it, because there could have been
     79         * other writes, there is no way to rollback.
     80         */
     81        if (rc != EOK && (rc != ENOMEM || io->type == HR_BD_WRITE))
    7682                io->state_callback(io->vol, io->extent, rc);
    7783
Note: See TracChangeset for help on using the changeset viewer.