| Summary: | Excessive wakeups | ||
|---|---|---|---|
| Product: | [Fedora] Fedora | Reporter: | David Woodhouse <dwmw2> |
| Component: | rygel | Assignee: | Peter Robinson <pbrobinson> |
| Status: | CLOSED NOTABUG | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
| Severity: | unspecified | Docs Contact: | |
| Priority: | unspecified | ||
| Version: | 19 | CC: | dwmw2, mail, pbrobinson, zeenix |
| Target Milestone: | --- | Flags: | pbrobinson:
needinfo?
(dwmw2) |
| Target Release: | --- | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2014-03-11 09:21:52 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
In which conditions was this trace taken? How many UPnP devices/services you got running in your network (you can check with gupnp-universal-cp in gupnp-tools package). Are these just bursts of wake-ups or they keep going? Which plugins you got enabled? If you got media-export plugin enabled, how many files you got exported? A trace of rygel not sleeping w/o any other info and ending it with a rather impolite phrase is not very motivating. :) It was idle when it was being traced. I think I had used a Sony BD player to view photos from it at some point a few days ago, and there is also a Serviio instance running on another machine on the network. Sometimes a Samsung Galaxy S4 too, but not doing anything DLNA-related at the moment.
The trace appears to show that it was doing nothing. There was no activity on its file descriptors, and it wasn't doing anything when it *did* wake up. It looks like just an excessively short timeout on the poll() call, as far as I can tell.
(gdb) bt
#0 0x0000003d570eab6d in poll () at ../sysdeps/unix/syscall-template.S:81
#1 0x0000003bb28480f4 in g_main_context_poll (priority=2147483647, n_fds=13,
fds=0x35c6940, timeout=100, context=0x259f9d0) at gmain.c:3995
#2 g_main_context_iterate (context=0x259f9d0, block=block@entry=1,
dispatch=dispatch@entry=1, self=<optimized out>) at gmain.c:3696
#3 0x0000003bb284855a in g_main_loop_run (loop=0x2af6450) at gmain.c:3895
#4 0x0000000000404721 in rygel_main_run (self=0x25b2430) at rygel-main.c:349
#5 rygel_main_main (args_length1=1, args=0x7fffcbdc3468) at rygel-main.c:1247
#6 main (argc=1, argv=<optimized out>) at rygel-main.c:1280
The final sentence is the name of a well-known "children's" book. It's not intended to be impolite, but a simple statement of the problem.
I've restarted rygel so I can trace *all* its threads, and now it seems to be behaving sanely again — each poll() call has a timeout of 4294967295. I'm not entirely sure what had trigger the previous behaviour.
David did this problem reappear? No response, presuming this hasn't reoccurred |
09:12:58.514326 poll([{fd=3, events=POLLIN}, {fd=11, events=POLLIN}, {fd=14, events=POLLIN}, {fd=16, events=POLLIN}, {fd=12, events=POLLIN}, {fd=19, events=POLLIN}, {fd=21, events=POLLIN}, {fd=23, events=POLLIN}, {fd=24, events=POLLIN}, {fd=7, events=POLLIN}, {fd=22, events=POLLIN}, {fd=13, events=POLLIN}, {fd=20, events=POLLIN}], 13, 100) = 0 (Timeout) 09:12:58.614787 poll([{fd=3, events=POLLIN}, {fd=11, events=POLLIN}, {fd=14, events=POLLIN}, {fd=16, events=POLLIN}, {fd=12, events=POLLIN}, {fd=19, events=POLLIN}, {fd=21, events=POLLIN}, {fd=23, events=POLLIN}, {fd=24, events=POLLIN}, {fd=7, events=POLLIN}, {fd=22, events=POLLIN}, {fd=13, events=POLLIN}, {fd=20, events=POLLIN}], 13, 100) = 0 (Timeout) 09:12:58.715166 poll([{fd=3, events=POLLIN}, {fd=11, events=POLLIN}, {fd=14, events=POLLIN}, {fd=16, events=POLLIN}, {fd=12, events=POLLIN}, {fd=19, events=POLLIN}, {fd=21, events=POLLIN}, {fd=23, events=POLLIN}, {fd=24, events=POLLIN}, {fd=7, events=POLLIN}, {fd=22, events=POLLIN}, {fd=13, events=POLLIN}, {fd=20, events=POLLIN}], 13, 100) = 0 (Timeout) 09:12:58.815633 poll([{fd=3, events=POLLIN}, {fd=11, events=POLLIN}, {fd=14, events=POLLIN}, {fd=16, events=POLLIN}, {fd=12, events=POLLIN}, {fd=19, events=POLLIN}, {fd=21, events=POLLIN}, {fd=23, events=POLLIN}, {fd=24, events=POLLIN}, {fd=7, events=POLLIN}, {fd=22, events=POLLIN}, {fd=13, events=POLLIN}, {fd=20, events=POLLIN}], 13, 100) = 0 (Timeout) 09:12:58.916004 poll([{fd=3, events=POLLIN}, {fd=11, events=POLLIN}, {fd=14, events=POLLIN}, {fd=16, events=POLLIN}, {fd=12, events=POLLIN}, {fd=19, events=POLLIN}, {fd=21, events=POLLIN}, {fd=23, events=POLLIN}, {fd=24, events=POLLIN}, {fd=7, events=POLLIN}, {fd=22, events=POLLIN}, {fd=13, events=POLLIN}, {fd=20, events=POLLIN}], 13, 100) = 0 (Timeout) 09:12:59.016331 poll([{fd=3, events=POLLIN}, {fd=11, events=POLLIN}, {fd=14, events=POLLIN}, {fd=16, events=POLLIN}, {fd=12, events=POLLIN}, {fd=19, events=POLLIN}, {fd=21, events=POLLIN}, {fd=23, events=POLLIN}, {fd=24, events=POLLIN}, {fd=7, events=POLLIN}, {fd=22, events=POLLIN}, {fd=13, events=POLLIN}, {fd=20, events=POLLIN}], 13, 100) = 0 (Timeout) 09:12:59.116598 poll([{fd=3, events=POLLIN}, {fd=11, events=POLLIN}, {fd=14, events=POLLIN}, {fd=16, events=POLLIN}, {fd=12, events=POLLIN}, {fd=19, events=POLLIN}, {fd=21, events=POLLIN}, {fd=23, events=POLLIN}, {fd=24, events=POLLIN}, {fd=7, events=POLLIN}, {fd=22, events=POLLIN}, {fd=13, events=POLLIN}, {fd=20, events=POLLIN}], 13, 100) = 0 (Timeout) 09:12:59.216974 poll([{fd=3, events=POLLIN}, {fd=11, events=POLLIN}, {fd=14, events=POLLIN}, {fd=16, events=POLLIN}, {fd=12, events=POLLIN}, {fd=19, events=POLLIN}, {fd=21, events=POLLIN}, {fd=23, events=POLLIN}, {fd=24, events=POLLIN}, {fd=7, events=POLLIN}, {fd=22, events=POLLIN}, {fd=13, events=POLLIN}, {fd=20, events=POLLIN}], 13, 100) = 0 (Timeout) 09:12:59.317272 poll([{fd=3, events=POLLIN}, {fd=11, events=POLLIN}, {fd=14, events=POLLIN}, {fd=16, events=POLLIN}, {fd=12, events=POLLIN}, {fd=19, events=POLLIN}, {fd=21, events=POLLIN}, {fd=23, events=POLLIN}, {fd=24, events=POLLIN}, {fd=7, events=POLLIN}, {fd=22, events=POLLIN}, {fd=13, events=POLLIN}, {fd=20, events=POLLIN}], 13, 100) = 0 (Timeout) Go The F*** To Sleep!