Messages in this thread | | | Date | Wed, 2 Jul 2003 11:34:57 +0100 | From | viro@parcelfa ... | Subject | Re: [PATCH] vfat+affs case preservation |
| |
On Wed, Jul 02, 2003 at 12:25:38PM +0200, Jan Kratochvil wrote: > +/* We have to always do the revalidate as after unlink (etc.) there still may > + * exist other case-different dentries for the same inode. It would be also > + * possible to discard such aliases by going through d_alias links during the > + * unlink. "strictcase" does not have case-different dentries but "longna~1" > + * style aliases still exist there. > + */
> - alias = d_find_alias(inode); > - if (alias) { > - if (d_invalidate(alias)==0) > - dput(alias); > - else { > - iput(inode); > - unlock_kernel(); > - return alias; > - } > - > - }
Broken. With that we can get two active dentries for the same directory. There goes any cache coherency, with all usual results. - 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/
| |