lkml.org 
[lkml]   [2006]   [May]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Add a "enable" sysfs attribute to the pci devices to allow userspace (Xorg) to enable devices without doing foul direct access
On 5/4/06, Peter Jones <pjones@redhat.com> wrote:
> On Thu, 2006-05-04 at 23:17 +0200, Martin Mares wrote:
> > Hello!
> >
> > > > This is yet another way that user space can mess up the kernel. If VGA
> > > > routing is changes under fbdev (my attribute notifies fbdev, the fbdev
> > > > code for processing the notification did get checked in) then the
> > > > console will screw up.
> > >
> > > And this change allows userland to avoid doing that.
> >
> > Could you explain how? I don't see how adding a "enable" attribute
> > to sysfs can solve these problems.
>
> By allowing tools to read the rom from the pci device itself, instead of
> whichever device's rom happens to be at 0xC0000. libx86emul allows you
> to define routines that it uses for memory access, so you can copy the
> ROM out to normal memory, and map that memory to the appropriate address
> that way. X and vbetool both already have to do this, but without
> copying the firmware image, to do DDC probing on x86_64.

# cd /sys/bus/pci/devices/0000:01:00.0
# echo 1 >rom
# hexdump -C rom

As far as I know this works on every platform, not just the PC one.

Don't mess around with the hardware trying to get to the ROM. Use the
API provided by the kernel. Messing with the hardware will get it into
a state that the kernel doesn't know about and can ultimately crash
your system.

>
> > I agree with Arjan that the attribute could be useful for some special
> > tools, but using it in X is likely to be utterly wrong.
>
> I'm actually talking about vbetool here, though X could use these
> methods. Indeed, libx86emul comes from X itself.
>
> --
> Peter
>
>


--
Jon Smirl
jonsmirl@gmail.com
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2006-05-04 23:40    [W:0.401 / U:0.196 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site