mirror of
https://github.com/postgres/postgres.git
synced 2025-11-06 07:49:08 +03:00
Move resowner from common JitContext to LLVM specific
Only the LLVM specific code uses it since resource owners were made
extensible in commit b8bff07daa. This is
new in v17, so backpatch there to keep the branches from diverging
just yet.
Author: Andreas Karlsson <andreas@proxel.se>
Discussion: https://www.postgresql.org/message-id/fd3a2a00-6605-4e30-a118-48418b478e6e@proxel.se
This commit is contained in:
@@ -249,7 +249,7 @@ llvm_create_context(int jitFlags)
|
||||
context->base.flags = jitFlags;
|
||||
|
||||
/* ensure cleanup */
|
||||
context->base.resowner = CurrentResourceOwner;
|
||||
context->resowner = CurrentResourceOwner;
|
||||
ResourceOwnerRememberJIT(CurrentResourceOwner, context);
|
||||
|
||||
llvm_jit_context_in_use_count++;
|
||||
@@ -323,8 +323,8 @@ llvm_release_context(JitContext *context)
|
||||
|
||||
llvm_leave_fatal_on_oom();
|
||||
|
||||
if (context->resowner)
|
||||
ResourceOwnerForgetJIT(context->resowner, llvm_jit_context);
|
||||
if (llvm_jit_context->resowner)
|
||||
ResourceOwnerForgetJIT(llvm_jit_context->resowner, llvm_jit_context);
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -1377,8 +1377,8 @@ llvm_error_message(LLVMErrorRef error)
|
||||
static void
|
||||
ResOwnerReleaseJitContext(Datum res)
|
||||
{
|
||||
JitContext *context = (JitContext *) DatumGetPointer(res);
|
||||
LLVMJitContext *context = (LLVMJitContext *) DatumGetPointer(res);
|
||||
|
||||
context->resowner = NULL;
|
||||
jit_release_context(context);
|
||||
jit_release_context(&context->base);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user