lkml.org 
[lkml]   [2020]   [Mar]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Date
    SubjectRe: [PATCH v2 5/5] exec: Add a exec_update_mutex to replace cred_guard_mutex
    ebiederm@xmission.com (Eric W. Biederman) writes:

    > Bernd Edlinger <bernd.edlinger@hotmail.de> writes:
    >
    >> On 3/9/20 6:40 PM, Eric W. Biederman wrote:
    >>> Bernd Edlinger <bernd.edlinger@hotmail.de> writes:
    >>>
    >>>> On 3/8/20 10:38 PM, Eric W. Biederman wrote:
    >>>>>
    >>>>> The cred_guard_mutex is problematic. The cred_guard_mutex is held
    >>>>> over the userspace accesses as the arguments from userspace are read.
    >>>>> The cred_guard_mutex is held of PTRACE_EVENT_EXIT as the the other
    >>> ^ over
    >>>>
    >>>> ... is held while waiting for the trace parent to handle PTRACE_EVENT_EXIT
    >>>> or something?
    >>>
    >>> Yes. Let me see if I can phrase that better.
    >>>
    >>>> I wonder if we also should mention that
    >>>> it is held while waiting for the trace parent to
    >>>> receive the exit code with "wait"?
    >>>
    >>> I don't think we have to spell out the details of how it all works,
    >>> unless that makes things clearer. Kernel developers can be expected
    >>> to figure out how the kernel works. The critical thing is that it is
    >>> an indefinite wait for userspace to take action.
    >>>
    >>> But I will look.
    >>>
    >>>>> threads are killed. The cred_guard_mutex is held over
    >>>>> "put_user(0, tsk->clear_child_tid)" in exit_mm().
    >>>>>
    >>>>> Any of those can result in deadlock, as the cred_guard_mutex is held
    >>>>> over a possible indefinite userspace waits for userspace.
    >>>>>
    >>>>> Add exec_update_mutex that is only held over exec updating process
    >>>>
    >>>> Add ?
    >>>
    >>> Yes. That is what the change does: add exec_update_mutex.
    >>>
    >>
    >> I just kind of missed the "subject" in this sentence,
    >> like "This patch adds an exec_update_mutex that is ..."
    >> but english is a foreign language for me, so may be okay as is.
    >
    > English has a lot of options. I think this is a stylistic difference.
    >
    > Instead of being an observer and describing what the change does:
    > "This patch adds exec_update_mutex ..."
    >
    > I was being there in the moment and saying/commading what is happening:
    > "Add exec_update_mutex ..."
    >
    > Using the more immdediate form ends up with more concise and clearer
    > sentences.
    >
    > Every one of my writing teachers in school emphasized that point
    > and I see the who it works when I write things. But writing is hard and
    > I still tend toward long rambling sentences with many qualifiers that
    > confuse and detract from the point rather than make it clear what is
    > happening.

    And reading through it all now I can see your confusion. That
    description of my changes was not well done. Reworking it now.

    Eric

    \
     
     \ /
      Last update: 2020-03-09 19:27    [W:4.205 / U:0.040 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site