How do I make an entity face another entity's head?

Rotating an entity so that the looking direction goes from its feet to something else's feet (the normal case):

/execute as … at @s run tp @s ~ ~ ~ facing entity …

Rotationg an entity so that the looking direction goes from its feet to something else's eyes (usually looking up, which I assume you want here):

/execute as … at @s run tp @s ~ ~ ~ facing entity … eyes

Rotating an entity so that the looking direction goes from its eyes to something else's feet (usually looking down, the entity looks at the other entity's feet):

/execute as … at @s anchored eyes run tp @s ~ ~ ~ facing entity …

Rotating an entity so that the looking direction goes from its eyes to something else's eyes (which might be different from the first case because eye heights can differ):

/execute as … at @s anchored eyes run tp @s ~ ~ ~ facing entity … eyes

The teleport syntax with facing is a bit tricky, because autocomplete doesn't work and the instant validation keeps claiming that you're doing something wrong, pretty much all the way until you finish typing the command, when it turns out that it was right all along.
Here is the bug report about it: https://bugs.mojang.com/browse/MC-124053
The game's log also includes a warning about the conflicting syntax every single time the game is started, so Mojang probably knows about it.