On Thu, Sep 03, 2015 at 01:39:53PM -0500, Bill O'Donnell wrote: > On Thu, Sep 03, 2015 at 01:32:25PM -0500, Eric Sandeen wrote: > > On 9/3/15 12:57 PM, Darrick J. Wong wrote: > > > On Thu, Sep 03, 2015 at 11:36:26AM -0500, billodo wrote: > > >> As a part of the work to move xfs global stats from procfs to sysfs, > > >> this patch creates the symlink from proc/fs/xfs/stat to sys/fs/xfs/stats. > > >> > > >> Signed-off-by: Bill O'Donnell <billodo@xxxxxxxxxx> > > >> --- > > >> fs/xfs/xfs_stats.c | 8 ++++++-- > > >> 1 file changed, 6 insertions(+), 2 deletions(-) > > >> > > >> diff --git a/fs/xfs/xfs_stats.c b/fs/xfs/xfs_stats.c > > >> index 856cf57..ad435f1 100644 > > >> --- a/fs/xfs/xfs_stats.c > > >> +++ b/fs/xfs/xfs_stats.c > > >> @@ -244,9 +244,13 @@ xfs_init_procfs(void) > > >> if (!proc_mkdir("fs/xfs", NULL)) > > >> goto out; > > >> > > >> - if (!proc_create("fs/xfs/stat", 0, NULL, > > >> - &xfs_stat_proc_fops)) > > >> + if (!proc_symlink("fs/xfs/stat", NULL, > > >> + "/sys/fs/xfs/stats/stats")) > > > > > > Uh.... is it actually guaranteed that sysfs is mounted on /sys now? > > > > > > I sort of recall gregkh grumbling years ago that sysfs can be mounted anywhere, > > > and that /proc shouldn't hardcode links to it. But that's just handwaving on > > > my part. > > > > You can blame me for that idea. At least one other driver does > > do it, though; of_core_init(): > > > > proc_symlink("device-tree", NULL, "/sys/firmware/devicetree/base"); > > > > worst-case scenario, your "legacy" stats file will be a broken symlink... > > > > -Eric > > > > I'm still looking for something in documentation that dictates such a requirement > regarding symlinks to sysfs elements. > -Bill I did find this in: https://www.kernel.org/doc/Documentation/sysfs-rules.txt --------------snip-------------------------- - sysfs is always at /sys Parsing /proc/mounts is a waste of time. Other mount points are a system configuration bug you should not try to solve. For test cases, possibly support a SYSFS_PATH environment variable to overwrite the application's behavior, but never try to search for sysfs. Never try to mount it, if you are not an early boot script. -------------snip--------------------------- > > > > --D > > > > > >> + { > > >> + printk(KERN_INFO "failed to created fs/xfs/stat symlink\n"); > > >> goto out_remove_xfs_dir; > > >> + } > > >> + > > >> #ifdef CONFIG_XFS_QUOTA > > >> if (!proc_create("fs/xfs/xqmstat", 0, NULL, > > >> &xqmstat_proc_fops)) > > >> -- > > >> 2.4.3 > > > > _______________________________________________ > xfs mailing list > xfs@xxxxxxxxxxx > http://oss.sgi.com/mailman/listinfo/xfs _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs