|
From: Anibal A. <deb...@gm...> - 2007-04-27 21:07:35
|
Hi everybody I have a big problem with the Linux-ABI module. I use the Linux-ABI since it was implemented to 2.4.x kernel series. On 2.4.20 kernel all my apps works fine, but with the path for 2.6.x (whatever, including the IBCS3.x) one app doesn't work. My file is: file /usr/bin/ph/rpcost/pfsfmscst /usr/bin/ph/rpcost/pfsfmscst: 80386 COFF executable I compiled the linux-ABI patch as part of kernel (not as module). The behavior is very strange. I think the problem is the executable COFF and how it was done (was done for SCO 3.2v4.2). It use many UNION's and I detected it use Union's with anonymous structs. I found this: [Bug c/13286] Union with anonymous struct as member in gcc3.3 http://gcc.gnu.org/ml/gcc-bugs/2003-12/msg00417.html [GCC C bug: sizeof a union of structs returns zero value] http://gcc.gnu.org/ml/gcc-bugs/2004-12/msg02495.html The -pfs-extensions(microsoft extension) is the key. In the compile 2.95 that opcion comes by default. After was removed. I don't know if it opcion is the reeason, or mey be is other thing. But my app does not work and I'm desperate. I tried all. I compiled the kernel with 3.2, 4.1 and 2.95 (inclusive) but nothing happens. Al is the same. The app does not work. The logs with (trace active), looks exactly the same. But the result is deferent (in the same machine). Thanks. I hope somebody can ell me something (any idea). Regards. -- Anibal Avelar (FixXxeR) http://fixxxer.cc GPG: 83B64656 - C143 4AD8 B017 53FA B742 D6AA CEEA F9F3 83B6 4656 |
|
From: Anibal A. <deb...@gm...> - 2007-04-30 13:39:30
|
Hi Alex. Thanks for the answer. On 4/28/07, alex <ag...@us...> wrote: > Hi Anibal, > > Can you provide more information please: > > 1) output of "modinfo coff/binfmt_coff.ko"; The output is: For the kernel that is working: modinfo binfmt_coff filename: /lib/modules/2.4.20-4GB/kernel/fs/binfmt_coff.o description: "Support for the SVR3 COFF binary format" author: "Al Longyear, Christoph Hellwig" license: "GPL" For the kernel is not working 2.6.x (whatever), I always compiled them as parted of kernel (not as module). > 2) Linux Vendor name (i.e. Red Hat, Suze, Ubuntu); Debian stable. I use the patches from the Linux-ABI project and some vainilla kernel from kernel.org for every patch proved (2.6.x). > 3) Trace of the application working on 2.4.x ("echo -1 > /proc/sys/abi/trace", etc...); Please check them: For 2.4.20 (working) http://fixxxer.cc/pub/coff/log-2.4.20 For 2.6.16 (not working and the last proved, compiled static) http://fixxxer.cc/pub/coff/log-2.6.16 > 4) Trace of the application misbehaving on 2.6.x ("en_tr", etc...); I don't have this, the IBCS3.3 has other problems for me. > > I may need to look at your application if the above information is insufficient - you may wish to put it on you web-site and send me > the link - or if you don't have a web-site ftp it to my server - but all this if I can't determine the problem otherwise. if you want, the link to app is: http://fixxxer.cc/pub/coff/pfsfmscst But I think, it doesn't run because is a specific app. It need other files and especial environment. The problem is strange. The app run, but for the same inputs gets different outputs (for 2.4.20 and 2.6.x respectively). > > In general I would like you to compile iBCS-3.3 against the shipped Kernel (no other patches applied). Yes, I proved so. But the IBCS3.3 has other problems, many others apps not work :( > > Regards, > > Alex. > Regards. Thanks Anibal > > > -----Original Message----- > > From: lin...@li... > > [mailto:lin...@li...]On Behalf Of > > Anibal Avelar > > Sent: Saturday, 28 April 2007 07:07 > > To: lin...@li... > > Subject: [Linux-abi-users] Problem with COFF binary on 2.6.x > > > > > > Hi everybody > > > > I have a big problem with the Linux-ABI module. > > > > I use the Linux-ABI since it was implemented to 2.4.x kernel series. > > > > On 2.4.20 kernel all my apps works fine, but with the path for 2.6.x > > (whatever, including the IBCS3.x) one app doesn't work. > > > > My file is: > > > > file /usr/bin/ph/rpcost/pfsfmscst > > /usr/bin/ph/rpcost/pfsfmscst: 80386 COFF executable > > > > I compiled the linux-ABI patch as part of kernel (not as module). > > > > The behavior is very strange. I think the problem is the executable > > COFF and how it was done (was done for SCO 3.2v4.2). It use many > > UNION's and I detected it use Union's with anonymous structs. > > > > I found this: > > [Bug c/13286] Union with anonymous struct as member in gcc3.3 > > http://gcc.gnu.org/ml/gcc-bugs/2003-12/msg00417.html > > > > [GCC C bug: sizeof a union of structs returns zero value] > > http://gcc.gnu.org/ml/gcc-bugs/2004-12/msg02495.html > > > > The -pfs-extensions(microsoft extension) is the key. In the compile > > 2.95 that opcion comes by default. After was removed. > > > > I don't know if it opcion is the reeason, or mey be is other thing. > > But my app does not work and I'm desperate. > > > > I tried all. I compiled the kernel with 3.2, 4.1 and 2.95 (inclusive) > > but nothing happens. Al is the same. The app does not work. > > > > The logs with (trace active), looks exactly the same. But the result > > is deferent (in the same machine). > > > > Thanks. I hope somebody can ell me something (any idea). > > > > Regards. -- Anibal Avelar (FixXxeR) http://fixxxer.cc GPG: 83B64656 - C143 4AD8 B017 53FA B742 D6AA CEEA F9F3 83B6 4656 |
|
From: Anibal A. <deb...@gm...> - 2007-05-01 01:20:12
|
Hi Alex. > You seem to be running the old "REGPARMS patch" for 2.6.16 - it was super= seded by iBCS-3.x. Yes, I used the old patch. But, I found the problem finally. Based in other comment from other linux-abi user. He asked to me =BFWhy did you compile static under 2.6.x if you had the patch working fine under 2.4.20? it was for other reasons, but yes, it was the answer. I don't know why, but I compiled the kernel 2.6.x (I proved with 2.6.16 and 2.6.18 in both working fine) with the Linux-Abi patch as modules (likes 2.4.20) and working my app works fine (finally): I had (in whatever 2.6.x): # # Executable file formats # CONFIG_BINFMT_ELF=3Dy CONFIG_BINFMT_AOUT=3Dy CONFIG_BINFMT_MISC=3Dy CONFIG_ABI=3Dy CONFIG_ABI_SVR4=3Dy # # SVR3/SVR4 based syscall support for x86: (please check one or more) # CONFIG_ABI_IBCS=3Dy CONFIG_ABI_ISC=3Dy CONFIG_ABI_SCO=3Dy CONFIG_ABI_SOLARIS=3Dy CONFIG_ABI_UW7=3Dy CONFIG_ABI_WYSE=3Dy # # SVR3/SVR4 related binary format support for x86: # CONFIG_BINFMT_COFF=3Dy CONFIG_BINFMT_XOUT=3Dy CONFIG_BINFMT_XOUT_X286=3Dy # CONFIG_ABI_LATE_PROBING is not set CONFIG_ABI_TRACE=3Dy CONFIG_ABI_UTIL=3Dy CONFIG_ABI_SPX=3Dy CONFIG_ABI_XTI=3Dy CONFIG_ABI_TLI_OPTMGMT=3Dy # CONFIG_ABI_XTI_OPTMGMT is not set CONFIG_ABI_SYSCALL_STATICS=3Dy # CONFIG_ABI_SYSCALL_MODULES is not set CONFIG_ABI_LCALL7=3Dy But I modified, then: # # Executable file formats # CONFIG_BINFMT_ELF=3Dy CONFIG_BINFMT_AOUT=3Dy CONFIG_BINFMT_MISC=3Dy CONFIG_ABI=3Dy CONFIG_ABI_SVR4=3Dm # # SVR3/SVR4 based syscall support for x86: (please check one or more) # CONFIG_ABI_IBCS=3Dm CONFIG_ABI_ISC=3Dm CONFIG_ABI_SCO=3Dm CONFIG_ABI_SOLARIS=3Dm CONFIG_ABI_UW7=3Dm CONFIG_ABI_WYSE=3Dm # # SVR3/SVR4 related binary format support for x86: # CONFIG_BINFMT_COFF=3Dm CONFIG_BINFMT_XOUT=3Dm CONFIG_BINFMT_XOUT_X286=3Dy # CONFIG_ABI_LATE_PROBING is not set CONFIG_ABI_TRACE=3Dy CONFIG_ABI_UTIL=3Dm CONFIG_ABI_SPX=3Dy CONFIG_ABI_XTI=3Dy CONFIG_ABI_TLI_OPTMGMT=3Dy # CONFIG_ABI_XTI_OPTMGMT is not set # CONFIG_ABI_SYSCALL_STATICS is not set CONFIG_ABI_SYSCALL_MODULES=3Dy CONFIG_ABI_LCALL7=3Dm And my app is working now. Why? is as module better for this patch? For my app thus it was. For last, Alex, I had problems with you IBCS 3.3 app, not for "many". Just were 3 or 4 apps, but I know the future for the linux-abi is your IBCS3. If you want, I can send you the output from these apps (the The 2.6.18 is the last kernel where the original patch works, then for future update, the IBCS3 must work :P Regards I hope this project follows with live. Many users (like me and my company) depends on this support. --=20 Anibal Avelar (FixXxeR) http://fixxxer.cc GPG: 83B64656 - C143 4AD8 B017 53FA B742 D6AA CEEA F9F3 83B6 4656 |