Message ID | 20220912195023.810319-1-nhuck@google.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | net: ethernet: ti: davinci_emac: Fix return type of emac_dev_xmit | expand |
On Mon, Sep 12, 2022 at 12:50:19PM -0700, Nathan Huckleberry wrote: > The ndo_start_xmit field in net_device_ops is expected to be of type > netdev_tx_t (*ndo_start_xmit)(struct sk_buff *skb, struct net_device *dev). > > The mismatched return type breaks forward edge kCFI since the underlying > function definition does not match the function hook definition. > > The return type of emac_dev_xmit should be changed from int to > netdev_tx_t. > > Reported-by: Dan Carpenter <error27@gmail.com> > Link: https://github.com/ClangBuiltLinux/linux/issues/1703 > Cc: llvm@lists.linux.dev > Signed-off-by: Nathan Huckleberry <nhuck@google.com> Reviewed-by: Nathan Chancellor <nathan@kernel.org> > --- > drivers/net/ethernet/ti/davinci_emac.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/net/ethernet/ti/davinci_emac.c b/drivers/net/ethernet/ti/davinci_emac.c > index 2a3e4e842fa5..e203a5984f03 100644 > --- a/drivers/net/ethernet/ti/davinci_emac.c > +++ b/drivers/net/ethernet/ti/davinci_emac.c > @@ -949,7 +949,7 @@ static void emac_tx_handler(void *token, int len, int status) > * > * Returns success(NETDEV_TX_OK) or error code (typically out of desc's) > */ > -static int emac_dev_xmit(struct sk_buff *skb, struct net_device *ndev) > +static netdev_tx_t emac_dev_xmit(struct sk_buff *skb, struct net_device *ndev) > { > struct device *emac_dev = &ndev->dev; > int ret_code; > -- > 2.37.2.789.g6183377224-goog >
Hello: This patch was applied to netdev/net-next.git (master) by Jakub Kicinski <kuba@kernel.org>: On Mon, 12 Sep 2022 12:50:19 -0700 you wrote: > The ndo_start_xmit field in net_device_ops is expected to be of type > netdev_tx_t (*ndo_start_xmit)(struct sk_buff *skb, struct net_device *dev). > > The mismatched return type breaks forward edge kCFI since the underlying > function definition does not match the function hook definition. > > The return type of emac_dev_xmit should be changed from int to > netdev_tx_t. > > [...] Here is the summary with links: - net: ethernet: ti: davinci_emac: Fix return type of emac_dev_xmit https://git.kernel.org/netdev/net-next/c/5972ca946098 You are awesome, thank you!
diff --git a/drivers/net/ethernet/ti/davinci_emac.c b/drivers/net/ethernet/ti/davinci_emac.c index 2a3e4e842fa5..e203a5984f03 100644 --- a/drivers/net/ethernet/ti/davinci_emac.c +++ b/drivers/net/ethernet/ti/davinci_emac.c @@ -949,7 +949,7 @@ static void emac_tx_handler(void *token, int len, int status) * * Returns success(NETDEV_TX_OK) or error code (typically out of desc's) */ -static int emac_dev_xmit(struct sk_buff *skb, struct net_device *ndev) +static netdev_tx_t emac_dev_xmit(struct sk_buff *skb, struct net_device *ndev) { struct device *emac_dev = &ndev->dev; int ret_code;
The ndo_start_xmit field in net_device_ops is expected to be of type netdev_tx_t (*ndo_start_xmit)(struct sk_buff *skb, struct net_device *dev). The mismatched return type breaks forward edge kCFI since the underlying function definition does not match the function hook definition. The return type of emac_dev_xmit should be changed from int to netdev_tx_t. Reported-by: Dan Carpenter <error27@gmail.com> Link: https://github.com/ClangBuiltLinux/linux/issues/1703 Cc: llvm@lists.linux.dev Signed-off-by: Nathan Huckleberry <nhuck@google.com> --- drivers/net/ethernet/ti/davinci_emac.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)