New fat bug in diskboot

Hello,

Some machine has both QNX RTP and NT4 installed. Here is “fdisk /dev/hd0 show” output:
OS Start End _Number Size Boot
name type Cylinder Cylinder Cylinders Blocks

  1. DOS4 ( 6) 0 26 27 433692 211 MB *
  2. Extd’d ( 5) 27 391 365 5863725 2863 MB
  3. ------ (—) ----- ----- ----- -------- -----
  4. QNZ ( 79) 392 523 132 2120580 1035 MB

Extended partition consists of NTFS4 logical drive. The devb-eide with auto=partition creats
/dev/hd0 - raw disk
/dev/hd0t6 - primary FAT
/dev/hd0t7 - logical NTFS
/dev/hd0t79 - primary QNX
To be honest I did not fint t7 type in helpvioewer, so I did
dd if=/dev/hd0t7 of=t7.bs bs=512 count=1
and look at t7.bs. I’m sure it is boot sector of NTFS partition.

Here is output for “mount”:
/pkgs/repository/qnx/os/core-2.1.2-patchA on / type pkg
/dev/hd0t7 on / type qnx4
/boot/fs/qnxbase.qfs on /pkgs/base type qnx4
/dev/hd0t6 on /fs/hd0-dos type dos (fat16)

And system works! Except “chkfsys /”. Here is output for it:
Checking filesystem on file /dev/hd0t7
Can’t get filesystem size – stat(/dev/hd0t7)

I was near crazy… NTFS seems to be without damages for a long time usage of QNX… And how does
QNX work… Recently I found “chkfsys /” works perfectly if I boot from custom image (directly
mount /dev/hd0t79 as root filesystem)
To prepare this report I redirected the above outputs to file and surprise:
In both cases /dev/hd0t7 is realy /dev/hd0t79/0x08. (In words - backspace char behind partition’s
name).

I guess chkfsys is not single program that is offended by this diskboot’s issue. I think NT4 has
nothing with this bug, it did give me a scare :wink:

Best regards,
Eduard.

Hi,

Could anybody confirm or disprove my statement? Maybe I have something wrong in my system. I’d try
to be more clearly:
If system boots up from standard image (qnxbasedma.ifs) then

mount

shows

/dev/hd0t7 on / type qnx4

This line really is (like if you printf() it out):
" /dev/hd0t79\0x08 on / type qnx4"

(my fault, I did not find backslash on my kbd in prev post :wink:)

So, file system mounted properly. But I’m still sure it causes problems. One of them is “Chkfsys
problem” reported by Bill Caroselli 06 Nov at this newsgroup.

Thanks in advance,
Eduard.

ed1k <ed1k@yahoo.com> wrote:
: " /dev/hd0t79\0x08 on / type qnx4"
: Could anybody confirm or disprove my statement?

Yes, it was a bug in DCMD_FSYS_MOUNTED_ON, fixed in August, will be in 6.1.1.

John Garvey <jgarvey@qnx.com> wrote in article <9tmdb5$avk$1@nntp.qnx.com>…

ed1k <> ed1k@yahoo.com> > wrote:
: " /dev/hd0t79\0x08 on / type qnx4"
: Could anybody confirm or disprove my statement?

Yes, it was a bug in DCMD_FSYS_MOUNTED_ON, fixed in August, will be in 6.1.1.

Thanks for the reply.

Does it affect mount() function?
I’m going to write small utility to automount partitions and include it in my boot image. I’m
grateful to know it before I spend time.
Thanks in advance.
Eduard.

ed1k <ed1k@yahoo.com> wrote:
: John Garvey <jgarvey@qnx.com> wrote in article <9tmdb5$avk$1@nntp.qnx.com>…
:> ed1k <ed1k@yahoo.com> wrote:
:> : " /dev/hd0t79\0x08 on / type qnx4"
:> : Could anybody confirm or disprove my statement?
:> Yes, it was a bug in DCMD_FSYS_MOUNTED_ON, will be in 6.1.1.
: Does it affect mount() function?

No, it will only affect those utilities that navigate up/down the mount
hierarchy, such as df, dinit, chkfsys, etc.

: I’m going to write small utility to automount partitions and include
: it in my boot image. I’m grateful to know it before I spend time.

This is for a dynamic/unknown disk hardware configuration (what diskboot
does without all the other stuff diskboot does)? Won’t interfere.
If it’s for a known/fixed configuration then you can just use the
“blk automount=@/etc/fstab” syntax, and put the list of known partitions
into your build file as in:
/etc/fstab={
/dev/hd0t79:/fs/hd0:qnx4
/dev/cd0:/fs/cd0:cd
}

