Ad0 errors with CompactFlash Sandisk cards and Soekris net5501
-
Getting same issues here with ANY compactflash card I use. All are 2gb and I am getting the identical messages whether using the 2gb or 1gb of pfsense 2.0 nano image for i386 vga.
The specific message is:
ad0: 1953MB <sandisk sdcfj-2048="" hdx4.03="">ad0: Failure Read_DMA timed out LBA=4001759
ad0: Failure Read_DMA timed out LBA=4001743
ad0: Failure Read_DMA timed out LBA=4001756etc.
The hardware I am using is an asus Pundit P1-PH1. This very unit has been running flawlessly for the last 2 years with an embedded version of pfsense 1.2. The errors I am receiving now occur with the original compact flash card that was used for the last 2 years as well as a brand new one from Sandisk and new units from R Data. It doesn't matter who's cf card I use…. all are 2gb... all are having the exact same issue. This CAN NOT be an issue with compact flash cards. It's happening to far too many people with unrelated hardware. Has anyone actually had success flashing and using the nano versions of pfsense 2.0?
In all cases the write process to these flash drives is completed without errors. In all cases, pfsense boots and runs through it's motions until it gets to the ad0 device which is the compact flash card.
I have tested these cards (all of them) on a win7 machine. I am able to partition and format at will, copy files to and from the flash drive and have confirmed integrity of the files once copied from the flash drive back to the hard drive.
I'm happy to provide any additional information/testing that might be requested to help narrow down this issue as it is without question a big time pain in the behind right now.
It should be noted, while it is not the desired configuration, I have reluctantly installed a hard drive on the same asus Pundit and have successfully loaded pfsense 2.0 i386. Pretty certain it's not a hardware issue.</sandisk>
-
I have been able to install embedded/nanobsd 2.0.x on a net5501 with no problems / no errors. I have run into problems with a net6501 and the nanobsd/embedded however. Still not sure what is going on there.
Getting same issues here with ANY compactflash card I use. All are 2gb and I am getting the identical messages whether using the 2gb or 1gb of pfsense 2.0 nano image for i386 vga.
The specific message is:
ad0: 1953MB <sandisk sdcfj-2048="" hdx4.03="">ad0: Failure Read_DMA timed out LBA=4001759
ad0: Failure Read_DMA timed out LBA=4001743
ad0: Failure Read_DMA timed out LBA=4001756etc.
The hardware I am using is an asus Pundit P1-PH1. This very unit has been running flawlessly for the last 2 years with an embedded version of pfsense 1.2. The errors I am receiving now occur with the original compact flash card that was used for the last 2 years as well as a brand new one from Sandisk and new units from R Data. It doesn't matter who's cf card I use…. all are 2gb... all are having the exact same issue. This CAN NOT be an issue with compact flash cards. It's happening to far too many people with unrelated hardware. Has anyone actually had success flashing and using the nano versions of pfsense 2.0?
In all cases the write process to these flash drives is completed without errors. In all cases, pfsense boots and runs through it's motions until it gets to the ad0 device which is the compact flash card.
I have tested these cards (all of them) on a win7 machine. I am able to partition and format at will, copy files to and from the flash drive and have confirmed integrity of the files once copied from the flash drive back to the hard drive.
I'm happy to provide any additional information/testing that might be requested to help narrow down this issue as it is without question a big time pain in the behind right now.
It should be noted, while it is not the desired configuration, I have reluctantly installed a hard drive on the same asus Pundit and have successfully loaded pfsense 2.0 i386. Pretty certain it's not a hardware issue.</sandisk>
-
There seems to be multiple different issues here, but the one that results in any kind of NID_NOT_FOUND READ errors like:
ad0: FAILURE - READ status=51 <ready,dsc,error>error=10 <nid_not_found>LBA=7813119 ad0: FAILURE - READ status=51 <ready,dsc,error>error=10 <nid_not_found>LBA=7813119</nid_not_found></ready,dsc,error></nid_not_found></ready,dsc,error>
is normal on newer SanDisk cards and safe to ignore. It has nothing to do with image size, you can put a 1 GB image on a 4 GB card and they still do that. From what I've been able to gather on that, the cards report they have a larger usable size than they do, and when the FreeBSD ATA code initializes it tries to read the end of the disk even if its partition is nowhere near that, which the CF is reporting doesn't actually exist, which is what that log message says.
"according to ATA-7 specification, Section 6.59.6 is: "IDNF shall be set to one if a user-accessible address could not be found. IDNF shall be set to one if an address outside of the range of user-accessible addresses is requested if command aborted is not returned." FreeBSD labels this bit as NID_NOT_FOUND"
-
Here are my results. Four brand new CF cards, two Sandisk Ultra 4GB and two Sandisk Extreme 2GB.
Test unit: Seokris Net 5501
Flash method: Unmounted drive from OSX, then did "gzcat pfSense-2.0-RELEASE-2g-i386-nanobsd.img.gz | dd of=/dev/disk4 bs=16k"
Sandisk Ultra CompactFlash 30MB/s 4GB - card 1 of 2
pfSense-2.0-RELEASE-4g-i386-nanobsd.img.gz = LBA errors
pfSense-2.0-RELEASE-2g-i386-nanobsd.img.gz = LBA errorsSandisk Ultra CompactFlash 30MB/s 4GB - card 2 of 2
pfSense-2.0-RELEASE-4g-i386-nanobsd.img.gz = LBA errors
pfSense-2.0-RELEASE-2g-i386-nanobsd.img.gz = LBA errorsSandisk Extreme III 2GB - card 1 of 2
pfSense-2.0-RELEASE-2g-i386-nanobsd.img.gz = No errors, all good!
Sandisk Extreme III 2GB - card 2 of 2
pfSense-2.0-RELEASE-2g-i386-nanobsd.img.gz = No errors, all good!
Other Observations
When flashing the 4GB image to the 4GB cards, dd returned the following when the flash complete: 'dd: /dev/disk4: end of device'. The card still booted, though with LBA errors.
The 2GB image did not return 'dd: /dev/disk4: end of device', however still gave LBA errors for some reason.Summary Of Findings
If you want to use a CF card with a Seokris net5501, make sure you get yourself a Sandisk Extreme III - and avoid Sandisk Ultra 4GB.
Hope this is useful for someone - cost me an afternoons work!
-
The 2GB image did not return 'dd: /dev/disk4: end of device', however still gave LBA errors for some reason.
That is likely because of what cmb mentioned in the post before yours - it's trying to access the last bit of the disk which the card claims exists by size but then returns an error when something actually tries to read it.
-
Yep it was the NID_NOT_FOUND errors that I was seeing.
Will this smaller image in the next release solve this particular problem?
JD
-
Not likely because that is the fault of the hardware in the CF. If the image size would have done anything, the 2GB image on the 4GB card would not have had any problems.
-
Yeah - I just re-read cmbs post that the NID error is 'safe to ignore'.
In my case, as the card was dd'd on a mac - and then inserted into a Seokris.
Is it possible that the errors are occurring because the Seokris / FreeBSD is actually unable to see a part of the disk which my OSX box could?
This might explain why FreeBSD is trying to access an address space on boot which is outside what it thinks is user-accessible?
Possible?
JD
-
Not likely, but the only way to know for sure would be to repeat the test using dd on FreeBSD or a Windows box with some other software.
If you have a USB card reader you can even do the dd from the pfsense box. Fetch it from the console with fetch or scp and then plug in the reader, will probably be da0 (check the system log), then just gzip -dc whatever.img.gz | dd of=/dev/da0 obs=64k
-
Hmm - I'm doing gzip -d pfSense-2.0-RELEASE-2g-i386-nanobsd.img.gz | dd of=/dev/da0 obs=64k from another pfsense box (Intel, local disks) and it's just coming back 0 bytes transferred.
It's def. on da0…
Any ideas?
JD
-
My fault, it's gzip -dc