Commit graph

440 commits

Author SHA1 Message Date
greg@kroah.com bb513a064c [PATCH] 014_bk mark 2005-04-26 21:13:17 -07:00
greg@kroah.com f2ec8f1a7f [PATCH] 014 release 2005-04-26 21:13:17 -07:00
greg@kroah.com 267f534d1c [PATCH] misc code cleanups. 2005-04-26 21:13:17 -07:00
christophe.varoqui@free.fr 069bd53012 [PATCH] udev-013/extras/multipath update
incremental to 0.0.13,

* update the DM target synthax to the 2.6.0-udm5 style
* update the changelog and the doc to reflect minimal requirements
2005-04-26 21:13:17 -07:00
greg@kroah.com f10fec8197 [PATCH] fixup logging.h to handle different logging options properly.
Thanks to Olaf Hering <olh@suse.de> for the error message.
2005-04-26 21:13:17 -07:00
kay.sievers@vrfy.org be9b51f663 [PATCH] udev - program to query all device attributes to build a rule
On Sun, Jan 18, 2004 at 07:30:50AM +0100, Kay Sievers wrote:
> Hi,
> here is a small program to query all attributes of a device and
> print these in the udev key format. It may help to get the keys to
> define a rule.

Fixed a typo - the sysfs_device is right now.

USB FLash Reader:
    kay@pim:~/src/udev.kay$ extras/udevinfo/udevinfo /sys/block/sda/sda1

    device '/sys/block/sda/sda1' has major:minor 8:1

    looking at class device '/sys/block/sda/sda1':
      SYSFS_dev="8:1"
      SYSFS_start="32"
      SYSFS_size="160"
      SYSFS_stat="       0        0        0        0"

    follow class device's "device" link '/sys/block/sda':
      BUS="scsi"
      ID="57:0:0:0"
      SYSFS_detach_state="0"
      SYSFS_type="0"
      SYSFS_device_blocked="0"
      SYSFS_queue_depth="1"
      SYSFS_scsi_level="3"
      SYSFS_vendor="SMSC    "
      SYSFS_model="USB 2 HS-CF"
      SYSFS_rev="1.25"
      SYSFS_online="1"
2005-04-26 21:13:17 -07:00
kay.sievers@vrfy.org 765cbd9759 [PATCH] set default owner/group in db - update
I've edited the man page today, so this is alreay included :)

Also a few more trivials:
  o added the defaults to udev.conf.in
  o removed class_dev from get_default_mode(), to match with Hanna's
  o changed size of mode_str to MODE_SIZE
  o changed a few char compares from from 0x00 to '\0'
2005-04-26 21:13:17 -07:00
hannal@us.ibm.com 74c73ef994 [PATCH] set default owner/group in db.
This patch fixes a bug where the udev database stored empty strings
for Owner and Group if they were default. This patch stores the default
value into the database if not set otherwise. See example output:


crw-------    1 root     root       4,  65 Jan 16 11:13 ttyS1

P: /class/tty/ttyS1
N: ttyS1
S:
O: root
G: root

This is a bit of a hack. However, until udev supports setting the
o/g values they will be root/root anyway so the database might as
well reflect the truth instead of empty strings.
2005-04-26 21:13:17 -07:00
kay.sievers@vrfy.org b2a21a3547 [PATCH] udev - reverse user query options
Here we get the ability to query with the name of the node instead of
the device path. It uses a linear search over the whole database.

  kay@pim:~/src/udev.kay$ ./udev -q path -n video/webcam0
  /class/video4linux/video0


