On Sun, Jun 8, 2008 at 2:00 PM, Pavel Roskin <[EMAIL PROTECTED]> wrote: > On Sat, 2008-06-07 at 15:48 +0800, Bean wrote: > >> I believe the problem is with hexdump. It open the device with >> grub_disk_open, which returns the disk object related to the beginning >> of partition. However, it read it using disk->dev->read, which is a >> low level api that use absolute address. It should be using >> grub_disk_read instead. > > Nice catch! Indeed, hexdump has special handling for the whole > partitions. And it actually tries to satisfy the low level API by > converting offset to the sector number and skipping the remainder. I > guess it could be simplified if grub_disk_read() is used.
The reason I add device support for hexdump is to debug the nand driver. I need to go around the disk cache and call the underlying disk driver directly, so I use disk->dev->read. For (nand), there is just one partition, so I didn't notice the problem then. -- Bean _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org http://lists.gnu.org/mailman/listinfo/grub-devel