From: Leon Romanovsky <leon@xxxxxxxxxx> Date: Mon, 22 Jan 2018 17:10:54 +0200 > On Mon, Jan 22, 2018 at 03:24:15AM -0800, Kees Cook wrote: >> diff --git a/net/rds/ib_send.c b/net/rds/ib_send.c >> index 8557a1cae041..5fbf635d17cb 100644 >> --- a/net/rds/ib_send.c >> +++ b/net/rds/ib_send.c >> @@ -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)); > > To be honest this function full of BUG_ONs and it looks fishy to have them there. > Why don't we return EINVAL instead of crashing system? I completely agree that these assertions should just cause an error-out rather than trigger a BUG(). -- To unsubscribe from this list: send the line "unsubscribe linux-rdma" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html