cb424d7448
verify-patch-sanity.py validates every active recipe .patch has internally- consistent hunk line counts — catching the 'malformed patch at line N' failure at commit/CI/preflight time instead of hours into a cook. This cycle hit that class three times (qtwaylandscanner, sddm, xwayland), each only discovered when cookbook tried to apply the patch. Running it across the repo found 29 latent malformed patches (validated against GNU patch: e.g. relibc/P3-sysv-ipc reproduces 'malformed patch at line 22'). They were harmless only because they sit in vendored recipes (baked, not re- applied) — but would fail on any version-bump re-derivation. --fix recounts the hunk headers (body untouched) and repaired all 29. Wired into build-preflight.sh (Phase 1.0D) and redbear-ci.yml, with a unit test (test-patch-sanity.sh). Skips archived/legacy trees and unvalidatable formats (empty placeholders, bare-@@ git hunks).
34 lines
1.0 KiB
C
34 lines
1.0 KiB
C
#ifndef __TSAN_JAVA_H__
|
|
#define __TSAN_JAVA_H__
|
|
|
|
#include "test.h"
|
|
|
|
extern "C" {
|
|
typedef unsigned long jptr;
|
|
void __tsan_java_preinit(const char *libjvm_path);
|
|
void __tsan_java_init(jptr heap_begin, jptr heap_size);
|
|
int __tsan_java_fini();
|
|
void __tsan_java_alloc(jptr ptr, jptr size);
|
|
void __tsan_java_free(jptr ptr, jptr size);
|
|
jptr __tsan_java_find(jptr *from_ptr, jptr to);
|
|
void __tsan_java_move(jptr src, jptr dst, jptr size);
|
|
void __tsan_java_finalize();
|
|
void __tsan_java_mutex_lock(jptr addr);
|
|
void __tsan_java_mutex_unlock(jptr addr);
|
|
void __tsan_java_mutex_read_lock(jptr addr);
|
|
void __tsan_java_mutex_read_unlock(jptr addr);
|
|
void __tsan_java_mutex_lock_rec(jptr addr, int rec);
|
|
int __tsan_java_mutex_unlock_rec(jptr addr);
|
|
int __tsan_java_acquire(jptr addr);
|
|
int __tsan_java_release(jptr addr);
|
|
int __tsan_java_release_store(jptr addr);
|
|
|
|
void __tsan_read1_pc(jptr addr, jptr pc);
|
|
void __tsan_write1_pc(jptr addr, jptr pc);
|
|
void __tsan_func_entry(jptr pc);
|
|
void __tsan_func_exit();
|
|
}
|
|
|
|
const jptr kExternalPCBit = 1ULL << 60;
|
|
|
|
#endif // __TSAN_JAVA_H__
|