Switching to SMM with FreeBSD 6.2 onwards

Andriy Gapon avg at icyb.net.ua
Fri Mar 27 05:23:50 PDT 2009


on 27/03/2009 12:35 Ivan Voras said the following:
> Takanori Watanabe wrote:
>> In message <17314.10813.qm at web45811.mail.sp1.yahoo.com>, Won De Erick wrote:
>>> Hi All,
>>>
>>> I'm not quite familiar with FreeBSD, but I want to do the following in 6.2/7.1
>>> . 
>>>
>>>  /* Raise IOPL to 3 to open all I/O ports */
>>>  /* something like 'i386_iopl(3)' */
>>>  ...
>> see  i386_get_ioperm(2) or io(4).
>>
>>>  /* Open SMRAM access */
>>>  outl(unsigned int port, unsigned long int data);
>>>
>>>
>>> Also, I appreciate comments on the following wrapper:
>>>
>>> static inline outl(unsigned int port, unsigned long int data)
>>> {
>>>  asm("outl %0, %1" : : "a" (data), "dN" (port));
>>> }
>>>

Take a look at machine/cpufunc.h

>>> My goal is to switch the processor to SMM by triggering SMI from userland.
>>
>> Probably this will work.
>> So what do you want ask about that?
> 
> One thing that comes to my mind is this:
> http://invisiblethingslab.com/resources/misc09/smm_cache_fun.pdf
> 
> :)

Yeah, and IDA Pro rocks too :-)


-- 
Andriy Gapon


More information about the freebsd-hackers mailing list