On 11/23/2009 05:28 PM, Denys Vlasenko wrote:
On Thu, 2009-11-19 at 15:44 +0100, Jiri Moskovcak wrote:
I was thinking about catching crashes in abrtd (I know is pretty stable, but still...). We decided not to catch it, because when the daemon is not running there is no quota for dumpdir size. So here is my proposal:
We can hardwire the /usr/sbin/abrtd to be handled specially by the hook so it will be saved into the same dir (like /var/cache/abrt/abrt-dump/) and overwriting the previous coredump. this way we'll avoid filling up the HDD. But there could still be a problem when if abrtd crashes in a loop then creating coredump might be I/O time-consuming, this can be solved by checking the timestamp of the last crash and setting some threshold.
Good idea. I added the code (see attached) which saves abrtd's coredump to /var/cache/abrt/abrtd-coredump _file_, not dir.
Thanks, I read the patch and seems ok to me, but I'd rather handle the abrt crash the same way as any other crash -> save it to some dir and let abrtd process it, so users can easily report it. This should be safe as abrtd is not respawned automatically, so there is no danger of abrt dumping it self forever (this can happen only for the hook). The only reason why abrtd has been ignored until now is because ccpphook doesn't dump anything if abrtd is not running and there's no one to watch the dump-quota.
Jirka