Message ID | 20240213100728.458348-1-arnd@kernel.org |
---|---|
State | New |
Headers |
Return-Path: <linux-kernel+bounces-63306-ouuuleilei=gmail.com@vger.kernel.org> Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:7300:bc8a:b0:106:860b:bbdd with SMTP id dn10csp447006dyb; Tue, 13 Feb 2024 02:32:50 -0800 (PST) X-Google-Smtp-Source: AGHT+IGlM0hOWIJCGCgZ+fCHj5Gy8CG/tMxzXv7kMg45aWbADzhIpM7kdtn2S49mq05/YQw9OKCp X-Received: by 2002:a17:902:ec82:b0:1d9:9e4f:c0c8 with SMTP id x2-20020a170902ec8200b001d99e4fc0c8mr12540388plg.18.1707820370668; Tue, 13 Feb 2024 02:32:50 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1707820370; cv=pass; d=google.com; s=arc-20160816; b=KIO0TdRChviVQKHcjAj/nYb7kQt7Cj2xBe15Xtin+qcz9eNhOtRF0UjQocwUcaw4Eo fsdc6MZpVsyfeaVZ9q18Arwb+1IP6n8+sbgl02HWQMclS49j+89xKQyr0hc59Ln4Gekx VUQSAZQqv61k4PGCT4OVRJyRr3GQrb4yxRZujCM6DbV+yppY5heJJw8Q0nNpTqIk5PvT XbU8QTvayGGTeubM6SduprO/ey4wIF0VijphmKivipEln9UIo+pzO0E/1wAqox9NkgjH ex1YhNWLeTRZMFLIxOtStWe+uWAiiA8qEe5vLVXSry1Y0ikoiNwkpYWmPb0fPhIzvdtI ouRg== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:message-id:date:subject:cc:to :from:dkim-signature; bh=INXCUwVMCTgun/xFcL5cdw9S3io0yuf4kvOvdN8wCCM=; fh=PQvc2hEbqb+ncW9Ye4VlquBSLuKPzyfI9dke4qx4evA=; b=i9jBtyJ/mjjIhNbRRn3XOMjhVpTtj92YH1FiEu+79v69femj2rGRQ6Q1m8pqYRaLYO j6zQ/GlhNzfa3V0X81a3u7b2LFoWDQUvGNiUJE60DWJNJyc3VXxsWDIikDTHMAlTkUV1 B5HWnvpxNl0AS3py7AA4RN3CHJNLbEOMRrmYKHVf/8yHMSdtxT6jap0OTh7ioCSxVoyT CZ6mEWsGas7sFGLRKOp7ZctPgQTpINo77Bzs4Os0cuwnOIaQOTrZN4R9SwYPr0gD7Jsk G0ahCp20vBF17dFT7R2WTZi98jOvucaQGkjLStab2WqDo7DfS1msTiosN+etRbKwHXX/ /yFQ==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=FoBBTJBn; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-kernel+bounces-63306-ouuuleilei=gmail.com@vger.kernel.org designates 147.75.48.161 as permitted sender) smtp.mailfrom="linux-kernel+bounces-63306-ouuuleilei=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org X-Forwarded-Encrypted: i=2; AJvYcCU46SAsuYlVknQl40ibEghYbare+DM8xCU4LNjn7sv7DahRYCfBi1fB/kLnVVQsdGd1U8uF1VAwMA8SMNdeu9KeP/tRNw== Received: from sy.mirrors.kernel.org (sy.mirrors.kernel.org. [147.75.48.161]) by mx.google.com with ESMTPS id u10-20020a170902e80a00b001db339f4096si1088491plg.395.2024.02.13.02.32.50 for <ouuuleilei@gmail.com> (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 13 Feb 2024 02:32:50 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-63306-ouuuleilei=gmail.com@vger.kernel.org designates 147.75.48.161 as permitted sender) client-ip=147.75.48.161; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=FoBBTJBn; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-kernel+bounces-63306-ouuuleilei=gmail.com@vger.kernel.org designates 147.75.48.161 as permitted sender) smtp.mailfrom="linux-kernel+bounces-63306-ouuuleilei=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sy.mirrors.kernel.org (Postfix) with ESMTPS id 9D553B23E88 for <ouuuleilei@gmail.com>; Tue, 13 Feb 2024 10:07:53 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id D52B02261A; Tue, 13 Feb 2024 10:07:37 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="FoBBTJBn" Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3478A22EE3; Tue, 13 Feb 2024 10:07:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707818855; cv=none; b=RJlnyoKagE8XbJ2kQvdqHkqabWBiBfx+6n6vBTlSdY9PKDCHoFO2/O+I2nnqf2yZNfvElo01k7ohwnSYcZpgsA5VWzYOW+H1e3iSA4m0lloE/qVUtguzBz++wKfBPdrdgxlFI+1gyiJ+xmLIU7uTSV4kHEROUvoBFTlZdK3avvw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1707818855; c=relaxed/simple; bh=TfBI8+XT35oYQJ/Alj2IsV1Q/w0MB4GZiDDW54Ji4wI=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version; b=NVPDWBDlTDttTnU6LcuEnG0SlukQfhnYCIN2h0MrGdLJVJEcQeOdwgkJtJ/NgeWKqyixor1h1Zf1MfEsI8piz4YOI6QDZdq6UpDKy8pfJgw03PP8+DIF8MQMJWos5Slys1+42jmp5QolvNfa3S+mBtCeA/Yd25xhkpvSdztDLEc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=FoBBTJBn; arc=none smtp.client-ip=10.30.226.201 Received: by smtp.kernel.org (Postfix) with ESMTPSA id B0D8DC433F1; Tue, 13 Feb 2024 10:07:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1707818854; bh=TfBI8+XT35oYQJ/Alj2IsV1Q/w0MB4GZiDDW54Ji4wI=; h=From:To:Cc:Subject:Date:From; b=FoBBTJBnT9jMzq2HQpaXgCfIU0GKlnax5THlFjXZ/lghnWleJee7NaysU/oungnq1 d5B8z6I6EDtKGApEceeeMZpaH3ffSfzp+kEZ1NrrB8E7BGRAM2oxzsqb9fCSHxO5AG QUjRq4oU96o5xktf7ZiuOt12Vm3fFe5L2/otQ6dz14JisIV0OgQgJW5P3KQuMueVwv 1NKO9kHvC6y7owf7yOQrjQOUMa2G3X69ISNOzYft2GJzRhZD3KTTSjcq73dsT/6ctj +yN0WHCTvSLkTwRPjzt/j5cztFC7nSJaQfHpQN7hAL+bZ+9PMtvVbC7Y9h0qZiEc7R Jk/bpHkgLVNFw== From: Arnd Bergmann <arnd@kernel.org> To: Bart Van Assche <bvanassche@acm.org> Cc: Arnd Bergmann <arnd@arndb.de>, Jason Gunthorpe <jgg@ziepe.ca>, Leon Romanovsky <leon@kernel.org>, Nathan Chancellor <nathan@kernel.org>, Nick Desaulniers <ndesaulniers@google.com>, Bill Wendling <morbo@google.com>, Justin Stitt <justinstitt@google.com>, "Martin K. Petersen" <martin.petersen@oracle.com>, "Nicholas A. Bellinger" <nab@risingtidesystems.com>, linux-rdma@vger.kernel.org, target-devel@vger.kernel.org, linux-kernel@vger.kernel.org, llvm@lists.linux.dev Subject: [PATCH] RDMA/srpt: fix function pointer cast warnings Date: Tue, 13 Feb 2024 11:07:13 +0100 Message-Id: <20240213100728.458348-1-arnd@kernel.org> X-Mailer: git-send-email 2.39.2 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: <linux-kernel.vger.kernel.org> List-Subscribe: <mailto:linux-kernel+subscribe@vger.kernel.org> List-Unsubscribe: <mailto:linux-kernel+unsubscribe@vger.kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1790779453103362095 X-GMAIL-MSGID: 1790779453103362095 |
Series |
RDMA/srpt: fix function pointer cast warnings
|
|
Commit Message
Arnd Bergmann
Feb. 13, 2024, 10:07 a.m. UTC
From: Arnd Bergmann <arnd@arndb.de> clang-16 notices that srpt_qp_event() gets called through an incompatible pointer here: drivers/infiniband/ulp/srpt/ib_srpt.c:1815:5: error: cast from 'void (*)(struct ib_event *, struct srpt_rdma_ch *)' to 'void (*)(struct ib_event *, void *)' converts to incompatible function type [-Werror,-Wcast-function-type-strict] 1815 | = (void(*)(struct ib_event *, void*))srpt_qp_event; Change srpt_qp_event() to use the correct prototype and adjust the argument inside of it. Fixes: a42d985bd5b2 ("ib_srpt: Initial SRP Target merge for v3.3-rc1") Signed-off-by: Arnd Bergmann <arnd@arndb.de> --- drivers/infiniband/ulp/srpt/ib_srpt.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-)
Comments
On 2/13/24 02:07, Arnd Bergmann wrote: > Change srpt_qp_event() to use the correct prototype and adjust the > argument inside of it. Reviewed-by: Bart Van Assche <bvanassche@acm.org>
On Tue, Feb 13, 2024 at 11:07:13AM +0100, Arnd Bergmann wrote: > From: Arnd Bergmann <arnd@arndb.de> > > clang-16 notices that srpt_qp_event() gets called through an incompatible > pointer here: > > drivers/infiniband/ulp/srpt/ib_srpt.c:1815:5: error: cast from 'void (*)(struct ib_event *, struct srpt_rdma_ch *)' to 'void (*)(struct ib_event *, void *)' converts to incompatible function type [-Werror,-Wcast-function-type-strict] > 1815 | = (void(*)(struct ib_event *, void*))srpt_qp_event; > > Change srpt_qp_event() to use the correct prototype and adjust the > argument inside of it. > > Fixes: a42d985bd5b2 ("ib_srpt: Initial SRP Target merge for v3.3-rc1") > Signed-off-by: Arnd Bergmann <arnd@arndb.de> > --- > drivers/infiniband/ulp/srpt/ib_srpt.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) This patch generates the following warnings, fixed and applied. ➜ kernel git:(wip/leon-for-rc) mkt ci f17a855457db (HEAD -> build) RDMA/srpt: fix function pointer cast warnings drivers/infiniband/ulp/srpt/ib_srpt.c:220: warning: Function parameter or struct member 'ptr' not described in 'srpt_qp_event' drivers/infiniband/ulp/srpt/ib_srpt.c:220: warning: Excess function parameter 'ch' description in 'srpt_qp_event' drivers/infiniband/ulp/srpt/ib_srpt.c:220: warning: Function parameter or struct member 'ptr' not described in 'srpt_qp_event' drivers/infiniband/ulp/srpt/ib_srpt.c:220: warning: Excess function parameter 'ch' description in 'srpt_qp_event' > > diff --git a/drivers/infiniband/ulp/srpt/ib_srpt.c b/drivers/infiniband/ulp/srpt/ib_srpt.c > index 0875f197118f..942b311b6296 100644 > --- a/drivers/infiniband/ulp/srpt/ib_srpt.c > +++ b/drivers/infiniband/ulp/srpt/ib_srpt.c > @@ -216,8 +216,10 @@ static const char *get_ch_state_name(enum rdma_ch_state s) > * @event: Description of the event that occurred. > * @ch: SRPT RDMA channel. > */ > -static void srpt_qp_event(struct ib_event *event, struct srpt_rdma_ch *ch) > +static void srpt_qp_event(struct ib_event *event, void *ptr) > { > + struct srpt_rdma_ch *ch = ptr; > + > pr_debug("QP event %d on ch=%p sess_name=%s-%d state=%s\n", > event->event, ch, ch->sess_name, ch->qp->qp_num, > get_ch_state_name(ch->state)); > @@ -1811,8 +1813,7 @@ static int srpt_create_ch_ib(struct srpt_rdma_ch *ch) > ch->cq_size = ch->rq_size + sq_size; > > qp_init->qp_context = (void *)ch; > - qp_init->event_handler > - = (void(*)(struct ib_event *, void*))srpt_qp_event; > + qp_init->event_handler = srpt_qp_event; > qp_init->send_cq = ch->cq; > qp_init->recv_cq = ch->cq; > qp_init->sq_sig_type = IB_SIGNAL_REQ_WR; > -- > 2.39.2 >
On Tue, 13 Feb 2024 11:07:13 +0100, Arnd Bergmann wrote: > clang-16 notices that srpt_qp_event() gets called through an incompatible > pointer here: > > drivers/infiniband/ulp/srpt/ib_srpt.c:1815:5: error: cast from 'void (*)(struct ib_event *, struct srpt_rdma_ch *)' to 'void (*)(struct ib_event *, void *)' converts to incompatible function type [-Werror,-Wcast-function-type-strict] > 1815 | = (void(*)(struct ib_event *, void*))srpt_qp_event; > > Change srpt_qp_event() to use the correct prototype and adjust the > argument inside of it. > > [...] Applied, thanks! [1/1] RDMA/srpt: fix function pointer cast warnings https://git.kernel.org/rdma/rdma/c/eb5c7465c32401 Best regards,
diff --git a/drivers/infiniband/ulp/srpt/ib_srpt.c b/drivers/infiniband/ulp/srpt/ib_srpt.c index 0875f197118f..942b311b6296 100644 --- a/drivers/infiniband/ulp/srpt/ib_srpt.c +++ b/drivers/infiniband/ulp/srpt/ib_srpt.c @@ -216,8 +216,10 @@ static const char *get_ch_state_name(enum rdma_ch_state s) * @event: Description of the event that occurred. * @ch: SRPT RDMA channel. */ -static void srpt_qp_event(struct ib_event *event, struct srpt_rdma_ch *ch) +static void srpt_qp_event(struct ib_event *event, void *ptr) { + struct srpt_rdma_ch *ch = ptr; + pr_debug("QP event %d on ch=%p sess_name=%s-%d state=%s\n", event->event, ch, ch->sess_name, ch->qp->qp_num, get_ch_state_name(ch->state)); @@ -1811,8 +1813,7 @@ static int srpt_create_ch_ib(struct srpt_rdma_ch *ch) ch->cq_size = ch->rq_size + sq_size; qp_init->qp_context = (void *)ch; - qp_init->event_handler - = (void(*)(struct ib_event *, void*))srpt_qp_event; + qp_init->event_handler = srpt_qp_event; qp_init->send_cq = ch->cq; qp_init->recv_cq = ch->cq; qp_init->sq_sig_type = IB_SIGNAL_REQ_WR;