Code: Select all
root ~ # dmesg |grep cpufreq
[ 1.307483] bcm2835-cpufreq: min=700000 max=900000 cur=700000
[ 1.307597] bcm2835-cpufreq: switching to governor ondemand
[ 1.307615] bcm2835-cpufreq: switching to governor ondemand
[ 2.020184] bcm2835-cpufreq: Freq 700000->900000 (min=700000 max=900000 target=900000 request=900000)
[ 2.390200] bcm2835-cpufreq: Freq 900000->700000 (min=700000 max=900000 target=700000 request=700000)
[ 3.589497] bcm2835-cpufreq: switching to governor performance
[ 3.589526] bcm2835-cpufreq: switching to governor performance
[ 3.590280] bcm2835-cpufreq: Freq 700000->900000 (min=700000 max=900000 target=900000 request=900000)
[ 22.447464] bcm2835-cpufreq: switching to governor conservative
[ 22.447491] bcm2835-cpufreq: switching to governor conservative
Most likely it is your power supply that is borderline, and the increased power required when overclocked is causing a voltage drop, and so a reset.dms75 wrote:It seems i have a very overcurrent sensitive pi.
I managed to get it stable (Quake3 stable) with
950 arm
core 250
sdram 400
overvolt 2
With anything more overvolt or frequencies i get resets under Quake3.
Without any overvolting i can still reach
arm 900
core 333
sdram 500
which is probably better for for the arm computing side all in all.
Is it still possible to use force_turbo without overvolting and not loosing the warranty?
If yes I might have a go at higher gpu frequencies without overvolting and check how far i can go there.
Dirk

If it's not the power supply, then it's the SMPS on the SoC. It will reset the chip when the current reaches a threshold. It can be disabled (with current_limit_override), but that is considered experimental and does set the warranty bit.dms75 wrote:I rather don't think it's the power supply, because for those tests i had my rpi connected to an Agilent Lab-powersupply capable of 20A at 5V (current limit set to 1500mA) and I'm powering via the GPIO header, so there is no polyfuse in the supplychain either.
The current consumption (Pi + keyboard +mouse) is around 600-700mA as displayed by the powersupply when the reset occurs but that display is probably too slow to actually show a very fast drop in the 5V rail if it were to occur. On monday I could insert a measurement shunt in the supply and hook up an Oscilloscope to get the exact currents and voltages of the 5V rail I suppose, but I rather doubt that there will be any relevant drop to measure. If I'm at it i might as well check the other Voltages on board as well just to make sure I'm not having some sort of brown out...
Are there any convinient testpoints for the core voltages?
I dont have anything below the cpu0 directory there. Am I missing some packages that add that?RaTTuS wrote:don't look at /proc/cpuinfo as that will only tell you the boot valueis what you wantCode: Select all
cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq

I'm afraid I just don't know yet. My view was that an unstable overclock might corrupt the filesystem as it crashed. But it seems there is another effect that I don't see.portets wrote:I've also noticed that core_freq above 450 and arm_freq above 1000 will completely destroy my filesystem on boot with force_turbo=1. But these settings(and higher) with force turbo off can compile or play quake3 for hours no problem. Is the boot process just that sensitive?

