Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b225ee5b authored by Linus Torvalds's avatar Linus Torvalds
Browse files
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
  net: Remove CONFIG_KMOD from net/ (towards removing CONFIG_KMOD entirely)
  ipv4: Add a missing rcu_assign_pointer() in routing cache.
  [netdrvr] ibmtr: PCMCIA IBMTR is ok on 64bit
  xen-netfront: Avoid unaligned accesses to IP header
  lmc: copy_*_user under spinlock
  [netdrvr] myri10ge, ixgbe: remove broken select INTEL_IOATDMA
parents 2e532d68 95a5afca
Loading
Loading
Loading
Loading
+10 −2
Original line number Diff line number Diff line
@@ -2410,7 +2410,6 @@ config IXGBE
	tristate "Intel(R) 10GbE PCI Express adapters support"
	depends on PCI && INET
	select INET_LRO
	select INTEL_IOATDMA
	---help---
	  This driver supports Intel(R) 10GbE PCI Express family of
	  adapters.  For more information on how to identify your adapter, go
@@ -2426,6 +2425,11 @@ config IXGBE
	  To compile this driver as a module, choose M here. The module
	  will be called ixgbe.

config IXGBE_DCA
	bool
	default y
	depends on IXGBE && DCA && !(IXGBE=y && DCA=m)

config IXGB
	tristate "Intel(R) PRO/10GbE support"
	depends on PCI
@@ -2462,7 +2466,6 @@ config MYRI10GE
	select FW_LOADER
	select CRC32
	select INET_LRO
	select INTEL_IOATDMA
	---help---
	  This driver supports Myricom Myri-10G Dual Protocol interface in
	  Ethernet mode. If the eeprom on your board is not recent enough,
@@ -2474,6 +2477,11 @@ config MYRI10GE
	  To compile this driver as a module, choose M here. The module
	  will be called myri10ge.

config MYRI10GE_DCA
	bool
	default y
	depends on MYRI10GE && DCA && !(MYRI10GE=y && DCA=m)

config NETXEN_NIC
	tristate "NetXen Multi port (1/10) Gigabit Ethernet NIC"
	depends on PCI
+2 −2
Original line number Diff line number Diff line
@@ -36,7 +36,7 @@
#include "ixgbe_type.h"
#include "ixgbe_common.h"

#if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE)
#ifdef CONFIG_IXGBE_DCA
#include <linux/dca.h>
#endif

@@ -136,7 +136,7 @@ struct ixgbe_ring {
		      * offset associated with this ring, which is different
		      * for DCE and RSS modes */

#if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE)
#ifdef CONFIG_IXGBE_DCA
	/* cpu for tx queue */
	int cpu;
#endif
+16 −16
Original line number Diff line number Diff line
@@ -80,7 +80,7 @@ static struct pci_device_id ixgbe_pci_tbl[] = {
};
MODULE_DEVICE_TABLE(pci, ixgbe_pci_tbl);

#if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE)
#ifdef CONFIG_IXGBE_DCA
static int ixgbe_notify_dca(struct notifier_block *, unsigned long event,
                            void *p);
static struct notifier_block dca_notifier = {
@@ -296,7 +296,7 @@ static bool ixgbe_clean_tx_irq(struct ixgbe_adapter *adapter,
	return (total_packets ? true : false);
}

#if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE)
#ifdef CONFIG_IXGBE_DCA
static void ixgbe_update_rx_dca(struct ixgbe_adapter *adapter,
                                struct ixgbe_ring *rx_ring)
{
@@ -383,7 +383,7 @@ static int __ixgbe_notify_dca(struct device *dev, void *data)
	return 0;
}

#endif /* CONFIG_DCA or CONFIG_DCA_MODULE */
#endif /* CONFIG_IXGBE_DCA */
/**
 * ixgbe_receive_skb - Send a completed packet up the stack
 * @adapter: board private structure
@@ -947,7 +947,7 @@ static irqreturn_t ixgbe_msix_clean_tx(int irq, void *data)
	r_idx = find_first_bit(q_vector->txr_idx, adapter->num_tx_queues);
	for (i = 0; i < q_vector->txr_count; i++) {
		tx_ring = &(adapter->tx_ring[r_idx]);
#if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE)
#ifdef CONFIG_IXGBE_DCA
		if (adapter->flags & IXGBE_FLAG_DCA_ENABLED)
			ixgbe_update_tx_dca(adapter, tx_ring);
#endif
@@ -1022,7 +1022,7 @@ static int ixgbe_clean_rxonly(struct napi_struct *napi, int budget)

	r_idx = find_first_bit(q_vector->rxr_idx, adapter->num_rx_queues);
	rx_ring = &(adapter->rx_ring[r_idx]);
#if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE)
#ifdef CONFIG_IXGBE_DCA
	if (adapter->flags & IXGBE_FLAG_DCA_ENABLED)
		ixgbe_update_rx_dca(adapter, rx_ring);
#endif
@@ -1066,7 +1066,7 @@ static int ixgbe_clean_rxonly_many(struct napi_struct *napi, int budget)
	r_idx = find_first_bit(q_vector->rxr_idx, adapter->num_rx_queues);
	for (i = 0; i < q_vector->rxr_count; i++) {
		rx_ring = &(adapter->rx_ring[r_idx]);
#if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE)
#ifdef CONFIG_IXGBE_DCA
		if (adapter->flags & IXGBE_FLAG_DCA_ENABLED)
			ixgbe_update_rx_dca(adapter, rx_ring);
#endif
@@ -2155,7 +2155,7 @@ void ixgbe_down(struct ixgbe_adapter *adapter)

	netif_carrier_off(netdev);

#if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE)
#ifdef CONFIG_IXGBE_DCA
	if (adapter->flags & IXGBE_FLAG_DCA_ENABLED) {
		adapter->flags &= ~IXGBE_FLAG_DCA_ENABLED;
		dca_remove_requester(&adapter->pdev->dev);
@@ -2167,7 +2167,7 @@ void ixgbe_down(struct ixgbe_adapter *adapter)
	ixgbe_clean_all_tx_rings(adapter);
	ixgbe_clean_all_rx_rings(adapter);

#if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE)
#ifdef CONFIG_IXGBE_DCA
	/* since we reset the hardware DCA settings were cleared */
	if (dca_add_requester(&adapter->pdev->dev) == 0) {
		adapter->flags |= IXGBE_FLAG_DCA_ENABLED;
@@ -2193,7 +2193,7 @@ static int ixgbe_poll(struct napi_struct *napi, int budget)
	struct ixgbe_adapter *adapter = q_vector->adapter;
	int tx_cleaned, work_done = 0;

#if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE)
#ifdef CONFIG_IXGBE_DCA
	if (adapter->flags & IXGBE_FLAG_DCA_ENABLED) {
		ixgbe_update_tx_dca(adapter, adapter->tx_ring);
		ixgbe_update_rx_dca(adapter, adapter->rx_ring);
@@ -3922,7 +3922,7 @@ static int __devinit ixgbe_probe(struct pci_dev *pdev,
	if (err)
		goto err_register;

#if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE)
#ifdef CONFIG_IXGBE_DCA
	if (dca_add_requester(&pdev->dev) == 0) {
		adapter->flags |= IXGBE_FLAG_DCA_ENABLED;
		/* always use CB2 mode, difference is masked
@@ -3972,7 +3972,7 @@ static void __devexit ixgbe_remove(struct pci_dev *pdev)

	flush_scheduled_work();

#if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE)
#ifdef CONFIG_IXGBE_DCA
	if (adapter->flags & IXGBE_FLAG_DCA_ENABLED) {
		adapter->flags &= ~IXGBE_FLAG_DCA_ENABLED;
		dca_remove_requester(&pdev->dev);
@@ -4105,10 +4105,10 @@ static int __init ixgbe_init_module(void)

	printk(KERN_INFO "%s: %s\n", ixgbe_driver_name, ixgbe_copyright);

#if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE)
#ifdef CONFIG_IXGBE_DCA
	dca_register_notify(&dca_notifier);

#endif

	ret = pci_register_driver(&ixgbe_driver);
	return ret;
}
@@ -4123,13 +4123,13 @@ module_init(ixgbe_init_module);
 **/
static void __exit ixgbe_exit_module(void)
{
#if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE)
#ifdef CONFIG_IXGBE_DCA
	dca_unregister_notify(&dca_notifier);
#endif
	pci_unregister_driver(&ixgbe_driver);
}

#if defined(CONFIG_DCA) || defined(CONFIG_DCA_MODULE)
#ifdef CONFIG_IXGBE_DCA
static int ixgbe_notify_dca(struct notifier_block *nb, unsigned long event,
                            void *p)
{
@@ -4140,7 +4140,7 @@ static int ixgbe_notify_dca(struct notifier_block *nb, unsigned long event,

	return ret_val ? NOTIFY_BAD : NOTIFY_DONE;
}
#endif /* CONFIG_DCA or CONFIG_DCA_MODULE */
#endif /* CONFIG_IXGBE_DCA */

module_exit(ixgbe_exit_module);

+13 −13
Original line number Diff line number Diff line
@@ -188,7 +188,7 @@ struct myri10ge_slice_state {
	dma_addr_t fw_stats_bus;
	int watchdog_tx_done;
	int watchdog_tx_req;
#if (defined CONFIG_DCA) || (defined CONFIG_DCA_MODULE)
#ifdef CONFIG_MYRI10GE_DCA
	int cached_dca_tag;
	int cpu;
	__be32 __iomem *dca_tag;
@@ -220,7 +220,7 @@ struct myri10ge_priv {
	int msi_enabled;
	int msix_enabled;
	struct msix_entry *msix_vectors;
#if (defined CONFIG_DCA) || (defined CONFIG_DCA_MODULE)
#ifdef CONFIG_MYRI10GE_DCA
	int dca_enabled;
#endif
	u32 link_state;
@@ -902,7 +902,7 @@ static int myri10ge_reset(struct myri10ge_priv *mgp)
	struct myri10ge_slice_state *ss;
	int i, status;
	size_t bytes;
#if (defined CONFIG_DCA) || (defined CONFIG_DCA_MODULE)
#ifdef CONFIG_MYRI10GE_DCA
	unsigned long dca_tag_off;
#endif

@@ -1012,7 +1012,7 @@ static int myri10ge_reset(struct myri10ge_priv *mgp)
	}
	put_be32(htonl(mgp->intr_coal_delay), mgp->intr_coal_delay_ptr);

#if (defined CONFIG_DCA) || (defined CONFIG_DCA_MODULE)
#ifdef CONFIG_MYRI10GE_DCA
	status = myri10ge_send_cmd(mgp, MXGEFW_CMD_GET_DCA_OFFSET, &cmd, 0);
	dca_tag_off = cmd.data0;
	for (i = 0; i < mgp->num_slices; i++) {
@@ -1051,7 +1051,7 @@ static int myri10ge_reset(struct myri10ge_priv *mgp)
	return status;
}

#if (defined CONFIG_DCA) || (defined CONFIG_DCA_MODULE)
#ifdef CONFIG_MYRI10GE_DCA
static void
myri10ge_write_dca(struct myri10ge_slice_state *ss, int cpu, int tag)
{
@@ -1505,7 +1505,7 @@ static int myri10ge_poll(struct napi_struct *napi, int budget)
	struct net_device *netdev = ss->mgp->dev;
	int work_done;

#if (defined CONFIG_DCA) || (defined CONFIG_DCA_MODULE)
#ifdef CONFIG_MYRI10GE_DCA
	if (ss->mgp->dca_enabled)
		myri10ge_update_dca(ss);
#endif
@@ -1736,7 +1736,7 @@ static const char myri10ge_gstrings_main_stats[][ETH_GSTRING_LEN] = {
	"tx_boundary", "WC", "irq", "MSI", "MSIX",
	"read_dma_bw_MBs", "write_dma_bw_MBs", "read_write_dma_bw_MBs",
	"serial_number", "watchdog_resets",
#if (defined CONFIG_DCA) || (defined CONFIG_DCA_MODULE)
#ifdef CONFIG_MYRI10GE_DCA
	"dca_capable_firmware", "dca_device_present",
#endif
	"link_changes", "link_up", "dropped_link_overflow",
@@ -1815,7 +1815,7 @@ myri10ge_get_ethtool_stats(struct net_device *netdev,
	data[i++] = (unsigned int)mgp->read_write_dma;
	data[i++] = (unsigned int)mgp->serial_number;
	data[i++] = (unsigned int)mgp->watchdog_resets;
#if (defined CONFIG_DCA) || (defined CONFIG_DCA_MODULE)
#ifdef CONFIG_MYRI10GE_DCA
	data[i++] = (unsigned int)(mgp->ss[0].dca_tag != NULL);
	data[i++] = (unsigned int)(mgp->dca_enabled);
#endif
@@ -3844,7 +3844,7 @@ static int myri10ge_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
		dev_err(&pdev->dev, "failed reset\n");
		goto abort_with_slices;
	}
#if (defined CONFIG_DCA) || (defined CONFIG_DCA_MODULE)
#ifdef CONFIG_MYRI10GE_DCA
	myri10ge_setup_dca(mgp);
#endif
	pci_set_drvdata(pdev, mgp);
@@ -3948,7 +3948,7 @@ static void myri10ge_remove(struct pci_dev *pdev)
	netdev = mgp->dev;
	unregister_netdev(netdev);

#if (defined CONFIG_DCA) || (defined CONFIG_DCA_MODULE)
#ifdef CONFIG_MYRI10GE_DCA
	myri10ge_teardown_dca(mgp);
#endif
	myri10ge_dummy_rdma(mgp, 0);
@@ -3993,7 +3993,7 @@ static struct pci_driver myri10ge_driver = {
#endif
};

#if (defined CONFIG_DCA) || (defined CONFIG_DCA_MODULE)
#ifdef CONFIG_MYRI10GE_DCA
static int
myri10ge_notify_dca(struct notifier_block *nb, unsigned long event, void *p)
{
@@ -4024,7 +4024,7 @@ static __init int myri10ge_init_module(void)
		       myri10ge_driver.name, myri10ge_rss_hash);
		myri10ge_rss_hash = MXGEFW_RSS_HASH_TYPE_SRC_PORT;
	}
#if (defined CONFIG_DCA) || (defined CONFIG_DCA_MODULE)
#ifdef CONFIG_MYRI10GE_DCA
	dca_register_notify(&myri10ge_dca_notifier);
#endif
	if (myri10ge_max_slices > MYRI10GE_MAX_SLICES)
@@ -4037,7 +4037,7 @@ module_init(myri10ge_init_module);

static __exit void myri10ge_cleanup_module(void)
{
#if (defined CONFIG_DCA) || (defined CONFIG_DCA_MODULE)
#ifdef CONFIG_MYRI10GE_DCA
	dca_unregister_notify(&myri10ge_dca_notifier);
#endif
	pci_unregister_driver(&myri10ge_driver);
+1 −1
Original line number Diff line number Diff line
@@ -111,7 +111,7 @@ config ARCNET_COM20020_CS

config PCMCIA_IBMTR
	tristate "IBM PCMCIA tokenring adapter support"
	depends on IBMTR!=y && TR && !64BIT
	depends on IBMTR!=y && TR
	help
	  Say Y here if you intend to attach this type of Token Ring PCMCIA
	  card to your computer. You then also need to say Y to "Token Ring
Loading