ed1k <ed1k@yahoo.com> wrote in article 01c177ed$0f27b6e0$106fa8c0@ED1K
[…]

Does it affect mount() function?

mount() works perfectly.

I’m going to write small utility to automount partitions and include it in my boot image. I’m
grateful to know it before I spend time.

I’ve spent an hour last weekend. If anybody is interested of small tools that mounts cd-roms and
fat partitions on startup, let me know, you’ll save a few minutes :wink:. Of course, it’s unneeded if
you have static hard drives configuration (I have removable hard drive).

Eduard.

Hi John,

I’m confused a little I’ve seen two delayed answers at this newsgroup today. I mean I can see your
answer dated 29 Nov only now (6 Dec). Quite odd behaviour of news server…
Thank you for response anyway…

John Garvey <jgarvey@qnx.com> wrote in article <9u3s3f$mcc$1@nntp.qnx.com>…

ed1k <> ed1k@yahoo.com> > wrote:
: Does it affect mount() function?

No, it will only affect those utilities that navigate up/down the mount
hierarchy, such as df, dinit, chkfsys, etc.

Thanks for explanation. I see those are quite dangerous tools. I would not wish to dinit the
unexpected drive :wink:

: I’m going to write small utility to automount partitions and include
: it in my boot image. I’m grateful to know it before I spend time.

This is for a dynamic/unknown disk hardware configuration (what diskboot
does without all the other stuff diskboot does)?

Yes. I have removable IDE HD. I’ve written that tools, it’s attached. Welcome if you have any
comments.

Won’t interfere.
If it’s for a known/fixed configuration then you can just use the
“blk automount=@/etc/fstab” syntax, and put the list of known partitions
into your build file as in:
/etc/fstab={
/dev/hd0t79:/fs/hd0:qnx4
/dev/cd0:/fs/cd0:cd
}

It’s knowen for me.
Thank you for responses.
Eduard.

