From: John Jolly <hidden> Date: 2012-09-21 21:32:24
Attempting an rds connection from the IP address of an IPoIB interface
to itself causes a kernel panic due to a BUG_ON() being triggered.
Making the test less strict allows rds-ping to work without crashing
the machine.
A local unprivileged user could use this flaw to crash the system.
Signed-off-by: John Jolly <redacted>
---
net/rds/ib_send.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
@@ -544,7 +544,7 @@ int rds_ib_xmit(struct rds_connection *conn, struct rds_message *rm,intflow_controlled=0;intnr_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(structrds_header));/* Do not send cong updates to IB loopback */
Attempting an rds connection from the IP address of an IPoIB interface
to itself causes a kernel panic due to a BUG_ON() being triggered.
Making the test less strict allows rds-ping to work without crashing
the machine.
A local unprivileged user could use this flaw to crash the system.
Signed-off-by: John Jolly<redacted>
---
net/rds/ib_send.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
@@ -544,7 +544,7 @@ int rds_ib_xmit(struct rds_connection *conn, struct rds_message *rm,intflow_controlled=0;intnr_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(structrds_header));/* Do not send cong updates to IB loopback */
Hi John,
How do you trigger this BUG_ON ?
With rds-ping I could not hit this condition of non-zero "off %
RDS_FRAG_SIZE".
rds-ping uses zero byte messages to ping or pong back. How does the
"off" become non-zero ?
Thanks.
Venkat
Attempting an rds connection from the IP address of an IPoIB interface
to itself causes a kernel panic due to a BUG_ON() being triggered.
Making the test less strict allows rds-ping to work without crashing
the machine.
A local unprivileged user could use this flaw to crash the system.
Signed-off-by: John Jolly <redacted>
Besides the questions being asked of you by Venkat Venkatsubra, this
patch has another issue.
It has been completely corrupted by your email client, it has
turned all TAB characters into spaces, making the patch useless.
Please learn how to send a patch unmolested in the body of your
email. Test it by emailing the patch to yourself, and verifying
that you can in fact apply the patch you receive in that email.
Then, and only then, should you consider making a new submission
of this patch.
Use Documentation/email-clients.txt for guidance.