Messages in this thread | | | From | "Andrey Borzenkov" <> | Subject | Re: Proposed fix for i_sem deadlock in devfs in 2.4.2x kernel | Date | Fri, 20 Jun 2003 16:10:12 +0400 |
| |
> devfs_d_revalidate_wait() > { > ... > read_lock(...) > ... > add_wait_queue(&lookup_info->wait_queue, ...); > read_unlock(...) > up(&dir->i_sem); /* add for this proposed fix */
this can be called both with and without i_sem held. i_sem is held for directory modifications but not for simple lookups. Is it correct to increase i_sem count above 1? Note, it will be done by every task so it may screw up locking completely.
Look at <http://marc.theaimsgroup.com/?l=linux-kernel&m=105233420622539&w=2> for alternative fix.
-andrey
> schedule(); > down(&dir->i_sem); /* add for this proposed fix */ > ... >}
- 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/
| |