From nobody Mon May 25 04:33:51 2026 Received: from mail-qt1-f176.google.com (mail-qt1-f176.google.com [209.85.160.176]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 1B3F01A6834 for ; Tue, 19 May 2026 00:49:56 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.160.176 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779151798; cv=none; b=Iatj9aqQWgLz8zs4YKM9LTtI3+rgX3Ng+8xM4f5e6xlKtSO6onSTtPleDtM0gIWbJN8cZbUeqoAyTAFdDKYojK2NYLZ21rVnGj9QBzdu5qz9K0UmwFhyePa95jHMJ9uYi8vUQqTzHbGn/z+9SO3QlT5pCQu9dWpAuaed9OsqTUA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1779151798; c=relaxed/simple; bh=FmkOyThkrGl6lnh8Mje8lSgdK4yxrXuzLn4jSCDBUBM=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=baMiOBHVBSemQ6b0PIrcS7VYIHOK81j0fGHuQHCPaBv+EhNJ8vEOFLpyu7uqezcbYMTKTmYdvic6UkjagZCwLvN2Q6PQDHH0S9VEJz6zYEXu1f3U/hdmiPsVB2m4Dx5OZOIbVDZeOI7f3u21IDIfKREkfKtHr/J7mFCY8gaHJeQ= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=CTonWlAA; arc=none smtp.client-ip=209.85.160.176 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="CTonWlAA" Received: by mail-qt1-f176.google.com with SMTP id d75a77b69052e-50e5eb0fabaso40732361cf.0 for ; Mon, 18 May 2026 17:49:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1779151796; x=1779756596; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=2Prd+4YAHvUFam2zSodu78Nl9ekYv+HPkYU5UZdRuUE=; b=CTonWlAAXgmm3ldvYXRa3b0z65/1MECe+e1u+MFhN4f74FgyxMXapYQG5XVTfQnAEz i3tUEwF38ELvYj4gyWFX615dyfpwG3hU0zIrCKLtNC+c9Sb5kiIhAfZafdFZWiAt3GgC xcivEwsm4XAzcTuuntW5taQk9XZnZsBm3m+X37vEiWwwVC7TRquYpdiplZjZLGzIMRNP hM/aO9sMxYV/K+Gypho1Vn62jPKgTZFVMqXgoFwBQVWNL3Xhem3wgU3L32RcnfkdKEkJ 3afDRNO1W2Peb8/Grs+GHtX9YYNuTXWs9raNhKCm7t4k5DlGc3JX3I6HzITDEu7LXjku EsDg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779151796; x=1779756596; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=2Prd+4YAHvUFam2zSodu78Nl9ekYv+HPkYU5UZdRuUE=; b=kLEr3VKW0BKt5Egyx2CaJifyOwfuVZjbGJno7NFwgwCkwBWivyo1NIjE0BjDORARn5 OA2+ERlNe4Lt9MFcevdosnLe5HbNvSvz9905R5hxoUREWgP/puwuUawYwlVkDM3LxASU KCovDIki0JBBkDgkea5p6CZKd/MCLR4Sf5rtXZZN1PmO1IccJEl1fKnMFG/1dPNElVAx Vml94Gc8Xy3MHdQuy59zKiQiOBj4XfxZiLBST9Ufm+vt7j3owA8QOsXJCVmDW4YqGB3I Wx5zlV/F3kQ3K8gIg8AuKozUbcFRwEQZS3eQ4ZJ0Xc4zw06hav/6yFFD9rT+YD8xM4nX /jVQ== X-Forwarded-Encrypted: i=1; AFNElJ/YILvEvzdgX9VQ6TiJ9v5HaN4joHMIKxLiB+BE0z2peMOmlGHgGM2HZ9Ea1N4Pb5rVqH0eCA10pF7xbm4=@vger.kernel.org X-Gm-Message-State: AOJu0Ywmnng7JNxP2Bqr1GwkkDj3xaEWtBo9vfLqKZ4TGXYOGex0SoK2 uH2R+iqRHdtv+B7gtVOnk0RpG3aF+aKyHXM5N++gqaUVBfwBOu14EucmWeU+I9FD X-Gm-Gg: Acq92OHbfJW1yuztv2GoKHR20zUaSQvFnQs7osaZKk2IXwUYiZbb0AtOBxKWsVQdXQM w2Ct1G8S6uPjKJ2lH8007qcfi6KpCJSDqRow1kzRaCdWLd8tAIxLVrjbb7XD5zRQp7KbIjMOXOT NSWY59R9GEshknYLV1RMuKtK2aaxS4iEdcwrPWJV3Edl5r2Rv6f2fTcRMasDq4cLv9+76NN/73H wltMFWI0GoafU3qW17Y5gvtD0dAIOUr/uu0TBuhvcG/HB8oqdY8cEFHTX9jR062nqf/YU7cbi7Q /NXu91ICE0mXmQz9EuvEI608J6mpal2BEOcxoyeCP6IJv51NJAcHiWS5X4ZLQjZn4PrIjdOVd18 PDEgz1icsrSgbZzt8Ym8kthLGrEQASBPR1ER2NITRiX/uQDFBaJtUdfSRzWh8aYCebHXFW2kUjK wNbZZ1056F4LUnGvZSlBh0yhQhphTkqWMCJ7ZwQXaLKeJX5UHv6/bKG0mEGR9CrsaWAJIlsHiFj 6Mj7mbuViWy6uNekL7iqFRgwRNxzDRYXcc= X-Received: by 2002:a05:622a:1a90:b0:50f:c2f8:4075 with SMTP id d75a77b69052e-51659fde983mr227579151cf.1.1779151795948; Mon, 18 May 2026 17:49:55 -0700 (PDT) Received: from ryzen ([2601:644:8000:5b5d:7285:c2ff:fe45:8a32]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-5164568a275sm148349551cf.5.2026.05.18.17.49.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 18 May 2026 17:49:54 -0700 (PDT) From: Rosen Penev To: linux-sound@vger.kernel.org Cc: "Geoffrey D. Bennett" , Jaroslav Kysela , Takashi Iwai , linux-kernel@vger.kernel.org (open list) Subject: [PATCH] ALSA: usb-audio: Use flexible allocation for Scarlett2 packets Date: Mon, 18 May 2026 17:49:35 -0700 Message-ID: <20260519004935.627797-1-rosenp@gmail.com> X-Mailer: git-send-email 2.54.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Allocate Scarlett2 USB packets and request buffers with the flex allocation helpers for their trailing data arrays. Keep the computed packet sizes where they are still needed for USB transfer lengths. Assisted-by: Codex:GPT-5.5 Signed-off-by: Rosen Penev --- sound/usb/mixer_scarlett2.c | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/sound/usb/mixer_scarlett2.c b/sound/usb/mixer_scarlett2.c index 7ab3c0dd4755..2bdeb537a983 100644 --- a/sound/usb/mixer_scarlett2.c +++ b/sound/usb/mixer_scarlett2.c @@ -2614,13 +2614,13 @@ static int scarlett2_usb( =20 struct scarlett2_usb_packet *req __free(kfree) =3D NULL; size_t req_buf_size =3D struct_size(req, data, req_size); - req =3D kmalloc(req_buf_size, GFP_KERNEL); + req =3D kmalloc_flex(*req, data, req_size); if (!req) return -ENOMEM; =20 struct scarlett2_usb_packet *resp __free(kfree) =3D NULL; size_t resp_buf_size =3D struct_size(resp, data, resp_size); - resp =3D kmalloc(resp_buf_size, GFP_KERNEL); + resp =3D kmalloc_flex(*resp, data, resp_size); if (!resp) return -ENOMEM; =20 @@ -2830,9 +2830,9 @@ static int scarlett2_usb_set_data_buf( u8 data[]; } __packed *req; int err; - int buf_size =3D struct_size(req, data, bytes); + size_t buf_size =3D struct_size(req, data, bytes); =20 - req =3D kmalloc(buf_size, GFP_KERNEL); + req =3D kmalloc_flex(*req, data, bytes); if (!req) return -ENOMEM; =20 @@ -9646,7 +9646,7 @@ static long scarlett2_hwdep_write(struct snd_hwdep *h= w, =20 /* Create and send the request */ len =3D struct_size(req, data, count); - req =3D kzalloc(len, GFP_KERNEL); + req =3D kzalloc_flex(*req, data, count); if (!req) return -ENOMEM; =20 --=20 2.54.0