On Tue, Oct 23, 2007 at 09:06:16PM +0200, Christian Franke wrote: > +/* Check memory address */ > +static int > +addr_is_valid (grub_addr_t addr) > +{ > + volatile unsigned char * p = (volatile unsigned char *)addr; > + unsigned char x, y; > + x = *p; > + *p = x ^ 0xcf; > + y = *p; > + *p = x; > + return y == (x ^ 0xcf); > +} > +
I have a feeling this might be dangerous. Any comments on the warnings listed here: http://www.osdev.org/wiki/How_Do_I_Determine_The_Amount_Of_RAM#Counting_RAM_by_direct_probing ? Specially the bit about memory-mapped PCI. Besides, if we really want it, perhaps it should be in a separate file so that other ports can use it if it's needed ? Ah, and why 0xcf instead of 0xff ? -- Robert Millan <GPLv2> I know my rights; I want my phone call! <DRM> What use is a phone call, if you are unable to speak? (as seen on /.) _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org http://lists.gnu.org/mailman/listinfo/grub-devel