lkml.org 
[lkml]   [2005]   [Sep]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRe: [uml-devel] Re: [PATCH 07/10] uml: avoid fixing faults while atomic
    Date
    On Wednesday 21 September 2005 21:49, Andrew Morton wrote:
    > "Paolo 'Blaisorblade' Giarrusso" <blaisorblade@yahoo.it> wrote:
    > > From: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>

    > The in_atomic() test in x86's do_page_fault() is in fact a message passed
    > into it from filemap.c's kmap_atomic().
    Ok, this can be ok, but:
    > It has accidental side-effects,
    > such as making copy_to_user() fail if inside spinlocks when
    > CONFIG_PREEMPT=y.
    Sorry, but should it ever succeed inside spinlocks? I mean, should it ever
    call down() inside spinlocks? (We never do down_trylock, and ever if we did
    the x86 trick, that wouldn't make the whole thing safe at all - they still
    take the spinlock and potentially sleep. And it's legal only if no spinlock
    is held).

    Even if spinlocks don't always trigger in_atomic() - which means that we'd
    need to have a better fix for this.

    (Btw, I took the above reasoning from something said, as an aside, on LWN.net
    kernel page, about the FUTEX deadlock on mm->mmap_sem of ~ 2.6.8 - yes, it
    wasn't the full truth, but not totally dumb).

    > So I think this change is only needed if UML implements kmap_atomic, as in
    > arch/i386/mm/highmem.c, which it surely does not do?
    NACK, see above.

    --
    Inform me of my mistakes, so I can keep imitating Homer Simpson's "Doh!".
    Paolo Giarrusso, aka Blaisorblade (Skype ID "PaoloGiarrusso", ICQ 215621894)
    http://www.user-mode-linux.org/~blaisorblade





    ___________________________________
    Yahoo! Mail: gratis 1GB per i messaggi e allegati da 10MB
    http://mail.yahoo.it

    -
    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: 2005-09-21 22:26    [W:0.024 / U:0.500 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site