aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>2024-07-05 11:21:46 +0300
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>2024-07-05 11:21:46 +0300
commit98347b5a3ab116dd0892d112531e376cff5066fd (patch)
tree4894c1db48475c3ba0221e073e8e431527d028fb /src
parent590b045c37aad44915f7f472343f24c2bafbe5d8 (diff)
downloadpostgresql-98347b5a3ab116dd0892d112531e376cff5066fd.tar.gz
postgresql-98347b5a3ab116dd0892d112531e376cff5066fd.zip
Lift limitation that PGPROC->links must be the first field
Since commit 5764f611e1, we've been using the ilist.h functions for handling the linked list. There's no need for 'links' to be the first element of the struct anymore, except for one call in InitProcess where we used a straight cast from the 'dlist_node *' to PGPROC *, without the dlist_container() macro. That was just an oversight in commit 5764f611e1, fix it. There no imminent need to move 'links' from being the first field, but let's be tidy. Reviewed-by: Aleksander Alekseev, Andres Freund Discussion: https://www.postgresql.org/message-id/22aa749e-cc1a-424a-b455-21325473a794@iki.fi
Diffstat (limited to 'src')
-rw-r--r--src/backend/storage/lmgr/proc.c2
-rw-r--r--src/include/storage/proc.h1
2 files changed, 1 insertions, 2 deletions
diff --git a/src/backend/storage/lmgr/proc.c b/src/backend/storage/lmgr/proc.c
index ce29da90121..1b23efb26f3 100644
--- a/src/backend/storage/lmgr/proc.c
+++ b/src/backend/storage/lmgr/proc.c
@@ -330,7 +330,7 @@ InitProcess(void)
if (!dlist_is_empty(procgloballist))
{
- MyProc = (PGPROC *) dlist_pop_head_node(procgloballist);
+ MyProc = dlist_container(PGPROC, links, dlist_pop_head_node(procgloballist));
SpinLockRelease(ProcStructLock);
}
else
diff --git a/src/include/storage/proc.h b/src/include/storage/proc.h
index 9488bf1857c..7d3fc2bfa60 100644
--- a/src/include/storage/proc.h
+++ b/src/include/storage/proc.h
@@ -161,7 +161,6 @@ typedef enum
*/
struct PGPROC
{
- /* proc->links MUST BE FIRST IN STRUCT (see ProcSleep,ProcWakeup,etc) */
dlist_node links; /* list link if process is in a list */
dlist_head *procgloballist; /* procglobal list that owns this PGPROC */