New version, with better function return codes for error handling.
2005-04-26 21:13:17 -07:00
kay.sievers@vrfy.org 7780509143 [PATCH] udev - kill %D from udev-test.pl
Kill the two tests with %D.
2005-04-26 21:13:17 -07:00
patmans@us.ibm.com e996d97835 [PATCH] update udev scsi_id to scsi_id 0.3 2005-04-26 21:13:17 -07:00
hannal@us.ibm.com eb7a964a7c [PATCH] small cut n paste error fix 2005-04-26 21:13:17 -07:00
greg@kroah.com 0523018487 [PATCH] clean up the logging patch a bit to make the option more like the other options.
Also documented it and added it to the .spec file.
2005-04-26 21:13:17 -07:00
kay.sievers@vrfy.org 54988802b7 [PATCH] add udev logging to info log
On Thu, Jan 15, 2004 at 05:14:16AM +0100, Kay Sievers wrote:
> On Wed, Jan 14, 2004 at 01:10:43PM -0800, Greg KH wrote:
> > On Wed, Jan 14, 2004 at 02:34:26PM -0600, Clay Haapala wrote:
> > > On Wed, 14 Jan 2004, Chris Friesen spake thusly:
> > > >
> > > > Maybe for ones with a matching rule, you could print something like:
> > > >
> > > >
> > > Is the act of printing/syslogging a rule in an of itself?
> >
> > No, as currently the only way stuff ends up in the syslog is if
> > DEBUG=true is used on the build line.
> >
> > But it's sounding like we might want to change that... :)
>
> How about this in the syslog after connect/disconnect?
>
>   Jan 15 05:07:45 pim udev[28007]: configured rule in '/etc/udev/udev.rules' at line 17 applied, 'video*' becomes 'video/webcam%n'
>   Jan 15 05:07:45 pim udev[28007]: creating device node '/udev/video/webcam0'
>   Jan 15 05:07:47 pim udev[28015]: removing device node '/udev/video/webcam0'

Here is a slightly better version. I've created a logging.h file and
moved the debug macros from udev.h in there.

If you type:

  'make'            - you will get a binary that prints one or two lines to syslog
                      if a device node is created or deleted

  'make LOG=false'  - you get a binary that prints asolutely nothing

  'make DEBUG=true' - the same as today, it will print all debug lines
2005-04-26 21:13:17 -07:00
flamingice@sourmilk.net 5e4f123888 [PATCH] minor patch for devfs rules
I've attached a patch that adds a few rules to udev.rules.devfs, making it
look a little more like devfs on my system. (I have the sysfs patches from
2.6.1-rc1-mm2) I added rules for oss, misc, floppy, and input devices. The
oss rules look like trouble with a wildcard at the end of each name, but I'm
not sure how I can make it any better.

Devfs has a bunch of other devices in the floppy directory for floppies
formatted in unusual ways, but I don't see them in udev. Not that I ever used
them, since they're usually automatically detected.
2005-04-26 21:13:16 -07:00
greg@kroah.com 18f0045bc8 [PATCH] remove the %D modifier as it is not longer needed. 2005-04-26 21:13:16 -07:00
greg@kroah.com 45d57088f9 [PATCH] remove unneeded keyboard rule. 2005-04-26 21:13:16 -07:00
greg@kroah.com f130b15645 [PATCH] add usb_host and pci_bus to the class blacklist. 2005-04-26 21:13:16 -07:00
ananthmg@rediffmail.com 616a707807 [PATCH] libsysfs update for refresh + namedev.c changes
Please find inlined a patch which contains updates to libsysfs
(pre-release) for refresh and also changes to namedev.c to take
advantage of it.
2005-04-26 21:13:16 -07:00
greg@kroah.com 1782087e4f [PATCH] added input device rules to udev.rules and udev.rules.devfs 2005-04-26 21:13:16 -07:00
kay.sievers@vrfy.org b6864b4bf1 [PATCH] udev - mention format string escape char in man page
If we want to pass any '%' down to a program, you need to ecape it by '%%',
otherwise we try to expand it with our own format char list.
2005-04-26 21:13:16 -07:00
greg@kroah.com 78812b99d3 [PATCH] 013_bk mark 2005-04-26 21:13:16 -07:00
greg@kroah.com c58ffe501c [PATCH] v013 release 2005-04-26 21:13:16 -07:00
greg@kroah.com 542bd1c015 [PATCH] update TODO with some new, small items. 2005-04-26 21:13:16 -07:00
kay.sievers@vrfy.org 68e07a2b07 [PATCH] fix klibc with printf() and gcc
On Mon, Jan 12, 2004 at 05:04:45PM -0800, Greg KH wrote:
> Very nice, applied.  But I did have to make one small change to get the
> code to build properly with klibc:
>
> > +static void print_record(char *path, struct udevice *dev)
> > +{
> > +	printf("P: %s\n", path);
> > +	printf("N: %s\n", dev->name);
> > +	printf("S: %s\n", dev->symlink);
> > +	printf("O: %s\n", dev->owner);
> > +	printf("G: %s\n", dev->group);
> > +	printf("\n");
> > +}
>
> Turns out that gcc likes to convert single character printf() calls to
> putchar() which is only defined in klibc as a macro :(

Just for information. This seems to fix the gcc with klibc :)
2005-04-26 21:13:16 -07:00
greg@kroah.com c03e2c6f5f [PATCH] Cset exclude: greg@kroah.com|ChangeSet|20040113010256|48515 2005-04-26 21:13:16 -07:00
kay.sievers@vrfy.org 33084f1e2a [PATCH] udev - small script optimization
Optimize the scripts reflecting the now more powerful rule logic,
cause we can combine all known fields now in any order:

  The ide-devfs.sh is only executed if the kernel name matches with 'hd*':

    BUS="ide", KERNEL="hd*", PROGRAM="/etc/udev/ide-devfs.sh %k %b %n", NAME="%k", SYMLINK="%1c %2c"

  The name_cdrom.pl is only executed for ide and scsi devices, but not for a partition.
  It exits with nonzero to skip the rule if the CD is not found:

    KERNEL="[hs]d[a-z]", PROGRAM="name_cdrom.pl %M %m", NAME="%1c", SYMLINK="cdrom"
