<br><br><div class="gmail_quote">On Sun, Aug 23, 2009 at 5:45 AM, Kevin O'Connor <span dir="ltr"><<a href="mailto:kevin@koconnor.net">kevin@koconnor.net</a>></span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div class="im">On Sun, Aug 23, 2009 at 04:03:40AM +0800, Jason Wang wrote:<br>
> Hi all,<br>
>     I am trying to debug why the grub crashed (under usbrom) after loading<br>
> certain blocks into the memory.<br>
> My new found is that while usbrom is trying to load (block lba=0x0019a9e0).<br>
> it crashed. the flow is<br>
> usb_new_read(0,0x0019a9e0,0x20,0xfffa2000), 0x20 is the count which should<br>
> be read, and the 0xfffa2000 is the<br>
> virtual address of (0x70000).<br>
> usb_new_read call readwrite_blocks then execute_command. after executed<br>
> wrap_cbw in execute_command.<br>
> it should call dev->controller->bulk, this address is a wrong address. my<br>
> debug information are below:<br>
<br>
</div>Where in memory is "dev->controller->bulk"?  You way want to check if<br>
its contents were overwritten by something (eg, grub, linux, seabios,<br>
or a data block loaded by the usb rom).<br>
<font color="#888888"></font></blockquote><div>dev->controller-bulk is memory is 5d2d, but the point which direct to  dev->controller is 6Ef30,which physical memory is<br>6EF30+CE000>0x100000,what's why grub kernel can load some blocks to 0x100000 but crashed later. grub overwrite the<br>
space which usbrom use.<br>So the problem is be confirmed with memory.<br>Kevin, how can i use PMM by seabios from usbrom? it should be much about 1M memory that should be used. <br>Does PMM can suppport so large or just 40K of low memory/64K high memory<br>
</div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><font color="#888888"><br>
-Kevin<br>
</font></blockquote></div><br><br clear="all"><br>-- <br>Jason Wang <br>Peking University<br>