From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1K5O12-0000BA-RS for qemu-devel@nongnu.org; Sun, 08 Jun 2008 12:45:12 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1K5O12-00009j-15 for qemu-devel@nongnu.org; Sun, 08 Jun 2008 12:45:12 -0400 Received: from [199.232.76.173] (port=58882 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1K5O11-00009X-Sx for qemu-devel@nongnu.org; Sun, 08 Jun 2008 12:45:11 -0400 Received: from rv-out-0708.google.com ([209.85.198.251]:40877) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1K5O10-0006Mi-SN for qemu-devel@nongnu.org; Sun, 08 Jun 2008 12:45:11 -0400 Received: by rv-out-0708.google.com with SMTP id f25so1616597rvb.22 for ; Sun, 08 Jun 2008 09:45:09 -0700 (PDT) Message-ID: <761ea48b0806080945t1bd838fmf11fe18a82632e3a@mail.gmail.com> Date: Sun, 8 Jun 2008 18:45:09 +0200 From: "Laurent Desnogues" Subject: Re: [Qemu-devel] Buggy wfi support for ARM user In-Reply-To: MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_14697_8817149.1212943509877" References: <761ea48b0806080554x4b8ca2e9o6b279fae72c357e9@mail.gmail.com> <200806081512.36543.paul@codesourcery.com> <761ea48b0806080907t311f83dbo7f181746920baecb@mail.gmail.com> Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org ------=_Part_14697_8817149.1212943509877 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-Disposition: inline On Sun, Jun 8, 2008 at 6:38 PM, Blue Swirl wrote: > On 6/8/08, Laurent Desnogues wrote: >> >> I propose that for user mode this instruction be considered >> >> as a NOP. Any thoughts? >> > >> > Allowing usermode to issue WFI sounds like a bug. >> >> Here is a proposal that makes WFI no-ops for user mode emulation. >> Comments welcome, especially as I am not used to send patches :) > > Generally, the config-host.mak part should be suppressed in patches. Sorry about that, I used make clean instead of distclean. > I don't know about this WFI case or even much of ARM at all, but if > enabling WFI is controversial, maybe it could be implemented as a CPU > feature so that it is disabled by default. It's not controversial I think. It's just that it's architected to be executable by user processes. However it only makes sense if a process can receive interruptions which is not really the case for qemu user mode emulation. This instruction is used to reduce power in idle loops. Laurent ------=_Part_14697_8817149.1212943509877 Content-Type: text/x-patch; name=wfi.patch Content-Transfer-Encoding: base64 X-Attachment-Id: f_fh7v089y0 Content-Disposition: attachment; filename=wfi.patch T25seSBpbiB0cnVuazogYnVpbGQubG9nCmRpZmYgLXJ1IC14IC5zdm4gdHJ1bmsvdGFyZ2V0LWFy bS9oZWxwZXJzLmggZWRpdC90YXJnZXQtYXJtL2hlbHBlcnMuaAotLS0gdHJ1bmsvdGFyZ2V0LWFy bS9oZWxwZXJzLmgJMjAwOC0wNC0xNyAyMzoxMDoyMS4wMDAwMDAwMDAgKzAyMDAKKysrIGVkaXQv dGFyZ2V0LWFybS9oZWxwZXJzLmgJMjAwOC0wNi0wOCAxNzo1MToyMy4wMDAwMDAwMDAgKzAyMDAK QEAgLTEyMiw3ICsxMjIsOSBAQAogCiBERUZfSEVMUEVSXzFfMyhzZWxfZmxhZ3MsIHVpbnQzMl90 LCAodWludDMyX3QsIHVpbnQzMl90LCB1aW50MzJfdCkpCiBERUZfSEVMUEVSXzBfMShleGNlcHRp b24sIHZvaWQsICh1aW50MzJfdCkpCisjaWZuZGVmIENPTkZJR19VU0VSX09OTFkKIERFRl9IRUxQ RVJfMF8wKHdmaSwgdm9pZCwgKHZvaWQpKQorI2VuZGlmCiAKIERFRl9IRUxQRVJfMF8yKGNwc3Jf d3JpdGUsIHZvaWQsICh1aW50MzJfdCwgdWludDMyX3QpKQogREVGX0hFTFBFUl8xXzAoY3Bzcl9y ZWFkLCB1aW50MzJfdCwgKHZvaWQpKQpkaWZmIC1ydSAteCAuc3ZuIHRydW5rL3RhcmdldC1hcm0v b3BfaGVscGVyLmMgZWRpdC90YXJnZXQtYXJtL29wX2hlbHBlci5jCi0tLSB0cnVuay90YXJnZXQt YXJtL29wX2hlbHBlci5jCTIwMDgtMDYtMDEgMTI6Mjk6MTcuMDAwMDAwMDAwICswMjAwCisrKyBl ZGl0L3RhcmdldC1hcm0vb3BfaGVscGVyLmMJMjAwOC0wNi0wOCAxNzo1MDo1NS4wMDAwMDAwMDAg KzAyMDAKQEAgLTI0NywxMiArMjQ3LDE0IEBACiAgICAgcmV0dXJuIHJlczsKIH0KIAorI2lmbmRl ZiBDT05GSUdfVVNFUl9PTkxZCiB2b2lkIEhFTFBFUih3ZmkpKHZvaWQpCiB7CiAgICAgZW52LT5l eGNlcHRpb25faW5kZXggPSBFWENQX0hMVDsKICAgICBlbnYtPmhhbHRlZCA9IDE7CiAgICAgY3B1 X2xvb3BfZXhpdCgpOwogfQorI2VuZGlmCiAKIHZvaWQgSEVMUEVSKGV4Y2VwdGlvbikodWludDMy X3QgZXhjcCkKIHsKZGlmZiAtcnUgLXggLnN2biB0cnVuay90YXJnZXQtYXJtL3RyYW5zbGF0ZS5j IGVkaXQvdGFyZ2V0LWFybS90cmFuc2xhdGUuYwotLS0gdHJ1bmsvdGFyZ2V0LWFybS90cmFuc2xh dGUuYwkyMDA4LTA2LTA3IDEzOjU5OjExLjAwMDAwMDAwMCArMDIwMAorKysgZWRpdC90YXJnZXQt YXJtL3RyYW5zbGF0ZS5jCTIwMDgtMDYtMDggMTc6NTA6MDkuMDAwMDAwMDAwICswMjAwCkBAIC02 OSw3ICs2OSwxMCBAQAogCiAvKiBUaGVzZSBpbnN0cnVjdGlvbnMgdHJhcCBhZnRlciBleGVjdXRp bmcsIHNvIGRlZmVyIHRoZW0gdW50aWwgYWZ0ZXIgdGhlCiAgICBjb25kaXRpb25hbCBleGVjdXRp b25zIHN0YXRlIGhhcyBiZWVuIHVwZGF0ZWQuICAqLworLyogZm9yIHVzZXIgbW9kZSBob3N0ZWQg ZW11bGF0aW9uIHdmaSBpcyB0cmVhdGVkIGFzIGEgbm8tb3AgKi8KKyNpZm5kZWYgQ09ORklHX1VT RVJfT05MWQogI2RlZmluZSBESVNBU19XRkkgNAorI2VuZGlmCiAjZGVmaW5lIERJU0FTX1NXSSA1 CiAKIC8qIFhYWDogbW92ZSB0aGF0IGVsc2V3aGVyZSAqLwpAQCAtMjYxOSw4ICsyNjIyLDEyIEBA CiAgICAgaWYgKChpbnNuICYgMHgwZmZmMGZmZikgPT0gMHgwZTA3MGY5MAogICAgICAgICB8fCAo aW5zbiAmIDB4MGZmZjBmZmYpID09IDB4MGUwNzBmNTgpIHsKICAgICAgICAgLyogV2FpdCBmb3Ig aW50ZXJydXB0LiAgKi8KKyAgICAgICAgLyogZm9yIHVzZXIgbW9kZSBob3N0ZWQgZW11bGF0aW9u IHdmaSBpcyB0cmVhdGVkIGFzIGEgbm8tb3AgKi8KKyAgICAgICAgLyogRklYTUU6ICBmb3IgQVJN djcgdGhpcyBzaG91bGQgYWx3YXlzIGJlIGEgbm8tb3AgKi8KKyNpZm5kZWYgQ09ORklHX1VTRVJf T05MWQogICAgICAgICBnZW5fc2V0X3BjX2ltKHMtPnBjKTsKICAgICAgICAgcy0+aXNfam1wID0g RElTQVNfV0ZJOworI2VuZGlmCiAgICAgICAgIHJldHVybiAwOwogICAgIH0KICAgICByZCA9IChp bnNuID4+IDEyKSAmIDB4ZjsKQEAgLTM0OTksOCArMzUwNiwxMSBAQAogewogICAgIHN3aXRjaCAo dmFsKSB7CiAgICAgY2FzZSAzOiAvKiB3ZmkgKi8KKyAgICAgICAgLyogZm9yIHVzZXIgbW9kZSBo b3N0ZWQgZW11bGF0aW9uIHdmaSBpcyB0cmVhdGVkIGFzIGEgbm8tb3AgKi8KKyNpZm5kZWYgQ09O RklHX1VTRVJfT05MWQogICAgICAgICBnZW5fc2V0X3BjX2ltKHMtPnBjKTsKICAgICAgICAgcy0+ aXNfam1wID0gRElTQVNfV0ZJOworI2VuZGlmCiAgICAgICAgIGJyZWFrOwogICAgIGNhc2UgMjog Lyogd2ZlICovCiAgICAgY2FzZSA0OiAvKiBzZXYgKi8KQEAgLTg3MTIsOSArODcyMiwxMSBAQAog ICAgICAgICBjYXNlIERJU0FTX1RCX0pVTVA6CiAgICAgICAgICAgICAvKiBub3RoaW5nIG1vcmUg dG8gZ2VuZXJhdGUgKi8KICAgICAgICAgICAgIGJyZWFrOworI2lmbmRlZiBDT05GSUdfVVNFUl9P TkxZCiAgICAgICAgIGNhc2UgRElTQVNfV0ZJOgogICAgICAgICAgICAgZ2VuX2hlbHBlcl93Zmko KTsKICAgICAgICAgICAgIGJyZWFrOworI2VuZGlmCiAgICAgICAgIGNhc2UgRElTQVNfU1dJOgog ICAgICAgICAgICAgZ2VuX2V4Y2VwdGlvbihFWENQX1NXSSk7CiAgICAgICAgICAgICBicmVhazsK ------=_Part_14697_8817149.1212943509877--