android_kernel_msm-6.1_noth.../include/uapi
Isaac J. Manjarres 1cb81a5fed ion: Add ION UAPI headers
On kernel versions >= 5.15, ION has been completely deprecated, meaning
that the kernel no longer exposes the ION UAPI. There are versions of
libion on operating systems (e.g. Linux Embedded (LE)) that rely on the
kernel to export the latest ION headers to build properly.

Having LE use the same strategy as Android's libion (i.e. maintaining a
copy of the new UAPI and using that to supplement the legacy linux/ion.h
with the new UAPI definitions) is not feasible. It is not feasible because
LE's libion includes the msm-kernel headers, and certain kernels export
the non-legacy ION UAPI (kernels >= 4.14) as linux/ion.h, which causes
libion to use the kernel header for linux/ion.h instead of the legacy
linux/ion.h. When including a local copy of the updated ION UAPI in the
LE libion project, redefinition errors are observed when building libion
with the kernel headers from a kernel that supports the non-legacy
version of ION, as the local copy will redefine the same structures.
Android's libion does not have this problem, as it doesn't use the
msm-kernel's headers, but only its own, so its linux/ion.h is always the
legacy linux/ion.h.

It is possible to stop including the msm-kernel headers for libion,
which would make using Android's approach feasible. However, this
introduces issues when libdmabufheap tries to include ion_4.12.h for the
new structure definitions of the heap query ioctl, as these definitions
redefine the ones obtained from the msm-kernel's linux/ion.h when
building libdmabufheap. Libdmabufheap must be built with the
msm-kernel's UAPI headers, as it relies on the dma-heap.h UAPI file.

Thus, add the ION UAPI headers as part of the headers that the kernel
will expose as of android12-5.10 commit b4604acd52a6
("UPSTREAM: USB: gadget: detect too-big endpoint 0 requests").

This change should not be carried forward to kernels that will run on LE
versions that do not need libion.

Change-Id: I53831911a9aeebbc70edf421e984bd3b1e2b9c36
Signed-off-by: Isaac J. Manjarres <quic_isaacm@quicinc.com>
2022-10-24 15:30:30 -07:00
..
asm-generic TTY / Serial driver changes for 6.0-rc1 2022-08-08 11:31:40 -07:00
drm drm for 5.20/6.0 2022-08-03 19:52:08 -07:00
linux ion: Add ION UAPI headers 2022-10-24 15:30:30 -07:00
misc habanalabs: add status of reset after device release 2022-07-12 09:09:31 +03:00
mtd mtdchar: prevent integer overflow in a safety check 2022-06-09 15:03:32 +02:00
rdma v5.20 pull request 2022-08-04 19:54:32 -07:00
scsi treewide: uapi: Replace zero-length arrays with flexible-array members 2022-06-28 21:26:05 +02:00
sound sound updates for 6.0-rc1 2022-08-06 10:19:51 -07:00
video
xen Improve docs for IOCTL_GNTDEV_MAP_GRANT_REF 2022-02-03 08:23:32 +01:00
Kbuild