LinuxQuestions.org
Latest LQ Deal: Latest LQ Deals
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 09-20-2008, 03:45 PM   #1
niels.horn
Senior Member
 
Registered: Mar 2007
Location: Rio de Janeiro - Brazil
Distribution: Slackware64-current
Posts: 1,004

Rep: Reputation: 91
Lightbulb vmware fails to load after update of libX11-1.1.5 from -current (+solution)


After installing the latest updates of X from slackware-current (september 18), vmware stopped working and returned with the following error:
Code:
vmware: xcb_lock.c:77: _XGetXCBBuffer: Assertion `((int) ((xcb_req) - (dpy->request)) >= 0)' failed.
After banging my head a few times on the table and doing some research on the internet, I found a workaround.
Basically, this quick-and-dirty script compiles a second libX11 library without xcb until the problem is solved.
It also creates a one-line script to start vmware with this alternative lib:
Code:
#!/bin/bash

libver=libX11-1.1.5
destlib=/usr/local/lib
destbin=/usr/local/bin

test -e $libver.tar.bz2 || wget -c http://xorg.freedesktop.org/archive/individual/lib/$libver.tar.bz2
rm -rf $libver
tar xjf $libver.tar.bz2
mkdir -p $destlib
mkdir -p $destbin

cd $libver
   ./configure --without-xcb
   make -j 2
   strip src/.libs/libX11.so.6.2.0
   cp src/.libs/libX11.so.6.2.0 $destlib
   ln -s libX11.so.6.2.0 $destlib/libX11.so.6
   ln -s libX11.so.6.2.0 $destlib/libX11.so
   echo -e "LD_PRELOAD=$destlib/libX11.so  vmware" > $destbin/vmware-start.sh
   chmod 755 $destbin/vmware-start.sh
cd ..
rm -rf $libver
Just run this script as root.
It might take a few minutes to compile the library (depending on your system).
After this, start vmware with 'vmware-start.sh' as a normal user.
Do not forget to update the entries in your desktop menu.

This article showed me how to solve the problem.
 
Old 09-20-2008, 04:07 PM   #2
volkerdi
Slackware Maintainer
 
Registered: Dec 2002
Location: Minnesota
Distribution: Slackware! :-)
Posts: 2,503

Rep: Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459
XCB has broken things in the past, and I'd be happy to turn it off *if* that's what most people want. However, there is quite a performance penalty involved with that. But, better for things to work, right? Things not working is the ultimate performance penalty.

The last time libX11+XCB broke, a small patch fixed everything. Maybe there's a patch like that out there again?
 
Old 09-20-2008, 04:32 PM   #3
niels.horn
Senior Member
 
Registered: Mar 2007
Location: Rio de Janeiro - Brazil
Distribution: Slackware64-current
Posts: 1,004

Original Poster
Rep: Reputation: 91
Well, one of the articles I found on the internet pointed to this link. It talks about the locking, assertions and performance.

I'm not sure though if it has anything to do with this new problem and I didn't have the courage to apply the patches and compile everything
 
Old 09-20-2008, 04:53 PM   #4
volkerdi
Slackware Maintainer
 
Registered: Dec 2002
Location: Minnesota
Distribution: Slackware! :-)
Posts: 2,503

Rep: Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459
Could the upgrade from libxcb-1.0 to libxcb-1.1 have caused this? I don't run vmware, but maybe someone could try the libxcb package from Slackware 12.1 to see if it helps...
 
Old 09-20-2008, 05:10 PM   #5
Road_map
Member
 
Registered: Jan 2007
Distribution: Slackware
Posts: 341

Rep: Reputation: 31
I'm running Slackware-current too, but I have no problems with VMware (Server Console - 1.0.7 build-108231).
Code:
ls /var/log/packages | grep xcb
libxcb-1.1-i486-1
xcb-proto-1.1-noarch-1
 
Old 09-20-2008, 05:44 PM   #6
volkerdi
Slackware Maintainer
 
Registered: Dec 2002
Location: Minnesota
Distribution: Slackware! :-)
Posts: 2,503

Rep: Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459
That is good to hear. I thought perhaps XCB could have been the cause of the ImageMagick convert {eps,ps} to other formats issue, but it seems that isn't the case. Oh well... anyone with a handle on that one, please post.
 
Old 09-20-2008, 07:29 PM   #7
niels.horn
Senior Member
 
Registered: Mar 2007
Location: Rio de Janeiro - Brazil
Distribution: Slackware64-current
Posts: 1,004

Original Poster
Rep: Reputation: 91
Giving a little update...

I also use vmware-server-1.0.7

Step 1:
Testing with 'vmware' (without the 'LD_PRELOAD=/usr/local/lib/libX11.so' before it) gives the xcb assertion error.

Testing with 'vmware-start.sh' (with the 'LD_PRELOAD=/usr/local/lib/libX11.so' before calling 'vmware') works fine.

Step 2:

I did a "upgradepkg" (actual downgrade) of the following three items:
  • libX11-1.1.4-i486-1.tgz
  • libxcb-1.0-i486-2.tgz
  • xcb-proto-1.0-noarch-1.tgz

Result: nothing... still the same error when starting vmware directly.

Step 3:

So I got confused...

And started checking other packages I updated from -current
And found out that the culprit is gtk+2-2.12.12
I 'upgradepkg'-ed it to gtk+2-2.12.9 from the slackware 12.1 CD and vmware now starts without problems.

Step 4:

Now just to be sure...
Upgraded again to:
  • libX11-1.1.5-i486-1.tgz
  • libxcb-1.1-i486-1.tgz
  • xcb-proto-1.1-noarch-1.tgz

And vmware is still working fine!

Step 5:

Next test: upgrade to gtk+2-2.12.12
And yes, vmware returns the error again...

Step 6:

Downgraded again to gtk+2-2.12.9
And everything is fine... vmware starts without problems.

Conclusion:

There is something wrong with gtk+2-2.12.12 that causes the error in xcb

Hope I've been of any help!
I'll stick to gtk+2-2.12.9 for now

Last edited by niels.horn; 09-20-2008 at 07:31 PM. Reason: (correcting typos)
 
Old 09-20-2008, 08:01 PM   #8
niels.horn
Senior Member
 
Registered: Mar 2007
Location: Rio de Janeiro - Brazil
Distribution: Slackware64-current
Posts: 1,004

Original Poster
Rep: Reputation: 91
Replying to my own post

After discovering the real cause, I googled around again...

Found this link mentioning the same problem happening since gtk2-2.12.10 in archlinux, but no solution was found other than downgrading gtk2 or compiling libX11 with the '--without-xcb' option as I did in my original post.
 
Old 09-20-2008, 08:58 PM   #9
volkerdi
Slackware Maintainer
 
Registered: Dec 2002
Location: Minnesota
Distribution: Slackware! :-)
Posts: 2,503

Rep: Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459Reputation: 8459
Well, the question then becomes: Should Slackware be blocked from upgrading open source libraries because doing so breaks proprietary software? If nothing else is "broken", is this a "regression"?

I'm real curious how this one can be answered.

Like I mentioned, I do not have a copy of vmware, but I'll bet they compile it against an old version of GTK+ to try to be compatible with old systems (or ones that backport patches rather than following upstream). Someone who does have access to vmware might be able to verify this using "strings", "less", or other tools that can peek behind the paneling.

Probably recompiling vmware against -current will clear this issue up. Can someone get on that? <sigh... binary-only blobs...>
 
Old 09-20-2008, 09:38 PM   #10
niels.horn
Senior Member
 
Registered: Mar 2007
Location: Rio de Janeiro - Brazil
Distribution: Slackware64-current
Posts: 1,004

Original Poster
Rep: Reputation: 91
uhm... ehhh.. well...

Since I really need vmware I wouldn't mind spending more time to find a definite solution, like compiling vmware from scratch, but vmware is just free, not open...

So, I better turn back to the solution from my original post:
- upgrade (open source) gtk to the new version
- use a workaround to keep (proprietary) vmware functioning with a custom libX11 library

This way my slackware-current stays 100% current

After all, I use -current on this machine because it is more fun... Discovering this kind of glitches and their solutions is what keeps me sharp.
 
Old 12-31-2008, 11:20 AM   #11
pino_otto
Member
 
Registered: Dec 2005
Location: Italy
Distribution: Slackware
Posts: 89

Rep: Reputation: 19
Quote:
Originally Posted by volkerdi View Post
Well, the question then becomes: Should Slackware be blocked from upgrading open source libraries because doing so breaks proprietary software?
Dear Patrick, of course, the answer is NO!

Free software must continue its development and growth, regardless of the proprietary software.


Quote:
Originally Posted by niels.horn View Post
So, I better turn back to the solution from my original post:
- upgrade (open source) gtk to the new version
- use a workaround to keep (proprietary) vmware functioning with a custom libX11 library

This way my slackware-current stays 100% current
I installed VMware Server 1.0.8 on Slackware 12.2 and the server works.
Actually I had to install the following vmware update, because of some incompatibilities between vmware and the kernel 2.6.27:
http://www.insecure.ws/warehouse/vmw...5.5.7-2.tar.gz

Then I installed VMware Server Console 1.0.8 on the same Slackware 12.2 machine successfully, but when I try to start the console with the command:

vmware-server-console

I get the following error:

vmware-server-console: xcb_lock.c:77: _XGetXCBBuffer: Assertion `((int) ((xcb_req) - (dpy->request)) >= 0)' failed.

