mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH] intel_th: msu-sink: reduce priv allocation to 1
@ 2026-03-20  0:56 Rosen Penev
  0 siblings, 0 replies; only message in thread
From: Rosen Penev @ 2026-03-20  0:56 UTC (permalink / raw)
  To: linux-kernel; +Cc: Alexander Shishkin

Simpler to use a flexible array member and kzalloc_flex.

Signed-off-by: Rosen Penev <rosenp@gmail.com>
---
 drivers/hwtracing/intel_th/msu-sink.c | 11 ++---------
 1 file changed, 2 insertions(+), 9 deletions(-)

diff --git a/drivers/hwtracing/intel_th/msu-sink.c b/drivers/hwtracing/intel_th/msu-sink.c
index b809a7f805a9..608d0f3d9e1a 100644
--- a/drivers/hwtracing/intel_th/msu-sink.c
+++ b/drivers/hwtracing/intel_th/msu-sink.c
@@ -15,24 +15,18 @@
 
 struct msu_sink_private {
 	struct device	*dev;
-	struct sg_table **sgts;
 	unsigned int	nr_sgts;
+	struct sg_table *sgts[];
 };
 
 static void *msu_sink_assign(struct device *dev, int *mode)
 {
 	struct msu_sink_private *priv;
 
-	priv = kzalloc_obj(*priv);
+	priv = kzalloc_flex(*priv, sgts, MAX_SGTS, GFP_KERNEL);
 	if (!priv)
 		return NULL;
 
-	priv->sgts = kcalloc(MAX_SGTS, sizeof(void *), GFP_KERNEL);
-	if (!priv->sgts) {
-		kfree(priv);
-		return NULL;
-	}
-
 	priv->dev = dev;
 	*mode = MSC_MODE_MULTI;
 
@@ -43,7 +37,6 @@ static void msu_sink_unassign(void *data)
 {
 	struct msu_sink_private *priv = data;
 
-	kfree(priv->sgts);
 	kfree(priv);
 }
 
-- 
2.53.0


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2026-03-20  0:56 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-03-20  0:56 [PATCH] intel_th: msu-sink: reduce priv allocation to 1 Rosen Penev

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®