- 02 Aug, 2002 2 commits
-
-
Patrick Mochel authored
These behave identically to device attribute files, but with different types. We get struct bus_attribute, and a macro, BUS_ATTR for declaring attributes. It takes the same parameters as DEVICE_ATTR, though the callbacks for bus attributes take a struct bus_type as the first parameter.
-
Patrick Mochel authored
This cleans up the drivers/base/ files, so they deal mainly with registration. It also provides a good place to put the glue needed for bus and driver files in driverfs.
-
- 01 Aug, 2002 6 commits
-
-
Patrick Mochel authored
into osdl.org:/home/mochel/src/kernel/devel/linux-2.5-driverfs-api
-
Patrick Mochel authored
In order to read/write attributes, you have to deal directly with the object that owns them. driverfs really wants to be generic and not deal directly with those objects. So, we create an intermediate layer that subsystems must implement that converts between the generic objects and the specific objects that own the attributes. This allows allows attributes to be exported for any object type. In doing so, it places the responsibility on the subsystems to do the following: - define their own object-specific attribute structures - define their own driverfs_ops - set the ops pointer in struct driver_dir_entry when creating an object's directory - do object reference counting on open() and close() - call the show() and store() callbacks of their attribute structure - convert between the generic objects and the specific objects from the struct driver_dir_entry and struct attribute pointers (using container_of) The implementation of this layer for struct device is intended to be used as an example of the interface. Because this layer of abstraction is now in place, we can move the device attribute structure into include/linux/device.h, and driverfs should be free of references to it completely.
-
Patrick Mochel authored
driverfs can only handle passing struct device to read/write functions. In order to free it of this limitation, we need a common data structure for driverfs to pass around. The only thing that driverfs really needs are the name and mode of the file, which are now located in struct attribute. struct device_attribute gets a struct attribute member, which holds the name and mode. With the DEVICE_ATTR macro, users of the structure require no modification. device_create_file is modified to take a struct attribute parameter a to_dev_attr() macro is introduced to convert between a struct attribute to a struct device_attribute
-
Patrick Mochel authored
DEVICE_ATTR macro.
-
Patrick Mochel authored
(hide internal format of the structure)
-
Trond Myklebust authored
Changeset 1.403.142.29 introduces a pretty nasty race into the RPC code. Once we've decoded the RPC reply, it needs to be protected against being overwritten by any resends. The following patch achieves this by ensuring that the request is removed from the list xprt->recv in xprt_complete_rqst(). This again ensures that xprt_lookup_rqst() will fail to find that request until we put it back on the list.
-
- 31 Jul, 2002 10 commits
-
-
Linus Torvalds authored
bogus dentry pointer to the VFS layer (which would oops on it inside the dcache lock).
-
Linus Torvalds authored
the d_drop is appropriate.
-
Linus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
Andrew Morton authored
Linus, can we please not have that BUG() in 2.5.30?
-
David Brownell authored
One of the flakey things I see with 2.5.29 is that many devices give trouble enumerating. uhci still oopses khubd enumerating pegasus (many control message errors first). But that's not the only troublesome combo. This patch fixes a failure that would hang the ohci driver It's basically avoiding a few less IRQs (most noticable with ISO), in this case so that a wedged SET_ADDRESS completes. (Instead of hanging khubd in 'D' state.) And it also updates a diagnostic to provide more troubleshooting help for similar issues in the future.
-
Rusty Russell authored
Linus, please apply. This fixes cpu_possible() on x86.
-
Trond Myklebust authored
The following patches to nfs2xdr.c/nfs3xdr.c might be relevant: *entry points into the page, and so the assignment should be made before we kunmap(). Also includes a patch that converts references to inode->i_data into inode->i_mapping. Not likely to be the source of your hang, but should still be done for consistency with the rest of the kernel.
-
Trond Myklebust authored
One more lookup bug caught. Fix missing unlock_kernel() when doing readdirplus cached lookups in nfs_lookup().
-
Patrick Mochel authored
-
Patrick Mochel authored
make device_remove_file take a struct device_attribute *, instead of just a char * (for consistency with device_create_file)
-
- 30 Jul, 2002 22 commits
-
-
Patrick Mochel authored
API is just about to change...)
-
Patrick Mochel authored
do a s/driver_file_entry/device_attribute/g on all of them.
-
Patrick Mochel authored
It may seem gratuitous, but it's what we really want. driverfs files are meant to expose attributes of various kernel objects, so in that sense, the change adds more accurate meaning to the object. Plus, we will soon gain the ability to expose attributes of drivers (both device and bus) themselves, and we want to be able to have each mean something reasonable. This changes driverfs and the device model core (but none of the other users)
-
Patrick Mochel authored
symlinks now only use the name field of the struct driver_file_entry, so instead of allocating a new one each time we want to create one, this changes the API to only accept the name (since the driverfs core will never use the other fields either) This also guarantees that we won't leak the memory for the entry when the device goes away: Since the other entries aren't dynamically allocated, and driverfs doesn't free them, we would have to free them ourselves. It's not really necessary, so this is another win for us.
-
Patrick Mochel authored
-
Patrick Mochel authored
Now that all unique information about struct driver_file_entry's are gone (the dentry and parent pointers), the data in them is shared among all users of the entry. So, we don't have any reason to dynamically allocate and duplicate the data anymore.
-
bk://ldm@bkbits.net/linux-2.5-driverfsPatrick Mochel authored
into osdl.org:/home/mochel/src/kernel/devel/linux-2.5-driverfs
-
Linus Torvalds authored
copy_process() just copies the process, it doesn't actually start it. This is in preparation for doing a "atomically start process on CPU X" or other cases where we want to change the state of the process before we actually start running it.
-
Martin Dalecki authored
- Include first cut by Adam J. Richter on proper lock protection for tuning functions. - Rename ide_register_subdriver() to ata_register_device() and ide_unregister_subdriver() accordingly to ata_unregister_device(), since this is reflecting better what those functions are about. - Remove tons of "curicum vite" style useless documentation here and there.
-
Martin Dalecki authored
- typedef unsigned char byte; is finally gone. Everything using it should be just ported to u8 if I missed some place where it still gets used. - Next round of parameter parsing cleanups by Gerald Champagne. Adjusted a bit to harmonize with hd.c. - Move IDE register bitfields declarations over from hdparm.h to ide.h. - Declare constants needed by hd.c directly there. Those are standard values not subject to change and we prefer a bit of code duplication in favour of making the two drivers independant from each other. - Move everything not ioctl related away from hdreg.h to ide.h. This header is in effect not private to the ATA code and should therefore not contain stuff only usefull there.
-
Alan Cox authored
The CS5530 one seems unneeded looking at the databook. Try the patch below instead, which removes the irq lock and uses the proper kernel functions to enable MWI and master.
-
Marcel Holtmann authored
This updates the 2.5.x PC Card drivers of the Bluetooth subsystem.
-
Patrick Mochel authored
of the directory itself
-
Patrick Mochel authored
to access the struct device, rather than via struct driver_file_entry::parent pointer.
-
Patrick Mochel authored
driverfs: Don't put the driver_file_entry in struct inode::u.generic_ip or struct file::private_data (since it's already in struct dentry::d_fsdata and we always get to that)
-
Patrick Mochel authored
for anything useful anymore.
-
Patrick Mochel authored
-
Patrick Mochel authored
as we don't use the lists anymore
-
Patrick Mochel authored
driverfs: Do hashed lookup of dentry's when deleting a driverfs file (instead of searching the list we keep)
-
Patrick Mochel authored
into osdl.org:/home/mochel/src/kernel/devel/linux-2.5-driverfs
-
bk://ncpfs.bkbits.net/linux-2.5Linus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
Petr Vandrovec authored
-