Upgraded portupgrade; pkgdb no longer works: "Cannot allocate red zone..."

It was silly of me to try and upgrade portupgrade but I did it. I did not record what the previously installed version was nor did I back anything up (can you portupgrade portupgrade?)

So, now whenever i run pkgdb (or anything else that portupgade installs), I get many messages like so:

Code:
Fatal error 'Cannot allocate red zone for initial thread' at line 384 in file /usr/src/lib/libthr/thread/thr_init.c (errno = 12)

...followed by...

Code:
Illegal instruction: 4 (core dumped)

I have no idea what I can do to make this start working again. :/

Any hints, tips, etc would be greatly appreciated.

uname -a:
Code:
FreeBSD xxxxx 7.1-RELEASE-p6 FreeBSD 7.1-RELEASE-p6 #3: Fri Jul 10 20:42:39 EDT 2009     root@xxxxx:/usr/obj/usr/src/sys/GENERIC  i386
 
Try manually deinstalling and reinstalling like (NB don't just run this, check what's going on first with [red]-n[/red]) # pkg_delete -nf portupgrade\* ruby\* && cd /usr/ports/ports-mgmt/portupgrade && make install clean.

If that fails, try ports-mgmt/portupgrade-devel.
 
That did it! I figured out (via pkg_delete -n) that my ruby install was messed up. I got the following output...

Code:
[...]
pkg_delete: no such package 'ruby18.core' installed
pkg_delete: 1 package deletion(s) failed
[...]

So, I went to /usr/ports/lang/ruby18 and did a rebuild. When I tried to "make install", it complained that it was already installed (albeit at an older version). I tried "make deinstall", but nothing ultimately happened. At this point I forced a reinstall and pkgdb magically started working again. :)

Now my pkgdb is fixed up.

Thanks!
 
Back
Top