intel-gfx.lists.freedesktop.org archive mirror
 help / color / mirror / Atom feed
From: swati.dhingra@intel.com
To: intel-gfx@lists.freedesktop.org
Cc: Swati Dhingra <swati.dhingra@intel.com>
Subject: [RFC 0/3] Introduce drmfs pseudo filesystem for drm subsystem
Date: Thu,  1 Dec 2016 13:44:14 +0530	[thread overview]
Message-ID: <1480580057-27548-1-git-send-email-swati.dhingra@intel.com> (raw)

From: Swati Dhingra <swati.dhingra@intel.com>

Currently, for the purpose of providing output debug/loggging/crc and various
other kinds of data from DRM layer to userspace, we don't have a standard
filesystem, which would suffice for all the usecases. The filesystems used
currently such as debugfs/sysfs have their own constraints and are intended
to output a particular type of data. For instance, sysfs is suitable for
exporting only small data in form of attributes, thus not suitable to export
large data such as error states/logs/crc etc. Likewise for debugfs, which is
not available in production kernels, and may not be best place to hold certain
kinds of data. As a result, we currently are creating certain files in these
filesystems, which are not particularly suited there (For, i915, guc_log is a
case in point, which is currently created in debugfs, but not particularly
suited there).

Due to these constraints, there is a need for a new pseudo filesytem,
customizable to DRM specific requirements and catering to the needs to DRM
subsystem components. This will provide a unified location to hold various
kinds of data from Linux DRM subsystems, for the files which can't really fit
anywhere else into the existing filesystems.

In this patch series, we have introduced a pseudo filesystem named as 'drmfs'
for now. The filesystem is introduced in the first patch, and the subsequent
patches make use of the filesystem interfaces, in drm driver, and making them
available for use by the drm subsystem components, one of which is i915.
We've moved the location of i915 GuC logs from debugfs to drmfs in the third
patch. Subsequently, more such files such as pipe_crc, error states, memory
stats, etc. can be move to this filesystem, if the idea introduced here is
acceptable per se. The filesystem introduced is being used to house the data
generated by i915 driver in this patch series, but will hopefully be generic
enough to provide scope for usage by any other drm subsystem component.

The patch series is being floated as RFC to gather feedback on the idea and
infrastructure proposed here and it's suitability to address the specific
problem statement/use case.

v2: fix the bat failures caused due to missing config check

Swati Dhingra (3):
  fs: Introduce drmfs pseudo filesystem interfaces
  drm: Register drmfs filesystem from drm init
  drm/i915: Creating guc log file in drmfs instead of debugfs

 drivers/gpu/drm/drm_drv.c                  |  23 ++
 drivers/gpu/drm/i915/i915_guc_submission.c |  31 +-
 fs/Kconfig                                 |   9 +
 fs/Makefile                                |   1 +
 fs/drmfs/Makefile                          |   4 +
 fs/drmfs/inode.c                           | 561 +++++++++++++++++++++++++++++
 include/drm/drm_drv.h                      |   3 +
 include/linux/drmfs.h                      |  56 +++
 include/uapi/linux/magic.h                 |   3 +
 9 files changed, 670 insertions(+), 21 deletions(-)
 create mode 100644 fs/drmfs/Makefile
 create mode 100644 fs/drmfs/inode.c
 create mode 100644 include/linux/drmfs.h

-- 
2.7.4

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

             reply	other threads:[~2016-12-01  8:05 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-12-01  8:14 swati.dhingra [this message]
2016-12-01  8:14 ` [RFC 1/3] fs: Introduce drmfs pseudo filesystem interfaces swati.dhingra
2016-12-02  7:53   ` Daniel Vetter
2016-12-02  8:27     ` sourab gupta
2016-12-02 22:40   ` Matt Roper
2016-12-03  0:53     ` sourab gupta
2016-12-03  9:25       ` Chris Wilson
2016-12-01  8:14 ` [RFC 2/3] drm: Register drmfs filesystem from drm init swati.dhingra
2016-12-02  7:57   ` Daniel Vetter
2016-12-02  8:32     ` sourab gupta
2016-12-01  8:14 ` [RFC 3/3] drm/i915: Creating guc log file in drmfs instead of debugfs swati.dhingra
2016-12-01  8:45 ` ✓ Fi.CI.BAT: success for Introduce drmfs pseudo filesystem for drm subsystem (rev2) Patchwork
2016-12-02  7:52 ` [RFC 0/3] Introduce drmfs pseudo filesystem for drm subsystem Daniel Vetter
  -- strict thread matches above, loose matches on Subject: below --
2016-12-01  7:02 swati.dhingra
2016-12-01  8:48 ` Jani Nikula
2016-12-01  9:23   ` Chris Wilson

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=1480580057-27548-1-git-send-email-swati.dhingra@intel.com \
    --to=swati.dhingra@intel.com \
    --cc=intel-gfx@lists.freedesktop.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).