VirtualBox

Opened 10 years ago

Closed 10 years ago

#12785 closed defect (fixed)

VirtualBox 4.3 OS/2 Additions gengradd.dll is corrupt

Reported by: Herb Thompson Owned by:
Component: guest additions Version: VirtualBox 4.3.8
Keywords: OS/2 gengradd.dll Cc:
Guest type: other Host type: Linux

Description

The VirtualBox 4.3 OS/2 guest additions gengradd.dll is corrupt. If it is replaced with the gengradd.dll from 4.2, correct behaviour of the OS/2 guest is restored.

Symptoms: (1) The file size of the gengradd.dll for 4.3 is 64170 bytes. The file size in 4.2 is 10573 bytes and the size of the original Warp 4.52 file is 11958 bytes. The 53597 byte increase from 4.2 to 4.3 suggests that 4.3 build went wrong. (2) When the 4.3 gengradd.dll is installed in os2\dll, the "System - Properties" "Screen" tab shows no options other than 640x480x16 and there is no second sheet with a list of monitors. (3) The 4.3 gengradd.dll in os2\dll can be replaced while PM is running which suggests that it was not actually loaded on startup, otherwise a file in use error would be reported if an attempt was made to alter the dll. (3) Reverting to the 4.2 gengradd.dll in os2\dll restores correct behaviour - i.e. the correct display options are displayed by "System - Properties" and the DLL cannot be altered becuase it is in use.

Attachments (2)

VBox.zip (111.0 KB ) - added by frg 10 years ago.
OS/2 Vbox Error Log
gengradd.zip (23.4 KB ) - added by Yoda 10 years ago.
patched gengradd.dll for 4.3.12

Download all attachments as: .zip

Change History (15)

comment:1 by Maazl, 10 years ago

There are multiple problems with the .def file of this DLL:

  • The module name (VBOXGRADD) does not correspond to the file name (GENGRADD). AFAIK OS/2 cannot load such libraries automatically.
  • The file name (and the module name) has more than 8 characters (before .DLL). There are hacks in OS2KRNL that prevent such names for dynamic libraries from working.

However, using GENGRADD.DLL from GuestAdditions 4.2 (or older) does not really cure all problems. Starting with VBox 4.3 the kernel crashes reproducibly on some actions. E.g.:

=> Trap E in OS2KRNL (see http://home.arcor.de/maazl/temp/Trap.png)

Some results from Google search also cause a crash.

by frg, 10 years ago

Attachment: VBox.zip added

OS/2 Vbox Error Log

comment:2 by frg, 10 years ago

The latest Vbox versions are unusable with OS/2. I also see the trap when I open a drive.google.com url. Vbox reports an internal error (see log) and the OS/2 vm shuts down:

00:02:05.332593 !! Guru Meditation -234 (VERR_IPE_NOT_REACHED_DEFAULT_CASE)

But I think it's unrelated the the gengradd case because I use SNAP VESA.

FRG

Last edited 10 years ago by frg (previous) (diff)

by Yoda, 10 years ago

Attachment: gengradd.zip added

patched gengradd.dll for 4.3.12

comment:3 by Yoda, 10 years ago

I patched the dll to fix the naming problem.

Attached.

Works for me, no other garanties :-)

comment:4 by Frank Mehnert, 10 years ago

Thanks for the hint with the name. Here is a test build with the fixed name. Could you test if gengradd.dll works now? Thank you!

comment:5 by Yoda, 10 years ago

It may take up to a week, before I'm at the PC where I created the fix - so be patient for feedback for me.

Anyway, not my ticket - and the driver haven't worked since you introduced OS/2 as officially supported in 4.3- quite strange to me....

That needs another answer: The old one (that worked !) was 10k in size, and the new one is 60k. Do you think this will be better ?

Anyway, I figured out to work around the defective TRAC system, that no longer sends email to anyone (thats why I have seen your answer, and get respond) - but most likely, the owner or others who provided facts for this ticket never sees it. Are you going to fix TRAC ? I know this is not the right place for that - so please give an URL, if we need to discuss it.

comment:6 by Frank Mehnert, 10 years ago

