From nobody Fri Mar 15 17:00:16 2024 X-Original-To: freebsd-multimedia@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4Tx9VL1DcCz5DmKb for ; Fri, 15 Mar 2024 17:00:26 +0000 (UTC) (envelope-from christos@freebsd.org) Received: from margiolis.net (mail.margiolis.net [95.179.159.8]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA512) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4Tx9VK3wdgz4kL4; Fri, 15 Mar 2024 17:00:25 +0000 (UTC) (envelope-from christos@freebsd.org) Authentication-Results: mx1.freebsd.org; none DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; s=mail; bh=W1syBA8oyUr/HDZ 4g7kHjNW9Y83hWPACFmvbCUH/eAg=; h=in-reply-to:references:subject:cc:to: from:date; d=margiolis.net; b=m32lKCxz55M9s66G71waQrc0H0J8ZJqwMkk3VXxj 2kY1aIWUDPnpINfkDUTWjv4o74csOPAKeBVLADzCqdsHxIm7zFZuTrfFIM/9qy0NjdC7dF N4mWIz4SqxCWW75VyUICzQYogLQZiA/Dh8Rkyh0TKAnB9JCpzRnhnJ6f0r/8A= Received: from tpad (public-gprs657538.centertel.pl [5.184.111.195]) by margiolis.net (OpenSMTPD) with ESMTPSA id a07a27ab (TLSv1.3:AEAD-AES256-GCM-SHA384:256:NO); Fri, 15 Mar 2024 17:00:15 +0000 (UTC) Date: Fri, 15 Mar 2024 18:00:16 +0100 From: Christos Margiolis To: Mark Johnston Cc: status-updates@freebsdfoundation.org, freebsd-multimedia@freebsd.org, jrm@freebsd.org Subject: Re: Re: [Development report #7] Audio Stack Improvements Message-ID: References: List-Id: Multimedia discussions List-Archive: https://lists.freebsd.org/archives/freebsd-multimedia List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-multimedia@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Spamd-Bar: ---- X-Rspamd-Pre-Result: action=no action; module=replies; Message is reply to one we originated X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[]; ASN(0.00)[asn:20473, ipnet:95.179.144.0/20, country:US] X-Rspamd-Queue-Id: 4Tx9VK3wdgz4kL4 Hello Mark, Mark Johnston wrote: > > Behavior changes: > > - Only one /dev/dspX device is exposed, as opposed to the current > > /dev/dspX.[X]X devices created by the snd_clone mechanism. The > > user/application now only needs to access the device through /dev/dspX > > or /dev/dsp and sound(4) will take care of all necessary audio > > routing. > > Does this represent a backward compatibility break? That is, will > applications need any modification when running on a patched kernel? Applications are meant to open an audio device through /dev/dsp (if hw.snd.basename_clone is enabled), or through /dev/dspX, so the vast majority of applications should work with no problems. Applications that open a device through /dev/dspX.[X]X will break with this patch. However, opening a device like this is discouraged anyway, according to the sound(4) man page (see FILES section): [...] /dev/dsp%d.p%d Playback channel. /dev/dsp%d.r%d Record channel. /dev/dsp%d.vp%d Virtual playback channel. /dev/dsp%d.vr%d Virtual recording channel. [...] The above device nodes are only created on demand through the dynamic devfs(5) clone handler. Users are strongly discouraged to access them directly. For specific sound card access, please instead use /dev/dsp or /dev/dsp%d. The patch basically does the same thing -- the output of /dev/sndstat remains the same -- but without creating these device nodes. Christos