commit:     fd210028661ffdbe3b2e3a67064936ca8ef484ca
Author:     Mike Pagano <mpagano <AT> gentoo <DOT> org>
AuthorDate: Fri Feb 11 12:36:09 2022 +0000
Commit:     Mike Pagano <mpagano <AT> gentoo <DOT> org>
CommitDate: Fri Feb 11 12:36:09 2022 +0000
URL:        https://gitweb.gentoo.org/proj/linux-patches.git/commit/?id=fd210028

Linux patch 5.4.179

Signed-off-by: Mike Pagano <mpagano <AT> gentoo.org>

 0000_README              |  4 +++
 1178_linux-5.4.179.patch | 79 ++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 83 insertions(+)

diff --git a/0000_README b/0000_README
index 0633c4d5..82251825 100644
--- a/0000_README
+++ b/0000_README
@@ -755,6 +755,10 @@ Patch:  1177_linux-5.4.178.patch
 From:   http://www.kernel.org
 Desc:   Linux 5.4.178
 
+Patch:  1178_linux-5.4.179.patch
+From:   http://www.kernel.org
+Desc:   Linux 5.4.179
+
 Patch:  1500_XATTR_USER_PREFIX.patch
 From:   https://bugs.gentoo.org/show_bug.cgi?id=470644
 Desc:   Support for namespace user.pax.* on tmpfs.

diff --git a/1178_linux-5.4.179.patch b/1178_linux-5.4.179.patch
new file mode 100644
index 00000000..78764c5d
--- /dev/null
+++ b/1178_linux-5.4.179.patch
@@ -0,0 +1,79 @@
+diff --git a/Makefile b/Makefile
+index 6d33284664fef..5688e17a44363 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1,7 +1,7 @@
+ # SPDX-License-Identifier: GPL-2.0
+ VERSION = 5
+ PATCHLEVEL = 4
+-SUBLEVEL = 178
++SUBLEVEL = 179
+ EXTRAVERSION =
+ NAME = Kleptomaniac Octopus
+ 
+diff --git a/drivers/mmc/host/moxart-mmc.c b/drivers/mmc/host/moxart-mmc.c
+index 5553a5643f405..5c81dc7371db7 100644
+--- a/drivers/mmc/host/moxart-mmc.c
++++ b/drivers/mmc/host/moxart-mmc.c
+@@ -696,12 +696,12 @@ static int moxart_remove(struct platform_device *pdev)
+               if (!IS_ERR(host->dma_chan_rx))
+                       dma_release_channel(host->dma_chan_rx);
+               mmc_remove_host(mmc);
+-              mmc_free_host(mmc);
+ 
+               writel(0, host->base + REG_INTERRUPT_MASK);
+               writel(0, host->base + REG_POWER_CONTROL);
+               writel(readl(host->base + REG_CLOCK_CONTROL) | CLK_OFF,
+                      host->base + REG_CLOCK_CONTROL);
++              mmc_free_host(mmc);
+       }
+       return 0;
+ }
+diff --git a/net/tipc/link.c b/net/tipc/link.c
+index f25010261a9e0..8f2ee71c63c6d 100644
+--- a/net/tipc/link.c
++++ b/net/tipc/link.c
+@@ -1953,15 +1953,18 @@ static int tipc_link_proto_rcv(struct tipc_link *l, 
struct sk_buff *skb,
+       u16 peers_tol = msg_link_tolerance(hdr);
+       u16 peers_prio = msg_linkprio(hdr);
+       u16 rcv_nxt = l->rcv_nxt;
+-      u16 dlen = msg_data_sz(hdr);
++      u32 dlen = msg_data_sz(hdr), glen = 0;
+       int mtyp = msg_type(hdr);
+       bool reply = msg_probe(hdr);
+-      u16 glen = 0;
+       void *data;
+       char *if_name;
+       int rc = 0;
+ 
+       trace_tipc_proto_rcv(skb, false, l->name);
++
++      if (dlen > U16_MAX)
++              goto exit;
++
+       if (tipc_link_is_blocked(l) || !xmitq)
+               goto exit;
+ 
+@@ -2063,7 +2066,8 @@ static int tipc_link_proto_rcv(struct tipc_link *l, 
struct sk_buff *skb,
+                       if (glen != tipc_gap_ack_blks_sz(ga->gack_cnt))
+                               ga = NULL;
+               }
+-
++              if(glen > dlen)
++                      break;
+               tipc_mon_rcv(l->net, data + glen, dlen - glen, l->addr,
+                            &l->mon_state, l->bearer_id);
+ 
+diff --git a/net/tipc/monitor.c b/net/tipc/monitor.c
+index 58708b4c7719f..e7155a7743001 100644
+--- a/net/tipc/monitor.c
++++ b/net/tipc/monitor.c
+@@ -457,6 +457,8 @@ void tipc_mon_rcv(struct net *net, void *data, u16 dlen, 
u32 addr,
+       state->probing = false;
+ 
+       /* Sanity check received domain record */
++      if (new_member_cnt > MAX_MON_DOMAIN)
++              return;
+       if (dlen < dom_rec_len(arrv_dom, 0))
+               return;
+       if (dlen != dom_rec_len(arrv_dom, new_member_cnt))

Reply via email to