lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1283582496.2320.4.camel@edumazet-laptop>
Date:	Sat, 04 Sep 2010 08:41:36 +0200
From:	Eric Dumazet <eric.dumazet@...il.com>
To:	Santiago Leon <santil@...ux.vnet.ibm.com>
Cc:	netdev@...r.kernel.org, brking@...ux.vnet.ibm.com, anton@...ba.org
Subject: Re: [patch 03/21] ibmveth: Remove LLTX

Le vendredi 03 septembre 2010 à 23:28 -0500, Santiago Leon a écrit :
> The ibmveth adapter needs locking in the transmit routine to protect
> the bounce_buffer but it sets LLTX and forgets to add any of its own
> locking.
> 
> Just remove the deprecated LLTX option. Remove the stats lock in the process.
> 
> Signed-off-by: Anton Blanchard <anton@...ba.org>
> Signed-off-by: Santiago Leon <santil@...ux.vnet.ibm.com>
> ---
> 
> Index: net-next-2.6/drivers/net/ibmveth.c
> ===================================================================
> --- net-next-2.6.orig//drivers/net/ibmveth.c	2010-09-03 22:18:39.000000000 -0500
> +++ net-next-2.6/drivers/net/ibmveth.c	2010-09-03 22:18:40.000000000 -0500
> @@ -903,7 +903,6 @@ static netdev_tx_t ibmveth_start_xmit(st
>  	union ibmveth_buf_desc desc;
>  	unsigned long lpar_rc;
>  	unsigned long correlator;
> -	unsigned long flags;
>  	unsigned int retry_count;
>  	unsigned int tx_dropped = 0;
>  	unsigned int tx_bytes = 0;

Why dont you remove these local variables then ? 
tx_dropped, tx_bytes, tx_packets ?

> @@ -965,20 +964,18 @@ static netdev_tx_t ibmveth_start_xmit(st
>  	} else {
>  		tx_packets++;
>  		tx_bytes += skb->len;
> -		netdev->trans_start = jiffies; /* NETIF_F_LLTX driver :( */
>  	}
>  
>  	if (!used_bounce)
>  		dma_unmap_single(&adapter->vdev->dev, data_dma_addr,
>  				 skb->len, DMA_TO_DEVICE);
>  
> -out:	spin_lock_irqsave(&adapter->stats_lock, flags);
> +out:
>  	netdev->stats.tx_dropped += tx_dropped;
>  	netdev->stats.tx_bytes += tx_bytes;
>  	netdev->stats.tx_packets += tx_packets;
>  	adapter->tx_send_failed += tx_send_failed;
>  	adapter->tx_map_failed += tx_map_failed;
> -	spin_unlock_irqrestore(&adapter->stats_lock, flags);
>  
>  	dev_kfree_skb(skb);
>  	return NETDEV_TX_OK;
> @@ -1290,8 +1287,6 @@ static int __devinit ibmveth_probe(struc
>  	netdev->netdev_ops = &ibmveth_netdev_ops;
>  	netdev->ethtool_ops = &netdev_ethtool_ops;
>  	SET_NETDEV_DEV(netdev, &dev->dev);
> - 	netdev->features |= NETIF_F_LLTX;
> -	spin_lock_init(&adapter->stats_lock);
>  
>  	memcpy(netdev->dev_addr, &adapter->mac_addr, netdev->addr_len);
>  
> Index: net-next-2.6/drivers/net/ibmveth.h
> ===================================================================
> --- net-next-2.6.orig//drivers/net/ibmveth.h	2010-09-03 22:18:39.000000000 -0500
> +++ net-next-2.6/drivers/net/ibmveth.h	2010-09-03 22:18:40.000000000 -0500
> @@ -158,7 +158,6 @@ struct ibmveth_adapter {
>      u64 rx_no_buffer;
>      u64 tx_map_failed;
>      u64 tx_send_failed;
> -    spinlock_t stats_lock;
>  };
>  
>  struct ibmveth_buf_desc_fields {
> --


--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