Re: [PATCH] thread wakeup fix for 2.4.0-test7

From: kuznet@ms2.inr.ac.ru
Date: Sun Aug 27 2000 - 14:25:42 EST


Hello!

> too fscking bad, but close() is unlikely to get you out of that. If it
> isn't - what are you complaining about?

Sorry. close() is the only way to do this. 8)

I had to break semantics of shutdown() making it working
on not-connected sockets to help these folks.

> Excuse me? Sorry, but you've totally misread that code. If the last owner
> of mm_struct exits while the thing is in use by some processor running
> lazy-TLB process... Guess what - mm_struct hangs around until the next
> context switch to non-lazy beast. On all CPUs that had it.

The situation is the same _exactly_.

The only thing, why f_count, fget() and fput() are required
is to hold temporary references, when kernel cannot allow
destruction.

User references must be counted separately.

Actually, Linus seems to forget about his own idea
of returning valid error from close(). Think, how it is possible
to return valid error, when fput() is used to close file.

Also, lingering (i.e. waiting for looong time) in fput() smells
interesting. 8)

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



This archive was generated by hypermail 2b29 : Thu Aug 31 2000 - 21:00:19 EST