home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #20 / NN_1992_20.iso / spool / comp / os / linux / 10069 < prev    next >
Encoding:
Internet Message Format  |  1992-09-08  |  9.0 KB

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