home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!mcsun!news.funet.fi!hydra!klaava!torvalds
- From: torvalds@klaava.Helsinki.FI (Linus Benedict Torvalds)
- Newsgroups: comp.os.linux
- Subject: 0.97 patchlevel 4
- Message-ID: <1992Sep7.114014.376@klaava.Helsinki.FI>
- Date: 7 Sep 92 11:40:14 GMT
- Organization: University of Helsinki
- Lines: 156
-
- Linus "dances with patches" Torvalds strikes again: I've already made
- patchlevel 4 of 0.97. It may not be a new record, but it's close :-)
-
- Patch 4 is a very minor patch, but it's pretty important if you want a
- stable filesystem (and let's face it: most people seem to prefer a
- filesystem that stays up a bit longer). While patch3 corrected most of
- the race-conditions in the minix fs, I overlooked the [f]truncate system
- calls, and this new patch corrects that.
-
- [f]truncate is a very race-prone function, and as if that wasn't enough,
- there was also a pretty bad error in truncate.c that resulted in the
- indirect blocks not being correctly marked dirty when doing partial
- truncates. The latter problem is probably the reason for most of the
- filesystem corruptions that have been reported - the race-conditions
- were a lot harder to fix, but they also happen a lot less often.
-
- Note that the [f]truncate bug isn't new: it has been in the kernel since
- [f]truncate was first implemented (0.95?). But until now, [f]truncate()
- hasn't actually been used very much - only the latest versions of the
- binutils have used ftruncate to strip binaries etc. So the problem
- hasn't shown up that much.
-
- So while I consider patch4 to be crucial, you /can/ actually live
- without it: I haven't seen the buffer corruption problem at all (until I
- actually tested for it after getting good bug-reports), so you can
- provably miss it for a long time. But if you have ever had corruption
- problems, I'd suggest upgrading to pl4 as soon as possible.
-
- The corruption problems show up most clearly when using a new "strip"
- binary, although they are theoretically possible with other programs
- too. Thanks to "obz@raster.kodak.com" and "jon@robots.ox.ac.uk" for
- good bug-reports: thanks to them I was able to pin down the error to
- truncate.c, and after that it was pretty easy to get rid of it.
-
- Also note that this patch still hasn't fixed the extended filesystem: I
- suspect the same bugs lurk around there. I'll get it corrected by 0.98
- at the latest.
-
- The patch is included at the end of this post (it's very minor - it
- contains patches mainly against linux/fs/minix/truncate.c) , and I'll
- also update nic.funet.fi (pub/OS/Linux/testing/Linus) to have the new
- sources. Sorry for the inconvenience,
-
- Linus
-
- ----------
- begin 644 linux-0.97.patch4.Z
- M'YV0*@*"@.$BQPT7,UZP2>.F#IX73<*L*6,F#9LR"::$H0-B2ADX($#4 "%#
- MA@X9.$[. !$C1PX9"EK(!+&PX<.($RM>3-#DC9N.'T/>8%E#1XT8.F+$8.D2
- M9L"G4*.J4/"490P9+)3B %504BO(*R4D3,GC4\=8!, <?&BC<0R=L:ZF(-&
- M00@0:LN,0?,&!)<19"@R+ .B"I4I7Z0485(DR)0B?D40-.@"#IL9+<",V0C"
- M15RR9MV X2("A \0=-Z\83/GQ>>R/EW4#9EW;]^_@2NZ(6P8L94B4J8D>>(D
- M,A@R&PFO*$%D=&D?IU.O;OTZM.RT0/3R]0M8\&X03)(XJ8+ERY G3: D8?R%
- M2I(FD$D?3PYB.17GIJ.K9NUZ+&PWU]&6G6W<Y388>.*19QYZZK$G1!;&W<%7
- M&&VD@1]TJ.U'G7_6U253"U9AI14('[8 %EAB@786=FRY-=%G<]5U5VW;X>8=
- M;X<EMEACCT4VV4&6T9#99AQYQJ%/%V8X77\J C@;7@/6V)UN./H&G'#$&8<<
- M'<HQ=Z%^2U87VY,TWC;E@>&-5]YYZ:U71'OOQ2?"?%S65\)]I.6G)']B.HF=
- M=F8:^%V:"K+9X)L/1CAAA5_NN6&3UU7U(T(*,>30"V:T5J$;:3PD1AITN 6'
- M"V,D0$4=A 51QQDL;15#2C'<H ,--##U4DPSU71IIFTQU.D+GX8:QJBE]O23
- M1R"!,%0,1;UJU%(MW2K5M %1)= -,[!P0PY</966'&7048<<;J P1QUMI+ #
- M6'V<>!=#'&W:Z1=F@%O&%V*P\<88:Z +PB!V<$""/_FN^\:*8"U1UIST"%'
- M'6-P="X<8^&K+[]<@3"'&.O2UO##$8,@1AUFF%$Q&F6$04;&8J"Q[H?*9KLM
- MB1]^&^ZXY9Z;;L<@M/O577:\D<;*\N)!K[T6'^RO&QP%/'#!%R.L,,,.0RQQ
- M'13+D33&*FC,,=4@<S1RR2>GO'+7+:]+[;36=HU##%E=U6VU7]&6AAD@H!""
- MN6* T ,(9X3[Q<1CH1!P"HB#L#!M"< A![S]BN!P'@RQFAH(]99!F,$8^P2"
- M&SZ5@4<:#9?!-,!PI3%&&5RX(8*Z=N&5 +CBDLL2SPGXC-?=>7.^!@@\>-V"
- M#W6X4/3@8LQ%;QIDT;%E&'J$#@(??*054DB^F_;WQL,7?_S&RKL1_6YSI*!X
- M6HT_SG3DDU>>(>;VBASUYV]PQ!# &T$?>NNOKSOC[#>S70QPI[L$M,QO@!,<
- M&L) ER_0(0SY*H/AX,("W[% "$QXPA"6\ 7A:*$(L)L1[U#0,O,M['\C;-GP
- MQ/"%,;RA#J<[30Q,&+L$V% ,X&*-!$OH/]D!L'8_@4$/;5A Z)AA5\@ _/H
- MT ,AUM"(2,1::K94AB8.,0$I/*(/6.A"&-(A8?\S8 [GL$,TA! O!1P?8?Z6
- M/1!QCWC&\Y71P#>'Y37O>6JLS^W2$BP$YM$$('A;#@:8ECQ"YV\QF 'N#K@]
- M,70OCIR:8_+JJ =1;4&-7<#=",=PD3!H+5@D!%4%M<C"YR$.?8Z#' I$D+E[
- M90\%)8 !#?"@@Q*0(04Z$!FH0! &-H!+97D 2=3!BXR\(\%3O,=[&BCPBTF
- M<8D().2,:(>S/89$=V#YU_%V<X>M]>M?A\,5B-Z6%1APJT0GLAO>],8W! :.
- M#H/#6N$.E[C%R2Z5ZUME^]Q@N;ZT4GX' X'G0+>;T97N= %3'>M<=T8;4I-<
- M!$Q+"N<7O#=Z3X[(4UY%[IB_/%+/>M?+G@\:^<CO3?(+X@M=^<['.'S2@7UR
- MH!P_W_?/[('.?C_!X_X8>L6'NB&BS$2#.Q7(0#0X$((7F:# +(A!#7+0@R <
- M8A83QKAFEG*)5JPA#LN@0Q*:$7=Y9./\W.A(.)I4H\QKF$Z_LP)KXJ6/?_MC
- M(%M"2-H8<J0L420?A4I2LV*4CE^HY+ N&;I,*J"M6%QG"$IX/L2F3Y4B.%XK
- MO9E+@HJ.=%PZ7;!$)3*2F4P._(.=8WVZ+L06<).=_"2H0DF'42+1E%2]I_I>
- MNLK)OC*6LZSE+7/9QU[^D@S!'*8GRV!,UR&3@LI<)"F?*0>.('*(I&57.@EV
- MNFV6H9N^6UK3X)(P217D( G1U4-X5;075,T-1"H#J1)P!>*"0 EU8 -)N-62
- MDYCD*+:""<S$BRE-R=&\#T-O<M9K+* D:UE%F<$,=# #:#6E;6OS5E5D8 ,6
- MV &<YM*W33V0#JHCKH<.>\8F*L7.IBK:B%CR!L"DS$5!R:V)]S=Z=(@U=.!
- MZUQL<.Y >':F[Q A"8H9 A6^T-0-YFUI*R[#\-(PN#3H03DL@8$,9F ^#,4
- M!K$%"[@HMA&TT,8,;Y!#WM* P!\'><A%7@((=D PX"EKS01;P0IHB,)UDCEX
- M9BZ"D(F<P0W&UH8).$/]^K+EE-'ABB,,@8N5[ ,F/V\+:>C"GVWH0J99J@P]
- M+0..=2Q-V8U0LDC+[J*7G$0*CKK12<P?I"4-1A^>VM&JCC0"G4B;=DTS@#^Y
- M<7P/+=T--VPC'_Z7B+_ $"6"*V(G#AMUD]QBT 7F::=[0\G(V%H0P+ L9]C-
- MRN@29HYT#0XPKN&_:%S#CUFMLV33&LI4QC*^@F \3& "[JZ=AFR[E]O-;389
- M:LP17>=XUCP6%&'$D^<]ISEO!4=SGY?0 FEG*EQ9%N$Z50#N)S)29+]%<F!(
- M[32NP&%@:>Y@$C[8T$27$'T^W;&6/V)H+^,%S&+V%P()#F0]*]RI<+ZS2.3&
- MYC3(F8:,&Z'.L2Q.DE08!QA&IZ\['.S3#=O8)4[VN1?=["2'>T;F#MG8/ON%
- M=9]-9"X3]XP'%BHX\!L$M(LIP,'28\(DG,\X1X'&&<WDLCQ9CU>><I5E2/0-
- M%[K+:8'YF,M<<X,O/.=N'DK/?WZ^_Y4=@:].]0-7C6C%EKW5@*ZTAQN":8N[
- M^YWY^J:SZ5YJ@97]@@L7.<DK/W@\%_[F?FZ\#[?:51ZB+]"#1CO+-W)%6WMZ
- MG5X%@0D :=46OO!T(4"D^:B'FC: )/G+WCBJ'QUI.OLP[<%\[A/%R%4R>G69
- M/M3\I7O_Q,A3OPMK1^'H.0Y-[?^/]MZW_?] K3EOSIWC%+Q\1&\-1-U/CF?8
- M%!*_YF%C &*H$6 C5FS,$W59AU/,UC6+!FT<X7#4-C#T9F_;QA?Y]FU7AQ<-
- MB&Y<YW7M=G9I0';.-T0?N'5EPVX0Z 9D@"]A1QL7J&T:HX'>1EW[)G;]%BYJ
- M]S>T!@)M!P(T=V9P9V0H\'9IUG#3!G'N@A>/]S<4)U66YWR3EG).A%C%!H,(
- MM%4J<W_31T'-]W$@$')0)5J[LTZ/!WT41T..!7\2E(6V-UJXMD>F=5AGF#>*
- MYH(PR(:R0W%K)X?]=X5HM')<1@<NEP"")W-_,X0V5X1JUG-N=A0RD'.,9T\V
- M)'1N1G01%A5M P(V #<YL!5=P3A8M'9!9V=NQHB&YU23AGN7\W>\IGXK\S<^
- MAP(S>&\VR!7F4WS/PWIZHP+%UHKBQWF9MFG1Y(OTYTI1XX6.1D' Z(*G%$;/
- M.(LJ5VMB1XVVZ ;81H/XYFV[N%R]&'AA-G@^"(G!(XF+-V?H,T(JL#1D\'.M
- MR(5K,$1N^'U2.'AX)8G6YU":MFO'6'[KE(SV9W[."&ZMZ(?E6$.^]T/5Y&^\
- M=DWH Q8#V'0AAH#/Y((+B&P?2'4M:'53(T(SAH(H)C:>M8)?=W'P)F]I<8L9
- MV&T9HT0N>'8.:8I *' @\&-.@(2')W<ZZ50M@ *2N (W@#C0D0,1=X?,*'EA
- ML 4X(&F>MX491Y "$WVD]VA-"7*I5X;WJ#<GQSA6R#.P>(B)2&9_@Y,]:63F
- MN'.3"(F5N(ZHQ$!S/D% ,TL!1*YVHT>8EO*80Y^7J.V(J"]HJ[%XN>YH*0
- MMP+9N(VXZ)(J8#YP"([Y<T5/R!7%YHLA<'FW-XRH<D47!WIL('I)AG^FYWRH
- MYU2J%U4 V7I\>99+L(\W-$9EU% V%)B$-ICD5V='=D##!W9(U$7(IWS3PP=A
- M" )J&(RR!VC8]X]A5(_R%WX^L7F;^40+F0#3F'Z%^8*\V'Y[]'ZP:8]/))"B
- MMGY?.)K@MG\RAHTL68.,Z9AZR(N1*8XQ1Y8[UF;G>!7I.&GLZ([P>'ORN)5D
- MEH]7@7F)-6;MN5R^R1'0-T/;EYSN)SO=1Q@Q!FB3&86WAY J%T;@N8Q2R0+Z
- M)YU:U9V/V5 IAWT &)$"R'0%*&P6"9-0IY$C2955]V(?*6/V8X)F5VXOJH+J
- M9C8O^9CSIHWUQHVYV#4L*I,\F'W56),W<I.J"'MJQI-^F81 >15"290^8)1-
- MF "3:7ZJUI1;>9E4B')S*(@)P*):R$91*9[-.)6G-X99.7*HB85HZ'S$28MJ
- MJI1,*6F-)3OU:*9Q*#LI1TAU**=XZ*=FM*>7>*=6B7X)"8C51*:Z$Y;P28Y,
- MVI=$>'!I*8F(UY:GJ)J:N(D2)A ND14S8 ,9=GOR^8-ZJ9IF&:4+!YBY!XM7
- MQ**'F9A!NI@;^(VO]9ZX^8LL*J )H)F=]S\SR0=_,VP*>&PF%H$WL )!Z2\\
- MP -&B4S!:)YE6FP(9*L8J)ZYRIO.%(Y?-HZ*.)\ZAXYQIHZ=B@+MR*+[28K]
- M^:$/ZIT2AX]_HX_'"4#&V*"KB@(9JC0;RJ63UY2G1(H NY1-:9VY4T,CVH\Y
- M5J*, Q9!,S0@<#PBEAQ2EV*C%Z-ET(%8=#IFP 9A< 8\(U&*A0*(D013H!A'
- MD)1M8'7!V1%?@+)FQK(N^U&T<3TA<;)3P 1.L 0T^V(#"ZBXYI^*JFHW@'Z
- M! -X4#(E P-.VW>R!5E"$ 1$<!=% Z,+- <L8:IH4&]"%2Q:2VVAA3L28A&$
- M@0(S=*\?&[((]'09N:RC)YMKRRK&>H PE( 8J:QSIRTLH*U"NIXF4+!;<+1R
- M"[)T>ZPKFJQ1MVBRF6AS&X^_-(_H,P;C BY,,SP'.A9YF0!SL!?$%5\2!#LP
- M0Y<B@@.U<I> EJJX,Z RYWJ6VHAI!JN"68BSBJVTB)CIV8VZ"#"/N:L/E&F3
- M,SV(>[?$EK>+.WK:XJQ4"JW2F@+4"HVU6Z"OI9UU-8@S0JM_X[>XZHV\*[W?
- M^I[A&I\ 1Y]J>9]NF3?K6FSM.GN1ZY_:HY8".D*&VIO'AZ#*MZ!'JIP.JD/W
- MJJ5T:J>A.7U=:E@$6[0!RZ@7ZFJ*2KU7E #]RB])Z30=^C\+V:<A"EUS2**]
- M)CL0*S1$@U$5RR47ZX LUI$R&A(1^B\:O&&LNS<ZJ[(_N[$OJ[,S&WDM^V+!
- M"5+7H[,\Z[,V;'5!RX] 1+0!#&N3=[3"-Q!+R[1/BV4L%;7Y) )36[43*T=8
- MRT!;"P)=>P9?"RIA&RYC:X>)6L1XBL2-.HBT4;87D3=I&Z$_U(-VBUXDAFR,
- M"[QJ5[?(:KQTC+PWT+>Y.Z0I$+@&O)2$:\?!A,>)J\=P:W66B7V0FS*2RSB4
- M*P>62P>86[^:FY",T[DH0P:@BP*PXUV4$5Z6\A#2P1\C8Q%DL%Y4@ 9U *J
- MPBJ>.!"P@A3,DE]%QU^GW!JIS :K7"R>@RQ",1!(40.R4@.3&"U. :K54A5(
- MQP*#=*J,LREA]@5RH!HZ1@1%8 1!4 5,,&1-(!Y/( 6)\01/0 5 ]7(N908G
- M%AB4/# B( 78C#IVH% $H[6P1 8#8TLI<$P3&P9J4,W77#\#0\U:,]!?]#)(
- MR:\ +=#S#'TR8#Z[R= !?= /_3=4)GPF$!-X@;,4[=#U4Z>!)-& ]-$6'=+0
- MAV4T!"(V9 ;KW,YC(0?PG 1L<!%GT$MH-\\)M3IYXQ85C4#\?$P<#6@^#=()
- M/=37*D%2S&X(3<_V##-%+68CT#]#74!C:45IP -V5P;2AF[WB6ZKEE7J=&1#
- MTP-O0#'EXDEG8 =;$ -=P )/D!A$0!Q,D 4LH-(\ +4VI$1*705N@%2$<3EG
- M;3H@< )B@,TG0-5R"0,L@ ,C@4ZB#%Z58A,OP!"<5 >!,=F7(EES(!L9P1G"
- M+!),,2LF(0,.=BO[5<J5C5YL@-EEH-D/P=F>76"AC6 JH0-2ALO,W,P"80/9
- M8@/<,HH@(#I<8CL1^\&1=#3UMV@C#*,FO+$\0]QC\1/IJ2\S=3P'JMSWLFAS
- MT-R$\TGSHP(; W[2;3O:A%'<-) (Q5T]5-X_<=[);5L:NMY3"34'0]YX4-S4
- M#:3;:MVL@MWUJ]W>U-T?^-W>Q!7C/;(AX=X&>#QB("K-S9$L "^B.Q.^;6'G
- M5#,+GM_3#0+'7<7QC33,O9$9^]SXK=_6QM\TZ-\@/B_9/5G<[=WR!-X!)=YB
- M<.(=#M_SDM[AN5UV<$8,_N$/+'H^+H$ Q2\X;CO5[1/_C5$O'FI10^ O:N#9
- 48^/@!Q8,KN-&\^##$N$E/N%, SL^
-
- end
-