Re: [PATCH net-next] net: toshiba: fix return type of ndo_start_xmit function

From: YueHaibing
Date: Wed Sep 19 2018 - 06:35:30 EST


sorry, this is a duplicated patchïPls ignore it.

On 2018/9/19 18:32, YueHaibing wrote:
> The method ndo_start_xmit() is defined as returning an 'netdev_tx_t',
> which is a typedef for an enum type, so make sure the implementation in
> this driver has returns 'netdev_tx_t' value, and change the function
> return type to netdev_tx_t.
>
> Found by coccinelle.
>
> Signed-off-by: YueHaibing <yuehaibing@xxxxxxxxxx>
> ---
> drivers/net/ethernet/toshiba/ps3_gelic_net.c | 4 ++--
> drivers/net/ethernet/toshiba/ps3_gelic_net.h | 2 +-
> drivers/net/ethernet/toshiba/spider_net.c | 4 ++--
> drivers/net/ethernet/toshiba/tc35815.c | 6 ++++--
> 4 files changed, 9 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/net/ethernet/toshiba/ps3_gelic_net.c b/drivers/net/ethernet/toshiba/ps3_gelic_net.c
> index 88d74ae..75237c8 100644
> --- a/drivers/net/ethernet/toshiba/ps3_gelic_net.c
> +++ b/drivers/net/ethernet/toshiba/ps3_gelic_net.c
> @@ -845,9 +845,9 @@ static int gelic_card_kick_txdma(struct gelic_card *card,
> * @skb: packet to send out
> * @netdev: interface device structure
> *
> - * returns 0 on success, <0 on failure
> + * returns NETDEV_TX_OK on success, NETDEV_TX_BUSY on failure
> */
> -int gelic_net_xmit(struct sk_buff *skb, struct net_device *netdev)
> +netdev_tx_t gelic_net_xmit(struct sk_buff *skb, struct net_device *netdev)
> {
> struct gelic_card *card = netdev_card(netdev);
> struct gelic_descr *descr;
> diff --git a/drivers/net/ethernet/toshiba/ps3_gelic_net.h b/drivers/net/ethernet/toshiba/ps3_gelic_net.h
> index 003d045..fbbf9b5 100644
> --- a/drivers/net/ethernet/toshiba/ps3_gelic_net.h
> +++ b/drivers/net/ethernet/toshiba/ps3_gelic_net.h
> @@ -370,7 +370,7 @@ static inline void udbg_shutdown_ps3gelic(void) {}
> void gelic_card_down(struct gelic_card *card);
> int gelic_net_open(struct net_device *netdev);
> int gelic_net_stop(struct net_device *netdev);
> -int gelic_net_xmit(struct sk_buff *skb, struct net_device *netdev);
> +netdev_tx_t gelic_net_xmit(struct sk_buff *skb, struct net_device *netdev);
> void gelic_net_set_multi(struct net_device *netdev);
> void gelic_net_tx_timeout(struct net_device *netdev);
> int gelic_net_setup_netdev(struct net_device *netdev, struct gelic_card *card);
> diff --git a/drivers/net/ethernet/toshiba/spider_net.c b/drivers/net/ethernet/toshiba/spider_net.c
> index d925b82..2341726 100644
> --- a/drivers/net/ethernet/toshiba/spider_net.c
> +++ b/drivers/net/ethernet/toshiba/spider_net.c
> @@ -880,9 +880,9 @@
> * @skb: packet to send out
> * @netdev: interface device structure
> *
> - * returns 0 on success, !0 on failure
> + * returns NETDEV_TX_OK on success, NETDEV_TX_BUSY on failure
> */
> -static int
> +static netdev_tx_t
> spider_net_xmit(struct sk_buff *skb, struct net_device *netdev)
> {
> int cnt;
> diff --git a/drivers/net/ethernet/toshiba/tc35815.c b/drivers/net/ethernet/toshiba/tc35815.c
> index 7163a8d..6a71c2c 100644
> --- a/drivers/net/ethernet/toshiba/tc35815.c
> +++ b/drivers/net/ethernet/toshiba/tc35815.c
> @@ -474,7 +474,8 @@ static void free_rxbuf_skb(struct pci_dev *hwdev, struct sk_buff *skb, dma_addr_
> /* Index to functions, as function prototypes. */
>
> static int tc35815_open(struct net_device *dev);
> -static int tc35815_send_packet(struct sk_buff *skb, struct net_device *dev);
> +static netdev_tx_t tc35815_send_packet(struct sk_buff *skb,
> + struct net_device *dev);
> static irqreturn_t tc35815_interrupt(int irq, void *dev_id);
> static int tc35815_rx(struct net_device *dev, int limit);
> static int tc35815_poll(struct napi_struct *napi, int budget);
> @@ -1248,7 +1249,8 @@ static void tc35815_tx_timeout(struct net_device *dev)
> * invariant will hold if you make sure that the netif_*_queue()
> * calls are done at the proper times.
> */
> -static int tc35815_send_packet(struct sk_buff *skb, struct net_device *dev)
> +static netdev_tx_t
> +tc35815_send_packet(struct sk_buff *skb, struct net_device *dev)
> {
> struct tc35815_local *lp = netdev_priv(dev);
> struct TxFD *txfd;
>