Messages in this thread | | | Subject | RE: 2.6.10-mm3 scaling problem with inotify | From | Robert Love <> | Date | Thu, 13 Jan 2005 21:41:48 -0500 |
| |
On Fri, 2005-01-14 at 10:31 +0800, Zou, Nanhai wrote:
(your email wraps badly)
> There is still a little difference between your implement in > inotify_dentry_parent_queue_event from dnotify_parent > > In dnotify_parent, if parent is not watching the event, the code will > not fall > through dget and dput path. > > While in inotify_dentry_parent_queue_event kernel will go dget and dput > even > if (inode->inotify_data == NULL). > > While dget and dput will introduce a lot of atomic operations.. > And the most important, dput will grab global dcache_lock..., > I think that is the reason why John Hawkes saw great performance drop. > > Simply follow dnotify_parent, only call dget and dput when > inode->inotify_data != NULL will solve this problem I think.
This is what I meant in the original email. This is the dnotify difference I was talking about.
The patch I submitted should put the two in parity.
Robert Love
- 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/
| |