• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/fs/notify/dnotify/

Lines Matching refs:dn

39  * the same directory with dnotify their information is chained in dn
43 struct dnotify_struct *dn;
57 struct dnotify_struct *dn;
66 for (dn = dn_mark->dn; dn != NULL; dn = dn->dn_next)
67 new_mask |= (dn->dn_mask & ~FS_DN_MULTISHOT);
92 struct dnotify_struct *dn;
104 prev = &dn_mark->dn;
105 while ((dn = *prev) != NULL) {
106 if ((dn->dn_mask & test_mask) == 0) {
107 prev = &dn->dn_next;
110 fown = &dn->dn_filp->f_owner;
111 send_sigio(fown, dn->dn_fd, POLL_MSG);
112 if (dn->dn_mask & FS_DN_MULTISHOT)
113 prev = &dn->dn_next;
115 *prev = dn->dn_next;
116 kmem_cache_free(dnotify_struct_cache, dn);
149 BUG_ON(dn_mark->dn);
164 * inode. If one is found run all of the ->dn structures attached to that
173 struct dnotify_struct *dn;
189 prev = &dn_mark->dn;
190 while ((dn = *prev) != NULL) {
191 if ((dn->dn_owner == id) && (dn->dn_filp == filp)) {
192 *prev = dn->dn_next;
193 kmem_cache_free(dnotify_struct_cache, dn);
197 prev = &dn->dn_next;
203 if (dn_mark->dn == NULL)
240 static int attach_dn(struct dnotify_struct *dn, struct dnotify_mark *dn_mark,
245 odn = dn_mark->dn;
256 dn->dn_mask = mask;
257 dn->dn_fd = fd;
258 dn->dn_filp = filp;
259 dn->dn_owner = id;
260 dn->dn_next = dn_mark->dn;
261 dn_mark->dn = dn;
275 struct dnotify_struct *dn;
284 dn = NULL;
306 dn = kmem_cache_alloc(dnotify_struct_cache, GFP_KERNEL);
307 if (!dn) {
326 new_dn_mark->dn = NULL;
374 error = attach_dn(dn, dn_mark, id, fd, filp, mask);
375 /* !error means that we attached the dn to the dn_mark, so don't free it */
377 dn = NULL;
378 /* -EEXIST means that we didn't add this new dn and used an old one.
379 * that isn't an error (and the unused dn should be freed) */
395 if (dn)
396 kmem_cache_free(dnotify_struct_cache, dn);