From: Greg Kroah-Hartman Date: Tue, 24 Sep 2019 20:35:03 +0000 (+0200) Subject: 4.4-stable patches X-Git-Tag: v5.3.2~36 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=7fac3d81304522a128ca23c83e906b86eab2e453;p=thirdparty%2Fkernel%2Fstable-queue.git 4.4-stable patches added patches: asoc-fsl-fix-of-node-refcount-unbalance-in-fsl_ssi_probe_from_dt.patch --- diff --git a/queue-4.4/asoc-fsl-fix-of-node-refcount-unbalance-in-fsl_ssi_probe_from_dt.patch b/queue-4.4/asoc-fsl-fix-of-node-refcount-unbalance-in-fsl_ssi_probe_from_dt.patch new file mode 100644 index 00000000000..27e2ab91b0a --- /dev/null +++ b/queue-4.4/asoc-fsl-fix-of-node-refcount-unbalance-in-fsl_ssi_probe_from_dt.patch @@ -0,0 +1,47 @@ +From 2757970f6d0d0a112247600b23d38c0c728ceeb3 Mon Sep 17 00:00:00 2001 +From: Takashi Iwai +Date: Tue, 19 Feb 2019 16:46:47 +0100 +Subject: ASoC: fsl: Fix of-node refcount unbalance in fsl_ssi_probe_from_dt() + +From: Takashi Iwai + +commit 2757970f6d0d0a112247600b23d38c0c728ceeb3 upstream. + +The node obtained from of_find_node_by_path() has to be unreferenced +after the use, but we forgot it for the root node. + +Fixes: f0fba2ad1b6b ("ASoC: multi-component - ASoC Multi-Component Support") +Cc: Timur Tabi +Cc: Nicolin Chen +Cc: Xiubo Li +Cc: Fabio Estevam +Signed-off-by: Takashi Iwai +Acked-by: Nicolin Chen +Signed-off-by: Mark Brown +Signed-off-by: Greg Kroah-Hartman + +--- + sound/soc/fsl/fsl_ssi.c | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +--- a/sound/soc/fsl/fsl_ssi.c ++++ b/sound/soc/fsl/fsl_ssi.c +@@ -1374,6 +1374,7 @@ static int fsl_ssi_probe(struct platform + struct fsl_ssi_private *ssi_private; + int ret = 0; + struct device_node *np = pdev->dev.of_node; ++ struct device_node *root; + const struct of_device_id *of_id; + const char *p, *sprop; + const uint32_t *iprop; +@@ -1510,7 +1511,9 @@ static int fsl_ssi_probe(struct platform + * device tree. We also pass the address of the CPU DAI driver + * structure. + */ +- sprop = of_get_property(of_find_node_by_path("/"), "compatible", NULL); ++ root = of_find_node_by_path("/"); ++ sprop = of_get_property(root, "compatible", NULL); ++ of_node_put(root); + /* Sometimes the compatible name has a "fsl," prefix, so we strip it. */ + p = strrchr(sprop, ','); + if (p) diff --git a/queue-4.4/series b/queue-4.4/series index f0e233f1a13..497d5fb0d9d 100644 --- a/queue-4.4/series +++ b/queue-4.4/series @@ -6,3 +6,4 @@ hid-hidraw-fix-invalid-read-in-hidraw_ioctl.patch mtd-cfi_cmdset_0002-use-chip_good-to-retry-in-do_write_oneword.patch crypto-talitos-fix-missing-break-in-switch-statement.patch net-rds-fix-null-ptr-use-in-rds_tcp_kill_sock.patch +asoc-fsl-fix-of-node-refcount-unbalance-in-fsl_ssi_probe_from_dt.patch