← Back to team overview

ubuntu-phone team mailing list archive

Re: Touch image 120 results

 

On Sat, Jan 11, 2014 at 12:00:45AM +0100, Michał Sawicz wrote:
> On 10.01.2014 23:58, Steve Langasek wrote:
> >Oh, ok - yes, dying with SIGSEGV after receiving SIGTERM from upstart would
> >certainly trigger that behavior.

> >Is the SIGTERM being sent because the user session is exiting?  If so,
> >overriding the kill timeout may not be enough, because upstart will also
> >hard-kill any lingering processes after a separate timeout in order to avoid
> >being hard-killed/itself/  by lightdm and leaving spare processes behind.

> In our case it's after `initctl stop unity8` when unity8 is
> restarted between tests.

Ok.  I don't see any reason that the kill timeout would be insufficient for
this case.  Tested in a user session with the attached python program and
upstart job, and I get the expected results in
~/.cache/upstart/kill-test.log.

Maybe the kill timeout isn't high enough for apport to finish processing the
unity8 core.  Is this reproducible if you raise the timeout higher than 30
sec?

-- 
Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
Ubuntu Developer                                    http://www.debian.org/
slangasek@xxxxxxxxxx                                     vorlon@xxxxxxxxxx
kill timeout 30

exec /home/vorlon/bin/kill-me
#!/usr/bin/python3

import os, sys, time, datetime, signal

def sigterm_handle(signum, frame):
	global sigged
	sigged = 1
	print(datetime.datetime.now().isoformat(' ') + ": SIGTERM received.");

sigged = 0

signal.signal(signal.SIGTERM, sigterm_handle)

while True:
	time.sleep(1)
	if sigged:
		print(datetime.datetime.now().isoformat(' ') + ": sleeping.");

Attachment: signature.asc
Description: Digital signature


Follow ups

References