DF-4786 / build_patched.sh
#!/bin/sh # DF-4786 fix validation (run on the DF guest as root inside /root/zposfix) # 1. apply fix.diff to guest /usr/src/sys/dev/drm/drm_blend.c # 2. build the patched drm.ko (module-only build, no kernel rebuild) # 3. build zposnull.ko against the patched tree headers # 4. load PATCHED drm.ko, then zposnull.ko -> expect NO panic, "SURVIVED" set -e cd /root/zposfix echo "=== applying fix to /usr/src ===" cd /usr/src && patch -s -p1 --dry-run < /root/zposfix/fix.diff && patch -s -p1 < /root/zposfix/fix.diff && echo "patch applied" grep -n "return -EINVAL" /usr/src/sys/dev/drm/drm_blend.c echo "=== building patched drm.ko ===" cd /usr/src/sys/dev/drm/drm && make clean >/dev/null 2>&1 || true make 2>&1 | tee /root/zposfix/drm-build.log | tail -5 ls -la drm.ko echo "=== building zposnull.ko ===" cd /root/zposnull && make clean >/dev/null 2>&1 || true make 2>&1 | tee /root/zposfix/zposnull-build.log | tail -3 ls -la zposnull.ko echo "BUILD_ALL_OK" |