diff options
Diffstat (limited to 'meta/lib')
| -rw-r--r-- | meta/lib/oeqa/utils/qemurunner.py | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/meta/lib/oeqa/utils/qemurunner.py b/meta/lib/oeqa/utils/qemurunner.py index 4a2246733f..7273bbc3db 100644 --- a/meta/lib/oeqa/utils/qemurunner.py +++ b/meta/lib/oeqa/utils/qemurunner.py | |||
| @@ -785,19 +785,20 @@ class LoggingThread(threading.Thread): | |||
| 785 | self.logger.debug("Starting thread event loop") | 785 | self.logger.debug("Starting thread event loop") |
| 786 | while not breakout: | 786 | while not breakout: |
| 787 | events = poll.poll(2) | 787 | events = poll.poll(2) |
| 788 | for event in events: | 788 | for fd, event in events: |
| 789 | |||
| 789 | # An error occurred, bail out | 790 | # An error occurred, bail out |
| 790 | if event[1] & self.errorevents: | 791 | if event & self.errorevents: |
| 791 | raise Exception(self.stringify_event(event[1])) | 792 | raise Exception(self.stringify_event(event)) |
| 792 | 793 | ||
| 793 | # Event to stop the thread | 794 | # Event to stop the thread |
| 794 | if self.readpipe == event[0]: | 795 | if self.readpipe == fd: |
| 795 | self.logger.debug("Stop event received") | 796 | self.logger.debug("Stop event received") |
| 796 | breakout = True | 797 | breakout = True |
| 797 | break | 798 | break |
| 798 | 799 | ||
| 799 | # A connection request was received | 800 | # A connection request was received |
| 800 | elif self.serversock and self.serversock.fileno() == event[0]: | 801 | elif self.serversock and self.serversock.fileno() == fd: |
| 801 | self.logger.debug("Connection request received") | 802 | self.logger.debug("Connection request received") |
| 802 | self.readsock, _ = self.serversock.accept() | 803 | self.readsock, _ = self.serversock.accept() |
| 803 | self.readsock.setblocking(0) | 804 | self.readsock.setblocking(0) |
| @@ -808,14 +809,14 @@ class LoggingThread(threading.Thread): | |||
| 808 | self.connection_established.set() | 809 | self.connection_established.set() |
| 809 | 810 | ||
| 810 | # Actual data to be logged | 811 | # Actual data to be logged |
| 811 | elif self.readsock.fileno() == event[0]: | 812 | elif self.readsock and self.readsock.fileno() == fd: |
| 812 | data = self.recv(1024, self.readsock) | 813 | data = self.recv(1024, self.readsock) |
| 813 | self.logfunc(data) | 814 | self.logfunc(data) |
| 814 | elif self.qemuoutput.fileno() == event[0]: | 815 | elif self.qemuoutput.fileno() == fd: |
| 815 | data = self.qemuoutput.read() | 816 | data = self.qemuoutput.read() |
| 816 | self.logger.debug("Data received on qemu stdout %s" % data) | 817 | self.logger.debug("Data received on qemu stdout %s" % data) |
| 817 | self.logfunc(data, ".stdout") | 818 | self.logfunc(data, ".stdout") |
| 818 | elif self.serialsock and self.serialsock.fileno() == event[0]: | 819 | elif self.serialsock and self.serialsock.fileno() == fd: |
| 819 | if self.serial_lock.acquire(blocking=False): | 820 | if self.serial_lock.acquire(blocking=False): |
| 820 | data = self.recv(1024, self.serialsock) | 821 | data = self.recv(1024, self.serialsock) |
| 821 | self.logger.debug("Data received serial thread %s" % data.decode('utf-8', 'replace')) | 822 | self.logger.debug("Data received serial thread %s" % data.decode('utf-8', 'replace')) |
| @@ -864,6 +865,9 @@ class LoggingThread(threading.Thread): | |||
| 864 | val = 'POLLHUP' | 865 | val = 'POLLHUP' |
| 865 | elif select.POLLNVAL == event: | 866 | elif select.POLLNVAL == event: |
| 866 | val = 'POLLNVAL' | 867 | val = 'POLLNVAL' |
| 868 | else: | ||
| 869 | val = "0x%x" % (event) | ||
| 870 | |||
| 867 | return val | 871 | return val |
| 868 | 872 | ||
| 869 | def close_socket(self, sock): | 873 | def close_socket(self, sock): |
