>
> Hi!
Howdy! :-)
> Trying to kill the keyboard, [EMAIL PROTECTED] produced:
> > > Don't use that for the X server. Any program going into a tight loop
> > > will deprive the X server of any CPU time, so you won't be able to do
> > > _anything_ (besides logging in over the network or a serial port) when
> > > this happens, and if you don't have the necessary equipment, need the
> > > reset button.
>
> You could always write a (suid) watch-over program which runs
> itself on a static priority slightly higher than your 'realtime'
> program --- or in that case, even on normal scheduling.
> With realtime programs it would check that a companion prog
> slightly lower in priority reacts in time, with idle_sched it
> would test that e.g. X ran at all. If not, you could stop/kill or
> reschedule the program to shed_other (timesharing, the default).
>
> I don't know if such a program exists, if not I might one day
> write one. Then you could start 'real-time' progs with no fear
> as the machine would _eventually_ react again.
>
> > First, ftape totally agreed with my nice new-used Dual P133... after about a
> > year, it stopped working properly... It kept burping, producing id_am
> > errors, CRC errors, piles of overruns, and the like. It couldn't write to
>
> Which backup program? Did you use the program 'buffer'?
None... I'm using both dd and afio direct with similar results. Buffer
doen't help either, not even the non-blocking one I ported.
> [Tale of burned root HD]
Actually, the root disk din't get burnt, it just got scambled.
The drive that cooked was on my 5th IDE controller.
Yea, I'm a nut with IDE, 10 drives on this box, makes for good irc pissing
contests.
> > Well, I put the ftape drive on the crashed computer along with the emergency
> > drive, booted up, and restored all my files.... interestingly enough...
> > there were no id_am errors and the like... This was my first clue that
> > something is going on here... it mysteriously worked... hrmmm...
>
> > Oddly, it now works on fine on my system now... even with the old restored
> > stuff...
>
> > So I asked myself... *WHAT HAS CHANGED*
> > The hardware is the same...
>
> No, unless it's exactly the same HD, not just a similar
> replacements. I know for a fact that some HD's with even the
> same type designation are/were aviable in 2 sizes!
It is the same one...
> But that does not count, really, because ... it worked on the
> old HD.
You like repeat answers, don't you :-)
> > The software is certainly the same...
> > mmmm... change? YES one very IMPORTANT chang had occured...
> > The file system is now DEFRAGMENTED.
>
> Depends on your backup method. dd would not have that effect.
My backup method is to afio to a file, then dd the file to the tape, or
remote tape. I use dd to split the files, seeing as afio knows nothing about
the vtbl and i like to update it before I swap tapes...
pipe that to afio -O , and away she goes :-)
I can even give u this tape script and modified ftmt (shows space in BYTES
guys, M/K/G is VERY silly and annoying), if you really really wanna see it.
Yeah, I plan on coding it in C some day....
restore is afio -i -Z -M 5000M
can't get any simpler... the rediculous size ensures I get the change tape
messages L:-)
> > I had installed all the libraries by hand compiling... and over the course
> > of a year or 2 they certainly must have gotten fragmented, along with all
> > the other files from all of my hand upgrades!
>
> No. You see, it does not matter how you install them, if by
> hand or by some other program, they get written and deleted.
I know that... let me explain something... I still got a.out bins, 'nuff
said :-)
> Unless dd would have been used otherwise.
>
> > Possible solutions for the rest of you:
>
> > 1: e2defrag is a good utility to try... two things to remember, tho
> > a: the fs cnnot be live, defrag it from an emergency restore disk
> > b: you will not be able to boot after it's defraged untill you lilo it...
>
> There are people who (have to[1]) use loadlin. Loadlin won't
> mind, since it (and the kernel) lives on a DOS partition.
True, but doing it that way is kinda silly, if not stupid IMHO.
Personally i have no use/need for dos/doze/etc... i haven't touched that
"OS" (if you can call it that) in over 4 years (except once, to test my
tape... surprize, it refused to work at all)
> Also note that e2defrag is an experimental program, it could
> burn and destroy your partition.
Also note that I know the author of it personally, along with alot of the
kernel hackers... I chat with them daily... I too am a kernel hacker, but I
have stayed out of 2.1.x for political reasons, and lack of time.
I'm busy building linux-only hardware.... THAT EVEN WORKS! :-)
I feel pushing MCA and tweeking lilo was enough this year.
Knowing how much time tweeking 1.3 consumed allowed me to know this.
> [1] Try initialising a AWE32 which has only a port assigned via
> jumpers, but gets the DMA, IRQ and so on via a dos proggy.
> No, isapnp turns up empty.
I don't use that pnp crap. it's jumpers, or nothing. :-)
If I wan't PNP, I use my PS/2 (which runs linux, thanx to me bitching enuff
to Alan about it)
> > 2: destroy and recover the entire primary system disk. Yes, it's quite a
> > harsh way to defragment , but it may prove worthy of a last ditch effort.
>
> It's also a goot test if you can recover from desaster, but a
> bit close if you find out you can't.
Very true... I am always prepared, however, even with different
motherboards, etc... I have all the bases covered, including redundent
tapes. You can never be to carefull.
> 3. Have a big enough partition (same or other HD), put on another
> / (root filesystem) and boot from it. Then, once you can
> boot from it, you can at will delete and copy the contents
> back from it to the original root-FS. If your partition *is*
> large enough, you can repeat it with other partitions.
Not if it's a 4g partition... and you got only one other disk that is 6g...
it takes way to long to dd it or cat it...
> 4. Use a sensible partitioning scheme. Here, I have
> Mountpoint Size % full % frag Notes
> / 30M 55% 1.9% [2]
> swap 98M --- ---- 32 MB ram
> /tmp 68M --- 3.2% deleted on boot,[3]
> /var 111M 64% 5.7% [4]
> /usr 1.1G 77% 3.5% [5]
> /home 99M 96% 9.9% [6]
> /var/spool/wwwoffle 61M 80% 14.5% [7]
> /var/spool/news 55M 86% 2.3% [7][7a]
> /extraspace 301M 63% 10.9% [8]
Okay, that may be fine for you... but not for me...
mainly because i need/like lots of room, so I simply mount dirs in entire
disks :-) I think the "problem" is that I do compile all my own stuff...
including libs, gcc and X... Stuff works faster and has less bloat that way,
you know.
> This mostly contains any fragmentation to it's partition. If you
> use just / and swap, you are of course inviting fragmentation.
>
> [2] I could probably get away with 20 MB, or even with 15. But /
> is to be small, because then the danger of data corruption
> is smaller.
Nope, no can do. I can't possibly do it considering i got ~5 kernel trees.
and loads of sources. Believe me, you woulld be in shock if you saw all the
stuff I work on here. It's amazing that I have time to talk to people.
> [3] This is an extra partition, since the data on / is static,
> but /tmp changes a lot. Less access to / (safer, more space)
> and the fragmentation stays in /tmp
That is a good point, I did plan on getting a /tmp DISK to do it with...
> [4] Again, this is a often-change partition, so see [3]
*nod*
> [5] This partition should be mostly static, but there's /usr/src
> (where, thanks RPM and the kernel, quite a few changes
> happen). Next time there will be a separate /usr/src
> partition.
RPM? no no... dude, I hand compile all my stuff, no dists here.
Source tarballs forever!
I don't like depending on organizations/teams for precompiled stuff, that
can sometimes be non streamlined, or buggy, or compiled wrong.
> [6] Yes, I need to clean up my /home (I am the only user).
> And/or move to a bigger /home. Both that and the fact that
> I use the partition add to the high fragmentation.
I'm not the only user, and, I feed 10 boxes from this one. (NFS)
> [7] They are separate, since they change often and I would
> not want overruns in /var or them to affect each other.
> Additionally, for the newsspool I had to change the Inode
> density ... the standard 1 Inode per every 4 K was was way
> to little :-)
/var doen't change enough here to justify it.
I don't do news, cause it's a waste of bandwidth and time, and it also
invites spam :-)
> [7a] Note that most of the files are shorter than one block (1k)
> so the fragmentation looks lower. I've seen more, there,
> though, and it would be worse if lumped together with other
> type of data.
Nope... I have many large multimegabyte databases here.
> [8] Just some stuff I don't want to throw away right now and a
> place to use if I need a few MBs.
I need GBs not MBs
> > I don't know how it could possibly affect a kernel driver or module, but,
> > it really seems to. I do notice the same behavior on another system with
> > fragmented libraries... so there definately is a relationship.
>
> Not really. Once the programs are loaded (and that includes the
> relevent library parts) they should stay in memory. Unless you
> have so little RAM that you have to page heavily (remember
> executables are not committed to swap but are reloaded from the
> disk ...)
I know this. However.... in 2.0.x cache is over agressive, and tends to
kick out your buffers (libs). You can thank me for the tuning in 2.2, it was
my suggestion (ranting) to sct.
> > Perhaps it's
> > taking to much time to load in a library with seeks and whatnot and is
> > chopping up the timing to the tape deck?
>
> Hmmm ... the kernel has no need to look sequentially through
> the library to find the relevent part ... it issuses a seek to a
> position, then the VFS can just look in the inode, the indirect
> and probably double indirect nodes to find the position of the
> block(s) on the HD. The inodes should still be in the cache
> and if not, are close to each other in the same inode block.
Unless it's on the disk... it still eats cpu cycles anyhow :-)
> Now, if you *are* very short on memory you probably could get
> these effects, but you would hear the disk trashing all the
> time as it struggles to read the backup data and the swapped
> out data AND the paged out executables AND the paged library
> data from the disk. At least that is what I think happens.
Nope, 128M here, no starvation for my little programs.
> Of course I may be terribly wrong. Hmmm ... did you run the
> system on SMP when you started to see the problems? It could
> be a SMP related oddity as well ... seeing that the SMP support
> is experimental in 2.0.x.
SMP in 2.0.x does have a very high latency, but it can be tuned fairly well
via IRQtune, unfortunately you can't do this in 2.1/2.2 (or so i'm told it
won't matter because of how APIC works) It did work (i think) in SMP tho.
Again, I need to find time to test it.
> > yes, I know ext2fs is fragment resistant...
> > but nothing is bulletproof...
> > last time the system did get a frag check it showed 20% fragmentation...
>
> only 20% ? :-) Oh .. you are of the 'There's root and there's
> swap' religion? :-) No wonder then ...
Actually, I'm not. I just like things streamlined... and I've been
suggesting ideas for ext3 too :-)
>But does that not mean
> that every *5th* file was not continously written, but had one
> (or more) jump(s) in it? That should not be really bad (unless
> you start filling up the disk).
Ok, then explain why it works now... I'm talking not only writing, but
reading too. BOTH had the problem before the defragmentation (a.k.a HD
restore)
> > Oh... btw, since this defrag, it even works when there's heavy net traffic,
> > serial i/o, sound blaster jamming away mod files, and I'm in X.... and the
> > tape doesn't even shoeshine :-) (HP-Colorado T-300 @ 1000mbps, dual p133
> > single cpu mode)
>
> You could induce an artificial disk load by
> e2fsck -n /dev/zo'e[9]
No need to, I'm feeding 10 boxes. *snicker* :-)
> and a memory shortage by continously running swapout. Then we
> shall see if we can induce that problem by memory shortage and a
> slow disk (which should give much of the same effect as memory
> shortage and a fragmented disk).
You really do love repeat answers, don't you :-)
> [9] -n means read-only, say no to everything (so it's safe).
> zo'e loosely means 'whatever' in Lojban.
yeah, yeah... *eye's roll* I'm not a nubie... I know however you don't
realize/know that... please spare me in the future :-)
> > I have got to try SMP mode next... we'll see what happens. I recently diched
> > SMP because it was loosing serial IRQ... this defragmentation might even
> > help that :-) Soon as I can, I'll let everyone know how it worked out.
>
> Hmmm ... loosing data on a serial modem sounds like you may want
> to use setserial ...
You really do think I'm clueless eh? this is getting funnier as I read on...
> and if that is not the problem, it *is* SMP
> increasing latency times to an unacceptable amount.
I know it is, it's supposedly fixed in 2.2... I'll see...
> Modems, especially high-speed ones, are quite sensitive to high latency
> times (since the buffer on the I/O chip in your computer is only
> 16 bytes long ...).
*Yawn*
Yup, it's a real whore. IRQtune fixes it tho under 2.0 UP mode. Gotta try
SMP, gotta find time to try it... :-)
> I imaginge many floppy tapes are sensitive to
> delayed interrupts as well. In fact, the Iomega MAX (Pro) ones
> seem to be extremely sensitive ...
I never buy from iomega... Thier stuff is crap... can't format tapes,
etc... totally silly...
I'm really glad you realize the IRQ/DMA problems, because I have a little
update for all of you about this whole mess...
Seems that now atleast my t-3000 IS working, *BUT* my conner tst-800 gives
the id_am/nodata/fart/burp/puke errors like the t-3000 usedta.... but only
at the 1000kb rate, 500 works... horridly slow, but no errors.
No, nieter works from dos. I tried this... *LAFF* it couldn't even FIND the
drives :-) Now you know one of many reasons i have no use for dos/doze... it
doesn't work, never will :-) Linux ftape, we have control over, however.
I really do think that defragmentation did help.
Infact, I plan on fragging the friggin libs on a test box to prove it
to myself some time on down the road... mebby... if I get time...
here is the (still unchanged) loading script I use...
No, I don't use any of the automatic crap... I don't like to... I like
complete control... and I'm smart enough to load a module by hand if I need
it... automatic crap adds bloat as far as I'm concerned.
#/bin/bash
# ftape loader
# unload, just because I want to :-)
rmmod ftape-internal
rmmod zftape
rmmod ftape
# load the modules
insmod -f ftape.o ft_fdc_driver=ftape-internal ft_tracings=3,3,3,3,3
insmod -f zftape.o ft_major_device_number=27
insmod -f ftape-internal.o ft_fdc_fc10=0 ft_fdc_mach2=0 ft_fdc_base=0x3f0 ft_fdc_dma=2
ft_fdc_rate_limit=1000 ft_fdc_threshold=15
# this seems to be good enough for me... even tho I do have 128M ram :-)
swapout 6
ftmt setdrvbu 16
swapoff -a ; swapon -a
Here's some system info... it may be amusing/helpful to you
Linux grafixoft 2.0.36 #22 Tue Nov 17 08:19:25 EST 1998 i586 unknown
I do love IRQ's... actually, i like to beat the piss out of the PIC/APIC for
testing :-)
0: 9755524 timer
1: 208490 keyboard
2: 0 cascade
3: 341064 + serial
4: 1856081 + serial
5: 4326 sound blaster
6: 4149 + ftape
7: 5039113 arcnet
8: 0 + rtc
9: 1 Maui
10: 29980 + ide2
11: 10160 + ide3
12: 4562 + ide4
13: 1 math error
14: 709940 + ide0
15: 807396 + ide1
Module Pages Used by
ftape-internal 3 1
zftape 21 1
ftape 34 [ftape-internal zftape] 0
sound 52 1
ip_masq_ftp 1 0
lcd 1 0
sbpcd 14 3
total used free shared buffers cached
Mem: 126908 80692 46216 50412 10868 36096
-/+ buffers: 33728 93180
Swap: 103184 0 103184
zftape for ftape v4.03-pre-2 11/05/98
( actually, ftape-4.x-1998_12_20 :-> )
82077AA FDC
[015] 0 ftape-calibr.c (ftape_calibrate) - TC for dc_wait()' = 1621
nsec (at 6166 counts).
^^^^------ this does vari... I hope that it's not the reason...
Could it be possible that when it's initializing, and a lib (or other file)
gets hit and reads disk... we get a wrong count? :-)
I haven't looked yet, but I think mebby the time calibration should be ran
multiple times... then average it... I sure hope it does that now... it
would be the only sane way to do it.
Anything else you need to see ( except my passwords HAHAHAH )? Let me know :-)
Yours,
--
http://dr.ea.ms http://IDE.cabi.net http://startrek.off.net
http://CPM.doa.org
________________
-= Andrew Kroll =---------------\ /-----------------------------
Tired of Bill Gates? LL \ /Think Bill is getting MY CASH??
Win '95 sucks! DOS is OK. LL II NNNNN UU UU XX XX Linux! A free Un*x
Want to turn your PC intoLL II NN NN UU UU XXX clone for 386/486/P5's
a powerful workstation? LLLLL II NN NN UUUUU XX XX FINALLY A -=REAL=- OS!
-------------------------------------\ /--= <[EMAIL PROTECTED]> =--
\ /
\/
!FREE! At your favorite FTP site!