Yes, you are lacking the cpufreq driver.jumon wrote:I dont have anything below the cpu0 directory there. Am I missing some packages that add that?
Tried 2 sd cards. pny 4gb class 4(10.5MB/s read, 6.1MB/s write), sandisk microsd 4gb class 2(20.2MB/s read, 16MB/s write). Both lost the ext4 filesystem completely. Will do more testing, but it strongly seems like core_freq is what's doing them in.dom wrote: I'd be interested in people experimenting with each of the values in the overclock (arm_freq, core_freq, sdram_freq and over_voltage).
Try reducing each of those back to stock and report which of them is critical to the corruption occurring.
Also if you can try on more than one sdcard - possibly some sdcards are more succeptible.
Code: Select all
root ~ # vcgencmd version
Sep 16 2012 14:37:58
Copyright (c) 2012 Broadcom
version 337302 (release)
Code: Select all
Sep 22 01:02:07 openelec user.notice Boot: ### set cpu's to 'ondemand' ###
Sep 22 01:02:07 openelec user.info kernel: [ 23.906155] bcm2835-cpufreq: switching to governor ondemand
Sep 22 01:02:10 openelec user.info kernel: [ 23.906181] bcm2835-cpufreq: switching to governor ondemand
Sep 22 01:02:10 openelec user.err kernel: [ 26.411422] mmc0: final write to SD card still running
Sep 22 01:02:20 openelec user.err kernel: [ 36.428073] mmc0: Timeout waiting for hardware interrupt - cmd12.
Sep 22 01:02:20 openelec user.err kernel: [ 36.429244] mmcblk0: error -110 sending stop command, original cmd response 0x900, card status 0x900
Sep 22 01:02:20 openelec user.notice Boot: ### SSH: generating SSH2 RSA key ###
Sep 22 01:02:28 openelec user.err kernel: [ 45.252964] mmc0: final write to SD card still running
Sep 22 01:02:38 openelec user.info kernel: [ 46.508970] bcm2835-cpufreq: Freq 750000->700000 (min=700000 max=750000 target=700000 request=700000)
Sep 22 01:02:38 openelec user.err kernel: [ 55.268045] mmc0: Timeout waiting for hardware interrupt - cmd12.
Sep 22 01:02:38 openelec user.err kernel: [ 55.269322] mmcblk0: error -110 sending stop command, original cmd response 0x900, card status 0x900
Sep 22 01:02:39 openelec user.notice Boot: ### SSH: generating SSH2 DSA key ###
Sep 22 01:02:40 openelec user.info kernel: [ 55.988848] bcm2835-cpufreq: Freq 700000->750000 (min=700000 max=750000 target=750000 request=750000)
Sep 22 01:02:40 openelec user.err kernel: [ 56.523640] mmc0: final write to SD card still running
Sep 22 01:02:43 openelec user.notice Boot: ### Starting SSH Server ###
Sep 22 01:02:50 openelec user.info kernel: [ 59.798940] bcm2835-cpufreq: Freq 750000->700000 (min=700000 max=750000 target=700000 request=700000)
Sep 22 01:02:50 openelec user.err kernel: [ 66.528040] mmc0: Timeout waiting for hardware interrupt - cmd12.
Sep 22 01:02:50 openelec user.err kernel: [ 66.529206] mmcblk0: error -110 sending stop command, original cmd response 0x900, card status 0x900
Sep 22 01:02:50 openelec user.info kernel: [ 66.878861] bcm2835-cpufreq: Freq 700000->750000 (min=700000 max=750000 target=750000 request=750000)
Sep 22 01:02:55 openelec user.info kernel: [ 67.238976] bcm2835-cpufreq: Freq 750000->700000 (min=700000 max=750000 target=700000 request=700000)
Sep 22 01:02:57 openelec user.info kernel: [ 72.019013] bcm2835-cpufreq: Freq 700000->750000 (min=700000 max=750000 target=750000 request=750000)
Sep 22 01:02:57 openelec user.info kernel: [ 73.519046] bcm2835-cpufreq: Freq 750000->700000 (min=700000 max=750000 target=700000 request=700000)
Sep 22 01:02:58 openelec user.info kernel: [ 73.878852] bcm2835-cpufreq: Freq 700000->750000 (min=700000 max=750000 target=750000 request=750000)
Sep 22 01:02:58 openelec user.info kernel: [ 74.599147] bcm2835-cpufreq: Freq 750000->700000 (min=700000 max=750000 target=700000 request=700000)
Sep 22 01:02:59 openelec user.info kernel: [ 74.958884] bcm2835-cpufreq: Freq 700000->750000 (min=700000 max=750000 target=750000 request=750000)
Sep 22 01:03:01 openelec user.info kernel: [ 75.338985] bcm2835-cpufreq: Freq 750000->700000 (min=700000 max=750000 target=700000 request=700000)
Sep 22 01:03:17 openelec user.info kernel: [ 77.612688] bcm2835-cpufreq: Freq 700000->750000 (min=700000 max=750000 target=750000 request=750000)
Sep 22 01:03:17 openelec user.err kernel: [ 93.400534] mmc0: final write to SD card still running
Sep 22 01:03:27 openelec user.err kernel: [ 103.408105] mmc0: Timeout waiting for hardware interrupt - cmd12.
Sep 22 01:03:27 openelec user.err kernel: [ 103.409327] mmcblk0: error -110 sending stop command, original cmd response 0x900, card status 0x900
Sep 22 01:03:30 openelec user.err kernel: [ 107.050247] mmc0: final write to SD card still running
Sep 22 01:03:40 openelec user.err kernel: [ 117.068076] mmc0: Timeout waiting for hardware interrupt - cmd12.
Sep 22 01:03:40 openelec user.err kernel: [ 117.069241] mmcblk0: error -110 sending stop command, original cmd response 0x900, card status 0x900
Sep 22 01:03:40 openelec user.err kernel: [ 117.245882] mmc0: final write to SD card still running
Sep 22 01:03:50 openelec user.err kernel: [ 127.248082] mmc0: Timeout waiting for hardware interrupt - cmd12.
Sep 22 01:03:50 openelec user.err kernel: [ 127.249258] mmcblk0: error -110 sending stop command, original cmd response 0x900, card status 0x900
That was exactly it. I had installed from BerryBoot.dom wrote:Yes, you are lacking the cpufreq driver.jumon wrote:I dont have anything below the cpu0 directory there. Am I missing some packages that add that?
Did you start with the latest raspbian/wheezy image from the download page?
If it was the previous raspbian/wheezy image, then "sudo apt-get update && sudo apt-get upgrade" should get you it.
If you started from a different image, then it's more complicated...
Yes, my pi shows the same behavior and for my pi, i'm pretty sure that core_freq is the problem.portets wrote:Tried 2 sd cards. pny 4gb class 4(10.5MB/s read, 6.1MB/s write), sandisk microsd 4gb class 2(20.2MB/s read, 16MB/s write). Both lost the ext4 filesystem completely. Will do more testing, but it strongly seems like core_freq is what's doing them in.dom wrote: I'd be interested in people experimenting with each of the values in the overclock (arm_freq, core_freq, sdram_freq and over_voltage).
Try reducing each of those back to stock and report which of them is critical to the corruption occurring.
Also if you can try on more than one sdcard - possibly some sdcards are more succeptible.