2005-04-26 21:13:16 -07:00
kay.sievers@vrfy.org 8ffb636f01 [PATCH] udev - introduce format escape char
This patch adds a '%' to the format char list, so that a external
program may called with a non expanded '%' like:

  PROGRAM="/bin/date +%%s"

Olaf Hering asked for the feature.
A tricky test is also added :)
2005-04-26 21:13:16 -07:00
kay.sievers@vrfy.org e68faf511d [PATCH] udev - more CALLOUT is PROGRAM now
On Tue, Jan 13, 2004 at 02:45:17AM +0100, Kay Sievers wrote:
> replace CALLOUT by PROGRAM and fix old rule format

One is missing.
2005-04-26 21:13:16 -07:00
kay.sievers@vrfy.org 7e5f7397f9 [PATCH] udev - CALLOUT is PROGRAM now
replace CALLOUT by PROGRAM and fix old rule format
2005-04-26 21:13:16 -07:00
greg@kroah.com 9ab314222d [PATCH] update the README in a few places. 2005-04-26 21:13:16 -07:00
greg@kroah.com 2ebcaa235f [PATCH] fix -d typo in the manpage update 2005-04-26 21:13:15 -07:00
kay.sievers@vrfy.org 4bd46ac7e5 [PATCH] update documentation for new config file format
Here is the man page update after my udev-weekend :)
2005-04-26 21:13:15 -07:00
greg@kroah.com 79c3cb65f8 [PATCH] Fix stupid gcc "optimization" of 1 character printk() calls.... Ick... 2005-04-26 21:13:15 -07:00
kay.sievers@vrfy.org ee1db00d07 [PATCH] more advanced user query options
Here is the '-h' and a '-d' to dump the whole database:

  kay@pim:~/src/udev.kay$ ./udev -d
  P: /block/hdb/hdb1
  N: hdb1
  S:
  O:
  G:

  P: /class/video4linux/video0
  N: video/webcam0
  S: camera0 kamera0
  O: 500
  G: 500

  P: /block/hdc
  N: hdc
  S:
  O:
  G:
2005-04-26 21:13:15 -07:00
kay.sievers@vrfy.org a2505f4d1d [PATCH] udev - simple debug tweak
change the empty debug string:
  Jan 13 00:55:42 pim udev[2849]: namedev_name_device: found matching rule, 'video*' becomes ''

to something useful:
  Jan 13 01:00:23 pim udev[3234]: namedev_name_device: found matching rule, 'video*' becomes 'video/webcam%n'
