diff --git a/metropolis/pkg/blockdev/blockdev.go b/metropolis/pkg/blockdev/blockdev.go
index 1cb9551..c7b2875 100644
--- a/metropolis/pkg/blockdev/blockdev.go
+++ b/metropolis/pkg/blockdev/blockdev.go
@@ -6,9 +6,6 @@
 	"io"
 )
 
-// Replace with errors.ErrUnsupported once we migrate to Go 1.21
-var ErrUnsupported = errors.New("unsupported")
-
 var ErrNotBlockDevice = errors.New("not a block device")
 
 // BlockDev represents a generic block device made up of equally-sized blocks.
diff --git a/metropolis/pkg/blockdev/blockdev_darwin.go b/metropolis/pkg/blockdev/blockdev_darwin.go
index caecdab..5422e55 100644
--- a/metropolis/pkg/blockdev/blockdev_darwin.go
+++ b/metropolis/pkg/blockdev/blockdev_darwin.go
@@ -48,7 +48,7 @@
 func (d *Device) Discard(startByte int64, endByte int64) error {
 	// Can be implemented using DKIOCUNMAP, but needs x/sys/unix extension.
 	// Not mandatory, so this is fine for now.
-	return ErrUnsupported
+	return errors.ErrUnsupported
 }
 
 func (d *Device) OptimalBlockSize() int64 {
@@ -158,7 +158,7 @@
 
 func (d *File) Discard(startByte int64, endByte int64) error {
 	// Can be supported in the future via fnctl.
-	return ErrUnsupported
+	return errors.ErrUnsupported
 }
 
 func (d *File) OptimalBlockSize() int64 {
diff --git a/metropolis/pkg/blockdev/blockdev_linux.go b/metropolis/pkg/blockdev/blockdev_linux.go
index a8e6a8a..b40e5cd 100644
--- a/metropolis/pkg/blockdev/blockdev_linux.go
+++ b/metropolis/pkg/blockdev/blockdev_linux.go
@@ -51,7 +51,7 @@
 		return ctrlErr
 	}
 	if err == unix.EOPNOTSUPP {
-		return ErrUnsupported
+		return errors.ErrUnsupported
 	}
 	if err != unix.Errno(0) {
 		return fmt.Errorf("failed to discard: %w", err)
@@ -213,7 +213,7 @@
 		return ctrlErr
 	}
 	if errors.Is(err, unix.EOPNOTSUPP) {
-		return ErrUnsupported
+		return errors.ErrUnsupported
 	}
 	if err != unix.Errno(0) {
 		return fmt.Errorf("failed to discard: %w", err)