So, I tried to use your first solution, which I consider a better solution, compared with the downgrade of gtk. However it did not work for me.

I tried with the command:
LD_PRELOAD=/usr/local/lib/libX11.so vmware-server-console

but nothing happened. The xcb_lock error didn't appeared anymore, but the console window was not opened and the program immediately returned.

I installed VMware Server 2.0 on another Slackware 12.2 machine and everything is fine. However I need VMware Server 1.0.x because I have to use VMware Studio 1.0, which is only compatible with VMware Server 1.0.x.

Any hints about how to solve this problem on the stable Slackware 12.2?
 
Old 12-31-2008, 01:11 PM   #12
niels.horn
Senior Member
 
Registered: Mar 2007
Location: Rio de Janeiro - Brazil
Distribution: Slackware64-current
Posts: 1,004

Original Poster
Rep: Reputation: 91
Quote:
Originally Posted by pino_otto View Post
Any hints about how to solve this problem on the stable Slackware 12.2?
Are you using KDE?
Check if it works under Xfce.
I know it sounds strange, but on my machine it works fine on Xfce and gives the assertion error when I use KDE.
 
Old 12-31-2008, 06:46 PM   #13
pino_otto
Member
 
Registered: Dec 2005
Location: Italy
Distribution: Slackware
Posts: 89

