[kde-freebsd] nepomukservicestub.core every time I start KDE4

Mel Flynn mel.flynn+fbsd.kde at mailing.thruhere.net
Mon Aug 3 22:19:30 CEST 2009


On Tuesday 28 July 2009 22:17:54 Martin Wilke wrote:
> On Tue, Jul 28, 2009 at 06:57:46PM -0800, Mel Flynn wrote:
> > On Tuesday 28 July 2009 18:01:45 Steven Friedrich wrote:
> > > Every time I start KDE4, I get a nepomukservicestub.core
> > >
> > > I'm running FreeBSD 7.2p2, KDE4.2.4.
> > >
> > > I rebuilt everything with portupgrade -fR kdebase-runtime.
> > >
> > > Is anyone else seeing this?
> > >
> > > Any ideas of what else I might rebuild?
> >
> > Nothing. It's a problem I posted about in June. Basically, redland
> > storage backend isn't liked by nepomuk, but it's leaving the
> > nepomukservice with an uninitialized engine, which eventually causes the
> > SIGSEV.
> >
> > I haven't come up with a real fix yet, since Area51 is in flux for 4.3
> > and I figured I'd wait till that's in "Ready for testing" state.
>
> Ready for Testing, but note we begin in the next days to work on
> KDE 4.3 RELEASE so you should now checkout :P

I seem to have some unfetchable distfiles. Is there a revision number or 
datestamp I can use to test the 4.3 beta?

=> Attempting to fetch from 
ftp://ftp.belnet.be/packages/kde/stable/4.3.0/src/.
fetch: 
ftp://ftp.belnet.be/packages/kde/stable/4.3.0/src/kdelibs-4.3.0.tar.bz2: File 
unavailable (e.g., file not found, no access)

For interested parties, below is a preliminary patch to enable /dev/io in a 
jail. It compiles and have no crashing kernel, plus a jail that can start up, 
but I haven't actually tried to start X yet. You'll need to start it by hand 
or modify /etc/rc.d/jail to support the new parameter. I'm working on 
'/etc/rc.d/njail' that will be using the `jail .... -c|-m' syntax so that 
parameters in name=value form can be passed in.
-- 
Mel

Index: sys/kern/kern_jail.c
===================================================================
--- sys/kern/kern_jail.c	(revision 195941)
+++ sys/kern/kern_jail.c	(working copy)
@@ -151,6 +151,7 @@
 	"allow.mount",
 	"allow.quotas",
 	"allow.socket_af",
+	"allow.dev_io",
 };
 
 static char *pr_allow_nonames[] = {
@@ -161,6 +162,7 @@
 	"allow.nomount",
 	"allow.noquotas",
 	"allow.nosocket_af",
+	"allow.nodev_io",
 };
 
 #define	JAIL_DEFAULT_ALLOW	PR_ALLOW_SET_HOSTNAME
@@ -3756,6 +3758,17 @@
 	case PRIV_NETINET_GETCRED:
 		return (0);
 
+		/*
+		 * Allow access to /dev/io in a jail if the non-jailed admin
+		 * requests this and if /dev/io exists in the jail. This
+		 * allows Xorg to probe a card.
+		 */
+	case PRIV_IO:
+		if (cred->cr_prison->pr_allow & PR_ALLOW_DEV_IO)
+			return (0);
+		else
+			return (EPERM);
+
 	default:
 		/*
 		 * In all remaining cases, deny the privilege request.  This
@@ -4006,6 +4019,10 @@
     CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE,
     NULL, PR_ALLOW_MOUNT, sysctl_jail_default_allow, "I",
     "Processes in jail can mount/unmount jail-friendly file systems");
+SYSCTL_PROC(_security_jail, OID_AUTO, dev_io_allow,
+    CTLTYPE_INT | CTLFLAG_RW | CTLFLAG_MPSAFE,
+    NULL, PR_ALLOW_DEV_IO, sysctl_jail_default_allow, "I",
+    "Processes in jail can access /dev/io");
 
 static int
 sysctl_jail_default_level(SYSCTL_HANDLER_ARGS)
@@ -4130,6 +4147,8 @@
     "B", "Jail may set file quotas");
 SYSCTL_JAIL_PARAM(_allow, socket_af, CTLTYPE_INT | CTLFLAG_RW,
     "B", "Jail may create sockets other than just UNIX/IPv4/IPv6/route");
+SYSCTL_JAIL_PARAM(_allow, dev_io, CTLTYPE_INT | CTLFLAG_RW,
+    "B", "Jail can access /dev/io if present");
 
 
 #ifdef DDB
Index: sys/sys/jail.h
===================================================================
--- sys/sys/jail.h	(revision 195941)
+++ sys/sys/jail.h	(working copy)
@@ -207,7 +207,8 @@
 #define	PR_ALLOW_MOUNT			0x0010
 #define	PR_ALLOW_QUOTAS			0x0020
 #define	PR_ALLOW_SOCKET_AF		0x0040
-#define	PR_ALLOW_ALL			0x007f
+#define	PR_ALLOW_DEV_IO			0x0080
+#define	PR_ALLOW_ALL			0x00ff
 
 /*
  * OSD methods



More information about the kde-freebsd mailing list