Index: audio.c
===================================================================
RCS file: /cvsroot/src/sys/dev/audio/audio.c,v
retrieving revision 1.28.2.23
diff -u -p -u -r1.28.2.23 audio.c
--- audio.c	28 Jul 2021 14:59:02 -0000	1.28.2.23
+++ audio.c	23 Nov 2021 10:45:54 -0000
@@ -3002,16 +3002,10 @@ audio_ioctl(dev_t dev, struct audio_soft
 		break;
 
 	case AUDIO_GETIOFFS:
-		/* XXX TODO */
-		ao = (struct audio_offset *)addr;
-		ao->samples = 0;
-		ao->deltablks = 0;
-		ao->offset = 0;
-		break;
-
 	case AUDIO_GETOOFFS:
 		ao = (struct audio_offset *)addr;
-		track = file->ptrack;
+		track = (cmd == AUDIO_GETOOFFS) ?
+		    file->ptrack : file->rtrack;
 		if (track == NULL) {
 			ao->samples = 0;
 			ao->deltablks = 0;
@@ -3035,8 +3029,9 @@ audio_ioctl(dev_t dev, struct audio_soft
 		if (offs >= track->usrbuf.capacity)
 			offs -= track->usrbuf.capacity;
 		ao->offset = offs;
-
-		TRACET(3, track, "GETOOFFS: samples=%u deltablks=%u offset=%u",
+		TRACET(3, track, "%s: samples=%u deltablks=%u offset=%u",
+		    (cmd == AUDIO_GETOOFS) ?
+		    "AUDIO_GETOOFFS" : "AUDIO_GETIOFFS",
 		    ao->samples, ao->deltablks, ao->offset);
 		break;
 