OS/2 is not officially supported but starting with VBox 4.3 we made some drivers compile on the build box while we used pre-built binaries before. As for the size, I'm not the expert here but either this is some unstripped debug information or some dead code dragged in by linking. We will look at this eventually but with low priority.

Regarding trac notification: It's not broken, I get notifications. The email you get notifications for is not 'oracle@...' but 'oracle-trac@...' and I see entries in the email log for this account.

in reply to:  6 comment:7 by Yoda, 10 years ago

Replying to frank:

OS/2 is not officially supported

Hmm, I've looked all over, where I read that. It seems to be the search engine, that cooks up strange headings. See nr 11, if you search for 'OS/2'.

but starting with VBox 4.3 we made some drivers compile on the build box while we used pre-built binaries before.

I can't help wondering, who tested them afterwards ? Since OS/2 can't load it at all, it is a bit weird to release such DLL's.

That reminds me, why do you supply another gengradd.dll ? My test never showed anything better with yours for previous builds (4.2) - and besides that they were buggy in other ways (reported in other places) - so what is it supposed to do better ?

As for the size, I'm not the expert here but either this is some unstripped debug information or some dead code dragged in by linking. We will look at this eventually but with low priority.

600% bigger. It is a big issue on OS/2 systems, where shared memory pool is a constant problem (being too small). It doesn't help when drivers for no good reason gets 600% bigger :-/

Regarding trac notification: It's not broken

Really ? Doesn't it strike you as very odd, that none of the other reportes on this bug doesn't answeer ?

I get notifications. The email you get notifications for is not 'oracle@...' but 'oracle-trac@...' and I see entries in the email log for this account.

Exactly. But oracle-trac@ is NOT my oracle account ! TRAC previously always sent to our standard oracle account - but it does not do that anymore. To get email notifications, you have to go into TRAC preferences setup, and add a username and email there. Thats what I recently did, and now I get notifications to that email address oracle-trac@

A hint... Netlabs has exact same problem with their TRAC - global account is never getting notifications. I think the problem has to do with newer TRAC versions (known bugs).

So remember - none of your normal users have ever been into TRAC preferences and setup diff email there - so they will _never_ get notofications.

Sorry, I haven't had a chance to test your new version of guest additions yet -and sorry for poluting this ticket with other things - but I hope they are at least relavant for the original reporters too..

comment:8 by Frank Mehnert, 10 years ago

Regarding trac notification: Recently we enabled the trac setting always_notify_reporter to true. It was set to false which means that the reporter wasn't automatically notified (now fixed). But as you are not the original reporter of this ticket this setting doesn't affect you.

The information that you had to manually set the email address in preferences to fix email delivery is interesting though. On the other hand I know many other users for which the notification worked without manually setting the address. It would be interesting to debug your mail delivery problem. For that you should remove your email address from the setting again, add a comment to the ticket and see if you get the notification. If not, please comment here and I will look into the logs again to check if an email was sent or not. Sorry but when I read about email notification problems my first guess is always a SPAM filter or a broken email filter.

Regarding supplying a new gengradd.dll with VBox 4.3: I already explained that with VBox 4.2 we included a pre-built binary driver (some local build of a developer) while as of 4.3 the driver is built as part of the Guest Additions build procedure. The latter allows to actually fix bugs in the code. I must admit that the responsible engineer didn't test the new driver, sorry for that.

comment:9 by Frank Mehnert, 10 years ago

Test, please ignore.

comment:10 by Frank Mehnert, 10 years ago

Re notification: Correction: I was wrong and you were right. Without manually setting the email address into preferences, no notification will be send.

comment:11 by Yoda, 10 years ago

testing notification with email in prefs.

comment:12 by Yoda, 10 years ago

didn't get any notification either.

OTOH, I finally could test your new gengradd.dll from 4.13 iso, and that seems to work as expected.

comment:13 by Frank Mehnert, 10 years ago

Resolution: fixed
Status: newclosed

Fix is part of VBox 4.3.14.

Note: See TracTickets for help on using tickets.

© 2023 Oracle
ContactPrivacy policyTerms of Use