/usr/bin/script eating 100% cpu with portupgrade and xargs
Stefan Bethke
stb at lassitu.de
Fri Oct 14 20:50:35 UTC 2011
Am 14.10.2011 um 14:03 schrieb Jilles Tjoelker:
> On Wed, Oct 12, 2011 at 11:25:35PM +0100, Adrian Wontroba wrote:
>> On Sat, Oct 08, 2011 at 01:27:07AM +0100, Adrian Wontroba wrote:
>>> I won't be in a position to create a simpler test case, raise a PR or
>>> try patches till Tuesday evening (UK) at the earliest.
>
>> So far I have been unable to reproduce the problem with portupgrade (and
>> will probably move to portmaster).
>
>> I have however found a different but possibly related problem with the
>> new version of script in RELENG_8, for which I have raised this PR:
>
>> misc/161526: script outputs corrupt if input is not from a terminal
>
>> Blast, should of course been bin/
>
> The extra ^D\b\b are the EOF character being echoed. These EOF
> characters are being generated by the new script(1) to pass through the
> EOF condition on stdin.
>
> One fix would be to change the termios settings temporarily to disable
> the echoing but this may cause problems if the application is changing
> termios settings concurrently and generally feels bad.
>
> It may be best to remove writing EOF characters, perhaps adding an
> option to enable it again if there is a concrete use case for it.
I finally figured out why my ports aren't updating anymore: when running portupgrade -a --batch from cron, stdin is /dev/null, and that produces the gobs of ^D in the output, as well as the script file that portupgrade creates. What's worse is that the upgrade never completes.
You can easily see this for yourself:
# portupgrade -a --batch </dev/null
This is on 8-stable from October 5th.
Stefan
--
Stefan Bethke <stb at lassitu.de> Fon +49 151 14070811
More information about the freebsd-stable
mailing list