Rep: Reputation: 19
Quote:
Originally Posted by niels.horn View Post
Are you using KDE?
Check if it works under Xfce.
I know it sounds strange, but on my machine it works fine on Xfce and gives the assertion error when I use KDE.
Yes, I'm using KDE.

I will try under Xfce. However, I hope to find a good solution for KDE.

If you do any progress on KDE, please post it.
 
Old 01-05-2009, 02:31 PM   #14
pino_otto
Member
 
Registered: Dec 2005
Location: Italy
Distribution: Slackware
Posts: 89

Rep: Reputation: 19
Dear Patrick and Niels,

thanks to the Slacky community (www.slacky.eu), especially cacao74, I finally succeeded to make VMware Server Console 1.0.x work under Slackware 12.2 with KDE 3.5.10.

I followed the instructions here:
http://communities.vmware.com/message/992420#992420

the key point was to download the libX11.so.6 file indicated at this link:
http://glasstheplanet.org/debian/libX11.so.6

I don't know why that lib works, while my recompiled lib without xcb didn't work.

It could be interesting to understand.

Anyway, I am very happy to be able to use the VMware Server Console on my Slackware machine.
 
Old 01-09-2009, 08:10 AM   #15
MarcT
Member
 
Registered: Jan 2009
Location: UK
Distribution: Slackware 14.2
Posts: 125

Rep: Reputation: 51
Question VMWare Server 2.0 and Slack 12.2

Quote:
Originally Posted by pino_otto View Post
I installed VMware Server 2.0 on another Slackware 12.2 machine and everything is fine.
How did you get VMWare Server 2.0 to work with Slack 12.2? I've been struggling with this myself and have come to the conclusion that VMWare Server 2 requires PAM support, which Slack doesn't have.

Do I need to install PAM (and where from...?)
Anyone have any ideas? Is there something else which I've overlooked?

Best Regards,
M
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Unable to upgrade to ubuntu 7.10, update manager fails to update.... jonbvgood Linux - Software 2 02-05-2008 03:58 PM
compiz fails to load after kernel update Kristian S SUSE / openSUSE 5 02-04-2008 11:30 AM
Solution: ip-up fails to restart SuSEfirewall2 properly during PPTPD initialization Marc Linux - Networking 0 10-22-2005 12:00 PM
Using Vmware with my current linux install em00guy Linux - Software 4 07-13-2005 04:11 AM
is vmware the best solution? a2ps Linux - Software 3 11-12-2003 03:10 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 12:51 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration