Messages in this thread | | | Date | Thu, 31 Jan 2013 07:50:10 +0000 | From | Al Viro <> | Subject | Re: [PATCH v3] Add 4 tracepoint events for vfs |
| |
On Thu, Jan 31, 2013 at 03:40:38PM +0800, chenggang.qin@gmail.com wrote: > @@ -1391,12 +1394,16 @@ generic_file_aio_read(struct kiocb *iocb, const struct iovec *iov, > unsigned long seg = 0; > size_t count; > loff_t *ppos = &iocb->ki_pos; > + const unsigned char *f_name; > > count = 0; > retval = generic_segment_checks(iov, &nr_segs, &count, VERIFY_WRITE); > if (retval) > return retval; > > + f_name = filp->f_path.dentry->d_name.name; > + trace_generic_file_aio_read(pos, iov_length(iov, nr_segs), f_name);
And just what is going to prevent that f_name of yours from being freed just as you are passing it to the function you are calling?
IOW, NAK. BTW, I would like to point out that *ANY* hooks in VFS have all the stability granted to driver API - removal fodder whenever it becomes convenient.
| |