lkml.org 
[lkml]   [2012]   [Mar]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Date
    Subject[Patch]Introduce get_reason_str() to pstore
    Hi,

    Recently, there has been some changes in kmsg_dump() below and they have been applied to linus-tree.
    (1) kmsg_dump(KMSG_DUMP_KEXEC) was removed.
    http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=commitdiff;h=a3dd3323058d281abd584b15ad4c5b65064d7a61

    (2) A order of "enum kmsg_dump_reason" was modified.
    http://git.kernel.org/?p=linux/kernel/git/torvalds/linux.git;a=commitdiff;h=c22ab332902333f83766017478c1ef6607ace681

    This patch removes reason_str array and add get_reason_str() in accordance with Adrian's comment below.
    https://lkml.org/lkml/2012/3/16/63

    Signed-off-by: Seiji Aguchi <seiji.aguchi@hds.com>
    Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>

    ---
    fs/pstore/platform.c | 30 ++++++++++++++++++++++--------
    1 files changed, 22 insertions(+), 8 deletions(-)

    diff --git a/fs/pstore/platform.c b/fs/pstore/platform.c index 9ec22d3..82c585f 100644
    --- a/fs/pstore/platform.c
    +++ b/fs/pstore/platform.c
    @@ -68,9 +68,25 @@ void pstore_set_kmsg_bytes(int bytes)
    /* Tag each group of saved records with a sequence number */
    static int oopscount;

    -static char *reason_str[] = {
    - "Oops", "Panic", "Kexec", "Restart", "Halt", "Poweroff", "Emergency"
    -};
    +static const char *get_reason_str(enum kmsg_dump_reason reason) {
    + switch (reason) {
    + case KMSG_DUMP_PANIC:
    + return "Panic";
    + case KMSG_DUMP_OOPS:
    + return "Oops";
    + case KMSG_DUMP_EMERG:
    + return "Emergency";
    + case KMSG_DUMP_RESTART:
    + return "Restart";
    + case KMSG_DUMP_HALT:
    + return "Halt";
    + case KMSG_DUMP_POWEROFF:
    + return "Poweroff";
    + default:
    + return "Unknown";
    + }
    +}

    /*
    * callback from kmsg_dump. (s2,l2) has the most recently @@ -85,17 +101,15 @@ static void pstore_dump(struct kmsg_dumper *dumper,
    unsigned long s1_start, s2_start;
    unsigned long l1_cpy, l2_cpy;
    unsigned long size, total = 0;
    - char *dst, *why;
    + char *dst;
    + const char *why;
    u64 id;
    int hsize, ret;
    unsigned int part = 1;
    unsigned long flags = 0;
    int is_locked = 0;

    - if (reason < ARRAY_SIZE(reason_str))
    - why = reason_str[reason];
    - else
    - why = "Unknown";
    + why = get_reason_str(reason);

    if (in_nmi()) {
    is_locked = spin_trylock(&psinfo->buf_lock);
    --
    1.7.1

    \
     
     \ /
      Last update: 2012-03-16 18:05    [W:0.023 / U:150.264 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site