Take the 2-minute tour ×
Super User is a question and answer site for computer enthusiasts and power users. It's 100% free, no registration required.

How can I determine if the NX bit is enabled? What I am doing right now is trying to run rdmsr, but I get an error:

rdmsr:pread: Input/output error

This is when I do:

rdmsr 0x1a0

The CPU is an AMD A6 3400M APU with Radeon HD Graphics.

I am running Fedora 18, and the reason I want to check if the NX bit is enabled is because I'm getting an Error Code 0x0000005D while trying to install windows 8 on Gnome Boxes.

share|improve this question

2 Answers 2

up vote 0 down vote accepted

I found out how to do it, or at least I think I did. If I am wrong, please correct me.

Reading on page 55 of the "AMD64 Architecture Programmer's Manual Volume 2: System Programming" (http://support.amd.com/us/Processor_TechDocs/24593_APM_v2.pdf#G11.1043852), to which I found a link on wikipedia (https://en.wikipedia.org/wiki/Control_register), I learned that the address of the Extended Feature Enable Register, which is where the NXE bit is located, is C0000_0080h, not 0x1a0. Based on that, I did this:

sudo rdmsr -f 11:11 C0000_0080h

Which returns a zero (0), which according to the manual, means the bit is not enabled.

This doesn't exactly solve my problem with installing Windows 8 on Gnome Boxes, but I think it answers the question of how to determine if the NX bit is enabled on AMD A6 chips.

share|improve this answer

The way you are using the rdmsr tool is incorrect. You are specifying the address in correctly.

You should use it like this:

sudo rdmsr -f 11:11 0xc00000080

This will give you the correct bit value other wise you will get 0 each time without any error.

Now you can set the value using the wrmsr tool the same way.

sudo wrmsr -p processor_no address value

So in this case it should be like this

sudo wrmsr 0xc0000080 0xvalue

Tested on AMD..

share|improve this answer
    
That gives me the following error rdmsr:pread: Input/output error –  Buzu Aug 11 at 20:21
    
@ At Which step? –  abhi Aug 11 at 23:27
    
first step sudo rdmsr -f 11:11 0xc00000080 –  Buzu Aug 12 at 17:46
    
Follow the steps in this blog to check if your kernel has support for this and if you have correctly inserted the kernel module required for this. If you are able to solve your issue do post it here. –  abhi Aug 12 at 23:04
    

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.