Page fault, GEOM problem??
Johan Ström
johan at stromnet.org
Sat Nov 19 00:55:17 GMT 2005
On 18 nov 2005, at 23.39, Michal Mertl wrote:
> Johan Ström wrote:
>> Hi!
>>
>> On 18 nov 2005, at 18.43, Xin LI wrote:
>>
>>> Hi, Johan,
>
> < large snip>
>
>> So, it seems it does run savecore after running dumpon and mounting
>> disks etc... Is that wrong?
>
> No, this is normal. When you run savecore you need to have mounted
> filesystems. In order to mount the filesystems they may have to be
> checked. The fsck program requires big amount of memory to check
> larger
> filesystems so the swap has to be enabled. Core dumps are written
> to the
> dump device (swap) from the end whereas the swap is normally used from
> the beginning (or the other way around). Therefore there's quite a big
> chance that, even when the swap has to be used for fsck, the core dump
> is intact and usable. If the usage of the swap file by fsck
> corrupts the
> core dump you may start after next crash in single user mode and
> run the
> commands manually (without enabling swap).
>
> As to why you can write kernel core dumps only to certain devices the
> answer is that at the time, when the kernel is dumping core, it is
> usually in pretty bad state, kernel internals may be corrupted and so
> on. The dumping code is therefore written to be quite low level so
> that
> even wedged kernel can be dumped. The dumping code is part of hard
> disk
> controller's drivers. The gmirror is quite high-level device and geom
> itself needs working scheduler so there will probably never be a
> way to
> dump on gmirror provided swap. When you issue the dumpon command the
> check is performed whether the driver for the disk you want to dump on
> supports kernel core dumps.
>
> Michal
Well that makes sense... Then that is right at least.. :)
I just noticed another thing... My disk performance... sucks! :P
Some examples (from an otherwise unloaded system):
root at elfi:/home/johan$ time dd if=/dev/zero of=bigfile.zero bs=1024
count=1000000
1000000+0 records in
1000000+0 records out
1024000000 bytes transferred in 77.014797 secs (13296146 bytes/sec)
real 1m17.100s
user 0m0.244s
sys 0m10.140s
13MB/s from /dev/zero?? This was to my home dir (gm0s1f, last label
on the slice/disk))..
When I'm about to open a new window in screen (ctrl-a-c) it takes
forever (or rather, bash takes forever) to init when the above dd is
running...
Well, iostat during dd:
johan at elfi:~$ iostat
tty ad0 ad6
ad10 cpu
tin tout KB/t tps MB/s KB/t tps MB/s KB/t tps MB/s us ni sy
in id
0 164 2.19 0 0.00 50.52 3 0.17 50.99 3 0.17 1 0
1 1 97
0.17MB/s?? Am i missreading these iostats or something?..
Load averages directly after the dd is complete is at 0.36, 0.15,
0.05, so the dd doesnt take that much of aload to make bash work soo
slow...Gotta be something else...
Running diskinfo -t gives me good values (for /dev/ad6 and /dev/ad10)
Transfer rates:
outside: 102400 kbytes in 1.846578 sec = 55454
kbytes/sec
middle: 102400 kbytes in 1.879855 sec = 54472
kbytes/sec
inside: 102400 kbytes in 3.147158 sec = 32537
kbytes/sec
So it shouldnt be the disk itself.. those values are the same as when
I hade the disk in the "temp" system.. However I never did try any dd
speedtests there.
Btw, tried to do regular cp on a dirtree at some gigs, same slooow
speed..
Maybee my customkernel is fuckedup or something? It's just a GENERIC
with some nonused devicedrivers removed so it would be strange...
I'll recompile during night and test GENERIC tomorrow, reporting back..
Did try to move the cards (network/vga/sata) arround in the PCI
ports, in case there were any strange conflicts... No difference
except I only got one txerror from xl since last boot (wooh!)
No crash so far.
--
Johan
More information about the freebsd-stable
mailing list