begin 600 Amnt.tgz
M’XL(2 #CP^T9;6P<Q75LGXGO@!J"(2FEU<00<C;V?1@[#DD,L@&+&S’
M^2)!3CCV=O>\F]S=7G;W3$XAD&!’\OE(FJB"M&H<I!1JZH_4@F)EA\T"A%5
M):1&-#^02B5H@W01J435*$3%Q’UO=O:\OIPAD(:V4D9Z-
/F?<[,F[=O]\2T
MI2>2%KF1+10.A=K;VT@(6KBU=5X/K;WM81BWMX8>;FU?V=(20OZVMA"AH1OJ
M%6]ITQ(-2HD@IT5#BXL_D^U%X6^]145%46\DE01Q*;’/#6MT-?=9L^W$DIN
M(7YR-ZF#'G& \ #<!+&"-4'H J@(L(0$.H0SV<5L&!-: A1’V$(* \N<.F
MRX#+KWIJ$,X"
@’ +9Q>"=T)H)`&L(XX…<[N%0TIJ#GIJ$!QSCOU@VC2" M<2T:C,M[DGL#IAYH(7=R'^\"^!Y K4L&F[=DWWQHV 1P&* 6P%N7V"/_F>
ME+:
$AS]Y]N-RV0^59>1TP!F1CTU&URV<1(D_G’;!KZ53_UU’@8OICMC3[
M1V]!.W"^[W’Y@P#‘QARZCSP#_7V SW#Z3[@^1[X’^B:@GZRPZ2F P4.>FGU5
MB/M((^!K@9[D]‘T?8 OXO@F@!V "US_RR7Z\1R>=ZWG-=3GHC\-?1SDEW/Y M)Y$?\/LYOAI@$O 1CA,X:\D^YLBZIP>Z^GM[2.3QO@W=77V1#>O7;Q:V1+9T M=?<)$:*GE*2L&<101!E[*:Z;"@YBR81H22HQ+4-2#2):RE[-(NPGHB4U*X(F M2,K0DE:,)$0M213#2.HDH:<AN4:BP ^=PCM9M$02B41-,X+9!Z>2LKT'U;"' MXZ_:>S6)/03 8>PAT(YB#X'X"O9PZ,>PAX"9PAZ";QI[")I?8 \+_Q7V$-"% MOT$DG")DMNTS,PN’^-[.[L<+:DX//1++3E:%%%VODS#$?+H;B^9,1P_4
MI8B?8#AZHE+$IQB.‘JE^Q \S’#U3,8V?/!P]%!=A7B
X>BIVHGXLPQ’C]4G
M$!$="WJQ_CONGG/4R?<]X,E[?IW?Z\D/UHSN]1#KMOP(R56.GO(<.IG^ M?/.F;1N?*O2"F(<JQ7G@11J.G>/879*[.SOZ]VPJNPV.U8 #QO<-;LY^,7JC;
M7$#"T,%WK+L)^?0>U#E:'I^T),]@H,<F3UC3XVN(NF_#OWA'> ID5T%LD X MC#H/7IB$R6U/;<[O?^/M3O!EYK=XL__Y^G1^_]&WGV43B]A$[/7I=X4C%:/[ M:RI>^'Y.N"W7Z9GHK%@[DO; =.7:/:PGQU\$D:SPP5O8Y[H]6>'#7#=,?'0\ MQPAGIEZ&?EPX6_MF]6$8Q;+"9WGA3%88S_?#X(-L_V16&#NP_TAE>FFN?WQC M3I@<S/6/;<P+;PP6+G^)VW3'Z.G+NV9W$23OH@Y#X:$K2*2CEV?32T">U(Z- M0RX;/7U1G0([YT<R>T?>MW;$G5]AJ/GP7LK;/,L^8MQ=KW^Q&IRY/=/O&
MA7]Q1X1QL#$)SHP-YOO?V%C0YSL"Y%W+’(;":U\6’;G7=F2VPG;D(W3D[X#
MF2!>,P%G+P%[]EW0=NA2[=@I()X?@Y
#HZ=G=I’\OKIMZNW(U6Q;/'2R]M O
MP??C=1-LFZ>63N!N?ICKJ<L*?\GU+,T*‘T_TW#<N?’+\7L9QYOB/6/]9[9L]
M=;"NBQ,]]XP+EX[?SV8_GUH!/2QC7/AB5V!;80GZ<@KMO&
=,^5GNK^ ‘:smiley: MR9F)[JIQX<H"1[-SYNJC.9\EN&Y8QS:U$1>ASA07,75-BX @"4RP(#DS%6), M[SOK8<P7%_#FCU]<Y<VR8J!4SA3/YX=X/M82\!%/#OGRPM'!PF%'_.)3A:,P MSKZ#7O^Y]M PBS&8O6)S,/';\2C#N+[M,!L^^>G2N>E.G.Z"Z=_@\S/_N@H7 M<^B9"%R^DCLY#:DP-WJ!W=M9:UGVDHW8U_D"N^$SV2.,OG=F-OTQW-_LI1(= MS][)[S5;_ZFKG\6^?LSP6G*8+C>IGL1?T83?(KU'3*ZP*'L.(#&FQ14S8UI* MK "<K*2%"50U;[(P1JD582+-7OEC=TW7)I"/A(, I3P9@9!.&H:"J!/3&3 M!%.[A\T@HB7RG(EJ"7%8*5$$CA!5?LQ:V6@[160=-(%FTHRC9B+)CP&PPN=J M_T1)4DR36CI%80J/3$6R=",30/:]D-7C^.2!QIX[O'=J%FR5\+Q>#% /T +0 M#; )( I@+P$&,IW[$.ND<U$!8<V&^9S4?U'J8A<Z]Y*G!C#L-.-K_.;%K M)'R0W<WM5?$:VNS06+7?EAO+0$X"GIQ/ D]U@HY%V=YHS1E]"X4 H WF
M2,#,)“PQ"KUEV+WJC*” 4(P4"21U2PF1@“J:@G(F21(V+UED(“AQ -0/-B#
M5-Q”,:A$["&K,0(QF &ZSDJ-@/V+)P)"LMT-ZQ;3
"8TB=CJT.C5(;Y@^P%?
M%^XAJ_7Y/CK-J6^Q+EO$^5A-7E+X.BC6C=4E?,?(7 WNU/984-S*^?”,IX&O
ML*6K> >-98:%1Q/HR)<Y5V+)3:[21V?8]>.:35?:YH9[%O$>\U\6’,7T
MRHX=#Y]W^#9QW1B#&
/GJN;‘CF-WNXOOO!=+X3+CYGO3M=?%BG’X/)2<]
M/FR2BP_OA-];WJY&YLX-ZY-.XMWG0GE_1[.AWO(WL5\4Y=I]S>$]CR
M]X
+SP(^:P&^0RX^O*//^^SWS=)]F>!K13[V+NBSWP.K77RH_PCOD0+P56W
MSMERVWV%V’‘J-.1;Z*=+;J3S’^?LX#O9V7X_A^::’__“4@WT 9^UFYLG7!
M[S_A<%OQ^T_8_O[3OO+F]Y_OI 4;KZ_Y:"/MLF.(-E-+5:B9$.-QFK:TN&9E
ML"(0L&1E.)I69%A0 =['OII>D4I90IL.L1H.F&K!@HP*2U2RH,@7LFJ7I
M29-&IN@:)HADA$6VV/9 -;40QG0+,-MC:JIZ.BZC<4-,TN<T2Z7UJ+6C MJ*R>1N.[N0=ZBJD/T%ZH94PSG5!,9IE57!L'MKOK-LVDJ;@H@1-0[SE+@%?_ MA&AD:$($'H,^L8[Z[;*N@8I)F:E@I5=*E':SQ9JX7GOA3$&Y2@X-6*IX=>%' M>V,THZ>I*HXHC@<Z^&M024_&M.&T(>)Z8#\I?LC L1AW*3"I7PD,4Z@46AJ: M' 5%A;#_DBHFP3-+!3]-/6U("EL&5'5Z(@5JJ&8%J)#<I6?HFN8&KJ#76F'2 MM*G$L10L!H &T5!4G=1!1T(?$:.@XXEU>HTIJ"Y;/7U)@“O]1 [8M,‘P_0
M)PT]8>[6,TU4:4Z(6GPU5>3P[LZ,J.IZ!921D$?'!]X.**9L&6K:0NL>9TB M*8DH;&T+9*VO\^#Z6M#GNY]?%;K6M&1-#ZB/NJ:PK(9</6\.V.):=/X<_UI5 MRFC :XI9,IDQ@^R>X;3/!]4GQ:]7?AR(QK#4A)%@P+H&6F@^WRXT’6]FV@C
M^)):PU!0G)8L:CO’”-!S&I-F!E(ZZ!P
K]S9A!=7DY2AEC",K4Q*&6K;Z>*&
MRQN%ZV?"S1C:V5&
([G &U:]2R8&ISM/YBO?NMR2C9@.DGJ)_8[P&F\0WF1B
M8CINK0:K\0QD’KA’$EXC,&8R_KD?+>;’[7HTW+#/YP6D$=&1H?#.A(-'1TK
M1E8TV’I;4”_D)$1T4RG’N?A#7’>/6E-L9B5_3Y?,%CV5;"8;1A?0DE(J8S?
MWN<F6N]ZRZQOHN&6AC5N-CP"8,+73Z"VS2?.G1WJ;HC#(XS+SM:&JC]W=/O M.CGGD)NH6P%:FA-G%'\YODC_AJT#6R(#&[JV]/8+MEP3'=C:U]=$FW&3X(?' MHLN5HA\EYU^:/'<DZ[D3V S%2AM)*FSOW1)9W]7;MW63L*9TL]V9N_P&ETG> MN%?AK]K,XELZGDGXN]O634+7N@T#?4\__Y_=Y@4_+GR3_385T9!4&M?UE+,> M/V::#OYEWL]BN;ZA85D'^HGN>6.ZX5^SQO'4BS\\!W7P[_A,!??!R]4Z+%Q/ M%%AWXX7#;_I4C.%#'*4A[_@<D64\K_KK[0\E<&Y<2_.C<@1>I&'W0@WH2# 8 M@SV1J:R;<\6+S^LM>S'KF_#.%8D/\O38MK.,^D?<G/SB@A'PI-5-F1]H$)>E M# ^Z<G)K.4,/+\3=#MSUS;9-VV\[@W;8?XWXK]*T(K""L<$&VIS\Z.#DO*Z[ MX;81#C,C>"^8Z$)L+<#VH*UT"$5LI_?;QK[E-?)ZO;;\]:4G[G7IG7$]J!PY MVP)ZSFX!5>)PB6P7Y@).DA_[^FB3Y&:H>&Y4F$ER?4E87'^4M3J1\6USWK6= MU#?*>-_ZY"!Y:#&?%WO,'#0)Y?7<EU **S<R<%:L#F8,^)Z$LYIB%M.C\X\C M3UG.M,];)OLNE%8W;^WI$39O=M)J,.@DSP97[;)@-E_P4^Z<P;(Y'/+W?_ME 5]F:[V6ZVF^UFN^;V;^%G8C0* ``
`
end