From: "Justin P. Mattock" <justinmattock@gmail.com>
To: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: Matthew Garrett <mjg59@srcf.ucam.org>,
x86@kernel.org, tglx@linutronix.de, linux-kernel@vger.kernel.org
Subject: Re: [PATCH]X86:reboot.c Add some dmi entries to pci_reboot_dmi_table.
Date: Wed, 02 Jun 2010 06:32:40 -0700 [thread overview]
Message-ID: <4C065D78.7080806@gmail.com> (raw)
In-Reply-To: <20100602130827.12c28744@lxorguk.ukuu.org.uk>
On 06/02/2010 05:08 AM, Alan Cox wrote:
> On Tue, 1 Jun 2010 22:48:20 +0100
> Matthew Garrett<mjg59@srcf.ucam.org> wrote:
>
>> On Tue, Jun 01, 2010 at 02:43:12PM -0700, Justin P. Mattock wrote:
>>> On 06/01/2010 02:29 PM, Matthew Garrett wrote:
>>>> So, just to be clear, you run this as root and it immediately returns
>>>> you to the prompt? This seems unlikely.
>>>
>>> yep.. with the above code
>>> I (save to a file) then
>>> non-root gcc reboot.c -o reboot
>>> then su
>>> ./reboot
>>> just bake to the command prompt
>>
>> Are you running some sort of security policy that might block hardware
>> access?
>
> Try
>
> if (iopl(...))
> perror
>
> ... (or strace it running as root)
>
o.k. here's the code with perror, and strace:
#include <sys/io.h>
#include <stdio.h>
int main() {
iopl(3);
outb(0xfe, 0x64);
perror("something broke");
}
output in terminal:
something broke: Success
strace:
execve("./reboot", ["./reboot"], [/* 42 vars */]) = 0
brk(0) = 0x601000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x7f0f50247000
access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or
directory)
open("/etc/ld.so.cache", O_RDONLY) = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=80596, ...}) = 0
mmap(NULL, 80596, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f0f50233000
close(3) = 0
open("/lib64/libc.so.6", O_RDONLY) = 3
read(3,
"\177ELF\2\1\1\3\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0p\355\241.;\0\0\0"...,
832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1838360, ...}) = 0
mmap(0x3b2ea00000, 3664040, PROT_READ|PROT_EXEC,
MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x3b2ea00000
mprotect(0x3b2eb75000, 2097152, PROT_NONE) = 0
mmap(0x3b2ed75000, 20480, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x175000) = 0x3b2ed75000
mmap(0x3b2ed7a000, 18600, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x3b2ed7a000
close(3) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x7f0f50232000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x7f0f50231000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x7f0f50230000
arch_prctl(ARCH_SET_FS, 0x7f0f50231700) = 0
mprotect(0x3b2ed75000, 16384, PROT_READ) = 0
mprotect(0x3b2e61e000, 4096, PROT_READ) = 0
munmap(0x7f0f50233000, 80596) = 0
iopl(0x3) = 0
dup(2) = 3
fcntl(3, F_GETFL) = 0x8002 (flags O_RDWR|O_LARGEFILE)
brk(0) = 0x601000
brk(0x622000) = 0x622000
fstat(3, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 0), ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1,
0) = 0x7f0f50246000
lseek(3, 0, SEEK_CUR) = -1 ESPIPE (Illegal seek)
write(3, "something broke: Success\n", 25something broke: Success
) = 25
close(3) = 0
munmap(0x7f0f50246000, 4096) = 0
exit_group(0) = ?
what/where does one look for this keycode
if I may say?
Justin P. Mattock
next prev parent reply other threads:[~2010-06-02 13:32 UTC|newest]
Thread overview: 49+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-05-29 6:26 [PATCH]X86:reboot.c Add some dmi entries to pci_reboot_dmi_table Justin P. Mattock
2010-05-31 17:07 ` Matthew Garrett
2010-05-31 17:46 ` Justin P. Mattock
2010-06-01 19:00 ` Matthew Garrett
2010-06-01 19:14 ` Justin P. Mattock
2010-06-01 19:21 ` Matthew Garrett
2010-06-01 20:06 ` Justin P. Mattock
2010-06-01 20:07 ` Matthew Garrett
2010-06-01 20:17 ` Justin P. Mattock
2010-06-01 20:21 ` Matthew Garrett
2010-06-01 20:31 ` Justin P. Mattock
2010-06-01 20:33 ` Matthew Garrett
2010-06-01 20:51 ` Justin P. Mattock
2010-06-01 21:12 ` Matthew Garrett
2010-06-01 21:26 ` Justin P. Mattock
2010-06-01 21:29 ` Matthew Garrett
2010-06-01 21:43 ` Justin P. Mattock
2010-06-01 21:48 ` Matthew Garrett
2010-06-01 21:56 ` Justin P. Mattock
2010-06-02 12:08 ` Alan Cox
2010-06-02 13:32 ` Justin P. Mattock [this message]
2010-06-02 5:11 ` Robert Hancock
2010-06-02 6:01 ` Justin P. Mattock
2010-06-02 23:18 ` Robert Hancock
2010-06-02 23:43 ` Justin P. Mattock
2010-06-02 23:45 ` Robert Hancock
2010-06-03 0:05 ` Justin P. Mattock
2010-06-03 0:20 ` Robert Hancock
2010-06-03 0:27 ` Justin P. Mattock
2010-06-03 0:34 ` Robert Hancock
2010-06-03 0:51 ` Justin P. Mattock
2010-06-03 1:37 ` Matthew Garrett
2010-06-03 1:46 ` Justin P. Mattock
2010-06-03 1:47 ` Robert Hancock
2010-06-03 1:56 ` Matthew Garrett
2010-06-03 2:06 ` Justin P. Mattock
2010-06-03 2:06 ` Robert Hancock
2010-06-03 2:00 ` Justin P. Mattock
2010-06-03 2:05 ` Robert Hancock
2010-06-03 2:16 ` Justin P. Mattock
2010-06-03 2:15 ` Justin P. Mattock
2010-06-03 2:18 ` Matthew Garrett
2010-06-03 2:22 ` Justin P. Mattock
2010-06-03 9:54 ` Alan Cox
2010-06-03 10:11 ` Justin P. Mattock
2010-06-03 11:46 ` Matthew Garrett
2010-06-03 14:43 ` Robert Hancock
2010-06-03 2:19 ` Justin P. Mattock
2010-07-31 19:00 ` Justin Mattock
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4C065D78.7080806@gmail.com \
--to=justinmattock@gmail.com \
--cc=alan@lxorguk.ukuu.org.uk \
--cc=linux-kernel@vger.kernel.org \
--cc=mjg59@srcf.ucam.org \
--cc=tglx@linutronix.de \
--cc=x86@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).