when one decides to reboot/shutdown via xbmc GUI, he/she
expects it to happen immediately or with minimal delay.
there are addons (trakt, watchdog) that are known to cause high
(1+ minute) shutdown.
----
16:19:15 T:140287759476608 DEBUG: CAnnouncementManager - Announcement: OnQuit from xbmc
16:19:15 T:140287759476608 DEBUG: GOT ANNOUNCEMENT, type: 8, from xbmc, message OnQuit
16:19:15 T:140287759476608 NOTICE: Storing total System Uptime
16:19:15 T:140287759476608 NOTICE: Saving settings
16:19:15 T:140287759476608 NOTICE: stop all
^^ CJobManager::GetInstance().CancelJobs() comes in
16:19:15 T:140286952978176 DEBUG: Thread JobWorker 140286952978176 terminating (autodelete)
16:19:15 T:140286978156288 DEBUG: Thread JobWorker 140286978156288 terminating (autodelete)
16:19:15 T:140286676150016 DEBUG: Thread JobWorker 140286676150016 terminating (autodelete)
16:19:19 T:140286676150016 NOTICE: Thread FileCache start, auto delete: false
^^ so far so good but this should never happen once CApplication::Stop is called. but it does
16:19:30 T:140286676150016 ERROR: CCurlFile::FillBuffer - Failed: Timeout was reached(28)
16:19:30 T:140286676150016 NOTICE: CCurlFile::FillBuffer - Reconnect, (re)try 1
16:19:50 T:140286676150016 ERROR: CCurlFile::FillBuffer - Failed: Timeout was reached(28)
16:19:50 T:140286676150016 NOTICE: CCurlFile::FillBuffer - Reconnect, (re)try 2
16:20:10 T:140286676150016 ERROR: CCurlFile::FillBuffer - Failed: Timeout was reached(28)
16:20:10 T:140286676150016 ERROR: CCurlFile::FillBuffer - Reconnect failed!
16:20:10 T:140286676150016 INFO: CFileCache::Process - Hit eof.
16:20:10 T:140286676150016 DEBUG: Thread FileCache 140286676150016 terminating
^^ 1 minute shutdown delay..
----
with this patch now xbmc can handle SIGTERM and attempt clean exit, systemd
will take care of the rest if xbmc fails to exit.
This allows ‘PROJECT=ATV ARCH=i386 make image’ to output the .img files
needed to run OE from a USB (live mode) or install to the internal HDD.
Note: this is not complete and must be fixed
Signed-off-by: Stephan Raue <stephan@openelec.tv>