diff --git a/sound/usb/midi.c b/sound/usb/midi.c
index 9efda4b06acbd1303988b511cb6bd746a5930043..a10ac75969a8f05486b491ffe11569e3e9f60864 100644
--- a/sound/usb/midi.c
+++ b/sound/usb/midi.c
@@ -1316,7 +1316,7 @@ static int snd_usbmidi_in_endpoint_create(struct snd_usb_midi *umidi,
 
  error:
 	snd_usbmidi_in_endpoint_delete(ep);
-	return -ENOMEM;
+	return err;
 }
 
 /*