summaryrefslogtreecommitdiffstats
path: root/sys/cddl
diff options
context:
space:
mode:
authorsmh <smh@FreeBSD.org>2014-09-16 17:47:13 +0000
committersmh <smh@FreeBSD.org>2014-09-16 17:47:13 +0000
commita60923d3099b894f21a7bdd59eeebcce279b9493 (patch)
tree3ca84f8c7f9eae0ea2de201b9c10d54e6e5eda4a /sys/cddl
parentf7baec35a31fd33585a0d97ca1c8166a3a9873b8 (diff)
downloadFreeBSD-src-a60923d3099b894f21a7bdd59eeebcce279b9493.zip
FreeBSD-src-a60923d3099b894f21a7bdd59eeebcce279b9493.tar.gz
MFC 265253:
Don't treat TRIM requests returning ENOTSUP as an unexpected error Approved by: re (gjb) Sponsored by: Multiplay
Diffstat (limited to 'sys/cddl')
-rw-r--r--sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c
index 4655d8c..93d8b9f 100644
--- a/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c
+++ b/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zio.c
@@ -2738,7 +2738,10 @@ zio_vdev_io_done(zio_t *zio)
zio->io_error = zio_handle_label_injection(zio, EIO);
if (zio->io_error) {
- if (!vdev_accessible(vd, zio)) {
+ if (zio->io_error == ENOTSUP &&
+ zio->io_type == ZIO_TYPE_FREE) {
+ /* Not all devices support TRIM. */
+ } else if (!vdev_accessible(vd, zio)) {
zio->io_error = SET_ERROR(ENXIO);
} else {
unexpected_error = B_TRUE;
OpenPOWER on IntegriCloud