1. 30 Oct, 2002 12 commits
    • Patrick Mochel's avatar
      driver model: convert drivers to use kobject and sysfs. · 8de57ed6
      Patrick Mochel authored
      - add kobject to struct device_driver and register it when drivers are registered
        (as member's of their bus's driver subsystem).
      - convert driverfs callbacks to know about struct kobject.
      - create links from drivers' directories to devices' directories.
      - don't even make driverfs directories for drivers anymore. 
      8de57ed6
    • Patrick Mochel's avatar
      driver model: convert bus drivers to use kobjects and sysfs. · 289609f0
      Patrick Mochel authored
      - create bus subsystem and register on start up.
      - add struct subsystem to struct bus type to get it in the object hierarchy.
      - add device and driver subsystems to struct bus type to give it hierarchy
        like it previously had.
      - convert bus show()/store() callbacks to know about struct kobject.
      - convert bus file creation/removal to use struct kobject.
      - create symlinks from to device directories, like they had in driverfs.
      289609f0
    • Patrick Mochel's avatar
      driver model: convert devices to use kobjects and sysfs. · 77057f5a
      Patrick Mochel authored
      - Define a device subsystem and register it on startup. 
      - Fill it in with fields converted from driverfs-style fields.
      - Convert device_{create,remove}_file() to create files in sysfs. 
      - Add default device attributes to device subsystem.
      - Make sure devices get proper kobject familial pointers and that the kobjects
        are registered. 
       
      77057f5a
    • Patrick Mochel's avatar
      Merge osdl.org:/home/mochel/src/kernel/devel/linux-2.5-virgin · b835de74
      Patrick Mochel authored
      into osdl.org:/home/mochel/src/kernel/devel/linux-2.5-kobject
      b835de74
    • Patrick Mochel's avatar
      kobjects: add array of default attributes to subsystems, and create on registration. · c3f575f0
      Patrick Mochel authored
      struct subsystem may now contain a pointer to a NULL-terminated array of 
      default attributes to be exported when an object is registered with the subsystem.
      kobject registration will check the return values of the directory creation and 
      the creation of each file, and handle it appropriately. 
      
      The documentation has also been updated.
      c3f575f0
    • Patrick Mochel's avatar
      sysfs: kill struct sysfs_dir. · 332ad69d
      Patrick Mochel authored
      Previously, sysfs read() and write() calls looked for sysfs_ops in the struct 
      sysfs_dir, in the kobject. Since objects belong to a subsystem, and is a member
      of a group of like devices, the sysfs_ops have been moved to struct subsystem,
      and are referenced from there.
      
      The only remaining member of struct sysfs_dir is the dentry of the object's 
      directory. That is moved out of the dir struct and directly into struct kobject.
      That saves us 4 bytes/object.
      
      All of the sysfs functions that referenced the struct have been changed to just
      reference the dentry.
      332ad69d
    • Patrick Mochel's avatar
      Introduce struct subsystem. · a6c066de
      Patrick Mochel authored
      A struct subsystem is basically a collection of objects of a certain type,
      and some callbacks to operate on objects of that type. 
      
      subsystems contain embedded kobjects themselves, and have a similar set of 
      library routines that kobjects do, which are mostly just wrappers for the
      correlating kobject routines. 
      
      kobjects are inserted in depth-first order into their subsystem's list of 
      objects. Orphan kobjects are also given foster parents that point to their
      subsystem. This provides a bit more rigidity in the hierarchy, and disallows
      any orphan kobjects.
      
      When an object is unregistered, it is removed from its subsystem's list. When
      the objects' refcount hits 0, the subsystem's ->release() callback is called. 
      
      Documentation describing the objects and the interfaces has also been added.
      a6c066de
    • Linus Torvalds's avatar
      Merge bk://linuxusb.bkbits.net/linus-2.5 · 4445b58e
      Linus Torvalds authored
      into home.transmeta.com:/home/torvalds/v2.5/linux
      4445b58e
    • Greg Kroah-Hartman's avatar
    • Alexander Viro's avatar
      [PATCH] loop breakage fix · 96c17710
      Alexander Viro authored
      Got it.  Breakage happened when Jens was switching to partial
      completions - !uptodate is not quite the same as !err ;-)
      
      With this fixed everything seems to work nicely.
      96c17710
    • Linus Torvalds's avatar
      Merge http://linux-isdn.bkbits.net/linux-2.5.isdn · d488b0d4
      Linus Torvalds authored
      into home.transmeta.com:/home/torvalds/v2.5/linux
      d488b0d4
    • Greg Kroah-Hartman's avatar
      Merge kroah.com:/home/linux/linux/BK/bleeding-2.5 · 207dccc3
      Greg Kroah-Hartman authored
      into kroah.com:/home/linux/linux/BK/gregkh-2.5
      207dccc3
  2. 29 Oct, 2002 28 commits