nfs.proc.open results in a kernel string copy fault

Frank Ch. Eigler fche@redhat.com
Wed Jan 17 18:46:00 GMT 2007


David Smith <dsmith@redhat.com> writes:

> [...]
> The only reference to '$filp' in probe nfs.proc.open is the following:
> 	filename = __file_filename($filp)
> The __file_filename function is defined in tapset/vfs.stp, and it
> looks reasonable to me. [...]

But it isn't really.  Nullness testing is not sufficient for such
pointers - they may be invalid pointers for a variety of reasons
such as bad debuginfo.  So such functions should use protected
functions equivalent to kernel_string().

I wonder why __file_filename() is used at all -- why is 

  kernel_string($filp->f_dentry->d_name.name)  

not sufficient?

- FChE



More information about the Systemtap mailing list