From: Anand Jain <anand.jain@oracle.com>
To: linux-btrfs@vger.kernel.org
Subject: [survey] sysfs layout for btrfs
Date: Sat, 15 Aug 2015 07:40:40 +0800 [thread overview]
Message-ID: <55CE7C78.1020509@oracle.com> (raw)
Hello,
as of now btrfs sysfs does not include the attributes for the volume
manager part in its sysfs layout, so its being developed and there are
two types of layout here below, so I have a quick survey to know which
will be preferred. contenders are:
1. FS and VM (volume manager) attributes[1] merged sysfs layout
2. FS and VM attributes separated sysfs layout.
These two choices differ whether the VM attributes are amalgamate with
existing FS attributes or if VM attributes are put under a kobject named
"pools/volumes" under /sys/fs/btrfs. More in the below example. which
would highlight the trade off between these two.
Eg for #1 (above):
The existing sysfs for btrfs, has the top kobject <fsid>
/sys/fs/btrfs/<fsid> <-- holds FS attr, VM attr will be added here.
/sys/fs/btrfs/<fsid>/devices/<uuid [2] > <-- btrfs_devices attr here
/sys/fs/btrfs/<fsid>/devices/<uuid>/state
/sys/fs/btrfs/<fsid>/devices/<uuid>/offline
we won't be able to change the sysfs entries which is already there.
However we could change the context in which they are created and
destroyed that is, from mount and unmount, to device scan and module
unload respectively. And so this will enable us to implement the # 1
(above).
Eg for #2 (above):
For the 2nd choice, a new 'pools or volumes' kobject will be created
under existing /sys/fs/btrfs/ which will hold the VM attributes.
(however note that: there will be duplicate kobjects like <fsid> both
under FS and VM in this choice #2).
/sys/fs/btrfs/<fsid> <--- as is, will continue to hold fs attributes.
/sys/fs/btrfs/pools/<fsid>/ <-- will hold VM attributes
/sys/fs/btrfs/pools/<fsid>/devices/<sdx> <-- btrfs_devices attr here
/sys/fs/btrfs/pools/<fsid>/devices/<sdx>/state
/sys/fs/btrfs/pools/<fsid>/devices/<sdx>/offline
There is certainly a small trade-off between these two. Your comments /
feedback are kindly appreciated.
Thanks, Anand
[1] attributes will be of the btrfs_fs_devices structure. And few newly
introduced attributes like 'state', to state the volume current state.
[2] note that we can not use <sdx> here since a link to the block device
already exists with that name.
next reply other threads:[~2015-08-14 23:40 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-08-14 23:40 Anand Jain [this message]
2015-08-18 8:33 ` [survey] sysfs layout for btrfs Gabriel de Perthuis
2015-08-18 12:34 ` Goffredo Baroncelli
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=55CE7C78.1020509@oracle.com \
--to=anand.jain@oracle.com \
--cc=linux-btrfs@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).