linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v4 0/4] configfs: implement committable items and add sample code
@ 2021-01-15 11:13 Bartosz Golaszewski
  2021-01-15 11:13 ` [PATCH v4 1/4] configfs: increase the item name length Bartosz Golaszewski
                   ` (5 more replies)
  0 siblings, 6 replies; 8+ messages in thread
From: Bartosz Golaszewski @ 2021-01-15 11:13 UTC (permalink / raw)
  To: Joel Becker, Christoph Hellwig
  Cc: linux-kernel, Kent Gibson, Linus Walleij, Andy Shevchenko,
	linux-gpio, Bartosz Golaszewski

From: Bartosz Golaszewski <bgolaszewski@baylibre.com>

Committable items in configfs are well defined and documented but unfortunately
so far never implemented.

The use-case we have over at the GPIO subsystem is using configfs in
conjunction with sysfs to replace our current gpio-mockup testing module
with one that will be much more flexible and will allow complete coverage
of the GPIO uAPI.

The current gpio-mockup module is controlled using module parameters which
forces the user to reload it everytime they need to change the chip
configuration or layout and makes it difficult to extend its functionality.

Testing module based on configfs would allow fine-grained control over dummy
GPIO chips but since GPIO devices must be configured before they are
instantiated, we need committable items.

This implements them and adds code examples to configfs_sample module. The
first two patches are just cosmetic.

v1 -> v2:
- fix a 'set but not used' build warning reported by kernel test robot

v2 -> v3:
- use (1UL << bit) instead of BIT() in patch 2/4
- extend configfs_dump_one() to make it print the new flags
- clear the CONFIGFS_USET_DIR bit on the live group dirent

v3 -> v4:
- relax the attribute handling for the 'live' group: don't make all attributes
  read-only once their group is committed
- don't allow to change the dirent name of committable groups when renaming

Rebased on top of v5.11-rc3.

Bartosz Golaszewski (4):
  configfs: increase the item name length
  configfs: use (1UL << bit) for internal flags
  configfs: implement committable items
  samples: configfs: add a committable group

 Documentation/filesystems/configfs.rst |   6 +-
 fs/configfs/configfs_internal.h        |  22 ++-
 fs/configfs/dir.c                      | 244 ++++++++++++++++++++++++-
 include/linux/configfs.h               |   3 +-
 samples/configfs/configfs_sample.c     | 153 ++++++++++++++++
 5 files changed, 408 insertions(+), 20 deletions(-)

-- 
2.29.1


^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2021-01-27  8:48 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-15 11:13 [PATCH v4 0/4] configfs: implement committable items and add sample code Bartosz Golaszewski
2021-01-15 11:13 ` [PATCH v4 1/4] configfs: increase the item name length Bartosz Golaszewski
2021-01-15 11:13 ` [PATCH v4 2/4] configfs: use (1UL << bit) for internal flags Bartosz Golaszewski
2021-01-15 11:13 ` [PATCH v4 3/4] configfs: implement committable items Bartosz Golaszewski
2021-01-15 11:13 ` [PATCH v4 4/4] samples: configfs: add a committable group Bartosz Golaszewski
2021-01-15 11:15 ` [PATCH v4 0/4] configfs: implement committable items and add sample code Bartosz Golaszewski
2021-01-20 17:00 ` Christoph Hellwig
2021-01-27  8:43   ` Bartosz Golaszewski

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).