Archive-only list for patches
 help / color / mirror / Atom feed
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: stable@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	patches@lists.linux.dev, Jerome Brunet <jbrunet@baylibre.com>,
	Mark Brown <broonie@kernel.org>, Sasha Levin <sashal@kernel.org>
Subject: [PATCH 5.4 159/462] ASoC: meson: axg: extract sound card utils
Date: Wed,  6 Nov 2024 13:00:52 +0100	[thread overview]
Message-ID: <20241106120335.450181670@linuxfoundation.org> (raw)
In-Reply-To: <20241106120331.497003148@linuxfoundation.org>

5.4-stable review patch.  If anyone has any objections, please let me know.

------------------

From: Jerome Brunet <jbrunet@baylibre.com>

[ Upstream commit aa9c3b7273a58b5d9b2c1161b76b5fc8ea8c159b ]

This prepares the addition of the GX SoC family sound card driver.
The GX sound card, while slightly different, will be similar to the
AXG one. The purpose of this change is to share the utils common to
both sound card driver.

Signed-off-by: Jerome Brunet <jbrunet@baylibre.com>
Link: https://lore.kernel.org/r/20200213155159.3235792-8-jbrunet@baylibre.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Stable-dep-of: 4f9a71435953 ("ASoC: meson: axg-card: fix 'use-after-free'")
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 sound/soc/meson/Kconfig            |   4 +
 sound/soc/meson/Makefile           |   2 +
 sound/soc/meson/axg-card.c         | 403 ++---------------------------
 sound/soc/meson/meson-card-utils.c | 385 +++++++++++++++++++++++++++
 sound/soc/meson/meson-card.h       |  55 ++++
 5 files changed, 473 insertions(+), 376 deletions(-)
 create mode 100644 sound/soc/meson/meson-card-utils.c
 create mode 100644 sound/soc/meson/meson-card.h

diff --git a/sound/soc/meson/Kconfig b/sound/soc/meson/Kconfig
index f9188274f6b0f..ce15de42945b5 100644
--- a/sound/soc/meson/Kconfig
+++ b/sound/soc/meson/Kconfig
@@ -50,6 +50,7 @@ config SND_MESON_AXG_TDMOUT
 config SND_MESON_AXG_SOUND_CARD
 	tristate "Amlogic AXG Sound Card Support"
 	select SND_MESON_AXG_TDM_INTERFACE
+	select SND_MESON_CARD_UTILS
 	imply SND_MESON_AXG_FRDDR
 	imply SND_MESON_AXG_TODDR
 	imply SND_MESON_AXG_TDMIN
@@ -85,6 +86,9 @@ config SND_MESON_AXG_PDM
 	  Select Y or M to add support for PDM input embedded
 	  in the Amlogic AXG SoC family
 
+config SND_MESON_CARD_UTILS
+       tristate
+
 config SND_MESON_CODEC_GLUE
 	tristate
 
diff --git a/sound/soc/meson/Makefile b/sound/soc/meson/Makefile
index 529a807b3f376..6e248260617fe 100644
--- a/sound/soc/meson/Makefile
+++ b/sound/soc/meson/Makefile
@@ -11,6 +11,7 @@ snd-soc-meson-axg-sound-card-objs := axg-card.o
 snd-soc-meson-axg-spdifin-objs := axg-spdifin.o
 snd-soc-meson-axg-spdifout-objs := axg-spdifout.o
 snd-soc-meson-axg-pdm-objs := axg-pdm.o
+snd-soc-meson-card-utils-objs := meson-card-utils.o
 snd-soc-meson-codec-glue-objs := meson-codec-glue.o
 snd-soc-meson-g12a-tohdmitx-objs := g12a-tohdmitx.o
 
@@ -25,5 +26,6 @@ obj-$(CONFIG_SND_MESON_AXG_SOUND_CARD) += snd-soc-meson-axg-sound-card.o
 obj-$(CONFIG_SND_MESON_AXG_SPDIFIN) += snd-soc-meson-axg-spdifin.o
 obj-$(CONFIG_SND_MESON_AXG_SPDIFOUT) += snd-soc-meson-axg-spdifout.o
 obj-$(CONFIG_SND_MESON_AXG_PDM) += snd-soc-meson-axg-pdm.o
+obj-$(CONFIG_SND_MESON_CARD_UTILS) += snd-soc-meson-card-utils.o
 obj-$(CONFIG_SND_MESON_CODEC_GLUE) += snd-soc-meson-codec-glue.o
 obj-$(CONFIG_SND_MESON_G12A_TOHDMITX) += snd-soc-meson-g12a-tohdmitx.o
diff --git a/sound/soc/meson/axg-card.c b/sound/soc/meson/axg-card.c
index 7126344017fa6..6bb3a8f0a788d 100644
--- a/sound/soc/meson/axg-card.c
+++ b/sound/soc/meson/axg-card.c
@@ -9,11 +9,7 @@
 #include <sound/soc-dai.h>
 
 #include "axg-tdm.h"
-
-struct axg_card {
-	struct snd_soc_card card;
-	void **link_data;
-};
+#include "meson-card.h"
 
 struct axg_dai_link_tdm_mask {
 	u32 tx;
@@ -41,161 +37,15 @@ static const struct snd_soc_pcm_stream codec_params = {
 	.channels_max = 8,
 };
 
-#define PREFIX "amlogic,"
-
-static int axg_card_reallocate_links(struct axg_card *priv,
-				     unsigned int num_links)
-{
-	struct snd_soc_dai_link *links;
-	void **ldata;
-
-	links = krealloc(priv->card.dai_link,
-			 num_links * sizeof(*priv->card.dai_link),
-			 GFP_KERNEL | __GFP_ZERO);
-	ldata = krealloc(priv->link_data,
-			 num_links * sizeof(*priv->link_data),
-			 GFP_KERNEL | __GFP_ZERO);
-
-	if (!links || !ldata) {
-		dev_err(priv->card.dev, "failed to allocate links\n");
-		return -ENOMEM;
-	}
-
-	priv->card.dai_link = links;
-	priv->link_data = ldata;
-	priv->card.num_links = num_links;
-	return 0;
-}
-
-static int axg_card_parse_dai(struct snd_soc_card *card,
-			      struct device_node *node,
-			      struct device_node **dai_of_node,
-			      const char **dai_name)
-{
-	struct of_phandle_args args;
-	int ret;
-
-	if (!dai_name || !dai_of_node || !node)
-		return -EINVAL;
-
-	ret = of_parse_phandle_with_args(node, "sound-dai",
-					 "#sound-dai-cells", 0, &args);
-	if (ret) {
-		if (ret != -EPROBE_DEFER)
-			dev_err(card->dev, "can't parse dai %d\n", ret);
-		return ret;
-	}
-	*dai_of_node = args.np;
-
-	return snd_soc_get_dai_name(&args, dai_name);
-}
-
-static int axg_card_set_link_name(struct snd_soc_card *card,
-				  struct snd_soc_dai_link *link,
-				  struct device_node *node,
-				  const char *prefix)
-{
-	char *name = devm_kasprintf(card->dev, GFP_KERNEL, "%s.%s",
-				    prefix, node->full_name);
-	if (!name)
-		return -ENOMEM;
-
-	link->name = name;
-	link->stream_name = name;
-
-	return 0;
-}
-
-static void axg_card_clean_references(struct axg_card *priv)
-{
-	struct snd_soc_card *card = &priv->card;
-	struct snd_soc_dai_link *link;
-	struct snd_soc_dai_link_component *codec;
-	struct snd_soc_aux_dev *aux;
-	int i, j;
-
-	if (card->dai_link) {
-		for_each_card_prelinks(card, i, link) {
-			if (link->cpus)
-				of_node_put(link->cpus->of_node);
-			for_each_link_codecs(link, j, codec)
-				of_node_put(codec->of_node);
-		}
-	}
-
-	if (card->aux_dev) {
-		for_each_card_pre_auxs(card, i, aux)
-			of_node_put(aux->dlc.of_node);
-	}
-
-	kfree(card->dai_link);
-	kfree(priv->link_data);
-}
-
-static int axg_card_add_aux_devices(struct snd_soc_card *card)
-{
-	struct device_node *node = card->dev->of_node;
-	struct snd_soc_aux_dev *aux;
-	int num, i;
-
-	num = of_count_phandle_with_args(node, "audio-aux-devs", NULL);
-	if (num == -ENOENT) {
-		/*
-		 * It is ok to have no auxiliary devices but for this card it
-		 * is a strange situtation. Let's warn the about it.
-		 */
-		dev_warn(card->dev, "card has no auxiliary devices\n");
-		return 0;
-	} else if (num < 0) {
-		dev_err(card->dev, "error getting auxiliary devices: %d\n",
-			num);
-		return num;
-	}
-
-	aux = devm_kcalloc(card->dev, num, sizeof(*aux), GFP_KERNEL);
-	if (!aux)
-		return -ENOMEM;
-	card->aux_dev = aux;
-	card->num_aux_devs = num;
-
-	for_each_card_pre_auxs(card, i, aux) {
-		aux->dlc.of_node =
-			of_parse_phandle(node, "audio-aux-devs", i);
-		if (!aux->dlc.of_node)
-			return -EINVAL;
-	}
-
-	return 0;
-}
-
 static int axg_card_tdm_be_hw_params(struct snd_pcm_substream *substream,
 				     struct snd_pcm_hw_params *params)
 {
 	struct snd_soc_pcm_runtime *rtd = substream->private_data;
-	struct axg_card *priv = snd_soc_card_get_drvdata(rtd->card);
+	struct meson_card *priv = snd_soc_card_get_drvdata(rtd->card);
 	struct axg_dai_link_tdm_data *be =
 		(struct axg_dai_link_tdm_data *)priv->link_data[rtd->num];
-	struct snd_soc_dai *codec_dai;
-	unsigned int mclk;
-	int ret, i;
-
-	if (be->mclk_fs) {
-		mclk = params_rate(params) * be->mclk_fs;
-
-		for_each_rtd_codec_dai(rtd, i, codec_dai) {
-			ret = snd_soc_dai_set_sysclk(codec_dai, 0, mclk,
-						     SND_SOC_CLOCK_IN);
-			if (ret && ret != -ENOTSUPP)
-				return ret;
-		}
-
-		ret = snd_soc_dai_set_sysclk(rtd->cpu_dai, 0, mclk,
-					     SND_SOC_CLOCK_OUT);
-		if (ret && ret != -ENOTSUPP)
-			return ret;
-	}
 
-	return 0;
+	return meson_card_i2s_set_sysclk(substream, params, be->mclk_fs);
 }
 
 static const struct snd_soc_ops axg_card_tdm_be_ops = {
@@ -204,7 +54,7 @@ static const struct snd_soc_ops axg_card_tdm_be_ops = {
 
 static int axg_card_tdm_dai_init(struct snd_soc_pcm_runtime *rtd)
 {
-	struct axg_card *priv = snd_soc_card_get_drvdata(rtd->card);
+	struct meson_card *priv = snd_soc_card_get_drvdata(rtd->card);
 	struct axg_dai_link_tdm_data *be =
 		(struct axg_dai_link_tdm_data *)priv->link_data[rtd->num];
 	struct snd_soc_dai *codec_dai;
@@ -234,7 +84,7 @@ static int axg_card_tdm_dai_init(struct snd_soc_pcm_runtime *rtd)
 
 static int axg_card_tdm_dai_lb_init(struct snd_soc_pcm_runtime *rtd)
 {
-	struct axg_card *priv = snd_soc_card_get_drvdata(rtd->card);
+	struct meson_card *priv = snd_soc_card_get_drvdata(rtd->card);
 	struct axg_dai_link_tdm_data *be =
 		(struct axg_dai_link_tdm_data *)priv->link_data[rtd->num];
 	int ret;
@@ -253,14 +103,14 @@ static int axg_card_tdm_dai_lb_init(struct snd_soc_pcm_runtime *rtd)
 static int axg_card_add_tdm_loopback(struct snd_soc_card *card,
 				     int *index)
 {
-	struct axg_card *priv = snd_soc_card_get_drvdata(card);
+	struct meson_card *priv = snd_soc_card_get_drvdata(card);
 	struct snd_soc_dai_link *pad = &card->dai_link[*index];
 	struct snd_soc_dai_link *lb;
 	struct snd_soc_dai_link_component *dlc;
 	int ret;
 
 	/* extend links */
-	ret = axg_card_reallocate_links(priv, card->num_links + 1);
+	ret = meson_card_reallocate_links(card, card->num_links + 1);
 	if (ret)
 		return ret;
 
@@ -304,32 +154,6 @@ static int axg_card_add_tdm_loopback(struct snd_soc_card *card,
 	return 0;
 }
 
-static unsigned int axg_card_parse_daifmt(struct device_node *node,
-					  struct device_node *cpu_node)
-{
-	struct device_node *bitclkmaster = NULL;
-	struct device_node *framemaster = NULL;
-	unsigned int daifmt;
-
-	daifmt = snd_soc_of_parse_daifmt(node, PREFIX,
-					 &bitclkmaster, &framemaster);
-	daifmt &= ~SND_SOC_DAIFMT_MASTER_MASK;
-
-	/* If no master is provided, default to cpu master */
-	if (!bitclkmaster || bitclkmaster == cpu_node) {
-		daifmt |= (!framemaster || framemaster == cpu_node) ?
-			SND_SOC_DAIFMT_CBS_CFS : SND_SOC_DAIFMT_CBS_CFM;
-	} else {
-		daifmt |= (!framemaster || framemaster == cpu_node) ?
-			SND_SOC_DAIFMT_CBM_CFS : SND_SOC_DAIFMT_CBM_CFM;
-	}
-
-	of_node_put(bitclkmaster);
-	of_node_put(framemaster);
-
-	return daifmt;
-}
-
 static int axg_card_parse_cpu_tdm_slots(struct snd_soc_card *card,
 					struct snd_soc_dai_link *link,
 					struct device_node *node,
@@ -424,7 +248,7 @@ static int axg_card_parse_tdm(struct snd_soc_card *card,
 			      struct device_node *node,
 			      int *index)
 {
-	struct axg_card *priv = snd_soc_card_get_drvdata(card);
+	struct meson_card *priv = snd_soc_card_get_drvdata(card);
 	struct snd_soc_dai_link *link = &card->dai_link[*index];
 	struct axg_dai_link_tdm_data *be;
 	int ret;
@@ -438,7 +262,7 @@ static int axg_card_parse_tdm(struct snd_soc_card *card,
 	/* Setup tdm link */
 	link->ops = &axg_card_tdm_be_ops;
 	link->init = axg_card_tdm_dai_init;
-	link->dai_fmt = axg_card_parse_daifmt(node, link->cpus->of_node);
+	link->dai_fmt = meson_card_parse_daifmt(node, link->cpus->of_node);
 
 	of_property_read_u32(node, "mclk-fs", &be->mclk_fs);
 
@@ -462,97 +286,24 @@ static int axg_card_parse_tdm(struct snd_soc_card *card,
 	return 0;
 }
 
-static int axg_card_set_be_link(struct snd_soc_card *card,
-				struct snd_soc_dai_link *link,
-				struct device_node *node)
-{
-	struct snd_soc_dai_link_component *codec;
-	struct device_node *np;
-	int ret, num_codecs;
-
-	link->no_pcm = 1;
-	link->dpcm_playback = 1;
-	link->dpcm_capture = 1;
-
-	num_codecs = of_get_child_count(node);
-	if (!num_codecs) {
-		dev_err(card->dev, "be link %s has no codec\n",
-			node->full_name);
-		return -EINVAL;
-	}
-
-	codec = devm_kcalloc(card->dev, num_codecs, sizeof(*codec), GFP_KERNEL);
-	if (!codec)
-		return -ENOMEM;
-
-	link->codecs = codec;
-	link->num_codecs = num_codecs;
-
-	for_each_child_of_node(node, np) {
-		ret = axg_card_parse_dai(card, np, &codec->of_node,
-					 &codec->dai_name);
-		if (ret) {
-			of_node_put(np);
-			return ret;
-		}
-
-		codec++;
-	}
-
-	ret = axg_card_set_link_name(card, link, node, "be");
-	if (ret)
-		dev_err(card->dev, "error setting %pOFn link name\n", np);
-
-	return ret;
-}
-
-static int axg_card_set_fe_link(struct snd_soc_card *card,
-				struct snd_soc_dai_link *link,
-				struct device_node *node,
-				bool is_playback)
-{
-	struct snd_soc_dai_link_component *codec;
-
-	codec = devm_kzalloc(card->dev, sizeof(*codec), GFP_KERNEL);
-	if (!codec)
-		return -ENOMEM;
-
-	link->codecs = codec;
-	link->num_codecs = 1;
-
-	link->dynamic = 1;
-	link->dpcm_merged_format = 1;
-	link->dpcm_merged_chan = 1;
-	link->dpcm_merged_rate = 1;
-	link->codecs->dai_name = "snd-soc-dummy-dai";
-	link->codecs->name = "snd-soc-dummy";
-
-	if (is_playback)
-		link->dpcm_playback = 1;
-	else
-		link->dpcm_capture = 1;
-
-	return axg_card_set_link_name(card, link, node, "fe");
-}
-
 static int axg_card_cpu_is_capture_fe(struct device_node *np)
 {
-	return of_device_is_compatible(np, PREFIX "axg-toddr");
+	return of_device_is_compatible(np, DT_PREFIX "axg-toddr");
 }
 
 static int axg_card_cpu_is_playback_fe(struct device_node *np)
 {
-	return of_device_is_compatible(np, PREFIX "axg-frddr");
+	return of_device_is_compatible(np, DT_PREFIX "axg-frddr");
 }
 
 static int axg_card_cpu_is_tdm_iface(struct device_node *np)
 {
-	return of_device_is_compatible(np, PREFIX "axg-tdm-iface");
+	return of_device_is_compatible(np, DT_PREFIX "axg-tdm-iface");
 }
 
 static int axg_card_cpu_is_codec(struct device_node *np)
 {
-	return of_device_is_compatible(np, PREFIX "g12a-tohdmitx");
+	return of_device_is_compatible(np, DT_PREFIX "g12a-tohdmitx");
 }
 
 static int axg_card_add_link(struct snd_soc_card *card, struct device_node *np,
@@ -569,17 +320,17 @@ static int axg_card_add_link(struct snd_soc_card *card, struct device_node *np,
 	dai_link->cpus = cpu;
 	dai_link->num_cpus = 1;
 
-	ret = axg_card_parse_dai(card, np, &dai_link->cpus->of_node,
-				 &dai_link->cpus->dai_name);
+	ret = meson_card_parse_dai(card, np, &dai_link->cpus->of_node,
+				   &dai_link->cpus->dai_name);
 	if (ret)
 		return ret;
 
 	if (axg_card_cpu_is_playback_fe(dai_link->cpus->of_node))
-		ret = axg_card_set_fe_link(card, dai_link, np, true);
+		ret = meson_card_set_fe_link(card, dai_link, np, true);
 	else if (axg_card_cpu_is_capture_fe(dai_link->cpus->of_node))
-		ret = axg_card_set_fe_link(card, dai_link, np, false);
+		ret = meson_card_set_fe_link(card, dai_link, np, false);
 	else
-		ret = axg_card_set_be_link(card, dai_link, np);
+		ret = meson_card_set_be_link(card, dai_link, np);
 
 	if (ret)
 		return ret;
@@ -592,121 +343,21 @@ static int axg_card_add_link(struct snd_soc_card *card, struct device_node *np,
 	return ret;
 }
 
-static int axg_card_add_links(struct snd_soc_card *card)
-{
-	struct axg_card *priv = snd_soc_card_get_drvdata(card);
-	struct device_node *node = card->dev->of_node;
-	struct device_node *np;
-	int num, i, ret;
-
-	num = of_get_child_count(node);
-	if (!num) {
-		dev_err(card->dev, "card has no links\n");
-		return -EINVAL;
-	}
-
-	ret = axg_card_reallocate_links(priv, num);
-	if (ret)
-		return ret;
-
-	i = 0;
-	for_each_child_of_node(node, np) {
-		ret = axg_card_add_link(card, np, &i);
-		if (ret) {
-			of_node_put(np);
-			return ret;
-		}
-
-		i++;
-	}
-
-	return 0;
-}
-
-static int axg_card_parse_of_optional(struct snd_soc_card *card,
-				      const char *propname,
-				      int (*func)(struct snd_soc_card *c,
-						  const char *p))
-{
-	/* If property is not provided, don't fail ... */
-	if (!of_property_read_bool(card->dev->of_node, propname))
-		return 0;
-
-	/* ... but do fail if it is provided and the parsing fails */
-	return func(card, propname);
-}
+static const struct meson_card_match_data axg_card_match_data = {
+	.add_link = axg_card_add_link,
+};
 
 static const struct of_device_id axg_card_of_match[] = {
-	{ .compatible = "amlogic,axg-sound-card", },
-	{}
+	{
+		.compatible = "amlogic,axg-sound-card",
+		.data = &axg_card_match_data,
+	}, {}
 };
 MODULE_DEVICE_TABLE(of, axg_card_of_match);
 
-static int axg_card_probe(struct platform_device *pdev)
-{
-	struct device *dev = &pdev->dev;
-	struct axg_card *priv;
-	int ret;
-
-	priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
-	if (!priv)
-		return -ENOMEM;
-
-	platform_set_drvdata(pdev, priv);
-	snd_soc_card_set_drvdata(&priv->card, priv);
-
-	priv->card.owner = THIS_MODULE;
-	priv->card.dev = dev;
-
-	ret = snd_soc_of_parse_card_name(&priv->card, "model");
-	if (ret < 0)
-		return ret;
-
-	ret = axg_card_parse_of_optional(&priv->card, "audio-routing",
-					 snd_soc_of_parse_audio_routing);
-	if (ret) {
-		dev_err(dev, "error while parsing routing\n");
-		return ret;
-	}
-
-	ret = axg_card_parse_of_optional(&priv->card, "audio-widgets",
-					 snd_soc_of_parse_audio_simple_widgets);
-	if (ret) {
-		dev_err(dev, "error while parsing widgets\n");
-		return ret;
-	}
-
-	ret = axg_card_add_links(&priv->card);
-	if (ret)
-		goto out_err;
-
-	ret = axg_card_add_aux_devices(&priv->card);
-	if (ret)
-		goto out_err;
-
-	ret = devm_snd_soc_register_card(dev, &priv->card);
-	if (ret)
-		goto out_err;
-
-	return 0;
-
-out_err:
-	axg_card_clean_references(priv);
-	return ret;
-}
-
-static int axg_card_remove(struct platform_device *pdev)
-{
-	struct axg_card *priv = platform_get_drvdata(pdev);
-
-	axg_card_clean_references(priv);
-
-	return 0;
-}
-
 static struct platform_driver axg_card_pdrv = {
-	.probe = axg_card_probe,
-	.remove = axg_card_remove,
+	.probe = meson_card_probe,
+	.remove = meson_card_remove,
 	.driver = {
 		.name = "axg-sound-card",
 		.of_match_table = axg_card_of_match,
diff --git a/sound/soc/meson/meson-card-utils.c b/sound/soc/meson/meson-card-utils.c
new file mode 100644
index 0000000000000..a70d244ef88b6
--- /dev/null
+++ b/sound/soc/meson/meson-card-utils.c
@@ -0,0 +1,385 @@
+// SPDX-License-Identifier: GPL-2.0
+//
+// Copyright (c) 2020 BayLibre, SAS.
+// Author: Jerome Brunet <jbrunet@baylibre.com>
+
+#include <linux/module.h>
+#include <linux/of_platform.h>
+#include <sound/soc.h>
+
+#include "meson-card.h"
+
+int meson_card_i2s_set_sysclk(struct snd_pcm_substream *substream,
+			      struct snd_pcm_hw_params *params,
+			      unsigned int mclk_fs)
+{
+	struct snd_soc_pcm_runtime *rtd = substream->private_data;
+	struct snd_soc_dai *codec_dai;
+	unsigned int mclk;
+	int ret, i;
+
+	if (!mclk_fs)
+		return 0;
+
+	mclk = params_rate(params) * mclk_fs;
+
+	for_each_rtd_codec_dai(rtd, i, codec_dai) {
+		ret = snd_soc_dai_set_sysclk(codec_dai, 0, mclk,
+					     SND_SOC_CLOCK_IN);
+		if (ret && ret != -ENOTSUPP)
+			return ret;
+	}
+
+	ret = snd_soc_dai_set_sysclk(rtd->cpu_dai, 0, mclk,
+				     SND_SOC_CLOCK_OUT);
+	if (ret && ret != -ENOTSUPP)
+		return ret;
+
+	return 0;
+}
+EXPORT_SYMBOL_GPL(meson_card_i2s_set_sysclk);
+
+int meson_card_reallocate_links(struct snd_soc_card *card,
+				unsigned int num_links)
+{
+	struct meson_card *priv = snd_soc_card_get_drvdata(card);
+	struct snd_soc_dai_link *links;
+	void **ldata;
+
+	links = krealloc(priv->card.dai_link,
+			 num_links * sizeof(*priv->card.dai_link),
+			 GFP_KERNEL | __GFP_ZERO);
+	ldata = krealloc(priv->link_data,
+			 num_links * sizeof(*priv->link_data),
+			 GFP_KERNEL | __GFP_ZERO);
+
+	if (!links || !ldata) {
+		dev_err(priv->card.dev, "failed to allocate links\n");
+		return -ENOMEM;
+	}
+
+	priv->card.dai_link = links;
+	priv->link_data = ldata;
+	priv->card.num_links = num_links;
+	return 0;
+}
+EXPORT_SYMBOL_GPL(meson_card_reallocate_links);
+
+int meson_card_parse_dai(struct snd_soc_card *card,
+			 struct device_node *node,
+			 struct device_node **dai_of_node,
+			 const char **dai_name)
+{
+	struct of_phandle_args args;
+	int ret;
+
+	if (!dai_name || !dai_of_node || !node)
+		return -EINVAL;
+
+	ret = of_parse_phandle_with_args(node, "sound-dai",
+					 "#sound-dai-cells", 0, &args);
+	if (ret) {
+		if (ret != -EPROBE_DEFER)
+			dev_err(card->dev, "can't parse dai %d\n", ret);
+		return ret;
+	}
+	*dai_of_node = args.np;
+
+	return snd_soc_get_dai_name(&args, dai_name);
+}
+EXPORT_SYMBOL_GPL(meson_card_parse_dai);
+
+static int meson_card_set_link_name(struct snd_soc_card *card,
+				    struct snd_soc_dai_link *link,
+				    struct device_node *node,
+				    const char *prefix)
+{
+	char *name = devm_kasprintf(card->dev, GFP_KERNEL, "%s.%s",
+				    prefix, node->full_name);
+	if (!name)
+		return -ENOMEM;
+
+	link->name = name;
+	link->stream_name = name;
+
+	return 0;
+}
+
+unsigned int meson_card_parse_daifmt(struct device_node *node,
+				     struct device_node *cpu_node)
+{
+	struct device_node *bitclkmaster = NULL;
+	struct device_node *framemaster = NULL;
+	unsigned int daifmt;
+
+	daifmt = snd_soc_of_parse_daifmt(node, DT_PREFIX,
+					 &bitclkmaster, &framemaster);
+	daifmt &= ~SND_SOC_DAIFMT_MASTER_MASK;
+
+	/* If no master is provided, default to cpu master */
+	if (!bitclkmaster || bitclkmaster == cpu_node) {
+		daifmt |= (!framemaster || framemaster == cpu_node) ?
+			SND_SOC_DAIFMT_CBS_CFS : SND_SOC_DAIFMT_CBS_CFM;
+	} else {
+		daifmt |= (!framemaster || framemaster == cpu_node) ?
+			SND_SOC_DAIFMT_CBM_CFS : SND_SOC_DAIFMT_CBM_CFM;
+	}
+
+	of_node_put(bitclkmaster);
+	of_node_put(framemaster);
+
+	return daifmt;
+}
+EXPORT_SYMBOL_GPL(meson_card_parse_daifmt);
+
+int meson_card_set_be_link(struct snd_soc_card *card,
+			   struct snd_soc_dai_link *link,
+			   struct device_node *node)
+{
+	struct snd_soc_dai_link_component *codec;
+	struct device_node *np;
+	int ret, num_codecs;
+
+	link->no_pcm = 1;
+	link->dpcm_playback = 1;
+	link->dpcm_capture = 1;
+
+	num_codecs = of_get_child_count(node);
+	if (!num_codecs) {
+		dev_err(card->dev, "be link %s has no codec\n",
+			node->full_name);
+		return -EINVAL;
+	}
+
+	codec = devm_kcalloc(card->dev, num_codecs, sizeof(*codec), GFP_KERNEL);
+	if (!codec)
+		return -ENOMEM;
+
+	link->codecs = codec;
+	link->num_codecs = num_codecs;
+
+	for_each_child_of_node(node, np) {
+		ret = meson_card_parse_dai(card, np, &codec->of_node,
+					   &codec->dai_name);
+		if (ret) {
+			of_node_put(np);
+			return ret;
+		}
+
+		codec++;
+	}
+
+	ret = meson_card_set_link_name(card, link, node, "be");
+	if (ret)
+		dev_err(card->dev, "error setting %pOFn link name\n", np);
+
+	return ret;
+}
+EXPORT_SYMBOL_GPL(meson_card_set_be_link);
+
+int meson_card_set_fe_link(struct snd_soc_card *card,
+			   struct snd_soc_dai_link *link,
+			   struct device_node *node,
+			   bool is_playback)
+{
+	struct snd_soc_dai_link_component *codec;
+
+	codec = devm_kzalloc(card->dev, sizeof(*codec), GFP_KERNEL);
+	if (!codec)
+		return -ENOMEM;
+
+	link->codecs = codec;
+	link->num_codecs = 1;
+
+	link->dynamic = 1;
+	link->dpcm_merged_format = 1;
+	link->dpcm_merged_chan = 1;
+	link->dpcm_merged_rate = 1;
+	link->codecs->dai_name = "snd-soc-dummy-dai";
+	link->codecs->name = "snd-soc-dummy";
+
+	if (is_playback)
+		link->dpcm_playback = 1;
+	else
+		link->dpcm_capture = 1;
+
+	return meson_card_set_link_name(card, link, node, "fe");
+}
+EXPORT_SYMBOL_GPL(meson_card_set_fe_link);
+
+static int meson_card_add_links(struct snd_soc_card *card)
+{
+	struct meson_card *priv = snd_soc_card_get_drvdata(card);
+	struct device_node *node = card->dev->of_node;
+	struct device_node *np;
+	int num, i, ret;
+
+	num = of_get_child_count(node);
+	if (!num) {
+		dev_err(card->dev, "card has no links\n");
+		return -EINVAL;
+	}
+
+	ret = meson_card_reallocate_links(card, num);
+	if (ret)
+		return ret;
+
+	i = 0;
+	for_each_child_of_node(node, np) {
+		ret = priv->match_data->add_link(card, np, &i);
+		if (ret) {
+			of_node_put(np);
+			return ret;
+		}
+
+		i++;
+	}
+
+	return 0;
+}
+
+static int meson_card_parse_of_optional(struct snd_soc_card *card,
+					const char *propname,
+					int (*func)(struct snd_soc_card *c,
+						    const char *p))
+{
+	/* If property is not provided, don't fail ... */
+	if (!of_property_read_bool(card->dev->of_node, propname))
+		return 0;
+
+	/* ... but do fail if it is provided and the parsing fails */
+	return func(card, propname);
+}
+
+static int meson_card_add_aux_devices(struct snd_soc_card *card)
+{
+	struct device_node *node = card->dev->of_node;
+	struct snd_soc_aux_dev *aux;
+	int num, i;
+
+	num = of_count_phandle_with_args(node, "audio-aux-devs", NULL);
+	if (num == -ENOENT) {
+		return 0;
+	} else if (num < 0) {
+		dev_err(card->dev, "error getting auxiliary devices: %d\n",
+			num);
+		return num;
+	}
+
+	aux = devm_kcalloc(card->dev, num, sizeof(*aux), GFP_KERNEL);
+	if (!aux)
+		return -ENOMEM;
+	card->aux_dev = aux;
+	card->num_aux_devs = num;
+
+	for_each_card_pre_auxs(card, i, aux) {
+		aux->dlc.of_node =
+			of_parse_phandle(node, "audio-aux-devs", i);
+		if (!aux->dlc.of_node)
+			return -EINVAL;
+	}
+
+	return 0;
+}
+
+static void meson_card_clean_references(struct meson_card *priv)
+{
+	struct snd_soc_card *card = &priv->card;
+	struct snd_soc_dai_link *link;
+	struct snd_soc_dai_link_component *codec;
+	struct snd_soc_aux_dev *aux;
+	int i, j;
+
+	if (card->dai_link) {
+		for_each_card_prelinks(card, i, link) {
+			if (link->cpus)
+				of_node_put(link->cpus->of_node);
+			for_each_link_codecs(link, j, codec)
+				of_node_put(codec->of_node);
+		}
+	}
+
+	if (card->aux_dev) {
+		for_each_card_pre_auxs(card, i, aux)
+			of_node_put(aux->dlc.of_node);
+	}
+
+	kfree(card->dai_link);
+	kfree(priv->link_data);
+}
+
+int meson_card_probe(struct platform_device *pdev)
+{
+	const struct meson_card_match_data *data;
+	struct device *dev = &pdev->dev;
+	struct meson_card *priv;
+	int ret;
+
+	data = of_device_get_match_data(dev);
+	if (!data) {
+		dev_err(dev, "failed to match device\n");
+		return -ENODEV;
+	}
+
+	priv = devm_kzalloc(dev, sizeof(*priv), GFP_KERNEL);
+	if (!priv)
+		return -ENOMEM;
+
+	platform_set_drvdata(pdev, priv);
+	snd_soc_card_set_drvdata(&priv->card, priv);
+
+	priv->card.owner = THIS_MODULE;
+	priv->card.dev = dev;
+	priv->match_data = data;
+
+	ret = snd_soc_of_parse_card_name(&priv->card, "model");
+	if (ret < 0)
+		return ret;
+
+	ret = meson_card_parse_of_optional(&priv->card, "audio-routing",
+					   snd_soc_of_parse_audio_routing);
+	if (ret) {
+		dev_err(dev, "error while parsing routing\n");
+		return ret;
+	}
+
+	ret = meson_card_parse_of_optional(&priv->card, "audio-widgets",
+					   snd_soc_of_parse_audio_simple_widgets);
+	if (ret) {
+		dev_err(dev, "error while parsing widgets\n");
+		return ret;
+	}
+
+	ret = meson_card_add_links(&priv->card);
+	if (ret)
+		goto out_err;
+
+	ret = meson_card_add_aux_devices(&priv->card);
+	if (ret)
+		goto out_err;
+
+	ret = devm_snd_soc_register_card(dev, &priv->card);
+	if (ret)
+		goto out_err;
+
+	return 0;
+
+out_err:
+	meson_card_clean_references(priv);
+	return ret;
+}
+EXPORT_SYMBOL_GPL(meson_card_probe);
+
+int meson_card_remove(struct platform_device *pdev)
+{
+	struct meson_card *priv = platform_get_drvdata(pdev);
+
+	meson_card_clean_references(priv);
+
+	return 0;
+}
+EXPORT_SYMBOL_GPL(meson_card_remove);
+
+MODULE_DESCRIPTION("Amlogic Sound Card Utils");
+MODULE_AUTHOR("Jerome Brunet <jbrunet@baylibre.com>");
+MODULE_LICENSE("GPL v2");
diff --git a/sound/soc/meson/meson-card.h b/sound/soc/meson/meson-card.h
new file mode 100644
index 0000000000000..74314071c80db
--- /dev/null
+++ b/sound/soc/meson/meson-card.h
@@ -0,0 +1,55 @@
+/* SPDX-License-Identifier: GPL-2.0 */
+/*
+ * Copyright (c) 2020 BayLibre, SAS.
+ * Author: Jerome Brunet <jbrunet@baylibre.com>
+ */
+
+#ifndef _MESON_SND_CARD_H
+#define _MESON_SND_CARD_H
+
+struct device_node;
+struct platform_device;
+
+struct snd_soc_card;
+struct snd_pcm_substream;
+struct snd_pcm_hw_params;
+
+#define DT_PREFIX "amlogic,"
+
+struct meson_card_match_data {
+	int (*add_link)(struct snd_soc_card *card,
+			struct device_node *node,
+			int *index);
+};
+
+struct meson_card {
+	const struct meson_card_match_data *match_data;
+	struct snd_soc_card card;
+	void **link_data;
+};
+
+unsigned int meson_card_parse_daifmt(struct device_node *node,
+				     struct device_node *cpu_node);
+
+int meson_card_i2s_set_sysclk(struct snd_pcm_substream *substream,
+			      struct snd_pcm_hw_params *params,
+			      unsigned int mclk_fs);
+
+int meson_card_reallocate_links(struct snd_soc_card *card,
+				unsigned int num_links);
+int meson_card_parse_dai(struct snd_soc_card *card,
+			 struct device_node *node,
+			 struct device_node **dai_of_node,
+			 const char **dai_name);
+int meson_card_set_be_link(struct snd_soc_card *card,
+			   struct snd_soc_dai_link *link,
+			   struct device_node *node);
+int meson_card_set_fe_link(struct snd_soc_card *card,
+			   struct snd_soc_dai_link *link,
+			   struct device_node *node,
+			   bool is_playback);
+
+int meson_card_probe(struct platform_device *pdev);
+int meson_card_remove(struct platform_device *pdev);
+
+#endif /* _MESON_SND_CARD_H */
-- 
2.43.0




  parent reply	other threads:[~2024-11-06 13:03 UTC|newest]

Thread overview: 467+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-11-06 11:58 [PATCH 5.4 000/462] 5.4.285-rc1 review Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 001/462] usbnet: ipheth: fix carrier detection in modes 1 and 4 Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 002/462] net: ethernet: use ip_hdrlen() instead of bit shift Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 003/462] net: phy: vitesse: repair vsc73xx autonegotiation Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 004/462] scripts: kconfig: merge_config: config files: add a trailing newline Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 005/462] arm64: dts: rockchip: override BIOS_DISABLE signal via GPIO hog on RK3399 Puma Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 006/462] ice: fix accounting for filters shared by multiple VSIs Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 007/462] net/mlx5e: Add missing link modes to ptys2ethtool_map Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 008/462] net: ftgmac100: Enable TX interrupt to avoid TX timeout Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 009/462] net: dpaa: Pad packets to ETH_ZLEN Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 010/462] spi: nxp-fspi: fix the KASAN report out-of-bounds bug Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 011/462] soundwire: stream: Revert "soundwire: stream: fix programming slave ports for non-continous port maps" Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 012/462] selftests: breakpoints: Fix a typo of function name Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 013/462] ASoC: allow module autoloading for table db1200_pids Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 014/462] ALSA: hda/realtek - Fixed ALC256 headphone no sound Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 015/462] ALSA: hda/realtek - FIxed ALC285 " Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 016/462] pinctrl: at91: make it work with current gpiolib Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 017/462] microblaze: dont treat zero reserved memory regions as error Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 018/462] net: ftgmac100: Ensure tx descriptor updates are visible Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 019/462] wifi: iwlwifi: mvm: fix iwl_mvm_max_scan_ie_fw_cmd_room() Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 020/462] wifi: iwlwifi: mvm: dont wait for tx queues if firmware is dead Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 021/462] ASoC: tda7419: fix module autoloading Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 022/462] drm: komeda: Fix an issue related to normalized zpos Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 023/462] spi: bcm63xx: Enable module autoloading Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 024/462] x86/hyperv: Set X86_FEATURE_TSC_KNOWN_FREQ when Hyper-V provides frequency Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 025/462] ocfs2: add bounds checking to ocfs2_xattr_find_entry() Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 026/462] ocfs2: strict bound check before memcmp in ocfs2_xattr_find_entry() Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 027/462] gpio: prevent potential speculation leaks in gpio_device_get_desc() Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 028/462] inet: inet_defrag: prevent sk release while still in use Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 029/462] bpf: Fix DEVMAP_HASH overflow check on 32-bit arches Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 030/462] USB: serial: pl2303: add device id for Macrosilicon MS3020 Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 031/462] USB: usbtmc: prevent kernel-usb-infoleak Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 032/462] ACPI: PMIC: Remove unneeded check in tps68470_pmic_opregion_probe() Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 033/462] wifi: ath9k: fix parameter check in ath9k_init_debug() Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 034/462] wifi: ath9k: Remove error checks when creating debugfs entries Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 035/462] fs: explicitly unregister per-superblock BDIs Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 036/462] mount: warn only once about timestamp range expiration Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 037/462] fs/namespace: fnic: Switch to use %ptTd Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 038/462] mount: handle OOM on mnt_warn_timestamp_expiry Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 039/462] can: j1939: use correct function name in comment Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 040/462] netfilter: nf_tables: elements with timeout below CONFIG_HZ never expire Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 041/462] netfilter: nf_tables: reject element expiration with no timeout Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 042/462] netfilter: nf_tables: reject expiration higher than timeout Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 043/462] wifi: cfg80211: fix UBSAN noise in cfg80211_wext_siwscan() Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 044/462] wifi: cfg80211: fix two more possible UBSAN-detected off-by-one errors Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 045/462] mac80211: parse radiotap header when selecting Tx queue Greg Kroah-Hartman
2024-11-06 11:58 ` [PATCH 5.4 046/462] wifi: mac80211: use two-phase skb reclamation in ieee80211_do_stop() Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 047/462] wifi: wilc1000: fix potential RCU dereference issue in wilc_parse_join_bss_param Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 048/462] sock_map: Add a cond_resched() in sock_hash_free() Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 049/462] can: bcm: Clear bo->bcm_proc_read after remove_proc_entry() Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 050/462] Bluetooth: btusb: Fix not handling ZPL/short-transfer Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 051/462] net: tipc: avoid possible garbage value Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 052/462] block, bfq: fix possible UAF for bfqq->bic with merge chain Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 053/462] block, bfq: choose the last bfqq from merge chain in bfq_setup_cooperator() Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 054/462] block, bfq: dont break merge chain in bfq_split_bfqq() Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 055/462] spi: ppc4xx: handle irq_of_parse_and_map() errors Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 056/462] spi: ppc4xx: Avoid returning 0 when failed to parse and map IRQ Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 057/462] ARM: dts: imx7d-zii-rmu2: fix Ethernet PHY pinctrl property Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 058/462] ARM: versatile: fix OF node leak in CPUs prepare Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 059/462] reset: berlin: fix OF node leak in probe() error path Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 060/462] clocksource/drivers/qcom: Add missing iounmap() on errors in msm_dt_timer_init() Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 061/462] hwmon: (max16065) Fix overflows seen when writing limits Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 062/462] mtd: slram: insert break after errors in parsing the map Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 063/462] hwmon: (ntc_thermistor) fix module autoloading Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 064/462] power: supply: axp20x_battery: allow disabling battery charging Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 065/462] power: supply: axp20x_battery: Remove design from min and max voltage Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 066/462] power: supply: max17042_battery: Fix SOC threshold calc w/ no current sense Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 067/462] fbdev: hpfb: Fix an error handling path in hpfb_dio_probe() Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 068/462] mtd: powernv: Add check devm_kasprintf() returned value Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 069/462] drm/stm: Fix an error handling path in stm_drm_platform_probe() Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 070/462] drm/amdgpu: Replace one-element array with flexible-array member Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 071/462] drm/amdgpu: properly handle vbios fake edid sizing Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 072/462] drm/radeon: Replace one-element array with flexible-array member Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 073/462] drm/radeon: properly handle vbios fake edid sizing Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 074/462] drm/rockchip: vop: Allow 4096px width scaling Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 075/462] drm/rockchip: dw_hdmi: Fix reading EDID when using a forced mode Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 076/462] drm/radeon/evergreen_cs: fix int overflow errors in cs track offsets Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 077/462] jfs: fix out-of-bounds in dbNextAG() and diAlloc() Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 078/462] drm/msm: Fix incorrect file name output in adreno_request_fw() Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 079/462] drm/msm/a5xx: disable preemption in submits by default Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 080/462] drm/msm/a5xx: properly clear preemption records on resume Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 081/462] drm/msm/a5xx: fix races in preemption evaluation stage Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 082/462] ipmi: docs: dont advertise deprecated sysfs entries Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 083/462] drm/msm: fix %s null argument error Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 084/462] drivers:drm:exynos_drm_gsc:Fix wrong assignment in gsc_bind() Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 085/462] xen: use correct end address of kernel for conflict checking Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 086/462] xen/swiotlb: add alignment check for dma buffers Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 087/462] tpm: Clean up TPM space after command failure Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 088/462] selftests/bpf: Fix compile error from rlim_t in sk_storage_map.c Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 089/462] selftests/bpf: Fix compiling flow_dissector.c with musl-libc Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 090/462] selftests/bpf: Fix compiling tcp_rtt.c " Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 091/462] selftests/bpf: Fix error compiling test_lru_map.c Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 092/462] xz: cleanup CRC32 edits from 2018 Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 093/462] kthread: add kthread_work tracepoints Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 094/462] kthread: fix task state in kthread worker if being frozen Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 095/462] jbd2: introduce/export functions jbd2_journal_submit|finish_inode_data_buffers() Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 096/462] ext4: clear EXT4_GROUP_INFO_WAS_TRIMMED_BIT even mount with discard Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 097/462] smackfs: Use rcu_assign_pointer() to ensure safe assignment in smk_set_cipso Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 098/462] ext4: avoid negative min_clusters in find_group_orlov() Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 099/462] ext4: return error on ext4_find_inline_entry Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 100/462] ext4: avoid OOB when system.data xattr changes underneath the filesystem Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 101/462] nilfs2: fix potential null-ptr-deref in nilfs_btree_insert() Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 102/462] nilfs2: determine empty node blocks as corrupted Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 103/462] nilfs2: fix potential oob read in nilfs_btree_check_delete() Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 104/462] bpf: Fix bpf_strtol and bpf_strtoul helpers for 32bit Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 105/462] perf sched timehist: Fix missing free of session in perf_sched__timehist() Greg Kroah-Hartman
2024-11-06 11:59 ` [PATCH 5.4 106/462] perf sched timehist: Fixed timestamp error when unable to confirm event sched_in time Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 107/462] perf time-utils: Fix 32-bit nsec parsing Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 108/462] clk: rockchip: Set parent rate for DCLK_VOP clock on RK3228 Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 109/462] drivers: media: dvb-frontends/rtl2832: fix an out-of-bounds write error Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 110/462] drivers: media: dvb-frontends/rtl2830: " Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 111/462] PCI: keystone: Fix if-statement expression in ks_pcie_quirk() Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 112/462] PCI: xilinx-nwl: Fix register misspelling Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 113/462] RDMA/iwcm: Fix WARNING:at_kernel/workqueue.c:#check_flush_dependency Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 114/462] pinctrl: single: fix missing error code in pcs_probe() Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 115/462] clk: ti: dra7-atl: Fix leak of of_nodes Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 116/462] pinctrl: mvebu: Use devm_platform_get_and_ioremap_resource() Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 117/462] pinctrl: mvebu: Fix devinit_dove_pinctrl_probe function Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 118/462] watchdog: imx_sc_wdt: Dont disable WDT in suspend Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 119/462] RDMA/hns: Optimize hem allocation performance Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 120/462] riscv: Fix fp alignment bug in perf_callchain_user() Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 121/462] RDMA/cxgb4: Added NULL check for lookup_atid Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 122/462] ntb: intel: Fix the NULL vs IS_ERR() bug for debugfs_create_dir() Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 123/462] nfsd: call cache_put if xdr_reserve_space returns NULL Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 124/462] nfsd: return -EINVAL when namelen is 0 Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 125/462] f2fs: enhance to update i_mode and acl atomically in f2fs_setattr() Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 126/462] f2fs: fix typo Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 127/462] f2fs: fix to update i_ctime in __f2fs_setxattr() Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 128/462] f2fs: remove unneeded check condition " Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 129/462] f2fs: reduce expensive checkpoint trigger frequency Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 130/462] iio: adc: ad7606: fix oversampling gpio array Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 131/462] iio: adc: ad7606: fix standby gpio state to match the documentation Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 132/462] coresight: tmc: sg: Do not leak sg_table Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 133/462] netfilter: nf_reject_ipv6: fix nf_reject_ip6_tcphdr_put() Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 134/462] net: seeq: Fix use after free vulnerability in ether3 Driver Due to Race Condition Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 135/462] tcp: check skb is non-NULL in tcp_rto_delta_us() Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 136/462] net: qrtr: Update packets cloning when broadcasting Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 137/462] netfilter: ctnetlink: compile ctnetlink_label_size with CONFIG_NF_CONNTRACK_EVENTS Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 138/462] crypto: aead,cipher - zeroize key buffer after use Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 139/462] Remove *.orig pattern from .gitignore Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 140/462] soc: versatile: integrator: fix OF node leak in probe() error path Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 141/462] drm/amd/display: Round calculated vtotal Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 142/462] USB: appledisplay: close race between probe and completion handler Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 143/462] USB: misc: cypress_cy7c63: check for short transfer Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 144/462] USB: class: CDC-ACM: fix race between get_serial and set_serial Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 145/462] firmware_loader: Block path traversal Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 146/462] tty: rp2: Fix reset with non forgiving PCIe host bridges Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 147/462] drbd: Fix atomicity violation in drbd_uuid_set_bm() Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 148/462] drbd: Add NULL check for net_conf to prevent dereference in state validation Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 149/462] ACPI: sysfs: validate return type of _STR method Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 150/462] ACPI: resource: Add another DMI match for the TongFang GMxXGxx Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 151/462] wifi: rtw88: 8822c: Fix reported RX band width Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 152/462] debugobjects: Fix conditions in fill_pool() Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 153/462] f2fs: prevent possible int overflow in dir_block_index() Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 154/462] f2fs: avoid potential int overflow in sanity_check_area_boundary() Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 155/462] hwrng: mtk - Use devm_pm_runtime_enable Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 156/462] vfs: fix race between evice_inodes() and find_inode()&iput() Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 157/462] fs: Fix file_set_fowner LSM hook inconsistencies Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 158/462] nfs: fix memory leak in error path of nfs4_do_reclaim Greg Kroah-Hartman
2024-11-06 12:00 ` Greg Kroah-Hartman [this message]
2024-11-06 12:00 ` [PATCH 5.4 160/462] ASoC: meson: axg-card: fix use-after-free Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 161/462] PCI: xilinx-nwl: Use irq_data_get_irq_chip_data() Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 162/462] PCI: xilinx-nwl: Fix off-by-one in INTx IRQ handler Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 163/462] soc: versatile: realview: fix memory leak during device remove Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 164/462] soc: versatile: realview: fix soc_dev " Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 165/462] usb: yurex: Replace snprintf() with the safer scnprintf() variant Greg Kroah-Hartman
2024-11-06 12:00 ` [PATCH 5.4 166/462] USB: misc: yurex: fix race between read and write Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 167/462] pps: remove usage of the deprecated ida_simple_xx() API Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 168/462] pps: add an error check in parport_attach Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 169/462] mm: only enforce minimum stack gap size if its sensible Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 170/462] i2c: aspeed: Update the stop sw state when the bus recovery occurs Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 171/462] i2c: isch: Add missed else Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 172/462] usb: yurex: Fix inconsistent locking bug in yurex_read() Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 173/462] mailbox: rockchip: fix a typo in module autoloading Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 174/462] mailbox: bcm2835: Fix timeout during suspend mode Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 175/462] ceph: remove the incorrect Fw reference check when dirtying pages Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 176/462] Minor fixes to the CAIF Transport drivers Kconfig file Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 177/462] drivers: net: Fix Kconfig indentation, continued Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 178/462] ieee802154: Fix build error Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 179/462] net/mlx5: Added cond_resched() to crdump collection Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 180/462] netfilter: uapi: NFTA_FLOWTABLE_HOOK is NLA_NESTED Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 181/462] net: ieee802154: mcr20a: Use IRQF_NO_AUTOEN flag in request_irq() Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 182/462] netfilter: nf_tables: prevent nf_skb_duplicated corruption Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 183/462] Bluetooth: btmrvl_sdio: Refactor irq wakeup Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 184/462] Bluetooth: btmrvl: Use IRQF_NO_AUTOEN flag in request_irq() Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 185/462] net: ethernet: lantiq_etop: fix memory disclosure Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 186/462] net: avoid potential underflow in qdisc_pkt_len_init() with UFO Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 187/462] net: add more sanity checks to qdisc_pkt_len_init() Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 188/462] ipv4: ip_gre: Fix drops of small packets in ipgre_xmit Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 189/462] sctp: set sk_state back to CLOSED if autobind fails in sctp_listen_start Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 190/462] ALSA: hda/realtek: Fix the push button function for the ALC257 Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 191/462] ALSA: hda/generic: Unconditionally prefer preferred_dacs pairs Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 192/462] ALSA: hda/conexant: Fix conflicting quirk for System76 Pangolin Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 193/462] f2fs: Require FMODE_WRITE for atomic write ioctls Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 194/462] wifi: ath9k: fix possible integer overflow in ath9k_get_et_stats() Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 195/462] wifi: ath9k_htc: Use __skb_set_length() for resetting urb before resubmit Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 196/462] ice: Adjust over allocation of memory in ice_sched_add_root_node() and ice_sched_add_node() Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 197/462] net: hisilicon: hip04: fix OF node leak in probe() Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 198/462] net: hisilicon: hns_dsaf_mac: fix OF node leak in hns_mac_get_info() Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 199/462] net: hisilicon: hns_mdio: fix OF node leak in probe() Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 200/462] ACPICA: Fix memory leak if acpi_ps_get_next_namepath() fails Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 201/462] ACPICA: Fix memory leak if acpi_ps_get_next_field() fails Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 202/462] net: sched: consistently use rcu_replace_pointer() in taprio_change() Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 203/462] wifi: rtw88: select WANT_DEV_COREDUMP Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 204/462] ACPI: EC: Do not release locks during operation region accesses Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 205/462] ACPICA: check null return of ACPI_ALLOCATE_ZEROED() in acpi_db_convert_to_package() Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 206/462] tipc: guard against string buffer overrun Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 207/462] net: mvpp2: Increase size of queue_name buffer Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 208/462] ipv4: Check !in_dev earlier for ioctl(SIOCSIFADDR) Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 209/462] ipv4: Mask upper DSCP bits and ECN bits in NETLINK_FIB_LOOKUP family Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 210/462] tcp: avoid reusing FIN_WAIT2 when trying to find port in connect() process Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 211/462] ACPICA: iasl: handle empty connection_node Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 212/462] proc: add config & param to block forcing mem writes Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 213/462] wifi: mwifiex: Fix memcpy() field-spanning write warning in mwifiex_cmd_802_11_scan_ext() Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 214/462] nfp: Use IRQF_NO_AUTOEN flag in request_irq() Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 215/462] signal: Replace BUG_ON()s Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 216/462] ALSA: asihpi: Fix potential OOB array access Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 217/462] ALSA: hdsp: Break infinite MIDI input flush loop Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 218/462] x86/syscall: Avoid memcpy() for ia32 syscall_get_arguments() Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 219/462] fbdev: pxafb: Fix possible use after free in pxafb_task() Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 220/462] power: reset: brcmstb: Do not go into infinite loop if reset fails Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 221/462] ata: sata_sil: Rename sil_blacklist to sil_quirks Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 222/462] jfs: UBSAN: shift-out-of-bounds in dbFindBits Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 223/462] jfs: Fix uaf in dbFreeBits Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 224/462] jfs: check if leafidx greater than num leaves per dmap tree Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 225/462] jfs: Fix uninit-value access of new_ea in ea_buffer Greg Kroah-Hartman
2024-11-06 12:01 ` [PATCH 5.4 226/462] drm/amd/display: Check stream before comparing them Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 227/462] drm/amd/display: Fix index out of bounds in degamma hardware format translation Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 228/462] drm/amd/display: Initialize get_bytes_per_elements default to 1 Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 229/462] drm/printer: Allow NULL data in devcoredump printer Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 230/462] scsi: aacraid: Rearrange order of struct aac_srb_unit Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 231/462] drm/radeon/r100: Handle unknown family in r100_cp_init_microcode() Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 232/462] of/irq: Refer to actual buffer size in of_irq_parse_one() Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 233/462] ext4: ext4_search_dir should return a proper error Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 234/462] ext4: fix i_data_sem unlock order in ext4_ind_migrate() Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 235/462] spi: s3c64xx: fix timeout counters in flush_fifo Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 236/462] selftests: breakpoints: use remaining time to check if suspend succeed Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 237/462] selftests: vDSO: fix vDSO symbols lookup for powerpc64 Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 238/462] i2c: stm32f7: Do not prepare/unprepare clock during runtime suspend/resume Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 239/462] i2c: xiic: Wait for TX empty to avoid missed TX NAKs Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 240/462] firmware: tegra: bpmp: Drop unused mbox_client_to_bpmp() Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 241/462] spi: bcm63xx: Fix module autoloading Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 242/462] perf/core: Fix small negative period being ignored Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 243/462] parisc: Fix itlb miss handler for 64-bit programs Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 244/462] drm: Consistently use struct drm_mode_rect for FB_DAMAGE_CLIPS Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 245/462] ALSA: core: add isascii() check to card ID generator Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 246/462] ext4: no need to continue when the number of entries is 1 Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 247/462] ext4: propagate errors from ext4_find_extent() in ext4_insert_range() Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 248/462] ext4: fix incorrect tid assumption in __jbd2_log_wait_for_space() Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 249/462] ext4: aovid use-after-free in ext4_ext_insert_extent() Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 250/462] ext4: fix double brelse() the buffer of the extents path Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 251/462] ext4: fix incorrect tid assumption in ext4_wait_for_tail_page_commit() Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 252/462] parisc: Fix 64-bit userspace syscall path Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 253/462] parisc: Fix stack start for ADDR_NO_RANDOMIZE personality Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 254/462] of/irq: Support #msi-cells=<0> in of_msi_get_domain Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 255/462] drm: omapdrm: Add missing check for alloc_ordered_workqueue Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 256/462] jbd2: stop waiting for space when jbd2_cleanup_journal_tail() returns error Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 257/462] mm: krealloc: consider spare memory for __GFP_ZERO Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 258/462] ocfs2: fix the la space leak when unmounting an ocfs2 volume Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 259/462] ocfs2: fix uninit-value in ocfs2_get_block() Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 260/462] ocfs2: reserve space for inline xattr before attaching reflink tree Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 261/462] ocfs2: cancel dqi_sync_work before freeing oinfo Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 262/462] ocfs2: remove unreasonable unlock in ocfs2_read_blocks Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 263/462] ocfs2: fix null-ptr-deref when journal load failed Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 264/462] ocfs2: fix possible null-ptr-deref in ocfs2_set_buffer_uptodate Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 265/462] riscv: define ILLEGAL_POINTER_VALUE for 64bit Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 266/462] aoe: fix the potential use-after-free problem in more places Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 267/462] clk: rockchip: fix error for unknown clocks Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 268/462] media: sun4i_csi: Implement link validate for sun4i_csi subdev Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 269/462] media: uapi/linux/cec.h: cec_msg_set_reply_to: zero flags Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 270/462] media: venus: fix use after free bug in venus_remove due to race condition Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 271/462] iio: magnetometer: ak8975: Fix reading for ak099xx sensors Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 272/462] tomoyo: fallback to realpath if symlinks pathname does not exist Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 273/462] rtc: at91sam9: fix OF node leak in probe() error path Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 274/462] Input: adp5589-keys - fix adp5589_gpio_get_value() Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 275/462] ACPI: resource: Add Asus Vivobook X1704VAP to irq1_level_low_skip_override[] Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 276/462] ACPI: resource: Add Asus ExpertBook B2502CVA " Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 277/462] btrfs: fix a NULL pointer dereference when failed to start a new trasacntion Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 278/462] btrfs: wait for fixup workers before stopping cleaner kthread during umount Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 279/462] gpio: davinci: fix lazy disable Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 280/462] i2c: qcom-geni: Let firmware specify irq trigger flags Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 281/462] i2c: qcom-geni: Grow a dev pointer to simplify code Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 282/462] i2c: qcom-geni: Use IRQF_NO_AUTOEN flag in request_irq() Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 283/462] arm64: Add Cortex-715 CPU part definition Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 284/462] arm64: cputype: Add Neoverse-N3 definitions Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 285/462] arm64: errata: Expand speculative SSBS workaround once more Greg Kroah-Hartman
2024-11-06 12:02 ` [PATCH 5.4 286/462] uprobes: fix kernel info leak via "[uprobes]" vma Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 287/462] nfsd: use ktime_get_seconds() for timestamps Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 288/462] nfsd: fix delegation_blocked() to block correctly for at least 30 seconds Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 289/462] clk: qcom: rpmh: Simplify clk_rpmh_bcm_send_cmd() Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 290/462] clk: qcom: clk-rpmh: Fix overflow in BCM vote Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 291/462] r8169: Fix spelling mistake: "tx_underun" -> "tx_underrun" Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 292/462] r8169: add tally counter fields added with RTL8125 Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 293/462] ACPI: battery: Simplify battery hook locking Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 294/462] ACPI: battery: Fix possible crash when unregistering a battery hook Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 295/462] ext4: fix inode tree inconsistency caused by ENOMEM Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 296/462] unicode: Dont special case ignorable code points Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 297/462] net: ethernet: cortina: Drop TSO support Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 298/462] tracing: Remove precision vsnprintf() check from print event Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 299/462] drm/crtc: fix uninitialized variable use even harder Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 300/462] tracing: Have saved_cmdlines arrays all in one allocation Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 301/462] virtio_console: fix misc probe bugs Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 302/462] Input: synaptics-rmi4 - fix UAF of IRQ domain on driver removal Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 303/462] bpf: Check percpu map value size first Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 304/462] s390/facility: Disable compile time optimization for decompressor code Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 305/462] s390/mm: Add cond_resched() to cmm_alloc/free_pages() Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 306/462] ext4: nested locking for xattr inode Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 307/462] s390/cpum_sf: Remove WARN_ON_ONCE statements Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 308/462] ktest.pl: Avoid false positives with grub2 skip regex Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 309/462] clk: bcm: bcm53573: fix OF node leak in init Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 310/462] PCI: Add ACS quirk for Qualcomm SA8775P Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 311/462] i2c: i801: Use a different adapter-name for IDF adapters Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 312/462] PCI: Mark Creative Labs EMU20k2 INTx masking as broken Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 313/462] ntb: ntb_hw_switchtec: Fix use after free vulnerability in switchtec_ntb_remove due to race condition Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 314/462] media: videobuf2-core: clear memory related fields in __vb2_plane_dmabuf_put() Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 315/462] usb: chipidea: udc: enable suspend interrupt after usb reset Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 316/462] usb: dwc2: Adjust the timing of USB Driver Interrupt Registration in the Crashkernel Scenario Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 317/462] virtio_pmem: Check device status before requesting flush Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 318/462] tools/iio: Add memory allocation failure check for trigger_name Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 319/462] driver core: bus: Return -EIO instead of 0 when show/store invalid bus attribute Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 320/462] fbdev: sisfb: Fix strbuf array overflow Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 321/462] RDMA/rxe: Fix seg fault in rxe_comp_queue_pkt Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 322/462] ice: fix VLAN replay after reset Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 323/462] SUNRPC: Fix integer overflow in decode_rc_list() Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 324/462] tcp: fix to allow timestamp undo if no retransmits were sent Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 325/462] tcp: fix tcp_enter_recovery() to zero retrans_stamp when its safe Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 326/462] netfilter: br_netfilter: fix panic with metadata_dst skb Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 327/462] Bluetooth: RFCOMM: FIX possible deadlock in rfcomm_sk_state_change Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 328/462] gpio: aspeed: Add the flush write to ensure the write complete Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 329/462] gpio: aspeed: Use devm_clk api to manage clock source Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 330/462] igb: Do not bring the device up after non-fatal error Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 331/462] net/sched: accept TCA_STAB only for root qdisc Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 332/462] net: ibm: emac: mal: fix wrong goto Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 333/462] net: annotate lockless accesses to sk->sk_ack_backlog Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 334/462] net: annotate lockless accesses to sk->sk_max_ack_backlog Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 335/462] sctp: ensure sk_state is set to CLOSED if hashing fails in sctp_listen_start Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 336/462] ppp: fix ppp_async_encode() illegal access Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 337/462] slip: make slhc_remember() more robust against malicious packets Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 338/462] locking/lockdep: Fix bad recursion pattern Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 339/462] locking/lockdep: Rework lockdep_lock Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 340/462] locking/lockdep: Avoid potential access of invalid memory in lock_class Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 341/462] lockdep: fix deadlock issue between lockdep and rcu Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 342/462] resource: fix region_intersects() vs add_memory_driver_managed() Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 343/462] CDC-NCM: avoid overflow in sanity checking Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 344/462] HID: plantronics: Workaround for an unexcepted opposite volume key Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 345/462] Revert "usb: yurex: Replace snprintf() with the safer scnprintf() variant" Greg Kroah-Hartman
2024-11-06 12:03 ` [PATCH 5.4 346/462] usb: dwc3: core: Stop processing of pending events if controller is halted Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 347/462] usb: xhci: Fix problem with xhci resume from suspend Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 348/462] usb: storage: ignore bogus device raised by JieLi BR21 USB sound chip Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 349/462] hid: intel-ish-hid: Fix uninitialized variable rv in ish_fw_xfer_direct_dma Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 350/462] net: Fix an unsafe loop on the list Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 351/462] nouveau/dmem: Fix vulnerability in migrate_to_ram upon copy error Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 352/462] posix-clock: Fix missing timespec64 check in pc_clock_settime() Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 353/462] arm64: probes: Remove broken LDR (literal) uprobe support Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 354/462] arm64: probes: Fix simulate_ldr*_literal() Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 355/462] tracing/kprobes: Return EADDRNOTAVAIL when func matches several symbols Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 356/462] tracing/kprobes: Fix symbol counting logic by looking at modules as well Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 357/462] PCI: Add function 0 DMA alias quirk for Glenfly Arise chip Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 358/462] fat: fix uninitialized variable Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 359/462] mm/swapfile: skip HugeTLB pages for unuse_vma Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 360/462] wifi: mac80211: fix potential key use-after-free Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 361/462] KVM: Fix a data race on last_boosted_vcpu in kvm_vcpu_on_spin() Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 362/462] s390/sclp_vt220: Convert newlines to CRLF instead of LFCR Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 363/462] KVM: s390: Change virtual to physical address access in diag 0x258 handler Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 364/462] x86/cpufeatures: Define X86_FEATURE_AMD_IBPB_RET Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 365/462] blk-rq-qos: fix crash on rq_qos_wait vs. rq_qos_wake_function race Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 366/462] drm/vmwgfx: Handle surface check failure correctly Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 367/462] iio: dac: ltc1660: add missing select REGMAP_SPI in Kconfig Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 368/462] iio: dac: stm32-dac-core: add missing select REGMAP_MMIO " Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 369/462] iio: adc: ti-ads8688: add missing select IIO_(TRIGGERED_)BUFFER " Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 370/462] iio: hid-sensors: Fix an error handling path in _hid_sensor_set_report_latency() Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 371/462] iio: light: opt3001: add missing full-scale range value Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 372/462] iio: proximity: mb1232: add missing select IIO_(TRIGGERED_)BUFFER in Kconfig Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 373/462] iio: adc: ti-ads124s08: " Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 374/462] Bluetooth: Remove debugfs directory on module init failure Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 375/462] Bluetooth: btusb: Fix regression with fake CSR controllers 0a12:0001 Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 376/462] xhci: Fix incorrect stream context type macro Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 377/462] USB: serial: option: add support for Quectel EG916Q-GL Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 378/462] USB: serial: option: add Telit FN920C04 MBIM compositions Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 379/462] parport: Proper fix for array out-of-bounds access Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 380/462] x86/resctrl: Annotate get_mem_config() functions as __init Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 381/462] x86/apic: Always explicitly disarm TSC-deadline timer Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 382/462] nilfs2: propagate directory read errors from nilfs_find_entry() Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 383/462] erofs: fix lz4 inplace decompression Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 384/462] mac80211: Fix NULL ptr deref for injected rate info Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 385/462] RDMA/bnxt_re: Fix incorrect AVID type in WQE structure Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 386/462] ARM: dts: bcm2837-rpi-cm3-io3: Fix HDMI hpd-gpio pin Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 387/462] RDMA/cxgb4: Fix RDMA_CM_EVENT_UNREACHABLE error for iWARP Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 388/462] ipv4: give an IPv4 dev to blackhole_netdev Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 389/462] RDMA/bnxt_re: Return more meaningful error Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 390/462] drm/msm/dsi: fix 32-bit signed integer extension in pclk_rate calculation Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 391/462] macsec: dont increment counters for an unrelated SA Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 392/462] net: ethernet: aeroflex: fix potential memory leak in greth_start_xmit_gbit() Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 393/462] net: systemport: fix potential memory leak in bcm_sysport_xmit() Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 394/462] genetlink: hold RCU in genlmsg_mcast() Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 395/462] smb: client: fix OOBs when building SMB2_IOCTL request Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 396/462] usb: typec: altmode should keep reference to parent Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 397/462] Bluetooth: bnep: fix wild-memory-access in proto_unregister Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 398/462] arm64:uprobe fix the uprobe SWBP_INSN in big-endian Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 399/462] arm64: probes: Fix uprobes for big-endian kernels Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 400/462] KVM: s390: gaccess: Refactor gpa and length calculation Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 401/462] KVM: s390: gaccess: Refactor access address range check Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 402/462] KVM: s390: gaccess: Cleanup access to guest pages Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 403/462] KVM: s390: gaccess: Check if guest address is in memslot Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 404/462] drm/vboxvideo: Replace fake VLA at end of vbva_mouse_pointer_shape with real VLA Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 405/462] udf: fix uninit-value use in udf_get_fileshortad Greg Kroah-Hartman
2024-11-06 12:04 ` [PATCH 5.4 406/462] jfs: Fix sanity check in dbMount Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 407/462] tracing: Consider the NULL character when validating the event length Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 408/462] net/sun3_82586: fix potential memory leak in sun3_82586_send_packet() Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 409/462] be2net: fix potential memory leak in be_xmit() Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 410/462] dt-bindings: power: Add r8a774b1 SYSC power domain definitions Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 411/462] net: usb: usbnet: fix name regression Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 412/462] net: sched: fix use-after-free in taprio_change() Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 413/462] r8169: avoid unsolicited interrupts Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 414/462] posix-clock: posix-clock: Fix unbalanced locking in pc_clock_settime() Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 415/462] ALSA: firewire-lib: Avoid division by zero in apply_constraint_to_size() Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 416/462] ALSA: hda/realtek: Update default depop procedure Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 417/462] drm/amd: Guard against bad data for ATIF ACPI method Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 418/462] ACPI: resource: Add LG 16T90SP to irq1_level_low_skip_override[] Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 419/462] ACPI: button: Add DMI quirk for Samsung Galaxy Book2 to fix initial lid detection issue Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 420/462] nilfs2: fix kernel bug due to missing clearing of buffer delay flag Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 421/462] ALSA: hda/realtek: Add subwoofer quirk for Acer Predator G9-593 Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 422/462] hv_netvsc: Fix VF namespace also in synthetic NIC NETDEV_REGISTER event Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 423/462] selinux: improve error checking in sel_write_load() Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 424/462] arm64/uprobes: change the uprobe_opcode_t typedef to fix the sparse warning Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 425/462] xfrm: validate new SAs prefixlen using SA family when sel.family is unset Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 426/462] cgroup: Fix potential overflow issue when checking max_depth Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 427/462] wifi: mac80211: skip non-uploaded keys in ieee80211_iter_keys Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 428/462] mac80211: do drv_reconfig_complete() before restarting all Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 429/462] mac80211: Add support to trigger sta disconnect on hardware restart Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 430/462] wifi: iwlwifi: mvm: disconnect station vifs if recovery failed Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 431/462] wifi: iwlwifi: mvm: Fix response handling in iwl_mvm_send_recovery_cmd() Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 432/462] ASoC: cs42l51: Fix some error handling paths in cs42l51_probe() Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 433/462] dt-bindings: gpu: Convert Samsung Image Rotator to dt-schema Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 434/462] igb: Disable threaded IRQ for igb_msix_other Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 435/462] gtp: simplify error handling code in gtp_encap_enable() Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 436/462] gtp: allow -1 to be specified as file description from userspace Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 437/462] net/sched: stop qdisc_tree_reduce_backlog on TC_H_ROOT Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 438/462] bpf: Fix out-of-bounds write in trie_get_next_key() Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 439/462] net: support ip generic csum processing in skb_csum_hwoffload_help Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 440/462] net: skip offload for NETIF_F_IPV6_CSUM if ipv6 header contains extension Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 441/462] netfilter: nft_payload: sanitize offset and length before calling skb_checksum() Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 442/462] drivers/misc: ti-st: Remove unneeded variable in st_tty_open Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 443/462] firmware: arm_sdei: Fix the input parameter of cpuhp_remove_state() Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 444/462] net: amd: mvme147: Fix probe banner message Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 445/462] misc: sgi-gru: Dont disable preemption in GRU driver Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 446/462] usbip: tools: Fix detach_port() invalid port error path Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 447/462] usb: phy: Fix API devm_usb_put_phy() can not release the phy Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 448/462] xhci: Fix Link TRB DMA in command ring stopped completion event Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 449/462] Revert "driver core: Fix uevent_show() vs driver detach race" Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 450/462] wifi: mac80211: do not pass a stopped vif to the driver in .get_txpower Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 451/462] wifi: ath10k: Fix memory leak in management tx Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 452/462] wifi: iwlegacy: Clear stale interrupts before resuming device Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 453/462] staging: iio: frequency: ad9832: fix division by zero in ad9832_calc_freqreg() Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 454/462] nilfs2: fix potential deadlock with newly created symlinks Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 455/462] riscv: Remove unused GENERATING_ASM_OFFSETS Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 456/462] ocfs2: pass u64 to ocfs2_truncate_inline maybe overflow Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 457/462] nilfs2: fix kernel bug due to missing clearing of checked flag Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 458/462] mm: shmem: fix data-race in shmem_getattr() Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 459/462] Revert "drm/mipi-dsi: Set the fwnode for mipi_dsi_device" Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 460/462] vt: prevent kernel-infoleak in con_font_get() Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 461/462] mac80211: always have ieee80211_sta_restart() Greg Kroah-Hartman
2024-11-06 12:05 ` [PATCH 5.4 462/462] mm: krealloc: Fix MTE false alarm in __do_krealloc Greg Kroah-Hartman
2024-11-12 23:04   ` Peter Collingbourne
2024-11-15  5:16     ` Greg Kroah-Hartman
2024-11-06 14:53 ` [PATCH 5.4 000/462] 5.4.285-rc1 review Naresh Kamboju
2024-11-07  2:57 ` Shuah Khan

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20241106120335.450181670@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=broonie@kernel.org \
    --cc=jbrunet@baylibre.com \
    --cc=patches@lists.linux.dev \
    --cc=sashal@kernel.org \
    --cc=stable@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox