Skip to content

Commit

Permalink
ibmveth: remove procfs code
Browse files Browse the repository at this point in the history
We export all the driver specific statistics via ethtool, so there is no need
to duplicate this in procfs.

Signed-off-by: Anton Blanchard <anton@samba.org>
Signed-off-by: Santiago Leon <santil@linux.vnet.ibm.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Santiago Leon authored and David S. Miller committed Sep 7, 2010
1 parent ab78df7 commit d2684b5
Showing 1 changed file with 0 additions and 113 deletions.
113 changes: 0 additions & 113 deletions drivers/net/ibmveth.c
Original file line number Diff line number Diff line change
Expand Up @@ -26,11 +26,6 @@
/* ethernet NICs that are presented to the partition by the hypervisor. */
/* */
/**************************************************************************/
/*
TODO:
- add support for sysfs
- possibly remove procfs support
*/

#include <linux/module.h>
#include <linux/moduleparam.h>
Expand All @@ -47,19 +42,16 @@
#include <linux/mm.h>
#include <linux/pm.h>
#include <linux/ethtool.h>
#include <linux/proc_fs.h>
#include <linux/in.h>
#include <linux/ip.h>
#include <linux/ipv6.h>
#include <linux/slab.h>
#include <net/net_namespace.h>
#include <asm/hvcall.h>
#include <asm/atomic.h>
#include <asm/vio.h>
#include <asm/iommu.h>
#include <asm/uaccess.h>
#include <asm/firmware.h>
#include <linux/seq_file.h>

#include "ibmveth.h"

Expand Down Expand Up @@ -94,21 +86,12 @@ static int ibmveth_poll(struct napi_struct *napi, int budget);
static int ibmveth_start_xmit(struct sk_buff *skb, struct net_device *dev);
static void ibmveth_set_multicast_list(struct net_device *dev);
static int ibmveth_change_mtu(struct net_device *dev, int new_mtu);
static void ibmveth_proc_register_driver(void);
static void ibmveth_proc_unregister_driver(void);
static void ibmveth_proc_register_adapter(struct ibmveth_adapter *adapter);
static void ibmveth_proc_unregister_adapter(struct ibmveth_adapter *adapter);
static irqreturn_t ibmveth_interrupt(int irq, void *dev_instance);
static void ibmveth_rxq_harvest_buffer(struct ibmveth_adapter *adapter);
static unsigned long ibmveth_get_desired_dma(struct vio_dev *vdev);
static struct kobj_type ktype_veth_pool;


#ifdef CONFIG_PROC_FS
#define IBMVETH_PROC_DIR "ibmveth"
static struct proc_dir_entry *ibmveth_proc_dir;
#endif

static const char ibmveth_driver_name[] = "ibmveth";
static const char ibmveth_driver_string[] = "IBM i/pSeries Virtual Ethernet Driver";
#define ibmveth_driver_version "1.03"
Expand Down Expand Up @@ -1472,8 +1455,6 @@ static int __devinit ibmveth_probe(struct vio_dev *dev, const struct vio_device_

ibmveth_debug_printk("registered\n");

ibmveth_proc_register_adapter(adapter);

return 0;
}

Expand All @@ -1488,103 +1469,12 @@ static int __devexit ibmveth_remove(struct vio_dev *dev)

unregister_netdev(netdev);

ibmveth_proc_unregister_adapter(adapter);

free_netdev(netdev);
dev_set_drvdata(&dev->dev, NULL);

return 0;
}

#ifdef CONFIG_PROC_FS
static void ibmveth_proc_register_driver(void)
{
ibmveth_proc_dir = proc_mkdir(IBMVETH_PROC_DIR, init_net.proc_net);
if (ibmveth_proc_dir) {
}
}

static void ibmveth_proc_unregister_driver(void)
{
remove_proc_entry(IBMVETH_PROC_DIR, init_net.proc_net);
}

static int ibmveth_show(struct seq_file *seq, void *v)
{
struct ibmveth_adapter *adapter = seq->private;
char *current_mac = (char *) adapter->netdev->dev_addr;
char *firmware_mac = (char *) &adapter->mac_addr;

seq_printf(seq, "%s %s\n\n", ibmveth_driver_string, ibmveth_driver_version);

seq_printf(seq, "Unit Address: 0x%x\n", adapter->vdev->unit_address);
seq_printf(seq, "Current MAC: %pM\n", current_mac);
seq_printf(seq, "Firmware MAC: %pM\n", firmware_mac);

seq_printf(seq, "\nAdapter Statistics:\n");
seq_printf(seq, " TX: vio_map_single failres: %lld\n", adapter->tx_map_failed);
seq_printf(seq, " send failures: %lld\n", adapter->tx_send_failed);
seq_printf(seq, " RX: replenish task cycles: %lld\n", adapter->replenish_task_cycles);
seq_printf(seq, " alloc_skb_failures: %lld\n", adapter->replenish_no_mem);
seq_printf(seq, " add buffer failures: %lld\n", adapter->replenish_add_buff_failure);
seq_printf(seq, " invalid buffers: %lld\n", adapter->rx_invalid_buffer);
seq_printf(seq, " no buffers: %lld\n", adapter->rx_no_buffer);

return 0;
}

static int ibmveth_proc_open(struct inode *inode, struct file *file)
{
return single_open(file, ibmveth_show, PDE(inode)->data);
}

static const struct file_operations ibmveth_proc_fops = {
.owner = THIS_MODULE,
.open = ibmveth_proc_open,
.read = seq_read,
.llseek = seq_lseek,
.release = single_release,
};

static void ibmveth_proc_register_adapter(struct ibmveth_adapter *adapter)
{
struct proc_dir_entry *entry;
if (ibmveth_proc_dir) {
char u_addr[10];
sprintf(u_addr, "%x", adapter->vdev->unit_address);
entry = proc_create_data(u_addr, S_IFREG, ibmveth_proc_dir,
&ibmveth_proc_fops, adapter);
if (!entry)
ibmveth_error_printk("Cannot create adapter proc entry");
}
}

static void ibmveth_proc_unregister_adapter(struct ibmveth_adapter *adapter)
{
if (ibmveth_proc_dir) {
char u_addr[10];
sprintf(u_addr, "%x", adapter->vdev->unit_address);
remove_proc_entry(u_addr, ibmveth_proc_dir);
}
}

#else /* CONFIG_PROC_FS */
static void ibmveth_proc_register_adapter(struct ibmveth_adapter *adapter)
{
}

static void ibmveth_proc_unregister_adapter(struct ibmveth_adapter *adapter)
{
}
static void ibmveth_proc_register_driver(void)
{
}

static void ibmveth_proc_unregister_driver(void)
{
}
#endif /* CONFIG_PROC_FS */

static struct attribute veth_active_attr;
static struct attribute veth_num_attr;
static struct attribute veth_size_attr;
Expand Down Expand Up @@ -1757,15 +1647,12 @@ static int __init ibmveth_module_init(void)
{
ibmveth_printk("%s: %s %s\n", ibmveth_driver_name, ibmveth_driver_string, ibmveth_driver_version);

ibmveth_proc_register_driver();

return vio_register_driver(&ibmveth_driver);
}

static void __exit ibmveth_module_exit(void)
{
vio_unregister_driver(&ibmveth_driver);
ibmveth_proc_unregister_driver();
}

module_init(ibmveth_module_init);
Expand Down

0 comments on commit d2684b5

Please sign in to comment.