
On Mon, Feb 09, 2009 at 11:02:58AM +0000, Daniel P. Berrange wrote:
On Sat, Feb 07, 2009 at 06:05:51PM +0100, Guido G?nther wrote:
The problem is that we're using this function for two purposes: To read from a logfile where poll()'ing on POLLIN always returns "data readable" which leaves us spinning (and EOF might get in our way) and also using it on the monitor PTY itself where it works as expected. Why not simply introduce qemudReadLogOutput? This at least allows us to usleep while waiting for the log file to fill up with data. I couldn't make libvirtd spin with this patch anymore. O.k. to apply? Committed now.
Ah of course, I forgot poll() isn't particularly useful on regular files. For a non-spinning version we'd need to integrate with inotify to monitor changes. ACK to your proposed patch for now. I didn't use inotify since it's not portable. It might make sense to add an alternative linux only implementation though. -- Guido