Thanks Frank and Milhouse. It seems there are two possibilities for higher core frequency causing corruption:Frank B wrote: Yes, my pi shows the same behavior and for my pi, i'm pretty sure that core_freq is the problem.
i can't go higher than 320..350 (didnt find out exactly). overvolt=6. Tested with various Sandisk (Extreme III, Ultra II, simple class 4) & Samsung class 6 cards.
What's really strange is that I have been able to compile Quake3 (a task that took 40 minutes) on Raspbian with settings of 1000/500/450/+3, and no corruption - obviously with lots of writes to the SD card going on at this time. It's only OpenELEC that has exhibited these problems - admittedly, the GPU is getting more of a workout than the command line Raspbian, but also the firmware is older in OE. I'll see if I can snaffle some different SD cards, might have a Transcend Class 2 I can use.dom wrote: Thanks Frank and Milhouse. It seems there are two possibilities for higher core frequency causing corruption:
Two consecutive accesses to the sdcard peripheral can occur closer together and that is not liked by the sdcard or the sdcard peripheral.
The limiting timing path is from the arm to the sdcard peripheral and this is the first thing that fails when the core frequency is too high resulting in the sdcard peripheral seeing garbage.
The first problem could possibly be solved by inserting delays in the right place in the sdcard driver. This would be more likely if some sdcards were were unaffected.
The second is likely a hard limitation of the specific chip. Some chips may be more susceptible. It will likely affect all sdcards equally. The only solution in keeping below your specific safe frequency.
It feels like the second case is more probable. Anyone with corruption issues who wants to help with this problem, I'd like to know:
Are all sdcards affected equally.
What is the maximum core_freq that avoids corruption.
OK, same problems with the Transcend 8GB Class 2 card (750/300 overclock settings for ARM and Core): A fresh image of OE r11978, boot it, wait in the GUI for a few minutes (don't do anything, no input), then reboot the system and the second partition will have been trashed.milhouse wrote:I'll see if I can snaffle some different SD cards, might have a Transcend Class 2 I can use.
shalo wrote:I don't understand this but I saw broadly the same thing, especially when I added some over-voltage. With a 4gb Sandisk class 4 card I saw some corruption twice on the ext4 partition around ~925mhz+. When I moved the OS to a usb disk it was fine up to 1100mhz with 1150 causing a crash but no corruption.bud-pnq wrote:What SD cards are you guys using, if using them at all? I tried 3 sd cards with different overclock stability results on raspbian wheezy official 2012-7-15 no updates, upgrades performed. I don't know if drives are factor on overclocks but these are some rough tinkering with observations.
All of them 16GB's. Just booting up and entering lxde. No overvoltage. No change on gpu_freq, sdram_freq
1. pny class 4 premium started to go funny and stopped working around
arm_freq=850-860
2. sandisk class 4 ultra started to go funny and stopped working around
arm_freq=890-900
3. sandisk class 10 ultra started to go funny and stopped working around
arm_freq=930-940
From these disks sandisk class 4 ultra had pretty neat mouse response improvements on
arm_freq=882
gpu_freq=294
sdram_freq=400
This thing actually got pretty usable without much mouse stuttering and midori got better on this setting. Hope someone's current rpi experience improve without overvolting. Cheers
These are from a way back in this thread so I guess some people missed it. That one guy seems to have been more thorough in his testing and both of us appear to have noticed it with just the ARM, though I don't recall core_freq. My sandisk class 4 result matched his though...shalo wrote: There seems to be something in the SD card used. I thought when testing I would just use sd card for simplicity's sake but saw very quick corruption to SD card data above 900mhz. When using a USB flash drive for the operating system, I benched 1100mhz with 6 overvolt. 1150 was too much but didn't corrupt any data.
Code: Select all
Sep 22 18:54:31 raspberrypi kernel: [ 36.419483] smsc95xx 1-1.1:1.0: eth0: link up, 100Mbps, full-duplex, lpa 0x45E1
Sep 22 18:54:31 raspberrypi kernel: [ 39.272893] bcm2835-cpufreq: switching to governor ondemand
Sep 22 18:54:32 raspberrypi kernel: [ 39.272930] bcm2835-cpufreq: switching to governor ondemand
Sep 22 18:54:32 raspberrypi kernel: [ 42.213692] mmc0: final write to SD card still running
Sep 22 18:54:42 raspberrypi kernel: [ 52.159663] mmc0: Timeout waiting for hardware interrupt - cmd12.
Sep 22 18:54:42 raspberrypi kernel: [ 52.160905] mmcblk0: error -110 sending stop command, original cmd response 0x900, card status 0x900
Sep 22 19:00:59 raspberrypi kernel: [ 395.286972] mmc0: final write to SD card still running
Sep 22 19:01:09 raspberrypi kernel: [ 405.302615] mmc0: Timeout waiting for hardware interrupt - cmd12.
Sep 22 19:01:09 raspberrypi kernel: [ 405.302823] mmcblk0: error -110 sending stop command, original cmd response 0x900, card status 0x900
Sep 22 19:01:14 raspberrypi kernel: [ 410.954322] mmc0: final write to SD card still running
Sep 22 19:01:24 raspberrypi kernel: [ 420.962785] mmc0: Timeout waiting for hardware interrupt - cmd12.
Sep 22 19:01:24 raspberrypi kernel: [ 420.965447] mmcblk0: error -110 sending stop command, original cmd response 0x900, card status 0x900
Sep 22 19:01:31 raspberrypi kernel: [ 427.305574] mmc0: final write to SD card still running
Sep 22 19:01:41 raspberrypi kernel: [ 437.322899] mmc0: Timeout waiting for hardware interrupt - cmd12.
Sep 22 19:01:41 raspberrypi kernel: [ 437.324118] mmcblk0: error -110 sending stop command, original cmd response 0x900, card status 0x900
Sep 22 19:02:54 raspberrypi kernel: [ 511.043518] mmc0: Timeout waiting for hardware interrupt - cmd25.
Sep 22 19:02:54 raspberrypi kernel: [ 511.043573] mmc0: resetting ongoing cmd 25DMA before 57344/57344 [57]/[77] complete
Sep 22 19:02:54 raspberrypi kernel: [ 511.045670] mmcblk0: error -110 transferring data, sector 2692008, nr 1024, cmd response 0x900, card status 0xc00
Sep 22 19:02:54 raspberrypi kernel: [ 511.046885] mmc0: DMA IRQ 6 ignored - results were reset
Sep 22 19:02:54 raspberrypi kernel: [ 511.047028] end_request: I/O error, dev mmcblk0, sector 2692601
Sep 22 19:02:54 raspberrypi kernel: [ 511.047067] end_request: I/O error, dev mmcblk0, sector 2692608
Sep 22 19:02:54 raspberrypi kernel: [ 511.047100] end_request: I/O error, dev mmcblk0, sector 2692616
Sep 22 19:02:54 raspberrypi kernel: [ 511.047133] end_request: I/O error, dev mmcblk0, sector 2692624
(...)
Sep 22 19:02:54 raspberrypi kernel: [ 511.048391] end_request: I/O error, dev mmcblk0, sector 2692984
Sep 22 19:02:54 raspberrypi kernel: [ 511.048464] end_request: I/O error, dev mmcblk0, sector 2693008
Sep 22 19:02:54 raspberrypi kernel: [ 511.048487] end_request: I/O error, dev mmcblk0, sector 2693016
Sep 22 19:02:54 raspberrypi kernel: [ 511.048511] end_request: I/O error, dev mmcblk0, sector 2693024
Sep 22 19:02:54 raspberrypi kernel: [ 511.048548] Buffer I/O error on device mmcblk0p2, logical block 321141
Sep 22 19:02:54 raspberrypi kernel: [ 511.048589] Buffer I/O error on device mmcblk0p2, logical block 321142
Sep 22 19:02:54 raspberrypi kernel: [ 511.048619] Buffer I/O error on device mmcblk0p2, logical block 321143Code: Select all
pi@raspberrypi ~ $ ls
-bash: /bin/ls: cannot execute binary file
-bash: relocation error: -bash: symbol me, version GLIBC_2.4 not defined in file libc.so.6 with link time reference
pi@raspberrypi ~ $ whoami
-bash: whoami: command not found
-bash: relocation error: -bash: symbol me, version GLIBC_2.4 not defined in file libc.so.6 with link time reference
pi@raspberrypi ~ $ sudo halt
sudo: halt: command not foundCode: Select all
arm_freq=750
core_freq=255
sdram_freq=400
over_voltage=3
Code: Select all
...
Jan 1 00:00:10 openelec daemon.info avahi-daemon[893]: Registering new address record for 192.168.0.17 on eth0.IPv4.
Jan 1 00:00:10 openelec daemon.err connmand[877]: Deleting host route failed (No such process)
Jan 1 00:00:11 openelec daemon.info connmand[877]: eth0 {add} address 192.168.0.17/24 label eth0 family 2
Jan 1 00:00:11 openelec daemon.info connmand[877]: ntp: time slew +1348343300.416767 s
Sep 22 19:48:31 openelec daemon.info connmand[877]: eth0 {add} route 192.168.0.0 gw 0.0.0.0 scope 253 <LINK>
Sep 22 19:48:31 openelec daemon.info connmand[877]: eth0 {add} route 192.168.0.1 gw 0.0.0.0 scope 253 <LINK>
Sep 22 19:48:31 openelec daemon.info connmand[877]: eth0 {add} route 0.0.0.0 gw 192.168.0.1 scope 0 <UNIVERSE>
Sep 22 19:48:31 openelec daemon.err connmand[877]: Setting default gateway route failed (File exists)
Sep 22 19:48:31 openelec daemon.info connmand[877]: eth0 {add} route 81.169.141.235 gw 192.168.0.1 scope 0 <UNIVERSE>
Sep 22 19:48:31 openelec daemon.info connmand[877]: Client-IP: 188.222.193.237
Sep 22 19:48:31 openelec daemon.info connmand[877]: Client-Country: GB
Sep 22 19:48:31 openelec daemon.info connmand[877]: eth0 {del} route 81.169.141.235 gw 192.168.0.1 scope 0 <UNIVERSE>
Sep 22 19:48:34 openelec user.info kernel: [ 14.029268] input: eventlircd as /devices/virtual/input/input2
Sep 22 19:48:36 openelec user.notice Boot: ### Starting Samba server ###
Sep 22 19:48:38 openelec user.notice Boot: ### SSH: generating SSH2 RSA key ###
Sep 22 19:48:39 openelec daemon.err smbd[1090]: [2012/09/22 19:48:39.523489, 0] passdb/pdb_smbpasswd.c:248(startsmbfilepwent)
Sep 22 19:48:39 openelec daemon.err smbd[1090]: startsmbfilepwent_internal: file /var/run/smbpasswd did not exist. File successfully created.
Sep 22 19:48:42 openelec user.notice Boot: ### set cpu's to 'ondemand' ###
Sep 22 19:48:42 openelec user.info kernel: [ 22.359597] bcm2835-cpufreq: switching to governor ondemand
Sep 22 19:49:06 openelec user.info kernel: [ 22.359624] bcm2835-cpufreq: switching to governor ondemand
Sep 22 19:49:06 openelec user.err kernel: [ 45.967145] mmc0: final write to SD card still running
Sep 22 19:49:16 openelec user.info kernel: [ 47.298760] bcm2835-cpufreq: Freq 750000->700000 (min=700000 max=750000 target=700000 request=700000)
Sep 22 19:49:16 openelec user.err kernel: [ 55.967929] mmc0: Timeout waiting for hardware interrupt - cmd12.
Sep 22 19:49:16 openelec user.err kernel: [ 55.969152] mmcblk0: error -110 sending stop command, original cmd response 0x900, card status 0x900
Sep 22 19:49:17 openelec user.notice Boot: ### SSH: generating SSH2 DSA key ###
Sep 22 19:49:17 openelec user.info kernel: [ 57.148859] bcm2835-cpufreq: Freq 700000->750000 (min=700000 max=750000 target=750000 request=750000)
Sep 22 19:49:17 openelec user.err kernel: [ 57.336869] mmc0: final write to SD card still running
Sep 22 19:49:27 openelec user.info kernel: [ 60.508760] bcm2835-cpufreq: Freq 750000->700000 (min=700000 max=750000 target=700000 request=700000)
Sep 22 19:49:27 openelec user.err kernel: [ 67.347928] mmc0: Timeout waiting for hardware interrupt - cmd12.
Sep 22 19:49:27 openelec user.err kernel: [ 67.349142] mmcblk0: error -110 sending stop command, original cmd response 0x900, card status 0x900
Sep 22 19:49:27 openelec user.notice Boot: ### Starting SSH Server ###
Sep 22 19:49:38 openelec user.info kernel: [ 76.778978] bcm2835-cpufreq: Freq 700000->750000 (min=700000 max=750000 target=750000 request=750000)
Sep 22 19:49:39 openelec user.info kernel: [ 78.578961] bcm2835-cpufreq: Freq 750000->700000 (min=700000 max=750000 target=700000 request=700000)
Sep 22 19:49:40 openelec user.info kernel: [ 79.298952] bcm2835-cpufreq: Freq 700000->750000 (min=700000 max=750000 target=750000 request=750000)
Sep 22 19:49:41 openelec user.info kernel: [ 79.658878] bcm2835-cpufreq: Freq 750000->700000 (min=700000 max=750000 target=700000 request=700000)
Sep 22 19:50:01 openelec user.info kernel: [ 80.739060] bcm2835-cpufreq: Freq 700000->750000 (min=700000 max=750000 target=750000 request=750000)
Sep 22 19:50:01 openelec user.err kernel: [ 100.605428] mmc0: final write to SD card still running
Sep 22 19:50:11 openelec user.err kernel: [ 110.607998] mmc0: Timeout waiting for hardware interrupt - cmd12.
Sep 22 19:50:11 openelec user.err kernel: [ 110.609261] mmcblk0: error -110 sending stop command, original cmd response 0x900, card status 0x900