Bug 7530 - QEMU does not start when run as external tool
Summary: QEMU does not start when run as external tool
Status: RESOLVED WORKSFORME
Alias: None
Product: Eclipse Plugin
Classification: Yocto Project Subprojects
Component: eclipse-plugin (show other bugs)
Version: 1.8
Hardware: x86 Multiple
: Medium normal
Target Milestone: 1.8 M4
Assignee: Cristian Iorga
QA Contact: Mihail Stanciu
URL:
Whiteboard:
Depends on:
Blocks:
 
Reported: 2015-03-27 13:15 UTC by Mihail Stanciu
Modified: 2015-04-03 08:51 UTC (History)
4 users (show)

See Also:
OS type for building Yocto: ---
Type of Regression: Regression (Used to work)
Verified:
Documentation change: No (bug/feature does not impact docs)


Attachments
qemu error (90.67 KB, image/jpeg)
2015-03-27 13:15 UTC, Mihail Stanciu
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Mihail Stanciu 2015-03-27 13:15:15 UTC
Created attachment 2458 [details]
qemu error

Using both the ADT installer files and locally generated ones, when starting QEMU from the Run -> External tools menu option, the QEMU machine freezes during boot.

Tested during 1.8_M4 RC1 full pass.
Commits:
poky: 8b3d3e7c957ad06c390886487f69aeb8e145da6a
eclipse: b4d75601847b4c5b060265a37b47c2a9642da62d

See attached screenshot of error.
Comment 1 Alexandru Georgescu 2015-03-27 13:30:43 UTC
Does it work when running from cmd line?
Comment 2 Mihail Stanciu 2015-03-27 13:33:33 UTC
(In reply to comment #1)
> Does it work when running from cmd line?

Yes, it does.
Comment 3 Mihail Stanciu 2015-04-03 07:59:18 UTC
After further digging, this seems to be an issue with Fedora 21 and the way it interacts with rpcbind and tap interfaces.
Here's what's happening:

Fedora 21, when booted, seems to already have a tap0 interface set up. When running qemu from the command line, via runqemu, it seems to recognise the tap0 interface and starts normally, without asking for any (additional?) tap controller.

When starting the qemu machine from eclipse, it initially fails with the standard "you don't have rpcbind installed" error message. 
Once I install rpcbind, it seems to start the qemu machine, but it fails to boot successfully. 

Further more, once rpcbind is started, running qemu from the command line will start the machine, but the tap interface dissappears, so there is no network between qemu and the host machine.
Comment 4 Mihail Stanciu 2015-04-03 08:07:26 UTC
Log from eclipse command shell:

ROOTFS: [/home/gushie/extract-sdk/qemux86]
FSTYPE: [nfs]
Acquiring lockfile for tap0...
Using preconfigured tap device 'tap0'
If this is not intended, touch /tmp/qemu-tap-locks/tap0.skip to make runqemu skip tap0.
runqemu-export-rootfs restart /home/gushie/extract-sdk/qemux86
No PID file, not stopping rpc.nfsd
Removing exports file
Creating exports file...
=======================================================
Error: neither rpcbind nor portmap appear to be running
Please install and start one of these services first
=======================================================
Tip: for recent Ubuntu hosts, run:
  sudo apt-get install rpcbind
Then add OPTIONS="-i -w"  to /etc/default/rpcbind and run
  sudo service portmap restart
Package bash-completion was not found in the pkg-config search path.
Perhaps you should add the directory containing `bash-completion.pc'
to the PKG_CONFIG_PATH environment variable
No package 'bash-completion' found
Comment 5 Mihail Stanciu 2015-04-03 08:51:07 UTC
Retested this using master and issue is no longer present.

I suspect that regenerating the qemu environment using master instead of RC1 fixed this.

Will reopen if issue reappears in RC2.