Bruce Momjian <maillist@candle.pha.pa.us> writes:
>> The only way to get around this is to do an execv(), at which point the
>> kernel will recopy argv[0].
> We used to do execv(), but stopped doing it for performance reasons.
It's clearly not worth re-introducing the exec call just to make ps
status display work (especially since it's only failing when the backend
is swapped out). However, I wonder whether there is another answer.
Something that's been on my to-do list since the ps-status-display code
got added is to import "sendmail"'s ps-status-display module lock, stock,
and barrel. Sendmail's code is kinda ugly, but it's been wrung out and
works on a wide variety of Unixes. The code we have doesn't ... (it's
never worked on my HPUX box, for instance, whereas sendmail does).
I have no idea at the moment whether sendmail knows how to change the
task_struct on Linux; but it might.
regards, tom lane