Commit 1543d79c45a374f934f95ca34d87e2eeeb2039b4

Authored by Christoph Hellwig
Committed by Tim Shimmin
1 parent b677c210ce

[XFS] move v_trace from bhv_vnode to xfs_inode

struct bhv_vnode is on it's way out, so move the trace buffer to the XFS
inode. Note that this makes the tracing macros rather misnamed, but this
kind of fallout will be fixed up incrementally later on.

SGI-PV: 969608
SGI-Modid: xfs-linux-melb:xfs-kern:29498a

Signed-off-by: Christoph Hellwig <hch@infradead.org>
Signed-off-by: David Chinner <dgc@sgi.com>
Signed-off-by: Tim Shimmin <tes@sgi.com>

Showing 13 changed files with 94 additions and 89 deletions Side-by-side Diff

fs/xfs/linux-2.6/xfs_aops.c
... ... @@ -1526,7 +1526,7 @@
1526 1526 struct inode *inode = (struct inode *)mapping->host;
1527 1527 struct xfs_inode *ip = XFS_I(inode);
1528 1528  
1529   - vn_trace_entry(vn_from_inode(inode), __FUNCTION__,
  1529 + vn_trace_entry(XFS_I(inode), __FUNCTION__,
1530 1530 (inst_t *)__return_address);
1531 1531 xfs_rwlock(ip, VRWLOCK_READ);
1532 1532 xfs_flush_pages(ip, (xfs_off_t)0, -1, 0, FI_REMAPF);
fs/xfs/linux-2.6/xfs_ioctl.c
... ... @@ -733,7 +733,7 @@
733 733 xfs_mount_t *mp = ip->i_mount;
734 734 int error;
735 735  
736   - vn_trace_entry(vp, "xfs_ioctl", (inst_t *)__return_address);
  736 + vn_trace_entry(XFS_I(inode), "xfs_ioctl", (inst_t *)__return_address);
737 737  
738 738 switch (cmd) {
739 739  
fs/xfs/linux-2.6/xfs_super.c
... ... @@ -403,7 +403,7 @@
403 403 {
404 404 int error = 0, flags = FLUSH_INODE;
405 405  
406   - vn_trace_entry(vn_from_inode(inode), __FUNCTION__,
  406 + vn_trace_entry(XFS_I(inode), __FUNCTION__,
407 407 (inst_t *)__return_address);
408 408 if (sync) {
409 409 filemap_fdatawait(inode->i_mapping);
410 410  
411 411  
412 412  
413 413  
414 414  
415 415  
... ... @@ -425,34 +425,27 @@
425 425 xfs_fs_clear_inode(
426 426 struct inode *inode)
427 427 {
428   - bhv_vnode_t *vp = vn_from_inode(inode);
  428 + xfs_inode_t *ip = XFS_I(inode);
429 429  
430   - vn_trace_entry(vp, __FUNCTION__, (inst_t *)__return_address);
431   -
432   - XFS_STATS_INC(vn_rele);
433   - XFS_STATS_INC(vn_remove);
434   - XFS_STATS_INC(vn_reclaim);
435   - XFS_STATS_DEC(vn_active);
436   -
437 430 /*
438   - * This can happen because xfs_iget_core calls xfs_idestroy if we
  431 + * ip can be null when xfs_iget_core calls xfs_idestroy if we
439 432 * find an inode with di_mode == 0 but without IGET_CREATE set.
440 433 */
441   - if (XFS_I(inode))
442   - xfs_inactive(XFS_I(inode));
  434 + if (ip) {
  435 + vn_trace_entry(ip, __FUNCTION__, (inst_t *)__return_address);
443 436  
  437 + XFS_STATS_INC(vn_rele);
  438 + XFS_STATS_INC(vn_remove);
  439 + XFS_STATS_INC(vn_reclaim);
  440 + XFS_STATS_DEC(vn_active);
444 441  
445   - if (XFS_I(inode)) {
446   - xfs_iflags_clear(XFS_I(inode), XFS_IMODIFIED);
447   - if (xfs_reclaim(XFS_I(inode)))
448   - panic("%s: cannot reclaim 0x%p\n", __FUNCTION__, vp);
  442 + xfs_inactive(ip);
  443 + xfs_iflags_clear(ip, XFS_IMODIFIED);
  444 + if (xfs_reclaim(ip))
  445 + panic("%s: cannot reclaim 0x%p\n", __FUNCTION__, inode);
449 446 }
450 447  
451 448 ASSERT(XFS_I(inode) == NULL);
452   -
453   -#ifdef XFS_VNODE_TRACE
454   - ktrace_free(vp->v_trace);
455   -#endif
456 449 }
457 450  
458 451 /*
... ... @@ -840,7 +833,8 @@
840 833 }
841 834 if ((error = xfs_fs_start_syncd(vfsp)))
842 835 goto fail_vnrele;
843   - vn_trace_exit(rootvp, __FUNCTION__, (inst_t *)__return_address);
  836 + vn_trace_exit(XFS_I(sb->s_root->d_inode), __FUNCTION__,
  837 + (inst_t *)__return_address);
844 838  
845 839 kmem_free(args, sizeof(*args));
846 840 return 0;
fs/xfs/linux-2.6/xfs_vnode.c
... ... @@ -103,11 +103,6 @@
103 103  
104 104 ASSERT(VN_CACHED(vp) == 0);
105 105  
106   -#ifdef XFS_VNODE_TRACE
107   - vp->v_trace = ktrace_alloc(VNODE_TRACE_SIZE, KM_SLEEP);
108   -#endif /* XFS_VNODE_TRACE */
109   -
110   - vn_trace_exit(vp, __FUNCTION__, (inst_t *)__return_address);
111 106 return vp;
112 107 }
113 108  
... ... @@ -158,7 +153,7 @@
158 153 {
159 154 int error;
160 155  
161   - vn_trace_entry(vp, __FUNCTION__, (inst_t *)__return_address);
  156 + vn_trace_entry(xfs_vtoi(vp), __FUNCTION__, (inst_t *)__return_address);
162 157 vattr->va_mask = XFS_AT_STAT | XFS_AT_XFLAGS;
163 158 error = xfs_getattr(xfs_vtoi(vp), vattr, 0);
164 159 if (likely(!error)) {
165 160  
... ... @@ -196,12 +191,25 @@
196 191  
197 192 #ifdef XFS_VNODE_TRACE
198 193  
199   -#define KTRACE_ENTER(vp, vk, s, line, ra) \
200   - ktrace_enter( (vp)->v_trace, \
  194 +/*
  195 + * Reference count of Linux inode if present, -1 if the xfs_inode
  196 + * has no associated Linux inode.
  197 + */
  198 +static inline int xfs_icount(struct xfs_inode *ip)
  199 +{
  200 + bhv_vnode_t *vp = XFS_ITOV_NULL(ip);
  201 +
  202 + if (vp)
  203 + return vn_count(vp);
  204 + return -1;
  205 +}
  206 +
  207 +#define KTRACE_ENTER(ip, vk, s, line, ra) \
  208 + ktrace_enter( (ip)->i_trace, \
201 209 /* 0 */ (void *)(__psint_t)(vk), \
202 210 /* 1 */ (void *)(s), \
203 211 /* 2 */ (void *)(__psint_t) line, \
204   -/* 3 */ (void *)(__psint_t)(vn_count(vp)), \
  212 +/* 3 */ (void *)(__psint_t)xfs_icount(ip), \
205 213 /* 4 */ (void *)(ra), \
206 214 /* 5 */ NULL, \
207 215 /* 6 */ (void *)(__psint_t)current_cpu(), \
208 216  
209 217  
210 218  
211 219  
212 220  
213 221  
214 222  
215 223  
216 224  
... ... @@ -213,33 +221,33 @@
213 221 * Vnode tracing code.
214 222 */
215 223 void
216   -vn_trace_entry(bhv_vnode_t *vp, const char *func, inst_t *ra)
  224 +vn_trace_entry(xfs_inode_t *ip, const char *func, inst_t *ra)
217 225 {
218   - KTRACE_ENTER(vp, VNODE_KTRACE_ENTRY, func, 0, ra);
  226 + KTRACE_ENTER(ip, VNODE_KTRACE_ENTRY, func, 0, ra);
219 227 }
220 228  
221 229 void
222   -vn_trace_exit(bhv_vnode_t *vp, const char *func, inst_t *ra)
  230 +vn_trace_exit(xfs_inode_t *ip, const char *func, inst_t *ra)
223 231 {
224   - KTRACE_ENTER(vp, VNODE_KTRACE_EXIT, func, 0, ra);
  232 + KTRACE_ENTER(ip, VNODE_KTRACE_EXIT, func, 0, ra);
225 233 }
226 234  
227 235 void
228   -vn_trace_hold(bhv_vnode_t *vp, char *file, int line, inst_t *ra)
  236 +vn_trace_hold(xfs_inode_t *ip, char *file, int line, inst_t *ra)
229 237 {
230   - KTRACE_ENTER(vp, VNODE_KTRACE_HOLD, file, line, ra);
  238 + KTRACE_ENTER(ip, VNODE_KTRACE_HOLD, file, line, ra);
231 239 }
232 240  
233 241 void
234   -vn_trace_ref(bhv_vnode_t *vp, char *file, int line, inst_t *ra)
  242 +vn_trace_ref(xfs_inode_t *ip, char *file, int line, inst_t *ra)
235 243 {
236   - KTRACE_ENTER(vp, VNODE_KTRACE_REF, file, line, ra);
  244 + KTRACE_ENTER(ip, VNODE_KTRACE_REF, file, line, ra);
237 245 }
238 246  
239 247 void
240   -vn_trace_rele(bhv_vnode_t *vp, char *file, int line, inst_t *ra)
  248 +vn_trace_rele(xfs_inode_t *ip, char *file, int line, inst_t *ra)
241 249 {
242   - KTRACE_ENTER(vp, VNODE_KTRACE_RELE, file, line, ra);
  250 + KTRACE_ENTER(ip, VNODE_KTRACE_RELE, file, line, ra);
243 251 }
244 252 #endif /* XFS_VNODE_TRACE */
fs/xfs/linux-2.6/xfs_vnode.h
... ... @@ -29,9 +29,6 @@
29 29  
30 30 typedef struct bhv_vnode {
31 31 bhv_vnumber_t v_number; /* in-core vnode number */
32   -#ifdef XFS_VNODE_TRACE
33   - struct ktrace *v_trace; /* trace header structure */
34   -#endif
35 32 struct inode v_inode; /* Linux inode */
36 33 /* inode MUST be last */
37 34 } bhv_vnode_t;
38 35  
... ... @@ -222,9 +219,9 @@
222 219 #if defined(XFS_VNODE_TRACE)
223 220 #define VN_HOLD(vp) \
224 221 ((void)vn_hold(vp), \
225   - vn_trace_hold(vp, __FILE__, __LINE__, (inst_t *)__return_address))
  222 + vn_trace_hold(xfs_vtoi(vp), __FILE__, __LINE__, (inst_t *)__return_address))
226 223 #define VN_RELE(vp) \
227   - (vn_trace_rele(vp, __FILE__, __LINE__, (inst_t *)__return_address), \
  224 + (vn_trace_rele(xfs_vtoi(vp), __FILE__, __LINE__, (inst_t *)__return_address), \
228 225 iput(vn_to_inode(vp)))
229 226 #else
230 227 #define VN_HOLD(vp) ((void)vn_hold(vp))
231 228  
... ... @@ -314,21 +311,17 @@
314 311 #define VNODE_KTRACE_REF 4
315 312 #define VNODE_KTRACE_RELE 5
316 313  
317   -extern void vn_trace_entry(struct bhv_vnode *, const char *, inst_t *);
318   -extern void vn_trace_exit(struct bhv_vnode *, const char *, inst_t *);
319   -extern void vn_trace_hold(struct bhv_vnode *, char *, int, inst_t *);
320   -extern void vn_trace_ref(struct bhv_vnode *, char *, int, inst_t *);
321   -extern void vn_trace_rele(struct bhv_vnode *, char *, int, inst_t *);
322   -
323   -#define VN_TRACE(vp) \
324   - vn_trace_ref(vp, __FILE__, __LINE__, (inst_t *)__return_address)
  314 +extern void vn_trace_entry(struct xfs_inode *, const char *, inst_t *);
  315 +extern void vn_trace_exit(struct xfs_inode *, const char *, inst_t *);
  316 +extern void vn_trace_hold(struct xfs_inode *, char *, int, inst_t *);
  317 +extern void vn_trace_ref(struct xfs_inode *, char *, int, inst_t *);
  318 +extern void vn_trace_rele(struct xfs_inode *, char *, int, inst_t *);
325 319 #else
326 320 #define vn_trace_entry(a,b,c)
327 321 #define vn_trace_exit(a,b,c)
328 322 #define vn_trace_hold(a,b,c,d)
329 323 #define vn_trace_ref(a,b,c,d)
330 324 #define vn_trace_rele(a,b,c,d)
331   -#define VN_TRACE(vp)
332 325 #endif
333 326  
334 327 #endif /* __XFS_VNODE_H__ */
... ... @@ -301,7 +301,7 @@
301 301 int rval; /* return value */
302 302 int v; /* type-checking value */
303 303  
304   - vn_trace_entry(XFS_ITOV(dp), __FUNCTION__, (inst_t *)__return_address);
  304 + vn_trace_entry(dp, __FUNCTION__, (inst_t *)__return_address);
305 305  
306 306 if (XFS_FORCED_SHUTDOWN(dp->i_mount))
307 307 return XFS_ERROR(EIO);
... ... @@ -157,7 +157,7 @@
157 157 goto again;
158 158 }
159 159  
160   - vn_trace_exit(vp, "xfs_iget.alloc",
  160 + vn_trace_exit(ip, "xfs_iget.alloc",
161 161 (inst_t *)__return_address);
162 162  
163 163 XFS_STATS_INC(xs_ig_found);
... ... @@ -212,7 +212,7 @@
212 212 xfs_ilock(ip, lock_flags);
213 213  
214 214 xfs_iflags_clear(ip, XFS_ISTALE);
215   - vn_trace_exit(vp, "xfs_iget.found",
  215 + vn_trace_exit(ip, "xfs_iget.found",
216 216 (inst_t *)__return_address);
217 217 goto return_ip;
218 218 }
... ... @@ -234,7 +234,7 @@
234 234 return error;
235 235 }
236 236  
237   - vn_trace_exit(vp, "xfs_iget.alloc", (inst_t *)__return_address);
  237 + vn_trace_exit(ip, "xfs_iget.alloc", (inst_t *)__return_address);
238 238  
239 239 xfs_inode_lock_init(ip, vp);
240 240 xfs_iocore_inode_init(ip);
... ... @@ -467,7 +467,7 @@
467 467 {
468 468 bhv_vnode_t *vp = XFS_ITOV(ip);
469 469  
470   - vn_trace_entry(vp, "xfs_iput", (inst_t *)__return_address);
  470 + vn_trace_entry(ip, "xfs_iput", (inst_t *)__return_address);
471 471 xfs_iunlock(ip, lock_flags);
472 472 VN_RELE(vp);
473 473 }
... ... @@ -482,7 +482,7 @@
482 482 bhv_vnode_t *vp = XFS_ITOV(ip);
483 483 struct inode *inode = vn_to_inode(vp);
484 484  
485   - vn_trace_entry(vp, "xfs_iput_new", (inst_t *)__return_address);
  485 + vn_trace_entry(ip, "xfs_iput_new", (inst_t *)__return_address);
486 486  
487 487 if ((ip->i_d.di_mode == 0)) {
488 488 ASSERT(!xfs_iflags_test(ip, XFS_IRECLAIMABLE));
... ... @@ -884,6 +884,9 @@
884 884 * Initialize inode's trace buffers.
885 885 * Do this before xfs_iformat in case it adds entries.
886 886 */
  887 +#ifdef XFS_VNODE_TRACE
  888 + ip->i_trace = ktrace_alloc(VNODE_TRACE_SIZE, KM_SLEEP);
  889 +#endif
887 890 #ifdef XFS_BMAP_TRACE
888 891 ip->i_xtrace = ktrace_alloc(XFS_BMAP_KTRACE_SIZE, KM_SLEEP);
889 892 #endif
... ... @@ -2729,6 +2732,10 @@
2729 2732 mrfree(&ip->i_lock);
2730 2733 mrfree(&ip->i_iolock);
2731 2734 freesema(&ip->i_flock);
  2735 +
  2736 +#ifdef XFS_VNODE_TRACE
  2737 + ktrace_free(ip->i_trace);
  2738 +#endif
2732 2739 #ifdef XFS_BMAP_TRACE
2733 2740 ktrace_free(ip->i_xtrace);
2734 2741 #endif
... ... @@ -301,6 +301,9 @@
301 301 xfs_fsize_t i_size; /* in-memory size */
302 302 atomic_t i_iocount; /* outstanding I/O count */
303 303 /* Trace buffers per inode. */
  304 +#ifdef XFS_VNODE_TRACE
  305 + struct ktrace *i_trace; /* general inode trace */
  306 +#endif
304 307 #ifdef XFS_BMAP_TRACE
305 308 struct ktrace *i_xtrace; /* inode extent list trace */
306 309 #endif
... ... @@ -247,8 +247,8 @@
247 247 int src_namelen = VNAMELEN(src_vname);
248 248 int target_namelen = VNAMELEN(target_vname);
249 249  
250   - vn_trace_entry(src_dir_vp, "xfs_rename", (inst_t *)__return_address);
251   - vn_trace_entry(target_dir_vp, "xfs_rename", (inst_t *)__return_address);
  250 + vn_trace_entry(src_dp, "xfs_rename", (inst_t *)__return_address);
  251 + vn_trace_entry(xfs_vtoi(target_dir_vp), "xfs_rename", (inst_t *)__return_address);
252 252  
253 253 /*
254 254 * Find the XFS behavior descriptor for the target directory
... ... @@ -73,7 +73,7 @@
73 73 {
74 74 int error;
75 75  
76   - vn_trace_entry(XFS_ITOV(dp), __FUNCTION__, (inst_t *)__return_address);
  76 + vn_trace_entry(dp, __FUNCTION__, (inst_t *)__return_address);
77 77  
78 78 error = xfs_dir_lookup(NULL, dp, VNAME(dentry), VNAMELEN(dentry), inum);
79 79 if (!error) {
... ... @@ -20,7 +20,7 @@
20 20  
21 21 #define IRELE(ip) VN_RELE(XFS_ITOV(ip))
22 22 #define IHOLD(ip) VN_HOLD(XFS_ITOV(ip))
23   -#define ITRACE(ip) vn_trace_ref(XFS_ITOV(ip), __FILE__, __LINE__, \
  23 +#define ITRACE(ip) vn_trace_ref(ip, __FILE__, __LINE__, \
24 24 (inst_t *)__return_address)
25 25  
26 26 extern int xfs_get_dir_entry (bhv_vname_t *, xfs_inode_t **);
fs/xfs/xfs_vnodeops.c
... ... @@ -88,7 +88,7 @@
88 88 bhv_vnode_t *vp = XFS_ITOV(ip);
89 89 xfs_mount_t *mp = ip->i_mount;
90 90  
91   - vn_trace_entry(vp, __FUNCTION__, (inst_t *)__return_address);
  91 + vn_trace_entry(ip, __FUNCTION__, (inst_t *)__return_address);
92 92  
93 93 if (XFS_FORCED_SHUTDOWN(mp))
94 94 return XFS_ERROR(EIO);
... ... @@ -228,7 +228,7 @@
228 228 int file_owner;
229 229 int need_iolock = 1;
230 230  
231   - vn_trace_entry(vp, __FUNCTION__, (inst_t *)__return_address);
  231 + vn_trace_entry(ip, __FUNCTION__, (inst_t *)__return_address);
232 232  
233 233 if (XFS_MTOVFS(mp)->vfs_flag & VFS_RDONLY)
234 234 return XFS_ERROR(EROFS);
... ... @@ -915,7 +915,7 @@
915 915 {
916 916 int error;
917 917  
918   - vn_trace_entry(XFS_ITOV(ip), __FUNCTION__, (inst_t *)__return_address);
  918 + vn_trace_entry(ip, __FUNCTION__, (inst_t *)__return_address);
919 919  
920 920 xfs_ilock(ip, XFS_ILOCK_SHARED);
921 921 error = xfs_iaccess(ip, mode, credp);
... ... @@ -987,7 +987,7 @@
987 987 int pathlen;
988 988 int error = 0;
989 989  
990   - vn_trace_entry(XFS_ITOV(ip), __FUNCTION__, (inst_t *)__return_address);
  990 + vn_trace_entry(ip, __FUNCTION__, (inst_t *)__return_address);
991 991  
992 992 if (XFS_FORCED_SHUTDOWN(mp))
993 993 return XFS_ERROR(EIO);
... ... @@ -1033,7 +1033,7 @@
1033 1033 int error;
1034 1034 int log_flushed = 0, changed = 1;
1035 1035  
1036   - vn_trace_entry(XFS_ITOV(ip), __FUNCTION__, (inst_t *)__return_address);
  1036 + vn_trace_entry(ip, __FUNCTION__, (inst_t *)__return_address);
1037 1037  
1038 1038 ASSERT(start >= 0 && stop >= -1);
1039 1039  
... ... @@ -1592,7 +1592,7 @@
1592 1592 int error;
1593 1593 int truncate;
1594 1594  
1595   - vn_trace_entry(vp, __FUNCTION__, (inst_t *)__return_address);
  1595 + vn_trace_entry(ip, __FUNCTION__, (inst_t *)__return_address);
1596 1596  
1597 1597 /*
1598 1598 * If the inode is already free, then there can be nothing
... ... @@ -1805,7 +1805,7 @@
1805 1805 int error;
1806 1806 uint lock_mode;
1807 1807  
1808   - vn_trace_entry(XFS_ITOV(dp), __FUNCTION__, (inst_t *)__return_address);
  1808 + vn_trace_entry(dp, __FUNCTION__, (inst_t *)__return_address);
1809 1809  
1810 1810 if (XFS_FORCED_SHUTDOWN(dp->i_mount))
1811 1811 return XFS_ERROR(EIO);
... ... @@ -1849,7 +1849,7 @@
1849 1849 int namelen;
1850 1850  
1851 1851 ASSERT(!*vpp);
1852   - vn_trace_entry(dir_vp, __FUNCTION__, (inst_t *)__return_address);
  1852 + vn_trace_entry(dp, __FUNCTION__, (inst_t *)__return_address);
1853 1853  
1854 1854 dm_di_mode = vap->va_mode;
1855 1855 namelen = VNAMELEN(dentry);
... ... @@ -2326,7 +2326,7 @@
2326 2326 uint resblks;
2327 2327 int namelen;
2328 2328  
2329   - vn_trace_entry(dir_vp, __FUNCTION__, (inst_t *)__return_address);
  2329 + vn_trace_entry(dp, __FUNCTION__, (inst_t *)__return_address);
2330 2330  
2331 2331 if (XFS_FORCED_SHUTDOWN(mp))
2332 2332 return XFS_ERROR(EIO);
... ... @@ -2369,7 +2369,7 @@
2369 2369  
2370 2370 dm_di_mode = ip->i_d.di_mode;
2371 2371  
2372   - vn_trace_entry(XFS_ITOV(ip), __FUNCTION__, (inst_t *)__return_address);
  2372 + vn_trace_entry(ip, __FUNCTION__, (inst_t *)__return_address);
2373 2373  
2374 2374 ITRACE(ip);
2375 2375  
... ... @@ -2503,7 +2503,7 @@
2503 2503 if (link_zero && xfs_inode_is_filestream(ip))
2504 2504 xfs_filestream_deassociate(ip);
2505 2505  
2506   - vn_trace_exit(XFS_ITOV(ip), __FUNCTION__, (inst_t *)__return_address);
  2506 + vn_trace_exit(ip, __FUNCTION__, (inst_t *)__return_address);
2507 2507  
2508 2508 IRELE(ip);
2509 2509  
... ... @@ -2567,8 +2567,8 @@
2567 2567 char *target_name = VNAME(dentry);
2568 2568 int target_namelen;
2569 2569  
2570   - vn_trace_entry(target_dir_vp, __FUNCTION__, (inst_t *)__return_address);
2571   - vn_trace_entry(src_vp, __FUNCTION__, (inst_t *)__return_address);
  2570 + vn_trace_entry(tdp, __FUNCTION__, (inst_t *)__return_address);
  2571 + vn_trace_entry(xfs_vtoi(src_vp), __FUNCTION__, (inst_t *)__return_address);
2572 2572  
2573 2573 target_namelen = VNAMELEN(dentry);
2574 2574 ASSERT(!VN_ISDIR(src_vp));
... ... @@ -2751,7 +2751,7 @@
2751 2751  
2752 2752 /* Return through std_return after this point. */
2753 2753  
2754   - vn_trace_entry(dir_vp, __FUNCTION__, (inst_t *)__return_address);
  2754 + vn_trace_entry(dp, __FUNCTION__, (inst_t *)__return_address);
2755 2755  
2756 2756 mp = dp->i_mount;
2757 2757 udqp = gdqp = NULL;
... ... @@ -2945,7 +2945,7 @@
2945 2945 int last_cdp_link;
2946 2946 uint resblks;
2947 2947  
2948   - vn_trace_entry(dir_vp, __FUNCTION__, (inst_t *)__return_address);
  2948 + vn_trace_entry(dp, __FUNCTION__, (inst_t *)__return_address);
2949 2949  
2950 2950 if (XFS_FORCED_SHUTDOWN(mp))
2951 2951 return XFS_ERROR(EIO);
... ... @@ -3198,7 +3198,7 @@
3198 3198 ip = NULL;
3199 3199 tp = NULL;
3200 3200  
3201   - vn_trace_entry(dir_vp, __FUNCTION__, (inst_t *)__return_address);
  3201 + vn_trace_entry(dp, __FUNCTION__, (inst_t *)__return_address);
3202 3202  
3203 3203  
3204 3204 if (XFS_FORCED_SHUTDOWN(mp))
... ... @@ -3490,7 +3490,7 @@
3490 3490 {
3491 3491 xfs_fid2_t *xfid = (xfs_fid2_t *)fidp;
3492 3492  
3493   - vn_trace_entry(XFS_ITOV(ip), __FUNCTION__, (inst_t *)__return_address);
  3493 + vn_trace_entry(ip, __FUNCTION__, (inst_t *)__return_address);
3494 3494 ASSERT(sizeof(fid_t) >= sizeof(xfs_fid2_t));
3495 3495  
3496 3496 xfid->fid_len = sizeof(xfs_fid2_t) - sizeof(xfid->fid_len);
... ... @@ -3673,7 +3673,7 @@
3673 3673 {
3674 3674 bhv_vnode_t *vp = XFS_ITOV(ip);
3675 3675  
3676   - vn_trace_entry(vp, __FUNCTION__, (inst_t *)__return_address);
  3676 + vn_trace_entry(ip, __FUNCTION__, (inst_t *)__return_address);
3677 3677  
3678 3678 ASSERT(!VN_MAPPED(vp));
3679 3679  
... ... @@ -3891,7 +3891,7 @@
3891 3891 int committed;
3892 3892 int error;
3893 3893  
3894   - vn_trace_entry(XFS_ITOV(ip), __FUNCTION__, (inst_t *)__return_address);
  3894 + vn_trace_entry(ip, __FUNCTION__, (inst_t *)__return_address);
3895 3895  
3896 3896 if (XFS_FORCED_SHUTDOWN(mp))
3897 3897 return XFS_ERROR(EIO);
... ... @@ -4161,7 +4161,7 @@
4161 4161 vp = XFS_ITOV(ip);
4162 4162 mp = ip->i_mount;
4163 4163  
4164   - vn_trace_entry(vp, __FUNCTION__, (inst_t *)__return_address);
  4164 + vn_trace_entry(ip, __FUNCTION__, (inst_t *)__return_address);
4165 4165  
4166 4166 if ((error = XFS_QM_DQATTACH(mp, ip, 0)))
4167 4167 return error;
... ... @@ -4367,7 +4367,7 @@
4367 4367 xfs_trans_t *tp;
4368 4368 bhv_vattr_t va;
4369 4369  
4370   - vn_trace_entry(XFS_ITOV(ip), __FUNCTION__, (inst_t *)__return_address);
  4370 + vn_trace_entry(ip, __FUNCTION__, (inst_t *)__return_address);
4371 4371  
4372 4372 /*
4373 4373 * must be a regular file and have write permission