Hi John, I put the relevant portion of Dan's comments inline.
| Third, once I started the updatemanagernotifier by hand, it ate a lot of | CPU. | | It seems to make from 25,000 syscalls/second to 200,000 syscalls/sec | and is the top process on my system. This looks like a broken call | to poll: | | # truss -c -p `pgrep update` | ^C | syscall seconds calls errors | ioctl .201 27169 | pollsys .192 27275 | -------- ------ ---- | sys totals: .393 54444 0 | usr time: .541 | elapsed: 3.940 > Also want to yield when checking for updates to gtk main loop to help > reduce cpu hogging. > http://cr.opensolaris.org/~jmr/um_notifier_3834_v1_Oct010 I took a look at this webrev, but it's unclear to me how calling events_pending() more frequently is going to reduce the number of pollsys syscalls. gtk_events_pending() eventually calls g_main_context_pending (in Glib). This function retrieves the context and then calls g_main_context_iterate(). The context_iterate function sets up a bunch of state, and eventually calls g_main_context_poll(). That function actually invokes the poll syscall. It seems like further investigation should occur before we declare this issue closed. Thanks, -j _______________________________________________ pkg-discuss mailing list [email protected] http://mail.opensolaris.org/mailman/listinfo/pkg-discuss
