Messages in this thread | | | Subject | Re: DoS with POSIX file locks? | From | Miklos Szeredi <> | Date | Wed, 22 Mar 2006 21:19:40 +0100 |
| |
> You'd have to ensure that none of the threads involved are able to grab > new posix locks in the period between the unsharing of current->files to > the moment when current->files->owner is swapped. > > If not, one thread could in theory open a new file and grab a lock that > can never be unlocked because its lockowner gets stolen away from it by > another execing thread.
This race is already there. Header comment on steal_locks() documents it.
The patch does open this race window much wider, because pending locks are also transfered to the task doing the exec. The original steal_locks() only stole already held locks. But I don't think this fundamentaly changes things. It just shows more clearly how ugly the current semantics are.
Miklos - 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/
| |