[master] e553ea3c7 cache_deliver_proc: Polish VDP_Close()
Nils Goroll
nils.goroll at uplex.de
Mon Mar 3 08:47:06 UTC 2025
commit e553ea3c71bcd32f6e8fd279b16fc2e1d49dcc8d
Author: Nils Goroll <nils.goroll at uplex.de>
Date: Mon Mar 3 09:19:19 2025 +0100
cache_deliver_proc: Polish VDP_Close()
someone(tm) added some unmotivated logic way back in
1e82f502a027b89caa94be88496b20aaf3970c8d:
As long as the VDP list is not empty, there is a first VDP on the list, so why
would we have statements like AN(vdpe) or check if (vdpe != NULL) ?
Diff best viewed ignoring whitespace (git log -pb)
diff --git a/bin/varnishd/cache/cache_deliver_proc.c b/bin/varnishd/cache/cache_deliver_proc.c
index d9c20603a..83ee48e61 100644
--- a/bin/varnishd/cache/cache_deliver_proc.c
+++ b/bin/varnishd/cache/cache_deliver_proc.c
@@ -221,20 +221,15 @@ VDP_Close(struct vdp_ctx *vdc, struct objcore *oc, struct boc *boc)
CHECK_OBJ_ORNULL(oc, OBJCORE_MAGIC);
CHECK_OBJ_ORNULL(boc, BOC_MAGIC);
- while (!VTAILQ_EMPTY(&vdc->vdp)) {
- vdpe = VTAILQ_FIRST(&vdc->vdp);
+ while ((vdpe = VTAILQ_FIRST(&vdc->vdp)) != NULL) {
+ CHECK_OBJ(vdpe, VDP_ENTRY_MAGIC);
rv = vdpe->bytes_in;
VSLb(vdc->vsl, SLT_VdpAcct, "%s %ju %ju", vdpe->vdp->name,
(uintmax_t)vdpe->calls, (uintmax_t)rv);
- if (vdc->retval >= 0)
- AN(vdpe);
- if (vdpe != NULL) {
- CHECK_OBJ(vdpe, VDP_ENTRY_MAGIC);
- if (vdpe->vdp->fini != NULL)
- AZ(vdpe->vdp->fini(vdc, &vdpe->priv));
- AZ(vdpe->priv);
- VTAILQ_REMOVE(&vdc->vdp, vdpe, list);
- }
+ if (vdpe->vdp->fini != NULL)
+ AZ(vdpe->vdp->fini(vdc, &vdpe->priv));
+ AZ(vdpe->priv);
+ VTAILQ_REMOVE(&vdc->vdp, vdpe, list);
vdc->nxt = VTAILQ_FIRST(&vdc->vdp);
#ifdef VDP_PEDANTIC_ARMED
// enable when we are confident to get VDP_END right
More information about the varnish-commit
mailing list