diff options
author | Aaron Plattner <aplattner@nvidia.com> | 2008-07-10 14:38:34 -0700 |
---|---|---|
committer | Aaron Plattner <aplattner@nvidia.com> | 2008-07-10 15:13:13 -0700 |
commit | ebd70c82fdbe483d149ac9bdb5a64cc6e0c10e0a (patch) | |
tree | 865458634ba6e9bc5e5131601a880bc4a49d8b22 | |
parent | c42427f63f0e0495e56909ee99ad1e3c4321c39b (diff) |
Add LoaderShouldIgnoreABI to allow drivers that roll their own ABI checks (i.e. nvidia) to perform the check before ScreenInit.
-rw-r--r-- | hw/xfree86/common/xf86Module.h | 1 | ||||
-rw-r--r-- | hw/xfree86/loader/loader.c | 6 | ||||
-rw-r--r-- | hw/xfree86/loader/xf86sym.c | 1 |
3 files changed, 8 insertions, 0 deletions
diff --git a/hw/xfree86/common/xf86Module.h b/hw/xfree86/common/xf86Module.h index fdcd5674b..c8bf1cec8 100644 --- a/hw/xfree86/common/xf86Module.h +++ b/hw/xfree86/common/xf86Module.h @@ -209,6 +209,7 @@ void LoaderReqSymLists(const char **, ...); void LoaderReqSymbols(const char *, ...); int LoaderCheckUnresolved(int); void LoaderGetOS(const char **name, int *major, int *minor, int *teeny); +Bool LoaderShouldIgnoreABI(void); int LoaderGetABIVersion(const char *abiclass); typedef pointer (*ModuleSetupProc)(pointer, pointer, int *, int *); diff --git a/hw/xfree86/loader/loader.c b/hw/xfree86/loader/loader.c index 774a4c4a0..b05c48e94 100644 --- a/hw/xfree86/loader/loader.c +++ b/hw/xfree86/loader/loader.c @@ -363,6 +363,12 @@ LoaderSetOptions(unsigned long opts) LoaderOptions |= opts; } +_X_EXPORT Bool +LoaderShouldIgnoreABI(void) +{ + return (LoaderOptions & LDR_OPT_ABI_MISMATCH_NONFATAL) != 0; +} + _X_EXPORT int LoaderGetABIVersion(const char *abiclass) { diff --git a/hw/xfree86/loader/xf86sym.c b/hw/xfree86/loader/xf86sym.c index 6576fe8e9..e78ba33ee 100644 --- a/hw/xfree86/loader/xf86sym.c +++ b/hw/xfree86/loader/xf86sym.c @@ -713,6 +713,7 @@ _X_HIDDEN void *xfree86LookupTab[] = { SYMFUNC(LoaderListDirs) SYMFUNC(LoaderFreeDirList) SYMFUNC(LoaderGetOS) + SYMFUNC(LoaderShouldIgnoreABI) SYMFUNC(LoaderGetABIVersion) #ifdef XF86DRI |