Map ECKSUM and EFRAGS from ZFS onto real errnos.
Make it less confusing when, for example, stat sets errno to 122 because a checksum failed in ZFS: Before: getfacl: /foo/bar: stat() failed: Unknown error: 122 After: getfacl: /foo/bar: stat() failed: Integrity check failed Submitted by: Ryan Moeller <ryan@ixsystems.com> Reviewed by: mckusick, mav MFC after: 2 weeks Sponsored by: iXsystems, Inc. Differential Revision: https://reviews.freebsd.org/D22973
This commit is contained in:
parent
b6a39983f4
commit
d516c76636
@ -233,12 +233,11 @@ enum zio_wait_type {
|
||||
};
|
||||
|
||||
/*
|
||||
* We'll take the number 122 and 123 to indicate checksum errors and
|
||||
* fragmentation. Those doesn't collide with any errno values as they
|
||||
* are greater than ELAST.
|
||||
* These are bespoke errnos used in ZFS. We map them to their closest FreeBSD
|
||||
* equivalents. This gives us more useful error messages from strerror(3).
|
||||
*/
|
||||
#define ECKSUM 122
|
||||
#define EFRAGS 123
|
||||
#define ECKSUM EINTEGRITY
|
||||
#define EFRAGS ENOSPC
|
||||
|
||||
typedef void zio_done_func_t(zio_t *zio);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user