From: Oleg Drokin <green@xxxxxxxxxxxxxx> Greg, I wonder if you can take at least a brief look and tell me if this is the direction you were envisioning wrt this particular cleanup. It's not all-inclusive, but I have a long flight tomorrow so if the direction is right, I can convert more of this stuff. This does not touch some of the multi-value stuff that would probably need to move to debugfs or other places, that would be a next step. Additionally some questions: I know sysfs is supposedly 1 file 1 value, though I see some exceptions, e.g.: # cat /sys/kernel/vmcoreinfo 2b57500 1024 So we have this /proc/fs/lustre/devices that prints status of all "lustre internal devices (or obd for short)" like this: # cat /proc/fs/lustre/devices 0 UP mgc MGC192.168.10.226@tcp d6815182-b36d-c4ba-6aa6-065aeb9e9769 5 1 UP lov lustre-clilov-ffff8800bd617800 32be3f55-891e-ed82-cae9-6add0770d503 4 ... Obviously I cannot retain it as a single file, but do I really need to create a tree that would look like: /sys/fs/lustre/obd/[1...]/{status,name,type,uuid,refcount} (or possibly even /sys/devices/virtual/lustre_obd/... ) or can I get away with just /sys/fs/lustre/obd/[1...] files where there's one line per obd like: 0 UP mgc MGC192.168.10.226@tcp d6815182-b36d-c4ba-6aa6-065aeb9e9769 5 (frankly, I have not figured out yet how to dynamically add files to sysfs dir). What about /proc/sys stuff - /proc/sys/lustre and /proc/sys/lnet? Hopefully it's ok to leave those where they are? Also I found that cgroup does calls into kernfs directly, gaining ability to register seq_file files and otherwise do all sorts of stuff that would be cool to do from lustre too ;) These patches compile and run, but I imagine it's not a great idea to merge them yet. Thanks. Oleg Drokin (3): staging/lustre: Generic helpers for sysfs staging/lustre: Move /proc/fs/lustre root level files to sysfs staging/lustre/llite: move some procfs files to sysfs .../staging/lustre/lustre/include/lprocfs_status.h | 26 +++ .../staging/lustre/lustre/llite/llite_internal.h | 4 + drivers/staging/lustre/lustre/llite/llite_lib.c | 7 +- drivers/staging/lustre/lustre/llite/lproc_llite.c | 190 ++++++++++++--------- drivers/staging/lustre/lustre/llite/super25.c | 11 +- .../lustre/lustre/obdclass/linux/linux-module.c | 116 ++++++++----- .../lustre/lustre/obdclass/lprocfs_status.c | 24 +++ 7 files changed, 246 insertions(+), 132 deletions(-) -- 2.1.0 _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel