Zhibin Li's GSoC status report - #3 of 12

Zhibin Li haoyouab at gmail.com
Tue Jun 18 06:35:15 UTC 2019

Hi all,

- Revised gernel drm ioctl decoding patchset according to the feedbacks I
get from ldv.
Summary of the changes:
Removed those redundant/unused code.
ifdef the whole bulk of drm parsers.
Used a function instead of a macro.
Changed the function to the traditional read-write fashion.
Whether struct drm_mode_get_connector needs to be mpersified still needs
more discussion.
A new version of patchset will be sent later.
- Wrote part of the remaining i915 drm decoder. But I then found some of
them are no-op ioctl (see /linux/driver/gpu/drm/i915/i915_drv.c line 2926).
Patrik once mentioned that he doesn't bother writing noop ioctls. I wonder
if they are worth decoding.
For example, DRM_IOCTL_I915_IRQ_EMIT is an IOWR command while it's a noop
ioctl and I can't find any use of it or docs that mention how it works. I
am now not sure how to decoding it on entering or exiting syscall. I may
take [1] and those old commits which drm_i915_irq_emit_t were still used
as references.
- Some manual tests for those mentioned above.

- Get the patchset ready. -v option is not yet added to drm ioctl parsers.
It's better if I use magic numbers in the tests (for now most of them are
numeric 1 or 0).
- Figure out how to exactly decode those noop ioctls (or if it's worth
decoding at all). Found [2] that might help.
- Test device-specific ioctls in the test suite. May be making them optional
is an alternative? I saw that in the test for btrfs $BTRFS_MOUNTPOINT is
provided to make tests run on real env instead of fault injection or
something else.

[1] https://anongit.freedesktop.org/git/drm-intel.git

Zhibin Li
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.strace.io/pipermail/strace-devel/attachments/20190618/38453ad8/attachment.html>

More information about the Strace-devel mailing list