> The changes in semaphore semantics are necessary to fix the spurious out of
> memory with MAP_SHARED mappings and they came together with the removal of the
> always-asynchronous kpiod. While it's certainly possible to remove it I don't
> think removing the fix for MAP_SHARED stuff is a good idea.

How hard is it to seperate losing kpiod (optimisation) from the MAP_SHARED 
changes ? I am assuming they are two seperate issues, possibly wrongly

> Basically it's always safe to replace:
> 
>       down(&inode->i_sem);
>       /* critical section */
>       up(&inode->isem);
> 
> with the new fs-semaphore:
> 
>       fs_down(&inode->i_sem);
>       /* critical section */
>       fs_up(&inode->i_sem);

Providing no inode semaphore is upped from a different task , which seems
currently quite a valid legal thing to do (ditto doing the up on completion of
something in bh or irq context)

Alan

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/

Reply via email to