lkml.org 
[lkml]   [2007]   [Apr]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 11/13] maps#2: Make /proc/pid/clear_refs option under CONFIG_EMBEDDED
    Date
    Make /proc/pid/clear_refs option under CONFIG_EMBEDDED

    This interface is primarily useful for doing memory profiling and not
    much use on deployed embedded boxes. Make it optional. Together with
    /proc/pid/smaps, this save a few K.

    Signed-off-by: Matt Mackall <mpm@selenic.com>

    Index: mm/fs/proc/base.c
    ===================================================================
    --- mm.orig/fs/proc/base.c 2007-04-03 14:50:33.000000000 -0500
    +++ mm/fs/proc/base.c 2007-04-03 18:04:59.000000000 -0500
    @@ -2000,7 +2000,9 @@ static const struct pid_entry tgid_base_
    REG("mounts", S_IRUGO, mounts),
    REG("mountstats", S_IRUSR, mountstats),
    #ifdef CONFIG_MMU
    +#ifdef CONFIG_PROC_CLEAR_REFS
    REG("clear_refs", S_IWUSR, clear_refs),
    +#endif
    #ifdef CONFIG_PROC_SMAPS
    REG("smaps", S_IRUGO, smaps),
    #endif
    @@ -2285,7 +2287,9 @@ static const struct pid_entry tid_base_s
    LNK("exe", exe),
    REG("mounts", S_IRUGO, mounts),
    #ifdef CONFIG_MMU
    +#ifdef CONFIG_PROC_CLEAR_REFS
    REG("clear_refs", S_IWUSR, clear_refs),
    +#endif
    #ifdef CONFIG_PROC_SMAPS
    REG("smaps", S_IRUGO, smaps),
    #endif
    Index: mm/fs/proc/task_mmu.c
    ===================================================================
    --- mm.orig/fs/proc/task_mmu.c 2007-04-03 14:50:33.000000000 -0500
    +++ mm/fs/proc/task_mmu.c 2007-04-03 18:04:59.000000000 -0500
    @@ -424,6 +424,7 @@ const struct file_operations proc_smaps_
    };
    #endif

    +#ifdef CONFIG_PROC_CLEAR_REFS
    static int clear_refs_pte_range(pmd_t *pmd, unsigned long addr,
    unsigned long end, void *private)
    {
    @@ -493,6 +494,7 @@ static ssize_t clear_refs_write(struct f
    const struct file_operations proc_clear_refs_operations = {
    .write = clear_refs_write,
    };
    +#endif

    #ifdef CONFIG_NUMA
    extern int show_numa_map(struct seq_file *m, void *v);
    Index: mm/init/Kconfig
    ===================================================================
    --- mm.orig/init/Kconfig 2007-04-03 14:50:33.000000000 -0500
    +++ mm/init/Kconfig 2007-04-03 18:04:59.000000000 -0500
    @@ -593,6 +593,15 @@ config PROC_SMAPS
    shared memory per mapping. Disabling this interface will reduce
    the size of the kernel for small machines.

    +config PROC_CLEAR_REFS
    + default y
    + bool "Enable /proc/pid/clear_refs support" if EMBEDDED && PROC_FS && MMU
    + help
    + The /proc/pid/clear_refs interface allows clearing the
    + referenced bits on a process's memory maps to allow monitoring
    + working set size. Disabling this interface will reduce
    + the size of the kernel for small machines.
    +
    endmenu # General setup

    config RT_MUTEXES
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/
    \
     
     \ /
      Last update: 2007-04-07 00:07    [W:0.023 / U:3.932 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site