lkml.org 
[lkml]   [2010]   [Dec]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    Subject[Patch 10/21] Create /proc/pid/core entry
    Create the /proc/PID/core entry.

    Signed-off-by: Suzuki K. Poulose <suzuki@in.ibm.com>
    Signed-off-by: Ananth N.Mavinakayanahalli <ananth@in.ibm.com>
    ---
    fs/proc/Makefile | 1 +
    fs/proc/base.c | 1 +
    fs/proc/gencore.c | 48 ++++++++++++++++++++++++++++++++++++++++++++++++
    fs/proc/internal.h | 1 +
    4 files changed, 51 insertions(+)

    Index: linux-2.6.36-rc7/fs/proc/Makefile
    ===================================================================
    --- linux-2.6.36-rc7.orig/fs/proc/Makefile
    +++ linux-2.6.36-rc7/fs/proc/Makefile
    @@ -19,6 +19,7 @@ proc-y += stat.o
    proc-y += uptime.o
    proc-y += version.o
    proc-y += softirqs.o
    +proc-$(CONFIG_ELF_CORE) += gencore.o
    proc-$(CONFIG_PROC_SYSCTL) += proc_sysctl.o
    proc-$(CONFIG_NET) += proc_net.o
    proc-$(CONFIG_PROC_KCORE) += kcore.o
    Index: linux-2.6.36-rc7/fs/proc/base.c
    ===================================================================
    --- linux-2.6.36-rc7.orig/fs/proc/base.c
    +++ linux-2.6.36-rc7/fs/proc/base.c
    @@ -2735,6 +2735,7 @@ static const struct pid_entry tgid_base_
    #endif
    #ifdef CONFIG_ELF_CORE
    REG("coredump_filter", S_IRUGO|S_IWUSR, proc_coredump_filter_operations),
    + REG("core", S_IRUSR, proc_gen_core_operations),
    #endif
    #ifdef CONFIG_TASK_IO_ACCOUNTING
    INF("io", S_IRUGO, proc_tgid_io_accounting),
    Index: linux-2.6.36-rc7/fs/proc/gencore.c
    ===================================================================
    --- /dev/null
    +++ linux-2.6.36-rc7/fs/proc/gencore.c
    @@ -0,0 +1,48 @@
    +/*
    + * Application core dump
    + *
    + * This program is free software; you can redistribute it and/or modify
    + * it under the terms of the GNU General Public License as published by
    + * the Free Software Foundation; either version 2 of the License, or
    + * (at your option) any later version.
    + *
    + * This program is distributed in the hope that it will be useful,
    + * but WITHOUT ANY WARRANTY; without even the implied warranty of
    + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
    + * GNU General Public License for more details.
    + *
    + * You should have received a copy of the GNU General Public License
    + * along with this program; if not, write to the Free Software
    + * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
    + *
    + * Copyright (C) IBM Corporation, 2010
    + *
    + * Authors:
    + * Ananth N.Mavinakayanahalli <ananth@in.ibm.com>
    + * Suzuki K. Poulose <suzuki@in.ibm.com>
    + */
    +
    +#include <linux/seq_file.h>
    +#include "internal.h"
    +
    +static ssize_t read_gencore(struct file *file, char __user *buffer,
    + size_t buflen, loff_t *fpos)
    +{
    + return 0;
    +}
    +
    +static int release_gencore(struct inode *inode, struct file *file)
    +{
    + return 0;
    +}
    +
    +static int open_gencore(struct inode *inode, struct file *filp)
    +{
    + return 0;
    +}
    +
    +const struct file_operations proc_gen_core_operations = {
    + .open = open_gencore,
    + .read = read_gencore,
    + .release = release_gencore,
    +};
    Index: linux-2.6.36-rc7/fs/proc/internal.h
    ===================================================================
    --- linux-2.6.36-rc7.orig/fs/proc/internal.h
    +++ linux-2.6.36-rc7/fs/proc/internal.h
    @@ -60,6 +60,7 @@ extern const struct file_operations proc
    extern const struct file_operations proc_pagemap_operations;
    extern const struct file_operations proc_net_operations;
    extern const struct inode_operations proc_net_inode_operations;
    +extern const struct file_operations proc_gen_core_operations;

    void proc_init_inodecache(void);


    \
     
     \ /
      Last update: 2010-12-14 11:13    [W:0.023 / U:33.600 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site