Re: owner field in `struct fs'

From: Philipp Rumpf (prumpf@uzix.org)
Date: Sat Jun 24 2000 - 15:48:57 EST


On Sat, Jun 24, 2000 at 09:38:22PM +0100, Alan Cox wrote:
> CPU1 CPU2
>
> down(&lock)
> rmmod
>
> freeze freeze
>
> cleanup_module
> down(&lock)
>
> Now either #1 freeze yields in this case which is the existing behaviour with
> a lot of do nothing code added or it keeps CPU1 frozen in which case you are
> screwed.
>
> Or am I missing something

CPU1's old thread gets rescheduled on CPU2 (CPU1 stays frozen), eventually
returns to userspace, CPU2 gets rescheduled after the down(&lock) in
cleanup_module, cleanup_module finishes.

Note this is completely equivalent to UP

thread a thread b
down(&lock);
schedule();
                                rmmod
                                cleanup_module
                                down(&lock)

        Philipp

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Mon Jun 26 2000 - 21:00:05 EST