2005-04-26 21:13:15 -07:00
greg@kroah.com 1eefb969ab [PATCH] oops, forgot to fix up the PROGRAM result from ID to RESULT in the config files. 2005-04-26 21:13:15 -07:00
elkropac@students.zcu.cz 655f414dde [PATCH] fix udev directory for Debian init script
there is also patch on debian init.d file, it uses variable $udev_dir
also when creating and removing symlinks
2005-04-26 21:13:15 -07:00
greg@kroah.com 86673eb3ed [PATCH] Add alsa device rules and a few other devfs rules.
Thanks to Libor Klepac <elkropac@students.zcu.cz> for the information
2005-04-26 21:13:15 -07:00
greg@kroah.com 1f7148c7df [PATCH] fix a few stale comments in namedev.c 2005-04-26 21:13:15 -07:00
greg@kroah.com 71cf391508 [PATCH] convert the default rules files to the new format. 2005-04-26 21:13:15 -07:00
greg@kroah.com c38b796be9 [PATCH] convert the test shell scripts to the config file format. 2005-04-26 21:13:15 -07:00
greg@kroah.com b7824727a0 [PATCH] add bus test for usb-serial bus. 2005-04-26 21:13:15 -07:00
greg@kroah.com 851cd18d81 [PATCH] Add some helpful messages if the user uses the older config file format
Also fail a rule that we can not parse, as we can easily create incorrect rules
if we do not do this.
2005-04-26 21:13:15 -07:00
kay.sievers@vrfy.org ac28b86d63 [PATCH] udev - drop all methods :)
> Hi,
> as promised yesterday, here is a patch that drops the explicit methods
> given in the udev config and implement only one type of rule.
>
> A rule now consists only of a number of keys to match. All known keys
> are valid in any combination. The former configs should work with a few
> changes:
>
>   o the "<METHOD>, " at the beginning of the line should be removed
>
>   o the result of the externel program is matched with RESULT= instead if ID=
>     the PROGRAM= key is only valid if the program exits with zero
>     (just exit with nozero in a script if the rule should not match)
>
>   o rules are processed in order they appear in the file, no priority
>
>   o if NAME="" is given, udev is instructed to ignore this device,
>     no node will be created
>
>
>   EXAMPLE:
>
>   # combined BUS, SYSFS and KERNEL
>   BUS="usb", KERNEL="video*", SYSFS_model="Creative Labs WebCam*", NAME="test/webcam%n"
>
>   # exec script only for the first ide drive (hda), all other will be skipped
>   BUS="ide", KERNEL="hda*", PROGRAM="/home/kay/src/udev.kay/extras/ide-devfs.sh %k %b %n", RESULT="hd*", NAME="%1c", SYMLINK="%2c %3c"
>
>
> The udev-test.pl and test.block works fine here.
> Please adapt your config and give it a try.
>


Here is a slightly better version of the patch.
After a conversation with Patrick, we are now able to execute the PROGRAM
and also match in all following rules with the RESULT value from this exec.


EXAMPLE:
  We have 7 rules with RESULT and 2 with PROGRAM.
  Only the 5th rule matches with the callout result from the exec in the 4th rule.

RULES:
  PROGRAM="/bin/echo abc", RESULT="no_match", NAME="web-no-2"
  KERNEL="video*", RESULT="123", NAME="web-no-3"
  KERNEL="video*", RESULT="123", NAME="web-no-4"
  PROGRAM="/bin/echo 123", RESULT="no_match", NAME="web-no-5"
  KERNEL="video*", RESULT="123", NAME="web-yes"


RESULT:
  Jan 11 23:36:52 pim udev[26050]: namedev_name_device: process rule
  Jan 11 23:36:52 pim udev[26050]: namedev_name_device: check PROGRAM
  Jan 11 23:36:52 pim udev[26050]: execute_program: executing '/bin/echo abc'
  Jan 11 23:36:52 pim udev[26050]: execute_program: result is 'abc'
  Jan 11 23:36:52 pim udev[26050]: namedev_name_device: PROGRAM returned successful
  Jan 11 23:36:52 pim udev[26050]: namedev_name_device: check for RESULT dev->result='no_match', udev->program_result='abc'
  Jan 11 23:36:52 pim udev[26050]: namedev_name_device: RESULT is not matching
  Jan 11 23:36:52 pim udev[26050]: namedev_name_device: process rule
  Jan 11 23:36:52 pim udev[26050]: namedev_name_device: check for KERNEL dev->kernel='video*' class_dev->name='video0'
  Jan 11 23:36:52 pim udev[26050]: namedev_name_device: KERNEL matches
  Jan 11 23:36:52 pim udev[26050]: namedev_name_device: check for RESULT dev->result='123', udev->program_result='abc'
  Jan 11 23:36:52 pim udev[26050]: namedev_name_device: RESULT is not matching
  Jan 11 23:36:52 pim udev[26050]: namedev_name_device: process rule
  Jan 11 23:36:52 pim udev[26050]: namedev_name_device: check for KERNEL dev->kernel='video*' class_dev->name='video0'
  Jan 11 23:36:52 pim udev[26050]: namedev_name_device: KERNEL matches
  Jan 11 23:36:52 pim udev[26050]: namedev_name_device: check for RESULT dev->result='123', udev->program_result='abc'
  Jan 11 23:36:52 pim udev[26050]: namedev_name_device: RESULT is not matching
  Jan 11 23:36:52 pim udev[26050]: namedev_name_device: process rule
  Jan 11 23:36:52 pim udev[26050]: namedev_name_device: check PROGRAM
  Jan 11 23:36:52 pim udev[26050]: execute_program: executing '/bin/echo 123'
  Jan 11 23:36:52 pim udev[26050]: execute_program: result is '123'
  Jan 11 23:36:52 pim udev[26050]: namedev_name_device: PROGRAM returned successful
  Jan 11 23:36:52 pim udev[26050]: namedev_name_device: check for RESULT dev->result='no_match', udev->program_result='123'
  Jan 11 23:36:52 pim udev[26050]: namedev_name_device: RESULT is not matching
  Jan 11 23:36:52 pim udev[26050]: namedev_name_device: process rule
  Jan 11 23:36:52 pim udev[26050]: namedev_name_device: check for KERNEL dev->kernel='video*' class_dev->name='video0'
  Jan 11 23:36:52 pim udev[26050]: namedev_name_device: KERNEL matches
  Jan 11 23:36:52 pim udev[26050]: namedev_name_device: check for RESULT dev->result='123', udev->program_result='123'
  Jan 11 23:36:52 pim udev[26050]: namedev_name_device: RESULT matches
  Jan 11 23:36:52 pim udev[26050]: namedev_name_device: found matching rule, 'video*' becomes ''
  Jan 11 23:36:52 pim udev[26050]: namedev_name_device: name, 'web-yes' is going to have owner='', group='', mode = 0600
