Skip to content

Commit

Permalink
Use single_open instead of manual manipulations.
Browse files Browse the repository at this point in the history
The code opening proc entry for each device makes the
same thing, as the single_open does, so remove the
unneeded code.

Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: Jeff Garzik <jeff@garzik.org>
  • Loading branch information
Pavel Emelyanov authored and Jeff Garzik committed Mar 26, 2008
1 parent 57bb7e2 commit 1119d57
Showing 1 changed file with 3 additions and 39 deletions.
42 changes: 3 additions & 39 deletions drivers/net/ibmveth.c
Original file line number Diff line number Diff line change
Expand Up @@ -1259,26 +1259,7 @@ static void ibmveth_proc_unregister_driver(void)
remove_proc_entry(IBMVETH_PROC_DIR, init_net.proc_net);
}

static void *ibmveth_seq_start(struct seq_file *seq, loff_t *pos)
{
if (*pos == 0) {
return (void *)1;
} else {
return NULL;
}
}

static void *ibmveth_seq_next(struct seq_file *seq, void *v, loff_t *pos)
{
++*pos;
return NULL;
}

static void ibmveth_seq_stop(struct seq_file *seq, void *v)
{
}

static int ibmveth_seq_show(struct seq_file *seq, void *v)
static int ibmveth_show(struct seq_file *seq, void *v)
{
struct ibmveth_adapter *adapter = seq->private;
char *current_mac = ((char*) &adapter->netdev->dev_addr);
Expand All @@ -1302,35 +1283,18 @@ static int ibmveth_seq_show(struct seq_file *seq, void *v)

return 0;
}
static struct seq_operations ibmveth_seq_ops = {
.start = ibmveth_seq_start,
.next = ibmveth_seq_next,
.stop = ibmveth_seq_stop,
.show = ibmveth_seq_show,
};

static int ibmveth_proc_open(struct inode *inode, struct file *file)
{
struct seq_file *seq;
struct proc_dir_entry *proc;
int rc;

rc = seq_open(file, &ibmveth_seq_ops);
if (!rc) {
/* recover the pointer buried in proc_dir_entry data */
seq = file->private_data;
proc = PDE(inode);
seq->private = proc->data;
}
return rc;
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 = seq_release,
.release = single_release,
};

static void ibmveth_proc_register_adapter(struct ibmveth_adapter *adapter)
Expand Down

0 comments on commit 1119d57

Please sign in to comment.