Upstream URL should be: https://github.com/systemd/kdbus
Search Criteria
Package Details: kdbus-git 2131.db51839-2
Package Actions
- View PKGBUILD
- Download tarball
- Search wiki
- Flagged out-of-date (2015-06-19)
| Package Base: | kdbus-git |
|---|---|
| Description: | kdbus kernel module |
| Upstream URL: | https://code.google.com/p/d-bus/ |
| Category: | none |
| Licenses: | |
| Conflicts: | |
| Provides: | |
| Submitter: | drevilt |
| Maintainer: | drevilt |
| Last Packager: | drevilt |
| Votes: | 3 |
| First Submitted: | 2014-02-12 20:35 |
| Last Updated: | 2014-11-15 15:18 |
Latest Comments
Comment by blackout24
Comment by hdhoang
@Mic92 you have to boot with "kdbus" on the kernel commandline, according to https://www.reddit.com/r/linux/comments/1tqw0m/systemd_can_now_boot_with_kdbus_as_system_bus/
But with that, I can't finish booting, even journal-flush and logind can't start. However I can see that .busname units are started.
Comment by hdhoang
from 26de4fc6f01e onwards, kdbus uses features from linux 3.19, one of which (iov_iter_kvec) is not available in 3.18. Please fix the commit checkout to 5bfbafb57ad7 until 3.19 lands in core.
Comment by Mic92
@falconindy what else is needed to enable kdbus.
I recompiled systemd-git with `--enable-kdbus` and and added the kernel module to: /etc/modules-load.d/kdbus.conf
$ lsmod | grep kdbus
kdbus 82982 0
But systemd still launch dbus.service
Comment by falconindy
Yes, they will work. systemd provides systemd-bus-proxyd which is automatically launched by systemd for any dbus1 client. It acts as a bidirectional proxy, allowing "legacy" dbus1 users to work in the absence of the traditional dbus-daemon.
I don't know if QtDbus will be ported to support kdbus natively. I do know that there is already work ongoing to add support to gdbus, and there's sd-bus, distributed with systemd, which supports both dbus1 and kdbus.
Comment by AnAkkk
@falconindy: thanks. This won't work with applications based on QtDbus though, right?
Comment by falconindy
@AnAkkk: You cannot possibly use a release of systemd with kdbus -- the ABI is under heavy flux. You *must* follow the git repos of systemd and kdbus in lockstep (and yes, build with --enable-kdbus).
Comment by falconindy
@drevilt: I'm not sure how else I can explain to you that Greg's repository is a mirror without any automatic push mechanism. It lags behind the googlecode repo. When there's an ABI break in kdbus, people following Greg's repo find their way into #systemd on freenode and ask why kdbus isn't working. Inevitably, it's because they thought their kdbus repo was up to date, when it really wasn't.
Comment by AnAkkk
Thanks, it compiles fine now.
Does it just need systemd to be recompiled with -enable-kdbus to work?
Comment by drevilt
i have added the version-string into the /usr/src/* path. that should help.
@falconindy to me it looks like both repositories have the same commits. What is the difference?
Comment by AnAkkk
The PKGBUILD was updated after my last message, now it creates the package but it fails to install:
Error! Could not find module source directory.
Directory: /usr/src/kdbus-2121.77d54a9 does not exist.
Comment by falconindy
Please do not follow this repo -- it lags behind the real upstream at:
https://code.google.com/p/d-bus/
Comment by AnAkkk
It fails to create the package due to the "tools" folder which was added.
Comment by garyamort
I am running 3.15-7 and this package currently will not load properly... oddly depending on the path I take, I sometimes get a kdbus.ko file which loads, but nothing works and all the tests fail.
I had to downgrade the kdbus version from the latest git version(419166844240515e380fd90e00373783e5aa6b89 at this moment) to commit hash e62195a - which is the one listed on this package.
In PKGBUILD, change:
package() {
cd "$srcdir/kdbus"
rm -fr test
to
package() {
cd "$srcdir/kdbus"
git checkout e62195a
rm -fr test
Also make sure if you build the test tools manually, make sure to compile the same git hash version!
Comment by blackout24
@haagch systemd can manage kdbus, but you have to compile it with --enable-kdbus. The package in [core] is compiled with --disable-kdbus.
https://projects.archlinux.org/svntogit/packages.git/tree/trunk/PKGBUILD?h=packages/systemd
Comment by haagch
Builds and loads but I have not found ANY information with the obvious search terms on what is actually required to use it. With just building and loading the kernel module all tests from test-kdbus just fail, at least on 3.15-rc2. If something from systemd is required I have not found any information on what that would be.
Comment by drevilt
@haagch thanks for the tip about dkms. I changed it to use dkms now.
can you please tell me whether the package is correct now? This is my first dkms package.
maybe the package needs to be renamed too.
Comment by haagch
/usr/lib/modules/$(uname -r)/extramodules/ is a symlink to the extramodules directory of the currently running kernel.
Also, depmod needs to be run.
But maybe dkms is better for this?
Comment by sl1pkn07
nope, i've installed systemd-git, reboot and load kdbus module
test-kdbus still don't work
need more configuration?
Comment by sl1pkn07
oh, then need more utilities...
thanks for the info
then this package need add that utilities in dependencies (direct or optdepends)
greetings
Comment by drevilt
i am sorry but for me it seems to work:
$ ./test-kdbus
RUNNING TEST 'bus make' ...................... OK
RUNNING TEST 'hello' ......................... OK
RUNNING TEST 'byebye' ........................ OK
RUNNING TEST 'monitor' ....................... OK
RUNNING TEST 'name basics' ................... OK
RUNNING TEST 'name conflict' ................. OK
RUNNING TEST 'name queue' .................... OK
RUNNING TEST 'message basic' ................. OK
RUNNING TEST 'message free' .................. OK
RUNNING TEST 'connection info' ............... OK
RUNNING TEST 'match id add' .................. OK
RUNNING TEST 'match id remove' ............... OK
RUNNING TEST 'match name add' ................ OK
RUNNING TEST 'match name remove' ............. OK
RUNNING TEST 'match name change' ............. OK
RUNNING TEST 'domain make' ................... SKIPPED
SUMMARY: 15 tests passed, 1 skipped, 0 failed
have you tried the systemd kdbus userspace utilities yet ? you can find them in the systemd-git package
Comment by sl1pkn07
test-kdbus fail for me. (yes, the module is load and /dev/kdbus/control has been created)
http://sl1pkn07.no-ip.com/paste/view/94837aea
this module working with stock arch kernel? (3.13.x)
or need rebuild kernel with kdbus active
greetings
Comment by drevilt
i have updated the _extramodules variable. but i dont think this is the right method yet. does anybody know of a better way to install kernel modules ?
@Nierro : you need to insmod the .ko.gz file that is in the package. that will give you a /dev/kdbus/control file.
Comment by Nierro
I guess this package has something wrong. In fact, kdbus is not working with this, while building from git works fine.
Makefile from git has
install: module
mkdir -p /lib/modules/$(shell uname -r)/kernel/drivers/kdbus$(EXT)/
cp -f kdbus$(EXT).ko /lib/modules/$(shell uname -r)/kernel/drivers/kdbu$
depmod $(shell uname -r)
I see your install section is different. (i tried changing _extramodules=extramodules-3.12-ARCH to 3.13)
Comment by KriK
thanx)
Comment by drevilt
I copied the PKGBUILD from another kernel module and did not test it with 3.13.
Anyway, i removed the upper version limit for linux as it seems to do its job.
Comment by KriK
Why only for kernel 3.12? I compile for 3.13 and everything works fine:
krik@exotab ..ackages/build/kdbus-git/src/kdbus/test (git)-[master] % ./test-kdbus
RUNNING TEST 'bus make' ...................... OK
RUNNING TEST 'hello' ......................... OK
RUNNING TEST 'byebye' ........................ OK
RUNNING TEST 'monitor' ....................... OK
RUNNING TEST 'name basics' ................... OK
RUNNING TEST 'name conflict' ................. OK
RUNNING TEST 'name queue' .................... OK
RUNNING TEST 'message basic' ................. OK
RUNNING TEST 'message free' .................. OK
RUNNING TEST 'connection info' ............... OK
RUNNING TEST 'match id add' .................. OK
RUNNING TEST 'match id remove' ............... OK
RUNNING TEST 'match name add' ................ OK
RUNNING TEST 'match name remove' ............. OK
RUNNING TEST 'match name change' ............. OK
RUNNING TEST 'domain make' ................... SKIPPED
SUMMARY: 15 tests passed, 1 skipped, 0 failed