2005-04-26 21:13:15 -07:00
kay.sievers@vrfy.org 5472beeea5 [PATCH] udev - advanced user query options
This patch improves the user options for udev.
It is possible now to query for the name, the symlinks or owner/group.
If asked for the name of the node we are able to prepend the udev_root
with the -r option.

SAMPLE:

  kay@pim:~/src/udev.test$ ./udev -V
  udev, version 012_bk

  kay@pim:~/src/udev.test$ ./udev -h
  Usage: [-qrVh]
    -q <name>  query database for the specified value
    -p <path>  device path used for query
    -r         print udev root
    -V         print udev version
    -h         print this help text

  kay@pim:~/src/udev.test$ ./udev -r
  /udev/

  kay@pim:~/src/udev.test$ ./udev -q name -p /class/video4linux/video0
  video/webcam0

  kay@pim:~/src/udev.test$ ./udev -q symlink -p /class/video4linux/video0
  camera0 kamera0

  kay@pim:~/src/udev.test$ ./udev -q owner -p /class/video4linux/video0
  501

  kay@pim:~/src/udev.test$ ./udev -r -q name -p /class/video4linux/video0
  /udev/video/webcam0
2005-04-26 21:13:15 -07:00
kay.sievers@vrfy.org 606143c8d2 [PATCH] udev - Makefile error
I get the following error on install:

pim:/home/kay/src/udev.test# make install
sed -e "s:@udevdir@:/udev:" < etc/udev/udev.conf.in > etc/udev/udev.conf
/usr/bin/install -c -d /etc/udev/
/usr/bin/install -c -d /udev
/usr/bin/install -c -d /etc/hotplug.d/default
/usr/bin/install -c -D udev /sbin/udev
/bin/sh: -c: line 2: syntax error: unexpected end of file
make: *** [install] Error 2
2005-04-26 21:13:15 -07:00
eike-hotplug@sf-tec.de e64280b8b3 [PATCH] LSB init script and other stuff
I had too much time during the holidays, so I played a bit with udev. The
changes are like last time mostly on the init stuff. I'm sending you this as
a great diff which is just for comments.

What it does:
-fix a typo in Makefile
-use only one "grep -v" instead of many
-don't include BK-Files into release (shrinks the stuff to 30%!)
-add a new init script which is LSB compliant
-add some flags to choose which one to use
-use /etc/udev/udev.conf in Redhat init script as the source for the udev
directory. If this is not done then the init script may create a directory
which udev itself isn't using (I changed /udev to /Udev to avoid collisions
with /usr and ran into this)
-first check for sysfs_dir before creating udev_root (maybe someone else has
already fixed this, I saw this discussion on lkml)
2005-04-26 21:13:15 -07:00
greg@kroah.com 40041ff4f1 [PATCH] added dri rule to the default config file. 2005-04-26 21:13:15 -07:00
kay.sievers@vrfy.org 41397661c6 [PATCH] udev - make exec_callout() reusable
Here is a patch that switches exec_callout() to be reusable.
I want it to be callable in a different context.
2005-04-26 21:13:15 -07:00