From 64ca0a371100fc7dfdb20de9263763e46c88a436 Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Mon, 9 Dec 2019 07:42:48 +0100 Subject: tools/syz-check: add description checking utility syz-check parses vmlinux dwarf, extracts struct descriptions, compares them with what we have (size, fields, alignment, etc) and produces .warn files. This is first raw version, it can be improved in a number of ways. But it already helped to identify a critical issue #1542 and shows some wrong struct descriptions. Update #590 --- sys/linux/dev_dri.txt.warn | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) create mode 100644 sys/linux/dev_dri.txt.warn (limited to 'sys/linux/dev_dri.txt.warn') diff --git a/sys/linux/dev_dri.txt.warn b/sys/linux/dev_dri.txt.warn new file mode 100644 index 000000000..fe1be3d20 --- /dev/null +++ b/sys/linux/dev_dri.txt.warn @@ -0,0 +1,26 @@ +0114: struct drm_unique_in: no corresponding struct in kernel +0119: struct drm_unique_out: no corresponding struct in kernel +0131: struct drm_map: no corresponding struct in kernel +0140: struct drm_client: bad number of fields: syz=8 kernel=6 +0143: field drm_client.pid/pid: bad size: syz=4 kernel=8 +0145: field drm_client.pid_pad/uid: bad offset: syz=12 kernel=16 +0145: field drm_client.pid_pad/uid: bad size: syz=4 kernel=8 +0146: field drm_client.uid/magic: bad offset: syz=16 kernel=24 +0146: field drm_client.uid/magic: bad size: syz=4 kernel=8 +0148: field drm_client.uid_pad/iocs: bad offset: syz=20 kernel=32 +0148: field drm_client.uid_pad/iocs: bad size: syz=4 kernel=8 +0165: struct drm_ctx_priv_map: no corresponding struct in kernel +0170: struct drm_ctx: no corresponding struct in kernel +0175: struct drm_ctx_res: no corresponding struct in kernel +0180: struct drm_lock: no corresponding struct in kernel +0185: struct drm_buf_desc: no corresponding struct in kernel +0195: struct drm_buf_map: no corresponding struct in kernel +0201: struct drm_buf_pub: no corresponding struct in kernel +0208: struct drm_buf_free: no corresponding struct in kernel +0213: struct drm_dma: no corresponding struct in kernel +0226: struct drm_control: no corresponding struct in kernel +0243: struct drm_scatter_gather: no corresponding struct in kernel +0248: struct drm_wait_vblank: no corresponding struct in kernel +0303: struct drm_mode_crtc: bad number of fields: syz=8 kernel=9 +0311: field drm_mode_crtc.mode/mode_valid: bad size: syz=68 kernel=4 +0326: field drm_mode_modeinfo.vrefr/vrefresh: bad size: syz=2 kernel=4 -- cgit mrf-deployment