From 41e03713a3f4c673394db5ad3818f32375e8cd8c Mon Sep 17 00:00:00 2001 From: mintsuki Date: Mon, 21 Sep 2020 13:41:31 +0200 Subject: [PATCH] Fix vmm warnings --- limine.bin | Bin 32768 -> 32768 bytes stage2/mm/vmm.c | 4 ++-- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/limine.bin b/limine.bin index de9bc54ae610d2002cc712ebc0837833d1393554..00ab4369ea81628a54c4bd8a53b5b09c3f82660f 100644 GIT binary patch delta 18448 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 D_4Ne# delta 18445 zcmV(vK`W|OQ7Sre7Yd;Vh_*SKwn z<90=HIQ(YxrIQ#8LkDUvxhZa6?UP~*Ljm)XrVJuE?FatjG&>JoNj8_naZRSR9M_S8 z036Yc`NobE<6519*)6R7al5y!Wp+;?#=W-djca`i(27Hbm6HJt903-S9u0bAtpGLg zD;Z05G0Kx&9JdT4uAC+@+A-CgU)8s?4DTOE2leG!=>7Rw!~3^xX)S}!+(dd212D_* znK(<+32-B;=E<>L|*@q;XD?HI$ zoyA_%NE(P!w<-Pi`QVX1mrr^rf#LzhAATNj;j_lH$khot{|w~lA5Zt)>>tnY&GV0& z#0@oFd;o%+Q}<11niNfnJycS11ob4Hpy_{bEPvXIG@2u3s=tGY>MQuQ9lm1AHf*rF zDmisEXeqT>Vyo3n01m#4uG@9_6`tdEWUBu>flgsQ13)ZI3MUb!4fR~+<9bjC1tH-GefDY}xpA0B^S zZ0O8973;6qvQ@X4gsn>L0>hdGNj@|GiozdOXr2&g%d+cvk1(+McASKzVFoN2g zH8*@`s@Z-gOg6%lK{lJTSQUR^5{LAc5{gMf3y3gCP7-H71grWnxPgT0?HJa=0BEiG zf6n$6CQ`W(D$*ih!uK8ikK_+iC<#dwc?mv`BzSLOWkRfhRhqZ z>^P9d?vT`F(rD_=H2{N9975R5QW4Hh5|;w75?G8NG`l0kGN~JY@6fW%sCk=3j}9Y? zj!EsWDy>Hhng{z)V$Xl>NO4S!CV9q|1iF0?p1Gn~2eJ$A3|-ZPq`RV*u4tP4%Mq4y zt@U=`LhV=f;V)(t>{_klBWll){$&C8L`n*9@IzKEusMvP(YDezm%2>S<7V!OS-V;g zMZ_lQ@1YV;;?SF=Ol0}4R0syq?b5*WML4}b|8O|wiV@NrMinjy(65F zk1{!c*J`^2wZuE{x6=uwxCW5D5P4xl%0(!@bc9GK!UX`H^FQiJ@G9T5IC zoNr!{2CRJ+x!geJ!@c^nTPd zLjDTT0X{vctJ~X{neb_c&^8xc8ADTJZsYzw6Up8}zojOGd<>OA!5JF;+6&N4C9-+o`uTS#x>RN{|X zAd_zJk1h4BkhdEkUe%4b4OREh>K+o0eMa4bAzThszKlzG3*#eiPpWkp{A0i119!lB zKK*n5n41sG!Qov0STP^?5))>u#P{3iDg%zn`I>)QU?AUPB0>*MrDaBP0ya`%F!~Lf zDZ-EsyvFGaw($YVz>oPBMn~A_alR&o-rQ;=o*p{S+7)fa*MBlXlF@lJ-Qv=w#~}h^ zizu%Psew9>-eV*}#Hz$rFeDn+4QUj;5yE8G7)y{v^6w0!dJqbc;GfV;JJ>5X;m9UL z#8ZFmsa$jz7dj!AoCsfD99uLg*V+~P>Gy3??*f-co007MxD$xmi}l$~ROOFs7O2_7 zADxHzj}YnyXww~d6jx2K>Jm2`x{8%8=dInOv)1IlyvCOb#qJt=?1Jnt*xG%m{>Qa+ zpJCmdwo^MkAsILs%3|4})w(n|$bH5@cg%n2e|#bx>m#+@z$G>;X~?39S(*snW=%A0 z(6*a2msx7d>zay}EaFy)bC5q8fy&ie|2piT-msd)zpD@-PCaJ+tv)E3>kj~2HU^0> zWL1*0_rM#0YDpZDvtDgX#YnFn;1A!PdUAqRtI`(+F&U~QvgTf?#VB3Y#549}Ph5W* zwTK@`ZCT$5SLnNlph9A~hak6{aVnZXDET;i#<*TKV+3*Q(Z6I=T?b3czqPP@2sOE_ zN--y=Jb+_SZA`}0>ll8meDh>F_=_H7r>28>m}X$NLlMIEvmxjn&sdh4z0G#`&sviqIwm#qvx?M)@L)0Co&Jp!SAifK@!yXe*d|6Nx z3{6%58xtelr_rW~Np~8ef0@h%Jp$AM+^SZwesv*|;r!Z(DK)dOKV=B0)Qbx|@}6;}SMGY<*%jHdT1mZ7EOa zS&kN!0JH+2n<`@4p$b?31gxR(4}!mu2kfxA4Cwg471`)Hnt^^(E#Kl=7py{oV&+wU z+?7xSzY0=Nyg1vj58u=;*v`&`|6yv#VnrJInOq%VT^JsdvJi2(DzAT6t3L&8oFn|< z|AwO@^bMZPV@}`S?aT^|u(888FLaTO?u(g1!))a8CG$tav|8`~COM}iIClsmm{z&~ zi@M-bY$UTL3%@qY6df+dgL1VpjdBnRAX!vOODk_s&wheUW?!&RQH^h>Upx~$C7tCB zk)ZHKIA&td;9oDEkv@Ot4Xsq@5342;2H3^3(itAkxwp3kBNxw*aIMe}(Em!mc(&Hv zj|^J)!`*UWCJMs_q|MBPi6~6yLoULh1UsRDKYUug@4`_tYp7qoG(m&|q_Yt{1F;KP zDi5TPTm*kB$-)7w@wRa|dt5f! zj~Mmg@-Tl`c*D^7a>{bylqPj+kDT(aH*oLa*QGB}ru(45b8wm^&VDe`0AyWNU4`UB zavVyVTHz2gzt(wZ5@|hcIG;IQD>Uc`cLQ@EbZd_&mN_6A+i%cnuKVD%)xZN-MG)tH z$QEz|70k>lS)hLl6>^AhP#U+3D{$>h)7B0GutONYn>i?O6H++9 z(~bCT?P|z-kNp$O*w<^N%NAdTbUF2@3r%=$@pbGR@aAjYKs4?H)9(0WPlGIi0{dyT zW$X&Sqz_P1XC7b@w|*H|^RsI|ELr_{?^mN6YOZsk=KeZ zry;ejCWD!Ochww-iSQRjGAuuXxd7Wr3X~~xIP%$sO4Gwn!?;9!Gsc`+qlhB+Zy5DR?AuAze$^o~vkuZ8#SMKA6qfumi(#p&gl33`{VDbn2;U2fBZXWrHt;p0 z28@T0e$la4QuIjLOI>DaH__^lt$Gh1c%Rh(Fm8Y51MlM4vzI<*q`Ab?K*U3azRU|) zKfBwiI&x?O3ZbE56m@}IPTuW+(cIwu_zo3zfzUwS&-EPQUuX?}Tp%`(ad>%jbpghMnQVjcED*U46Gd-l?;~>IK39wg9=p!AF0qC}gkuV6w1#uKUGCjAGn_=`^@y6mNrl4EP}Wy_&u0Fv37G-CD)zZM%L3o$-4XR{_W zMwUI2{PIRGuE2C&CAQ ziI+uBSs>nBFrstl79;5-r;_hB%`I33=AFcSj0&AL;4k#&3di{8l_2zrodv=G6^`XX zi}QjKXyF5Mk+>RoLn;hF!!f_*u~|?XL!n?hKEIFu{V<9b`)GCl@(<^KRweZ0kOmBY z5@O+xP3a1gza1|DW|Qw7PJbG>sH(K_JItVf*kE8`TF!1-x|%v_n}`;OgZd^qfCFqr zMl$1|2*k`a`(TBJF^;#{m)&Gv-*T1X+Kr2Ii0AVML4RE1u9G*Ho(4`Q zt7oSibIZ}67Q?kF!)3|v-8OuL$Ot2k`44;bt=-+)T|KTSt!thpCKwB!r9rE4iRDT! zNY8Xy05T@864K=nUwBDR_5^ZFE;DRmrg9(0lrhsQk|9DefkAwYnYK3>c9WlK*rO=B z7}RuoMjN(k9q~A^q<=othO$W0E6lK&nYN&L)$Y79y#AZvu@Am@46%>BdmV0JmA*r3 zcTb_OCq~so;9`&f#!?Q&l~Bxn9Y5Hi`d*ENjatZMpb7 zvH*!Nz{Q$}2yFrx0Itr4@)T~YBjsn>NbO%WG^_0Q0)@N}Vt;e*g9yqif_mxH?mcX@ zjzPNZhtQu9#*FYs#ctX@$*_Ag=*gtbCFi|kQI>Z!8FnH~4&o5>-bvz)(M3CBy4dki z*K8VGQ!%E2R#FG!kih>fR~vR4<>xxRUX{3eMA06=#{HL@xE$VZS?dHlA`O!s*J!sN z4Xr;Ps!9qOk$)Nfc&0n)rotKM!T2UiyYHB&d`KG7#A(Y zMfvms&X%fcM6WBU1IUo<70-Fa_7tP6TZ|5)4pfF@Kp_P+z)T0Y%%Dc*T4a);YP9J9 zs19aoi%n`_?V}BCU{)ZN*(N20t1hvmozSJD4nq7LUVpL8E4Cm8ar2o0^w2p8v{7cA zc9-T13Q7{Bo;adWf#TVY;4|yG$DL7|wyOR#>gA#8#0m8sq59Soqst{@+>oY`hREeNeSXI6jtlFh zOUNBkT3ZfbcWRbuJ5H~j&wqSL&VRNKuONx=5k%r3JACw8OYk`(2 zDSuwE!VpwyR|%_h+@S$72G@54V=x2!3&Lm$0TGs4 zuM_SV8h{7l_~l~3K1923NroPpT8nAu2ei9T_NuzgExbb&W?ci-t=-k2YJzXvuz&0m zwe1S%XF2GBvULN!4yOk96DtJ#{Lob!4&T*xD%uxtenJsDR|S?xPOK+afHI{>s^$n# z-Q~n0Ir4&U^5;UkAZT|$HK1MQHB5$cU*9tKvB$Kf=+Ie!qsff8heL~!+9+H-0t>Bm z{s5UVl~14qZ@7fmHn?i7h#^K}h<_g^jB^?GQIUc5IFHtUF;wqWHI6uyp605s_F-_g z2b1d{Im}QjRp8G0FjFaD6AC`fe-n|*q@q_OPL*kForXK9jyjd2RhZZ{s#mI|q6Hx= zJ>0VbMj8R(Pf6oJ721mdy{&=XSOZr{(~4_zaa{Jv9Jo|lfN*9t#c7DIU4M3bTo}?6 z7fya_h@^|dJO&qSJJOoFYA)m z0^v7;oX8UZ8QQR!qk1-(PvPe{g@z6}^*rv=0H!lH8h%%n5T)Ihw8g?6y#r$X-TaXCMMETeoHg8IhNx%hyp))O;ls(&~+xv#uBpxl+H zVgv~)HacI1gvt}Kpu`&t;}d_!bAaKn^ZJg6&<3`33ytN%4L%lE?U#_MR;iTj5@&%j z$R?-VpDI>T+P$v2>&UqXBgTcopPL*!9MtNF*OS~)>#8}cf{H6 zOtB&bR_RcbJ*;Vlg zu@gd;*M7q7VF;RB8eE+Fe^9B*DqFMXn7*!BMe0<0aMSRQp|rHszPz}1ia4e8tk#K} zTkMddcj)?I^BPM>z6RwwPnW*c(G#+MXblR-#6zlf1`PH^bGxF2(&H5 zPF#h5aNHdAtbf|^m9A`4@ax!lyr-gi7#3CFBZ%h@A0vX|Y9Gr4OM8NEz)VK2iMNtA9Q|0R-=noLGd%mAGl0N9=;7 z_=5&H#2Qfxb0mMwZ7h}fEg}_cwAsw!2ll9 z?raIF|0;+F8_FV#vV=q7NfkI;6rOm3FsDi~9Z(yJBTc2Qq!#Y-9`lOLV74EK_qn{} z)^UfYoPU`%`5b=qb*0Q^Njx?wvwXC;i7(vXTFj}@MSH;S^*i8kX#B_HbvAA37>bI( z%tIU%?J|O|fKHPW?T2e#xTR!v*cE#is^Fgii99p3`<@SCMLR5x=Z6UP=k*`NChaKF zuD%v7iLb=kXNMQ6<2@H$$zJCNBI)f%kglVEu79gr!&NQXed|J`0*&*mI9#G0WC|Rt3cYq=bCjW^&h&7MAdnw`Z^JzT|owG!j>yDRF?-f7;>4*NK%Op1WMExM2 z|GvLB;m+33af5N>O}J##Ar)8?oEWTs_a&bv_?KGr1TSJ{=xJXZHnVCWpd_QhW{tcF z8{$gTFlQ(3DpAi8VIi;NJ>Tak4S&pbIdxe0UsR|qb%Jx?#)aQLl&~DbKaP*9t3N*D zF!Q-~RCG7|!3m9SFEY-@DAukyIG(L>h}@DW_GGl=oQydY(=f-`^#fAsJN!%>!_st8 z#jKmSL3>Q7-h$KGp8(QJq3ppCwLaY12TOa8s8pnaQ4GK zhzJ6wNNnObiJ*^8oM4;hTCx!RAF}9u^in6ziA;+FfvF(Y;nV&5Zy>p3q4eZp)Oqcp z&06Pb7-DKFTB{b+skF^9N{8BFH~Oy)t~d>sy?$CE{t{`4iSEa*_kS-@*zfdZt|-0*CFdUM zM~A6hl{zvKfoQW!u2hZu*hP-1qxLack0R}G=Rs&sk(>*qeejsyf%=xcO1=T_hUN_y ziJa$fGu_C?IxK$TVgIvr(8cRa=?}gea}E4=W4uQtmv@`9>#-r;6(a z^025IsTQAO*J-ql7toGyq}BhMV)RyGx%XW%GVkJ`k?|yIuWzMOLEL%>SIJIl_d4;A zXq^1T_ddm&;>$Cx0?3#nXMBX1A`C}eh`v?nZwBkG_kWH}PrJ2G?cPd+fI&8PDG^-R zMJqnjq>39q_?aN9)z__jT}Y1~1MLAKFzy4?bgV~xX-EnGU>i_w7Wb4H=%AX2#T z#Jd~?NPoE(QA9^_mw`gM`FWVBt;A;0(pD1E3=K0z)c1~M#wbr=)f{9S+jq3&a1oC| z^^=@cUHy!pI4=-($C|+uz~eJnMnqFw6sf7(Isb6x5!?q!3EvpxVBVPGxjH(j?Zg;K ztJmstT6drS&6%98X|E6eMt>5wb+vCedWNjkR)67%Dt1l#hPLLy?S-Rw35fS7x)#C< z&fjAT(>8V4uIszBySl0hfS=`GUBRV_ZP9oVdKyJ|(i0nRu=aZS9({XGotX{IRW&os z#`uzJSYJHf6g&p%V!AOHkyAApI(UfD`RVSE|CL4}sFJx@2~T-zf3<~Hz@+e(O3owG zNPkbfq$#-o{J1{!G&_3SGh@q3Ga-U?oL9|w!qvgXyc9S00`7l&_|IC{!4nH?fjvQs zmkxvq!gy*ER&t(NG_(5S?im}WVHX{$8H=4AY$Mj9nPhmJ2!o4l2$wE(#BTYU=_->z>7IDfq#xU)!GV6F@=Gc`9Ej`?>E>y$ND=h=06 ztB*!Is%hg)TrQQ+hVZXxLzvdg)g`pG{cGBHqwPpXQJb*-K}S)iuzo6Ek@kmZ|2Ktu zHA&~RyN-05&*8R;>Z4cy1a5s>QN*L3U!e+KfqQ3~4v0OiLIkaLOQud-frDtLi+}aX zpL~X_41C_cN=TE#jsi<`1v<;gt}!i=dWXtBl(w8bV`>mg6@JJ!=n%Z)$WRuE;*+X* z?D4>prG`#CoK+MK(JI4@PzYGtSPSc||7vK-XK25fse{6pou}`q_uRvd!c1ds<~b#I zWW8skFBfQ_vEKoo!D0l0h~OaP41YSm&>tM;3( zlPu|2aj$CBSw}-~z?de`TKKspLks6@+yVCDkreT^fV^VRNLNXR0uAZBIQTO_QQQcU zdjUjAqaf&TZyy(oH(-U(9no7PDgbpt&Lbg%IheRfa2YbC^1xKsUS4R6*6!uRtbd1KGER65@ z)>s|#&0$+AOKMimmeVIk>3%?oKXY`|hK@*6rw`%KK!i(BCqT;7Ndae4vuB&vaLiF3 z?Ox!e!&aboi_U>!>~|;ye1FwdQ51@ps^n+>0j3z2LTbtm;;L$u{KHXS)G-p7+J#L0 zM}El2(F{y!kxWO(x?3E*YWr|~9eh8m-Bh>G(Hz$ovyt5)kCj#6Dl&7CZ^9Q=XgQnF zS~jq%WQu0a49dZEb4!zREiI=5FY8;?R5z09GUroNE1TA<5voP1#ece%*mZNXj@!AJ zj|20Bne`n*^sN#tVXGHRh)kah;jU?iL^#RM^Nm9xqr?Gi2Kv+yAHM3BavHOK}f9_&5E8uV9VZfZ*z@^k{A6a4JB z>aK&du$|j0m6z6jv{lYa_%yQt=2UiTD~c|Mbf_xM#UWdj5l^+{q>i$n=atf52eSire(7H}bE zuCAK}Ol)Y5G#vw0s3`DHq}+X+vmouNsE7-(f#+|MSS%HlI=#<@qM(DiJ0++qak!DS zv}~w0YtoyEZvxm7wY} z%2N+30ZLJoTI;;mOGit*mCFbOj>Ic&_KKxmv6!9io3(mc|JPwK)P*-Q#z}@c$#j^Y zh~a9Q@qb8~ajBO00S{3PWbPLsx-}KE4`B*sa;DfLyIT6Q!yb85)2-|XpbH_ zq(#vH!s*NO z8i1+)i1LZ%JAmeuNOQGei&3sQ#1ABH1A`@H7DE6zK%UywC{NRFAlppFPuEQNw5~!~ zd>?~~S{XNj{0CW_;pjIn#YHI!Mh8v{sP(L;3OyC`YfJm)}&%w_&;dBp%L&a*e+nHy*IO z7RyJR#3SEO9^x+_qLjB``K5oLtl=27`_MPAz;xdQZjyH29TsP+T`P&<+I_cKoF8bN zA5ct*RV^Um8qhKLt(FYo@U0UR%7pZz%zwzGxF`~$ERVRH)*C(=B?nMw{chSo=0VJy zrDE{a!(MyX!3aDKc8PDOy@nX>t$5=G?vrRrKEvz4+Pz!1QMU8V8#K7_n5$}69kDmS zFy51D30Zb0jK{);q!_jPh8nHkqTUSwWox|$8MccXInS?MwQ>DtHXHZ20DrK!H-9Jy zCEShhneM8QX(G5;3`PoV39taYN*g10 z2lXFVVw1LO9e)>mPF6j0Mfuz;e{ZPFso5y(%CJM#!_LT#dR$DWVM^3ST+8>+^k-uX zA?(vprwUhti_K1r`m`_y(0>pi@~V@Fx(c+TM|>+@Xn@q>QnDvw2-|3~C*VjQ@QPKE z3tRQ0`>OAG?>f(@c=tn)a}Y02c)}0jTzG;H2GKeAfy#0xP4hCEQgSu=S(Ml#11(BZ z-K`UO8(EaTS$v9Hd^$4a{)Rkgv@q153#ag7fIk7I@Qc-T6V!$_GJhV5w~Ls_hd=P0 z1#ua*j?ZZ3+Sr$59h`RBJ%c!*SE>Em5Bg@V)Ak~V4YRhG+!B8WrdO2u7KCni1*Yt> z-146P9Ed~>#7SVEV3MA_uW%AKN?YiQh@$`)&pY(o5$}0rKPU2jPUQVW?)Rc(DbqPmiKIN_e;0NGZH*JTnzjc<=eK6in@e zXzhO}RR^)-A1Q@5cH1b0H-RfDg?FlZD1|qvBMAy#oVkr$oq7k@@Qk2RO`w(dPc_-14| zX8sok{uZRECAzCYpZgl?u-+SiWnXmqk4fYXp{-@SZrm~J7Uy@FTtz#s z{JAO`7wZ~3yno(pn~!l&XCXq?$#l>ynu7H@V|-GotCGA+vC0UY(-oB${sauy5Umcz zhW?Y|bPjg6N*tQtC~6kOpRv0)9phwa#r|hN|I$dzdL5g|5A$teeXC~%MVLl_BAh-AlXLoqtm!kBR2bvWq-@b(3NceP+2sWKl>EMc({e* z(h0a!N6wi^X^IqT1Z;Gn5`|7sg&9-eQI2LK-8QGb87k#8xGvfyt(0Ia`9=DB*5WGeCy zq`y)O*j4@l5@#o_I@R~T&-)?)09toz~ZFj8YZ%hS_f`E3bng$IbPEh7!MO zEXF4x<`Z!&%rvI0_Z`B`G3QnBejL<1cyhn?12F;>uWklxp5WLdy7PEcWF3JxCi2|k zT7Mdl_#nIKylQ_YIXTVxBo^P#hl3aC<*{%1*e{%qU**0IpG!P{M`+uydJngj@=A5@9?N>wXP?lo?W0tf*Sy@kvO-~ z-98!U0HD=;KM88=sqyQdr<6k#U-ql;YJXn^yrTU%* z+h3>#pjiGb4mb1&>NkYPy5u$0+;D{()6(Pvm0oY7<{se}%TbWbmV#3dDi~^qklZN z8*@L#+;;(w&p{Gn8f-ff0$w&zhqztB!{mgCJRdZPX9IwE$@PL)b!DTvEWw*lS|?uZ z1L!FT;O^IHjLvp`XdK6X4e6s(1SbSxzEI^S{;OzuR{$=*fV{ak@wGHBkHjtHs3B#` zhNxm1?COQU_AjW)!tV*d@~#0`qJLsz*WG9Frmf?;M(b2xYwl}6rAc*i_VL4T@1xcmj(2HPSa(VQFfd?m`5@Vc;iGpiE*pnn z#n`}J3ELO?_qrH+9o>sD4iz_GTPMD)hVNNkJ*{j$Syv+{I?3EBAMX$3S$_m_5=PAp z&!N+_&&e;$q)IM?h892RW6bZk+3(QCud(g_(J5lu>3jYwtb}UD(WBFreofpJr*&%a z=pbFGd}A(tt)(5MV#$T@v~MuiIXeE*hEFwb;@92$IMGh*Am$n_lC!RUyHuBa%^ICp zUx0S_6k)p)+ns}U@`sJev42slph`iHVO4Z>@L`OYc-%lp3yST%s>g$O_N&fmP^Pi3 zmTSNlkt^W?H!L2(vrfkJw80=8P|^K39#C*1?na1F zkapJDhw=7yqY|H@K#JNU% z(}~L^P;k<7(?9MA5AO3IQNji(ya>10tzP>pj~wwu8LG(1r)oV?D1)q z(mK@p1W@G|Nzkfrds*IblAnWsV7OViPxhPl6|v%g z=UqN_60ZOkK=m%^>5JhmaYq`blN6zp9X;(=erZGToD|ZayMG?9e%ixJ&f}(9Nj*AE z>_femxeg=sR)u-#xW2cN))bprul(~SeC*3av5=@XJEHV78k4Qvp7Oku#yQm4HOvmA9Zza;f`Z3PkR(~7jgf;MKr-gNfIX#Dz9QX~f{sFT-N6X9Q1mcgoa3*BP+7@!0!YPFz zB(g2rI$AKZvxR5M??5cLO^5rWBgesKT8hzn15x|+AzWZ_PRFJ1Z9&Ir1&!V%21(iQ z9>3{EszPO-k(z290{K=ftj5YU!g0PdpXs5Mf^9w2>wk?FKX1zC58-P!&|^n7iEae2 zcViaaccgo-@`Nw(l3W)x{Z460CEH}myVwV=xR!K_J(A-TWDjd1Wv$|G%Sx@LE#is} zVnJMhmSN}acobK|yY7$3j@t9E>M zKdUxz_kZA4jo9tY-G14-@0wpkuI@q|(Cjy66Hg3g%rt-Vx1H*@VK-a*+puQEhB1_2 zQo@QH&FV8Q%8r2HPRh&`x^N>Fx>LDAN#Es z+OR=D^?DRg9()tqU^U+RTB)I+-Dk&k<4|9{6kx&5;2@T8DRErqw(C0DuIq~J`biU> z9EB#}baC6Y5p$MY;)?YqLX1})9>tQGm&kU_Bz8p>xBk5eta=Kh ze`DA@2-||oLgGB%HKNGl1(EU|08-j&4=pRlI&q$_8;da^aGnoqLCeu3yyCoI0>!(| zvGu{GxClDi$WIKt-hpp<9NCH2(&Ix|a(_4*jya$T-HK-6{@+JFKd(vnQ1i*#0L#*u z|0uu``e5}L)*msatvh|5s3M$i(4jnX9|0?eF-nOx%IV(8A-`ok_9K>c%wPUZ%bKxM zv8>JgE$dr<{&CCtOsn6kO^4a~8vu46#-ptNj)^7axW&ri663$HvTb{Q)XEODsDFKC za}F}h_xt^3^9izl`?=Xf;#mtZ=fwU1vss2Y_4@E zV{-@Nl+Ay~S!)v3J^4@=aLKD1?)<&{3@%|LL^LJb!g2{AEH#|nJs6;+f9I@Q^49+t z0MO`FUw+PQHH(jEivLfTH&{VwXn)kN$^g>WFRV(Va0gIgsZr@*+xOtWD{J}(OXe>X@`NSHe9;SHfMmhA78gAP?a`pc<+P8txrR&qF`CeSZV={QK^g ze(RHy)Z2rDB7fpM_^O@9jp()k5^0m*4@dA=>t0}zXlUuq4(=zG60Kwot{buSEF8OWFZ%abNd6hA;xy|b zEP4=&5<=*A^`O4`_&59c>P6cJ_0^%|#&*9wFZ!ArdLveD;vV|T zO@n#pPrvDJpQ?@|)ZPD5=Hg zh1rFvd zDLN)!YD>QD!X0k5e_RkAv2pa`fqIBE9Yg4Ca$~f6TT!$^(Z~gLPpqMcxr%mJha6E{Kz%DvrR|M=D~z{8q1*mB zckCt~85sWk(O)}QTB7mz9JZ^kD-K(_bcd4lL4R|<)yKIAcZ>oz6(#oEJIW9PT`!E@ zR4}x;dvA5g@H(|hfj%ER#3n~{5Q(u$;)gaJW8k^|y2f!>CohGF)b*&Y_r_Phd*{dh zt70XT_5DA@16@BPuM&>BC#x(q7C>>OMUlxRuj6YLoNmE_*v~j(A);9HtxyBx>ebgR zbbln^LoXie8OAd|f6c-gss4iv1M08f^?`_CRH5LAThqylc0sEKdDCAlj+!CPhIT!ep?Z+vb_&1-a18agN>VN5LeP>iG<>mfU;8GI3p*5+UWu8;6EoXLu zPf+$(+MT8Q1MGye^||nFQ%85ZqgCiW!%na!No;qX#T%HNF)eE|Syy*AxJ-t2eu=_T zj&I0nSUX6hw}sbPz8$b)OWeI_Ne31SU^Gi1sKhcm~QRMmC%TeJb!o^ zE#*M{VRX(F|91lPoYaXManNBs?-p8m{@_|Gbf0#d5W3IuvA`$*d%6lY7rB)pnxyuL z%_lCf-m>}=Uxl8*x8P*9mz_TGB`a#d_XeGU{BPm;Gj;`1p3oDlo%ME$ZFu&z+uRa! zs&I_`Hf2cepWzZ#`NpL76JNwM+JD^8|D&D@<@&R3d^i3;`u3yjYXOu!36u@>k@X~N zf+#2Hob#%9FB10D+9zOqE&A5M3CEJ!V#Ut2AyC!xG4!vkZFF>vWd@)l)>gTAgnT-ocp77}xLZG_&duj|XP01x&$ zy2pxfF_#NN@jo)Wj90b!;p%pF8aO?G192a?tNRjb1dQRUI}i@hXJQYa{u$n$ID?!9 zvln`tC3QgN1$G&8nCTomd;t?doOlvuh;^|e-C_qj&KkQf#2hcY%YPouy7XRmx|ha{ z> zYj4AnKsp>E9_kR|W6l(6V!EFVop^K933dtRtQoNIRRx^bwLlI+acswb%0jd`>8U7J zWUd2b?lT;5FH8>6!+&rtw1pW!-E_bs2wywHmzM*Ne2eVDx;VFNOzHsUx`YyV4mic! zjyGt4RVLVf%9>#1VuVx_ z#m>MOejf9QcEfM+AE8`TUbYS#UKH*0+Qad^su9YHJL<4b|9^|sffqkrJ6RH=FxUw9{W;SAx+E80D;LE%j(EcZ2i zMe+Lv`w31Hgkc%C{@nxlkHgu9V#THpb5H76|5dA{OHfy^edR&rZ4<_8?)eJ0r&?8_}aQ@!ZiK#88aXJ`9rf} zvYuX%ZMHzBFdMU6~x#nzPevWOm z&RkfSUkIp7(akT+S!;&WWZmL<@t6}PShDOhrq5RD>+FB|x~D~&x%vI8Le?6>#9xsStcyX zTbq@eldUVrDzxX|c!b3GWizJhbUGj475RB~^Ex{aD#uP8h=pd|gz?!E`_P0=b>nS7 zW2k_W5+;A-C}5!>P#OlcGG~RLJou{#PXiHG!`Sjx0%mq=R-RJdSJMK-(h55_N&MAa(@>(_+w@oZ4$S;I}3(E}&3zsLRE*H!ztQOmBoh@f&UX~q^SC9+y zl?;NvA!C^`FxzuLw>3IzRzK)EiBrZMJi1vaKjIoAaQaEk9Qz@rPL%FRt?=(l^J0)ak3nb=R6K`wA-zPPZmM zn=6YfJ1|>;9rHlMZDzZ#ejyP1;4(e3U!>DqoU5?o{ zMHr4W#L;Jo_IzNCoE4w|P{#rDOx6|PoI^j)=~kPcBj&K@7l6_<128eqo(+HE3zQP# zLGL_k!}1l@{Ct~vGQvmgirj>#PS)LTz8@dW*`Uu?}xbXWl@^J4*_h> zqGgMgF1aOR01$uivW0=^0kwbnxIe!D#Bw$17Mg4y7PEEBte|5Pj3!-nzM1QIMT_fx zKJ$U6fd(inQ~K&-Rn+zmK9Fl(3(yL{cEO}5jlzT}N=<8aVP7K@5|EBO;B^oogbMP~ zCoFvx$BWdbuf(re!uqNtVtx)sH9)rq07>QATNi*zpcwtrdggU2%;tY=8*vWV1W-bea|$IBO{B)MY7)mMrKi@iAE+3Tw#T=$_57TVY1wgRHNgXg>)X3~!~;cyV?> zae`P_h|Y<*Ab*7wFfxCI1-gobzQ$Ah6?3zm%NOl^Ag22h|0#1$|M$6bdH{P)|F`*b z`oF=T)BiPxPQR6VrVq}eKUVYKB$}7Nf-5d&MV=J+rcsaQ# z1%>(c{1y4ReiwgIDO9F;t>3`}QZEKi0R@aBL%ztOC5x7&%;)+iAU(h|`AdAdDA6Cx zk*&gTsxaFRpFa|O3enI*5y*57gzF2~ltBaRB zEBaMm67ZBTENEW8MpI-+blYgkl;OOT7HucS3{^am$K{SNZvW_~Jfgv+z|8DjDwa AVE_OC diff --git a/stage2/mm/vmm.c b/stage2/mm/vmm.c index 27dc7bf8..a0728bac 100644 --- a/stage2/mm/vmm.c +++ b/stage2/mm/vmm.c @@ -13,12 +13,12 @@ static pt_entry_t *get_next_level(pt_entry_t *current_level, size_t entry) { if (current_level[entry] & 0x1) { // Present flag set - ret = (pt_entry_t *)(current_level[entry] & ~((pt_entry_t)0xfff)); + ret = (pt_entry_t *)(size_t)(current_level[entry] & ~((pt_entry_t)0xfff)); } else { // Allocate a table for the next level ret = ext_mem_alloc_aligned(PT_SIZE, PT_SIZE); // Present + writable + user (0b111) - current_level[entry] = (pt_entry_t)ret | 0b111; + current_level[entry] = (pt_entry_t)(size_t)ret | 0b111; } return ret;