Kernel Changes in RHEL7.3 when migrating from RHEL7.2

Latest response

(reposted with formatting fixed)
A kernel driver that works fine on other distributions and RHEL7.2 stopped compiling on RHEL7.3 because of the following changes:

File: /usr/src/kernels/3.10.0-514.el7.x86_64/include/linux/sched.h
1129 struct sched_entity {
1130 struct load_weight load; /* for load-balancing */
...
1159
1160 RH_KABI_USE(1, struct sched_statistics *statistics)

It was:
struct sched_statistics statistics;

The sched_entity.sched_statisitics.wait_start is now sched_entity.sched_statistics->wait_start. Other distributions and mainline linux still has sched_statistics instead of *sched_statistics.

Does anyone knows what is the background of this change? What changes to you suggest to make the drivers be portable across RHEL7.3 and other variants without causing too much RHEL specific code within the driver?

Thanks

Responses