summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2005-04-26[PATCH] D-BUS patch for udev-008david@fubar.dk
Attached is a patch against udev-008 to send out a D-BUS message when a device node is added or removed. Using D-BUS lingo, udev acquires the org.kernel.udev service and sends out a NodeCreated or NodeDeleted signal on the org.kernel.udev.NodeMonitor interface. Each signal carries two parameters: the node in question and the corresponding sysfs path. [Note: the D-BUS concepts of service, interface, object can be a bit confusing at first glance] An example program listening for these messages looks like this #!/usr/bin/python import dbus import gtk def udev_signal_received(dbus_iface, member, service, object_path, message): [filename, sysfs_path] = message.get_args_list() if member=='NodeCreated': print 'Node %s created for %s'%(filename, sysfs_path) elif member=='NodeDeleted': print 'Node %s deleted for %s'%(filename, sysfs_path) def main(): bus = dbus.Bus(dbus.Bus.TYPE_SYSTEM) bus.add_signal_receiver(udev_signal_received, 'org.kernel.udev.NodeMonitor', # interface 'org.kernel.udev', # service '/org/kernel/udev/NodeMonitor') # object gtk.mainloop() if __name__ == '__main__': main() and this is the output when hot-plugging some usb-storage. [david@laptop udev-008]$ ~/node_monitor.py Node /udev/sda created for /block/sda Node /udev/sda1 created for /block/sda/sda1 Node /udev/sda1 deleted for /block/sda/sda1 Node /udev/sda deleted for /block/sda The patch requires D-BUS 0.20 or later while the python example program requires D-BUS from CVS as I only recently applied a patch against the python bindings.
2005-04-26[PATCH] experimental (very simple) SYMLINK creationkay.sievers@vrfy.org
> > here is a experimental symlink creation patch - for discussion, > > in which direction we should go. > > It is possible now to define SYMLINK= after the NAME= in udev.rules. > > The link is relative to the node, but the path is not optimized now > > if the node and the link are in the same nested directory. > > Only one link is supported, cause i need to sleep now :) > > > > 06-simple-symlink-creation.diff > > simple symlink creation > > reorganized udev-remove to have access to the symlink field > > subdir creation/removal are functions now > > udev-test.pl tests for link creation/removal Here is a new version with relative link target path optimization an better tests in udev-test.pl: LABEL, BUS="scsi", vendor="IBM-ESXS", NAME="1/2/a/b/node", SYMLINK="1/2/c/d/symlink" Dec 7 06:48:34 pim udev[13789]: create_node: symlink 'udev-root/1/2/c/d/symlink' to node '1/2/a/b/node' requested Dec 7 06:48:34 pim udev[13789]: create_path: created 'udev-root/1/2/c' Dec 7 06:48:34 pim udev[13789]: create_path: created 'udev-root/1/2/c/d' Dec 7 06:48:34 pim udev[13789]: create_node: symlink(../../a/b/node, udev-root/1/2/c/d/symlink)
2005-04-26[PATCH] better allow builds of extras programs under udevpatmans@us.ibm.com
Here is an improved version of the patch that enables builds of the extras progams for the targets all, clean, install, and uninstall, and passes down the "prefix" for use by install and uninstall. This patch enables building of the "extras" programs using the same build environment as udev (i.e. build with udev's versions of klibc and sysfsutils). For example, build scsi_id and udev via: make EXTRAS=extras/scsi_id Build scsi_id and udev with klibc via: make KLIBC=true EXTRAS=extras/scsi_id
2005-04-26[PATCH] update udev extras/scsi_id to version 0.2patmans@us.ibm.com
This patch updates scsi_id under udev from version 0.1 to version 0.2.
2005-04-26[PATCH] yet more extras/multipathchristophe.varoqui@free.fr
* implement a reschedule flag in /var/run. Last thing the prog do before exit is check if a call to multipath was done (but canceled by /var/run/multipath.run check) during its execution. If so restart the main loop. * implement a blacklist of sysfs bdev to not bother with for now (hd, md, dm, sr, scd, ram, raw). This avoid sending SG_IO to unappropiate devices. Compiles & survive "while true;do (./multipath -v &);done"
2005-04-26[PATCH] more extras/multipath updateschristophe.varoqui@free.fr
* Adds a /var/run/multipath.run handling to avoid simultaneous runs. * Remove a commented-out "printf"
2005-04-26[PATCH] extras/multipath updatechristophe.varoqui@free.fr
here is the next update which brings this multipath to the state i'm not ashamed of it being in udev :) * drop a libdevmapper copy in extras/multipath; maybe discussions w/ Sistina folks will bring a better solution in the future. * drop a putchar usage in libdevmapper to compile cleanly with klibc * drop another such usage of my own in main.c * massage the Makefile to compile libdevmapper against klibc * use "ld" to produce the binary rather than "gcc -static" * stop being stupid w/ uneeded major, minor & dev in main.c:dm_mk_node() * reverse to creating striped target for now because the multipath target is more hairy than expected initialy * push the version code to 009 to be in synch w/ udev builds & run here. binary size is 43ko, which is fairly gratifying after all the efforts I've put to compiling it with klibc :)
2005-04-26[PATCH] man page beautykay.sievers@vrfy.org
I've never seen any project where the documentation is in sync with the code at this early stage. Nice! So here is the patch to make it extra perfect :) remove random indent to be consistent style is "shell style" s/wildcard/pattern/ mention negation char in character class
2005-04-26[PATCH] pattern match for label methodkay.sievers@vrfy.org
switch LABEL search to pattern match add a test for pattern match in LABEL remove useless rule from udev.rules
2005-04-26[PATCH] a bug in linefeed removalkay.sievers@vrfy.org
While I was adding pattern match to the LABEL method i hit a bug. We modify a string returned from libsysfs, so with every iteration is is truncated by one char: Dec 4 02:27:16 pim udev[23307]: do_label: dev->bus='scsi' sysfs_device->bus='scsi' Dec 4 02:27:16 pim udev[23307]: do_label: look for device attribute 'vendor' Dec 4 02:27:16 pim udev[23307]: do_label: xxx 'IBM-ESXS ' Dec 4 02:27:16 pim udev[23307]: do_label: compare attribute 'vendor' value 'IBM-ESX' with '?IBM-ESXS' Dec 4 02:27:16 pim udev[23307]: do_label: dev->bus='scsi' sysfs_device->bus='scsi' Dec 4 02:27:16 pim udev[23307]: do_label: look for device attribute 'vendor' Dec 4 02:27:16 pim udev[23307]: do_label: xxx 'IBM-ESX' Dec 4 02:27:16 pim udev[23307]: do_label: compare attribute 'vendor' value 'IBM-ES' with 'IBM-ESXS?' Dec 4 02:27:16 pim udev[23307]: do_label: dev->bus='scsi' sysfs_device->bus='scsi' Dec 4 02:27:16 pim udev[23307]: do_label: look for device attribute 'vendor' Dec 4 02:27:16 pim udev[23307]: do_label: xxx 'IBM-ES' Dec 4 02:27:16 pim udev[23307]: do_label: compare attribute 'vendor' value 'IBM-E' with 'IBM-ES??' Dec 4 02:27:16 pim udev[23307]: do_label: dev->bus='scsi' sysfs_device->bus='scsi' Dec 4 02:27:16 pim udev[23307]: do_label: look for device attribute 'vendor' Dec 4 02:27:16 pim udev[23307]: do_label: xxx 'IBM-E' Dec 4 02:27:16 pim udev[23307]: do_label: compare attribute 'vendor' value 'IBM-' with 'IBM-ESXSS' I changed the behavior to remove only the line feed. 03-bug-in-linefeed-removal.diff remove only the line feed from string not every last char
2005-04-26[PATCH] 008_bk markgreg@kroah.com
2005-04-26[PATCH] v008 releaseudev/v008greg@kroah.com
2005-04-26[PATCH] update ChangeLog for v008greg@kroah.com
2005-04-26[PATCH] fix up some duplicated function compiler warnings in libsysfsgreg@kroah.com
2005-04-26[PATCH] fix some compiler warnings in the tdb code.greg@kroah.com
2005-04-26[PATCH] Added Kay's name to the man page.greg@kroah.com
2005-04-26[PATCH] update the wildcard documentation in the man page to show the new ↵greg@kroah.com
styles supported.
2005-04-26[PATCH] fix permission handling logicgreg@kroah.com
Now we can handle wildcards properly within the permission file.
2005-04-26[PATCH] enable default_mode ability to actually buildgreg@kroah.com
2005-04-26[PATCH] add support for the default_mode variable, as it is documented...greg@kroah.com
2005-04-26[PATCH] show permissions and groups in the label_testgreg@kroah.com
2005-04-26[PATCH] remove some items off of the TODO list, as they are now done.greg@kroah.com
2005-04-26[PATCH] fix up the tests to work without all of the environ variables.greg@kroah.com
2005-04-26[PATCH] get rid of the majority of the debug environment variables.greg@kroah.com
Now there are only 3 valid environment test variables. The rest can be specified with the config file.
2005-04-26[PATCH] pattern matching for namedevkay.sievers@vrfy.org
As promised yesterday, here is a patch to implement a more advanced pattern matching instead of the simple '*'. We can remove the "tty"="tty" line from udev.rules now and replace "tty*" by "tty[0-9]*" to catch only the vc's. implement pattern matching in namedev '*' - to match zero or more chars '?' - to match exactly one char '[]' - character classes with ranges '[0-9]'and negation [!A]
2005-04-26[PATCH] Update the man page to show the new config file, it's format, and ↵greg@kroah.com
how to use it. wow, update the docs to keep in line with reality, what a concept...
2005-04-26[PATCH] fix up the tests to support the rules file name changegreg@kroah.com
2005-04-26[PATCH] add support for a main udev config file, udev.conf.greg@kroah.com
the older udev.config file is now called udev.rules. This allows us to better control configuration values, and move away from the environment variables.
2005-04-26[PATCH] turn debugging messages off by default.greg@kroah.com
it's a bit noisy for the masses...
2005-04-26[PATCH] split out the namedev config parsing logic to namedev_parse.cgreg@kroah.com
2005-04-26[PATCH] rename namedev's get_attr() to be main namedev_name_device() as ↵greg@kroah.com
that's what it really is.
2005-04-26[PATCH] add devfs like tty rules as an example in the default config file.greg@kroah.com
2005-04-26[PATCH] catch replace device by wildcardkay.sievers@vrfy.org
catch device name by wildcard to support a whole class of devices by just one config line like: REPLACE, KERNEL="tty*", NAME="vc/%n"
2005-04-26[PATCH] operate on the rules in the order they are in the config file ↵greg@kroah.com
(within the rule type)
2005-04-26[PATCH] Add -nodefaultlibs while compiling against klibcmort@wildopensource.com
This patch adds -nodefaultlibs to LDFLAGS when compiling udev against klibc. This fixes the warning that I was getting when using $(LD)=gcc in the versions after Makefile.klibc disappeared. The problem was that it was still including a "-lc" in the call to the linker.
2005-04-26[PATCH] another patch for path problemdsteklof@us.ibm.com
The quick patch I sent you yesterday fixes it in one location, but there are other points in the library that calls sysfs_get_mnt_path. We need to address all the areas in the library where paths are used. The following patch is a band-aid until we can get a proper path management in the library.
2005-04-26[PATCH] Cset exclude: dsteklof@us.ibm.com|ChangeSet|20031126173159|56255greg@kroah.com
2005-04-26[PATCH] ARCH detection for ppcolh@suse.de
I'm not sure why ppc is converted to powerpc, it breaks at least $(ARCH) in klibc. gcc -dumpmachine powerpc-suse-linux
2005-04-26[PATCH] Build failure - missing linux/limits.h include?arnd@arndb.de
On Tuesday 25 November 2003 00:12, Chris Larson wrote: > udev fails to compile here unless I'm doing a KLIBC build.  The reason > appears to be that the normal limits.h in the gcc inc dir doesn't pull > in linux/limits.h, whereas the limits.h out in the klibc include dirs > does.  I'd think it'd be best to add a #include <linux/limits.h> to > udev.h directly, since it uses PATH_MAX. No, don't include kernel headers directly if you can avoid it. The problem you are referring to seems to be with old tool chains, I have the same symptom with my s390 gcc-2.95/glibc-2.1.3. Including <sys/param.h> instead of <limits.h> seems to fix it.
2005-04-26[PATCH] udev-007/extras/multipath updatechristophe.varoqui@free.fr
here is a clean-up patch : * removes sg_err.[ch] deps * makes sure the core code play nice with klibc * port the sysfs calls to dlist helpers * links against udev's sysfs (need libsysfs.a & dlist.a) * finally define DM_TARGET as "multipath" as Joe posted the code today (not tested yet) * push version forward (do you want it in sync with udev version?) libdevmapper doesn't play well with klibc, so I wasn't able to produce a static binary yet. Help needed here ... as I don't want to fall back to merge libdevmapper code in the core. It compiles here and doesn't segfault.
2005-04-26[PATCH] fix udev parallel builds with klibcpatmans@us.ibm.com
I can't build udev with make -j9. Here's a patch to fix it.
2005-04-26[PATCH] add test for checking the BUS value.greg@kroah.com
2005-04-26[PATCH] fix problem where we were not looking at the BUS value.greg@kroah.com
2005-04-26[PATCH] quick fix for libsysfs busdsteklof@us.ibm.com
There seems to be a mismatch in udev and in libsysfs as to what to expect if the mnt point has a slash on the end or not. If I use the included patch, it breaks something in udev. If I patch sysfs_get_mnt_path I break udev as well because what you're expecting. I need to sit down and go through the library and creaate a rule as to trailing slashes. Adding the env brought this to light.
2005-04-26[PATCH] libsysfs changes for sysfsutils 0.3.0dsteklof@us.ibm.com
Here's the patch to up the library to the sysfsutils-0_3_0 level. The following changes: 1) adds class name to sysfs_class_device structure 2) adds bus to sysfs_device 3) gets rid of code that made assumptions as to bus addresses being unique across buses, which isn't the case. I still owe you: 1) change getpagesize->sysconf. This is in the CVS tree and part of other changes we're currently testing. Patch will follow. 2) you need a function to get a sysfs_class_device's parent. We hadn't considered class devices to have parents, the one example of a multilevel is the block class. We will add this function and send the patch to you.
2005-04-26[PATCH] add test and documentation for new %D devfs format modifiergreg@kroah.com
2005-04-26[PATCH] Add format modifier for devfs like namingarnd@arndb.de
On Monday 24 November 2003 01:29, Greg KH wrote: > I think with the ability to capture the output of the CALLOUT rule, > combined with the ability to put format modifiers in the CALLOUT program > string, we now have everything in place to emulate the existing devfs > naming scheme. Anyone want to verify this or not? I would prefer to have the ability of creating partition nodes in devfs style built-in to udev. Devfs used to call the whole disk e.g. "/dev/dasd/0123/disk" and the partitions "/dev/dasd/0123/part[1-3]". This can obviously be done with a CALLOUT rule, but its common enough to make it a format modifier. AFAIK, this scheme has been used for ide, scsi and dasd disks, which is about 99% of all disks ever connected to Linux.
2005-04-26[PATCH] more config file parsing robustnessazarah@nosferatu.za.org
udev kept on segfaulting when it was in use, and not having the time (and building it with DEBUG=true showing nothing), I have not tracked it until tonight. Seems like I made a type-o, and forgotten the ':' between one line's group and permission parameters. Attached patch should stop the segfault, and warn at that at least.
2005-04-26[PATCH] changed the default location of the database to /udev/.udev.tdb to ↵greg@kroah.com
be LSB compliant Finally the Debian people can get off my back...
2005-04-26[PATCH] udev.8 tweak numeric id textkay.sievers@vrfy.org
04-udev.8-tweak-numeric-id-text.diff o change "return value" to "returned string" o add textual owner/group example for udev.permissions o mention klibc compile as special case for udev.permissions o remove duplicated numeric owner clause