diff options
author | Pavel Emelyanov <xemul@openvz.org> | 2008-02-29 20:37:02 +0100 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-02-29 20:37:02 +0100 |
commit | 9a8c09e73bf6c8b1720b1172cdcabb14fc823cf8 (patch) | |
tree | 00c88ccd0a1a062bec3076c1563a624d6a2c3b2a /net/atm/lec.c | |
parent | [NET]: sk_release_kernel needs to be exported to modules (diff) | |
download | linux-9a8c09e73bf6c8b1720b1172cdcabb14fc823cf8.tar.xz linux-9a8c09e73bf6c8b1720b1172cdcabb14fc823cf8.zip |
[ATM]: Use seq_open/release_privade instead of manual manipulations.
lec_seq_open/lec_seq_release and __vcc_seq_open/vcc_seq_release
do seq_open/release_private's job.
Signed-off-by: Pavel Emelyanov <xemul@openvz.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/atm/lec.c')
-rw-r--r-- | net/atm/lec.c | 29 |
1 files changed, 2 insertions, 27 deletions
diff --git a/net/atm/lec.c b/net/atm/lec.c index 0e450d12f035..e2d800d818e3 100644 --- a/net/atm/lec.c +++ b/net/atm/lec.c @@ -1169,32 +1169,7 @@ static const struct seq_operations lec_seq_ops = { static int lec_seq_open(struct inode *inode, struct file *file) { - struct lec_state *state; - struct seq_file *seq; - int rc = -EAGAIN; - - state = kmalloc(sizeof(*state), GFP_KERNEL); - if (!state) { - rc = -ENOMEM; - goto out; - } - - rc = seq_open(file, &lec_seq_ops); - if (rc) - goto out_kfree; - seq = file->private_data; - seq->private = state; -out: - return rc; - -out_kfree: - kfree(state); - goto out; -} - -static int lec_seq_release(struct inode *inode, struct file *file) -{ - return seq_release_private(inode, file); + return seq_open_private(file, &lec_seq_ops, sizeof(struct lec_state)); } static const struct file_operations lec_seq_fops = { @@ -1202,7 +1177,7 @@ static const struct file_operations lec_seq_fops = { .open = lec_seq_open, .read = seq_read, .llseek = seq_lseek, - .release = lec_seq_release, + .release = seq_release_private, }; #endif |