I modified the script that I wrote to try to reproduce this error and was able to consistantly see IO errors when the script was added to the cloud-config-archive being passed to an image. Instead of writing only to either /dev/console or the real serial device which was /dev/ttyS0 here, each thread writes to both and calls .flush() on one after the other. Without writing to both /dev/console and /dev/ttyS0 I have not seen any IOErrors, so I believe that this may have something to do with the mechanism for /dev/console being forwarded into /dev/ttyS0.
I have not yet been able to cause an IO error using this script on its own, only when it is being run by cloud-init. I think this might be because of the cloud-final.service file specifying output from cloud- init to be written to console as well, causing another simultaneous write. I will work on trying to modify this script so that it can trigger the error when being run on its own as well. I think that in the original error occuring during curtin vmtests some other process may have been writing to /dev/ttyS0 as cc_ssh_authkeys was writing to /dev/console via util.multi_log, causing this error to occur With this script in cloud-init userdata I have seen at least one or two OSErrors in serial output each time the system has been tested. New script: http://paste.ubuntu.com/15906498/ Example serial.log output from launch framework similar to curtin vmtests: http://paste.ubuntu.com/15906571/ There is a well formatted stacktrace on line 6730 and several others higher up that are difficult to read -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1473527 Title: module ssh-authkey-fingerprints fails Input/output error: /dev/console To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/cloud-init/+bug/1473527/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
