From nobody Fri Jan 9 23:27:54 2026 X-Original-To: dev-commits-src-branches@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 4dnycV6lkDz6MYNP for ; Fri, 09 Jan 2026 23:27:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R13" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dnycV3lHkz3n46 for ; Fri, 09 Jan 2026 23:27:54 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768001274; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6rqKxOqE17efYc1Uua7NoFi4wKI/Za6Bu8oqqs2uhrI=; b=gno1aAntSIrH/UZEN0xVyCRQXStkLr+ljXTovC9A2u8m7Qib8YdfHBYLkk9ouRmGpSCInq A9fBuFLu+RR3riU/H4E0kAFdOFKd1RTp/kTiRDvCkFm4k1zZSMsnElWCe+/sSOLNzRmzXH DudCVK4Rea0Y8523hTJamm4MB4SY77wJb3xlwVnQBd7+3TnuxYZxd+DxNhy7BuFL2xz/bS VYrwRbY0XdIR/2PjYrZxAQ96NRzSVYCqoqptkrtVsZc+qKsYr/a3mHP5aTLnyfvOY8QUzE wrdlfpmx9KIJwLEVsplVBiGiMzWlEU9KuX4qlF9lqieKAqL4hp2NqdbcWkjRFg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1768001274; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=6rqKxOqE17efYc1Uua7NoFi4wKI/Za6Bu8oqqs2uhrI=; b=yfQOBMSd7p91D1p2bFQBGTDcMLRQPVx2bjKo/LN1oqoRhqtHv3AXMKJPjsXe3TMAldXG/R Lkf91CFBOjt84WyfmZnDiukCV1BT2X8b6o7uT6+2bBRtQQpZ1aXMvoBFxv2/uWEOMiI8xH 7wl/gvnF0QAzD0nUaM+moHxa+cGzQXogs22eT96WPftfA9Qfkcss1Fu+FUxBJZhVeo57TC o3zBZ0ndtW3brE4DBdacd3mvTvT2knG/9GS7OVfXL29vC1l/CXaCFxRLxB7qS/ngsCNxjH F2RufopNyO5reGN0wqB5lE8NADXWYhvUkuNy8g1SQOdomj7b3Y/f7Wn2u/huhg== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1768001274; a=rsa-sha256; cv=none; b=G4wcZuo92HfdWsb9Anj12v6vQf6DmAYetyJ0PVeXndiRIFNWj/ZLazgfevIu6V/U2eVGr6 JegAwrT4HM0ZrNtlVv+OB9GJRb4kHpRIndXzYLaC9nAC08bjS+PDMBNpC0VwpLxmUpkKPq 96tl+IWkjIZzqSiu13cjBfIbybIKpajFz8DwMktNM6Z4amo9n0tKPU6uK2NvnDi8SL2L6v kvPtLa6KoeFoBkATqvqAm4S9RUnRNzrloeT/27ILogdReXjbVOBy8FBmVcGRs+4k0bhmvm blxhHsTqUaloPTNdkf1NP4+qx8wJrO3KLrZFkaplTarnHL3kud0zdXm7PhvNMg== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dnycV379RzTZS for ; Fri, 09 Jan 2026 23:27:54 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 30df1 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Fri, 09 Jan 2026 23:27:54 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Christos Margiolis Subject: git: 0ed90f4379c4 - stable/15 - sound: Improve snd_midi->{in,out}q allocation List-Id: Commits to the stable branches of the FreeBSD src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-branches List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-branches@freebsd.org Sender: owner-dev-commits-src-branches@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: christos X-Git-Repository: src X-Git-Refname: refs/heads/stable/15 X-Git-Reftype: branch X-Git-Commit: 0ed90f4379c4cb8a5e3e340c6a9cfc63897ae059 Auto-Submitted: auto-generated Date: Fri, 09 Jan 2026 23:27:54 +0000 Message-Id: <69618efa.30df1.665dd6d7@gitrepo.freebsd.org> The branch stable/15 has been updated by christos: URL: https://cgit.FreeBSD.org/src/commit/?id=0ed90f4379c4cb8a5e3e340c6a9cfc63897ae059 commit 0ed90f4379c4cb8a5e3e340c6a9cfc63897ae059 Author: Christos Margiolis AuthorDate: 2026-01-02 16:56:34 +0000 Commit: Christos Margiolis CommitDate: 2026-01-09 23:27:24 +0000 sound: Improve snd_midi->{in,out}q allocation Currently we lock and allocate the buffers with M_NOWAIT, without checking if the return value of malloc(). This is not necessary as subsequent check below will eventually check that. However, for correctness, allocate the buffers with M_WAITOK (there is no reason not to) and lock afterwards. Sponsored by: The FreeBSD Foundation MFC after: 1 week Reviewed by: markj Differential Revision: https://reviews.freebsd.org/D54131 (cherry picked from commit b9db6c21287311b9e861893c065289d987a75804) --- sys/dev/sound/midi/midi.c | 24 ++++++++---------------- 1 file changed, 8 insertions(+), 16 deletions(-) diff --git a/sys/dev/sound/midi/midi.c b/sys/dev/sound/midi/midi.c index 9b61e972fab9..7f968b6210f5 100644 --- a/sys/dev/sound/midi/midi.c +++ b/sys/dev/sound/midi/midi.c @@ -109,7 +109,8 @@ midi_init(kobj_class_t cls, void *cookie) { struct snd_midi *m; int inqsize, outqsize; - uint8_t *buf; + uint8_t *ibuf = NULL; + uint8_t *obuf = NULL; m = malloc(sizeof(*m), M_MIDI, M_WAITOK | M_ZERO); kobj_init((kobj_t)m, cls); @@ -121,26 +122,17 @@ midi_init(kobj_class_t cls, void *cookie) mtx_init(&m->lock, "raw midi", NULL, 0); - mtx_lock(&m->lock); - if (inqsize) - buf = malloc(sizeof(uint8_t) * inqsize, M_MIDI, M_NOWAIT); - else - buf = NULL; + ibuf = malloc(inqsize, M_MIDI, M_WAITOK); + if (outqsize) + obuf = malloc(outqsize, M_MIDI, M_WAITOK); - MIDIQ_INIT(m->inq, buf, inqsize); + mtx_lock(&m->lock); - if (outqsize) - buf = malloc(sizeof(uint8_t) * outqsize, M_MIDI, M_NOWAIT); - else - buf = NULL; m->hiwat = outqsize / 2; - MIDIQ_INIT(m->outq, buf, outqsize); - - if ((inqsize && !MIDIQ_BUF(m->inq)) || - (outqsize && !MIDIQ_BUF(m->outq))) - goto err2; + MIDIQ_INIT(m->inq, ibuf, inqsize); + MIDIQ_INIT(m->outq, obuf, outqsize); m->flags = 0; m->unit = alloc_unr(dev_unr);