NETGEAR is aware of a growing number of phone and online scams. To learn how to stay safe click here.
Forum Discussion
dotorrey
Nov 15, 2011Aspirant
noflushd broken on Ultra 4 Plus running 4.2.19
My brand-new Ultra 4 Plus with (4) identical drives appeared to be only spinning down the first two (sda and sdb). This is evidenced by the health screen that only shows two drives sleeping with no temperature readout, while the other two register a normal idle temperature.
On further investigation, running noflushd with "-d" gave the following:
The 'max_disks' line seemed suspicious (as did the lack of a "Plus" in the model name), and is not part of the stock noflushd 2.7.5 code, so I grabbed the GPL zip and found this around line 214 of noflushd/src/disk_info.c:
The section is affectionately named by "#define PRO4_KLUDGE", and I suspect part of the kludge has affected Ultra 4 Pluses based on the serial number.
My info (from /proc/sys/dev/boot/info):
In particular, the "19" in my serial number, cast as hex, is greater than 0x16 from the snippet above, and max_disks gets set to 2 instead of 4.
I may try to kludge the kludge and build my own noflushd, but it seems like an easier fix for someone at Netgear? Judging from the noflushd code itself, I'm not sure there's even a need to count drives -- it seems to be capable of ignoring metadevices and other such entries in /proc/partitions on its own.
Thanks,
Dave
On further investigation, running noflushd with "-d" gave the following:
depot:/# noflushd -d -v -n 20 /dev/sd{a,b,c,d}
Kernel talks oldstyle dev
Probing for valid blkdev at /dev/sda
Detected oldstyle dev at /dev/sda
Kernel talks oldstyle dev
Found model: 'ReadyNAS Ultra 4'
max_disks: 2
Added entry for /dev/sda (8, 0)
Added entry for /dev/sdb (8, 16)
Added disk /dev/sda, current timeout 1200, state 2
Added disk /dev/sdb, current timeout 1200, state 2
Error: No partition entry for device (8,32)
Error: No partition entry for device (8,48)
Controlling pdflush daemon
Kernel talks linux 2.5-style stat
The 'max_disks' line seemed suspicious (as did the lack of a "Plus" in the model name), and is not part of the stock noflushd 2.7.5 code, so I grabbed the GPL zip and found this around line 214 of noflushd/src/disk_info.c:
else if (sscanf(buffer, "serial: %16s[^\n]", model) == 1)
{
model[6] = '\0';
if (strtol(model+4, NULL, 16) >= 0x16)
max_disks = 2;
break;
}
The section is affectionately named by "#define PRO4_KLUDGE", and I suspect part of the kludge has affected Ultra 4 Pluses based on the serial number.
My info (from /proc/sys/dev/boot/info):
cause: normal
vendor: NETGEAR
model: ReadyNAS Ultra 4 Plus
model_valid: 1
version: 0
serial: 2HU4190C017CF
loader: RNDP400U-V1
-snip-
In particular, the "19" in my serial number, cast as hex, is greater than 0x16 from the snippet above, and max_disks gets set to 2 instead of 4.
I may try to kludge the kludge and build my own noflushd, but it seems like an easier fix for someone at Netgear? Judging from the noflushd code itself, I'm not sure there's even a need to count drives -- it seems to be capable of ignoring metadevices and other such entries in /proc/partitions on its own.
Thanks,
Dave
8 Replies
Replies have been turned off for this discussion
- amac27AspirantI have an ultra 4 in my lab and noflush is working with all of the disk.
can you send me the system logs and your Netgear troubleshooting case number? - dotorreyAspirantI'm pretty sure I've narrowed it down to the serial number issue described above. The code explicitly sets max_disks=2 based on the serial number, and then noflushd stops looking for disks after it finds the first two. And FWIW, this is an Ultra 4 Plus, so maybe that makes the serial number higher than an Ultra 4?
Case # 17153787. I have not tried the beta of 4.2.20 yet, as suggested in the response from Tech Support. I might try that this afternoon, though.
Drives are all ST31000528AS with firmware CC38. Yes, I realize they're not on the HCL.
Not sure which system logs you mean. I'm a Unix sysadmin, so be specific. :) The first block in my original post is the output of "noflushd -d -v -n 20 /dev/sd{a,b,c,d}". I didn't find anything useful in /var/log other than entries from noflushd (without "-d") saying it was spinning drives up and down. The evidence that it was only spinning down the first two comes from the Health screen in Frontview.
Thanks,
Dave - dotorreyAspirantTried the beta, with no change of behavior as far as noflushd is concerned. However, I poked around and came up with a "solution", in manner of speaking.
If I modify the stock noflushd binary so that it thinks my serial number has something less than 0x16 in positions 4-5, it works as expected. All four disks are detected at startup, and spin down after 20 minutes. For example, using 2HU4150C017CF instead of 2HU4190C017CF has the desired effect. This is definitely a bug in the disk_info logic I pointed out in my original post.
It's an ugly fix, but it works. In other news, 'bvi' is amazingly handy once again :) I can live with my kludge, but it would still be worthwhile for a Netgear developer to review this information and commit a real fix.
Thanks,
Dave - olivermayAspirantSorry for replying on this old thread. I am having the same problem with my ReadyNAS Ultra 4. noflushd only handles sda and sdb, not the other two disks. Is there any fix for this?
I'm using raidiator 4.2.22 - chirpaLuminarySkywalker can be the final word on this. Sent him a PM to check out this thread.
- dotorreyAspirantFWIW, my fix has been working flawlessly for nearly a year now. I have not upgraded past 4.2.20 for that reason.
Thanks,
Dave - SkywalkerNETGEAR ExpertIf you have SSH access enabled, you can pull down and install this new noflushd package.
- petertexasAspirantHi,
Is this the same problem as I have posted before?
http://www.readynas.com/forum/viewtopic.php?t=60120
I don't understand the "noflushd" but can see that it has something to do with not spinning down all four drives so hopefully this is the same problem I have and then maybe the fix will help me to?
Rg,
Peter
Related Content
NETGEAR Academy
Boost your skills with the Netgear Academy - Get trained, certified and stay ahead with the latest Netgear technology!
Join Us!