lkml.org 
[lkml]   [2010]   [Oct]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: [PATCH RESEND v3 09/24] ptrace: cleanup arch_ptrace() on frv
    Namhyung Kim wrote:
    > 2010-10-02 (토), 12:57 +0900, Namhyung Kim:
    >> 2010-10-02 (토), 03:18 +0000, Daniel K.:
    >>> Namhyung Kim wrote:
    >>>> case PTRACE_POKEUSR: /* write the word at location addr in the USER area */
    >>>> ret = -EIO;
    >>> - if ((addr & 3) || addr < 0)
    >>> + if (addr & 3)
    >>> break;
    >>>
    >>>> - ret = 0;
    >>>> - switch (addr >> 2) {
    >>>> + switch (regno) {
    >>>> case 0 ... PT__END - 1:
    >>>> - ret = put_reg(child, addr >> 2, data);
    >>>> - break;
    >>>> -
    >>>> - default:
    >>>> - ret = -EIO;
    >>>> + ret = put_reg(child, regno, data);
    >>>> break;
    >>>> }
    >>>> break;
    >>> With this, you remove the default case, and no longer return -EIO in the
    >>> cases of PT__END + n, as in the PTRACE_PEEKUSR section above.
    >>>
    >>> This is a change of behaviour as far as I can tell, and not just a cleanup.
    >
    > It would not be a change of behaviour. Because 'ret' was initialized
    > with -EIO and only changed in the switch case. So assignment before
    > switch can be removed and then will return -EIO in default case.

    You are right, I was thrown by the piles of needless code here.

    In fact, the whole switch can now be replaced with:

    if (regno < PT__END)
    ret = put_reg(child, regno, data);

    but it is perhaps better to use the switch-style, for symmetry with
    the PTRACE_PEEKUSR case directly above it?


    Sorry to cause alarm.


    Daniel K.
    --
    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: 2010-10-03 22:25    [W:0.025 / U:11.956 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site