]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
blk/kernel: Fix error code mapping in KernelDevice::read. 49263/head
authorJoshua Baergen <jbaergen@digitalocean.com>
Wed, 12 Oct 2022 18:19:36 +0000 (12:19 -0600)
committerIgor Fedotov <igor.fedotov@croit.io>
Tue, 6 Dec 2022 00:19:09 +0000 (03:19 +0300)
commit25664452919d360bd37fa3a9eb62202a58ac72e7
treed7129976a1182adc474ba3241197e20c58e2b88b
parent922fcbb3f77b8eb153ee6b8ef13f47e32f912216
blk/kernel: Fix error code mapping in KernelDevice::read.

pread returns -1 upon error and stores the error code in errno, and thus
the wrong error was being passed into is_expected_ioerr. This is handled
correctly just a few lines down where we return -errno, so it was likely
just an oversight when adapting this logic from the aio codepath, where
the return code is indeed the errno.

This logic has been incorrect since it was introduced in 2018 via
a1e0ece7f987c7a563b25ec0d02fc6f8445ef54e.

Signed-off-by: Joshua Baergen <jbaergen@digitalocean.com>
(cherry picked from commit 5e98a6b959b176b8b3a999e28639437976abb476)
src/blk/kernel/KernelDevice.cc