]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commitdiff
UBUNTU: SAUCE: (no-up) rds_ib_send() -- prevent local pings triggering BUG_ON()
authorAndy Whitcroft <apw@canonical.com>
Thu, 26 Jul 2012 10:25:52 +0000 (11:25 +0100)
committerSeth Forshee <seth.forshee@canonical.com>
Mon, 29 Jan 2018 13:44:48 +0000 (07:44 -0600)
Pining localhost on an infiniband connection can trigger a BUG_ON()
and cause a denial of service.

Fix identified by comparison of the RHEL source rpms.

CVE-2012-2372
BugLink: http://bugs.launchpad.net/bugs/1016299
Signed-off-by: Andy Whitcroft <apw@canonical.com>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
net/rds/ib_send.c

index 8557a1cae04170496887815a0f41e7c1abd2d979..5fbf635d17cbab26fa518ff960f437fccef50dbf 100644 (file)
@@ -506,7 +506,7 @@ int rds_ib_xmit(struct rds_connection *conn, struct rds_message *rm,
        int flow_controlled = 0;
        int nr_sig = 0;
 
-       BUG_ON(off % RDS_FRAG_SIZE);
+       BUG_ON(!conn->c_loopback && off % RDS_FRAG_SIZE);
        BUG_ON(hdr_off != 0 && hdr_off != sizeof(struct rds_header));
 
        /* Do not send cong updates to IB loopback */