Since there has been change in the kernel, testsuite/buildok/twent.stp doesn't
work and hence fails.
We need to change this testcase to make it work.
Earlier testcase looks like this.
===================================================
#! stap -gp4
# Test for writing to target variables, PR 1131
probe kernel.function("vfs_readdir")
{
$file->f_dentry->d_name->len = 1
}
=============================================
Which has to be changed to this
========================================
#! stap -gp4
# Test for writing to target variables, PR 1131
probe kernel.function("vfs_readdir")
{
$file->f_path->dentry->d_name->len = 1;
}
=================================================
Due to this change in include/linux/file.h
===================================
struct file {
/*
* fu_list becomes invalid after file_free is called and queued via
* fu_rcuhead for RCU freeing
*/
union {
struct list_head fu_list;
struct rcu_head fu_rcuhead;
} f_u;
struct path f_path; ====> change
#define f_dentry f_path.dentry
#define f_vfsmnt f_path.mnt
const struct file_operations *f_op;
atomic_t f_count;
unsigned int f_flags;
mode_t f_mode;
loff_t f_pos;
=============================================
Please let me know your comments on this.