On Jan 25, 2011, at 9:41 AM, Michael Smith wrote:
Mike Tancsa wrote:
>>>>>> ad0: FAILURE - READ_DMA status=51<READY,DSC,ERROR>
>>>>>> error=10<NID_NOT_FOUND> LBA=7813103
> 
>>>> # ls -l _.disk.full
>>>> -rw-r--r--  1 root  wheel  - 972776448 Jan 10 17:11 _.disk.full
>>>> 
>>>> dd if=_.disk.full ibs=64k obs=64k of=/dev/da0
> 
>> NANO_MEDIASIZE=1900000
> 
> I'm not familiar with NanoBSD, but does this mean it's a 1900000 x 512 
> byte image? Do you know why the kernel would be trying to read from 
> sector 7813103 if the image is only 1900000 sectors?

The comment in the actual nanobsd.sh script says NANO_MEDIASIZE is a count of 
512 byte sectors.  Note that is the size used to create the "_.disk.full" file 
which actually contains three BSD partitions on three different BSD slices (aka 
DOS partitions), a small partition to write config changes to and then the rest 
divided into half so you can ping pong between two versions of the OS by 
loading just the "_.disk.image" file using one of the update# scripts.  

So the current value leaves a lot of uninitialized sectors at the end of the CF 
after the dd, which probably aren't accounted for in the DOS partition table.  
Also I think certain parts of the GEOM driver check the last sector of a drive 
for configuration info?  Maybe you need to change MEDIASIZE to match the device 
so those bits of the CF are properly initialized by the dd.

At least in 8.1 you can add the line "FlashDevice sandisk 4G" to your 
nanobsd.conf file and omit the NANO_MEDIASIZE value.  You might want to try 
that first.

-Jed
_______________________________________________
Soekris-tech mailing list
[email protected]
http://lists.soekris.com/mailman/listinfo/soekris-tech

Reply via email to