The patch titled Subject: ipc/util.c: use __seq_open_private() instead of seq_open() has been added to the -mm tree. Its filename is ipc-use-__seq_open_private-instead-of-seq_open.patch This patch should soon appear at http://ozlabs.org/~akpm/mmots/broken-out/ipc-use-__seq_open_private-instead-of-seq_open.patch and later at http://ozlabs.org/~akpm/mmotm/broken-out/ipc-use-__seq_open_private-instead-of-seq_open.patch Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/SubmitChecklist when testing your code *** The -mm tree is included into linux-next and is updated there every 3-4 working days ------------------------------------------------------ From: Rob Jones <rob.jones@xxxxxxxxxxxxxxx> Subject: ipc/util.c: use __seq_open_private() instead of seq_open() Using __seq_open_private() removes boilerplate code from sysvipc_proc_open(). The resultant code is shorter and easier to follow. However, please note that __seq_open_private() call kzalloc() rather than kmalloc() which may affect timing due to the memory initialisation overhead. Signed-off-by: Rob Jones <rob.jones@xxxxxxxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- ipc/util.c | 20 ++++---------------- 1 file changed, 4 insertions(+), 16 deletions(-) diff -puN ipc/util.c~ipc-use-__seq_open_private-instead-of-seq_open ipc/util.c --- a/ipc/util.c~ipc-use-__seq_open_private-instead-of-seq_open +++ a/ipc/util.c @@ -892,28 +892,16 @@ static const struct seq_operations sysvi static int sysvipc_proc_open(struct inode *inode, struct file *file) { - int ret; - struct seq_file *seq; struct ipc_proc_iter *iter; - ret = -ENOMEM; - iter = kmalloc(sizeof(*iter), GFP_KERNEL); + iter = __seq_open_private(file, &sysvipc_proc_seqops, sizeof(*iter)); if (!iter) - goto out; - - ret = seq_open(file, &sysvipc_proc_seqops); - if (ret) { - kfree(iter); - goto out; - } - - seq = file->private_data; - seq->private = iter; + return -ENOMEM; iter->iface = PDE_DATA(inode); iter->ns = get_ipc_ns(current->nsproxy->ipc_ns); -out: - return ret; + + return 0; } static int sysvipc_proc_release(struct inode *inode, struct file *file) _ Patches currently in -mm which might be from rob.jones@xxxxxxxxxxxxxxx are ipc-use-__seq_open_private-instead-of-seq_open.patch mm-use-seq_open_private-instead-of-seq_open.patch mm-use-__seq_open_private-instead-of-seq_open.patch lib-use-seq_open_private-instead-of-seq_open.patch linux-next.patch -- To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html