- 07 Aug, 2003 2 commits
-
-
Patrick Mochel authored
- Split calls into - device_pm_suspend() [ Saving device state. ] - device_pm_power_down() [ Powering devices down. ] - device_pm_power_up() [ Powering devices up. ] - device_pm_resume() [ Restoring device state. ] - Walk local dpm_active list when suspending devices, and move devices to dpm_suspended list when ->suspend() is called. - Walk dpm_suspended list to power down devices (with interrrupts enabled.) - Try to power down devices with IRQs on. - If they succeed, move them to dpm_off list. - If they return -EAGAIN, move them to dpm_off_irq list. - Disable interrupts and suspend devices needed interrupts off. - Do converse on resume - power on devices that need interrupts off and move them to dpm_suspended. - Enable interrupts. - Power on all other devices and move them to dpm_suspended. - Restore state of all devices and move them to dpm_active.
-
Patrick Mochel authored
into osdl.org:/home/mochel/src/kernel/devel/linux-2.5-power
-
- 06 Aug, 2003 8 commits
-
-
Jens Axboe authored
To be able to properly be able to keep references to block queues, we make blk_init_queue() return the queue that it initialized, and let it be independently allocated and then cleaned up on the last reference. I have grepped high and low, and there really shouldn't be any broken uses of blk_init_queue() in the kernel drivers left. The added bonus being blk_init_queue() error checking is explicit now, most of the drivers were broken in this regard (even IDE/SCSI). No drivers have embedded request queue structures. Drivers that don't use blk_init_queue() but blk_queue_make_request(), should allocate the queue with blk_alloc_queue(gfp_mask). I've converted all of them to do that, too. They can call blk_cleanup_queue() now too, using the define blk_put_queue() is probably cleaner though.
-
bk://kernel.bkbits.net/davem/net-2.5Linus Torvalds authored
into home.osdl.org:/home/torvalds/v2.5/linux
-
Jens Axboe authored
This patch fixes the BIO_RW_AHEAD being tested at the wrong end in the bio layer.
-
Andrew Morton authored
The problem with PF_READAHEAD is that if someone does a non-GFP_ATOMIC memory allocation we can enter page reclaim and then call writepage, while PF_READAHEAD is set. The block layer then drops writes or the wrong reads on the floor. It can cause data loss. A fix is complex (well, intrusive). Given that the readahead code is now skipping the entire readahead attempt if the queue is congested, the setting of PF_READAHEAD probably is not doing anything useful anyway, so simply remove it.
-
Dave Jones authored
There seemed to be increase in Athlon users reporting MCEs in 2.6 that they never saw in 2.4 and I didn't buy the "2.6 pushes hardware harder" for a second given folks are running 2.4+preempt+O(1) etc patchkits without problems. So I did a mini-audit of the mcheck code. How embarressing. Another fix that went into 2.4 that never made it forward. Once I'm done with various Red Hat administrivia I'll see if I can devote some time to going through the changesets mailing list. I wonder just how many other really stupid bugs like this got fixed and not brought forward.
-
David S. Miller authored
into kernel.bkbits.net:/home/davem/net-2.5
-
bk://cifs.bkbits.net/linux-2.5cifsLinus Torvalds authored
into home.osdl.org:/home/torvalds/v2.5/linux
-
bk://bk.arm.linux.org.uk/linux-2.5-pcmciaLinus Torvalds authored
into home.osdl.org:/home/torvalds/v2.5/linux
-
- 07 Aug, 2003 3 commits
-
-
Russell King authored
In order to properly track down who needs to program the IRQ MUX register, add the subsystem vendor and device IDs to the kernel message indicating discovery of the cardbus bridge.
-
Russell King authored
The IRQ steering code operates too early at present, and actually prevents us detecting ISA interrupts. We should not touch the IRQ MUX register on TI bridges - only the machine itself knows the right value for this. The kernel doesn't have the knowledge to know what function the cardbus controllers multi-function pins have been assigned by the hardware manufacturer.
-
Russell King authored
Currently, yenta does not try to clean up after an error occurs while initialising a cardbus socket. This cset ensures that we release resources. We also claim the cardbus MMIO memory resource.
-
- 06 Aug, 2003 17 commits
-
-
Adam Belay authored
pnp_x_valid returns 1 if valid. Therefore we should be using !pnp_port_valid. Also cleans up some formatting issues.
-
David S. Miller authored
into nuts.ninka.net:/home/davem/src/BK/net-2.5
-
Patrick Mochel authored
- struct device_pm_info - Defined in include/linux/pm.h. - Statically allocated in struct device (->power) - Body is empty if CONFIG_PM=n - deivce_pm_{add,remove} - Called from device_{add,del} respectively. - Adds device to internal list of power managed objects and creates attribute group for device. (Group currently empty, but placeholder directory is created for now) - Are defined as empty statc inline's when CONFIG_PM=n.
-
http://linux-lksctp.bkbits.net/lksctp-2.5David S. Miller authored
into nuts.ninka.net:/home/davem/src/BK/net-2.5
-
Stephen Hemminger authored
Convert X.25 async driver to have dynamic net_device's. This driver is a lot like SLIP so the code changes were similar. - Added similar locking to SLIP - replaced code that snooped for MTU changes with the net_device change mtu callback. - cleaned up the statistics by using the net_device_stats structure. Patch is against 2.6.0-test2. Not sure if anyone ever uses this. I tested by bringing up an x.25 async line using a modified version of slattach.
-
Stephen Hemminger authored
The conversion from cli/sti to locking in X.25 must not have been tested on a real SMP with memory debugging enabled. It OOPS right away if I do: modprobe x25; ifconfig -a The problem is that it dereferences the socket after it has already been freed. The fix for this is to make the call to sock_put, later in x25_destroy_socket do the free. Also, need a go to avoid references in x25_release.
-
Stephen Hemminger authored
This patch is against 2.6.0-test2. The problem is that the ax25_destroy_socket function frees the socket buffer, but then ax25_release dereferences this causing an OOPS. To reproduce: modprobe ax25; ifconfig -a Replaced sk_free with sock_put which will free if this is the last reference.
-
Stephen Hemminger authored
The existing ROSE /proc interface has no module owner, and doesn't check for bounds overflow. Easier to just convert it to the seq_file wrapper functions. This patch is against 2.6.0-test2 (offsets assume earlier patch).
-
Stephen Hemminger authored
This patch changes the ROSE protocol to allocate an array of pointers and each network device separately. This sets up later change where network_device object's are released on last use which may be after the module is unloaded. The patch is against 2.6.0-test2 (though this code hasn't changed in a long time). Allocation is done via alloc_netdev so the dev->priv area is already reserved and doesn't need to be allocated separately.
-
Patrick Mochel authored
into osdl.org:/home/mochel/src/kernel/devel/linux-2.5-power
-
Patrick Mochel authored
Attribute groups provide the ability to register a set of sysfs attributes for a kobject all at once, and optionally create a subdirectory to hold them. The constructs are simple: struct attribute_group { char * name; struct attribute * attrs; }; int sysfs_create_group(struct kobject *, struct attribute_group *); void sysfs_remove_group(struct kobject *, struct attribute_group *); If ->name is not NULL, then we create a subdirectory of that name to hold the attributes. We then iterate over ->attrs and create a file for each, in the subdirectory if we created one. This prevents one from having to register a kobject (and define a new kobj_type) to create a subdirectory for a group of attributes. Attributes currently defined in that way can be converted to use attribute_groups easily, with one caveat: The attributes that are added for a kobject, even if in a subdirectory, must be declared as the high-level attribute type (with an embedded struct attribute) for the kobject, and conform to the kobj_type's calling convention for reading/writing attributes. The kobject that you're creating attributes for owns the directory, and will assume ownership of the subdirectory. sysfs will reference this kobject, and it's kobj_type, when the attribute file is opened to determine the methods for reading/writing the attribute. sysfs will call the kobj_type's show()/store() methods, which will convert the kobject into a high-level object type, and convert the attribute into a high-level attribute type, which (depending on the kobj_type) is expected to have a show() and/or store() method. Note that this makes it only slightly easier to create attributes en masse, though it is a bit technically superior, since it doesn't require a new kobj_type and kobject register. More will come in this area..
-
Patrick Mochel authored
- Create drivers/base/power/ - Move drivers/base/power.c there. - Split into shutdown.c suspend.c and resume.c
-
Patrick Mochel authored
- Move kernel/pm.c to kernel/power/pm.c - Move poweroff sysrq registration to kernel/power/poweroff.c - Mark pm_* functions deprecated to prevent new uers.
-
Steve French authored
-
Patrick Mochel authored
Remove dependency on CONFIG_SOFTWARE_SUSPEND, since CONFIG_ACPI_SLEEP is sufficient. From Pavel Machek.
-
Patrick Mochel authored
From Pavel Machek.
-
Patrick Mochel authored
into osdl.org:/home/mochel/src/kernel/devel/linux-2.5-power
-
- 05 Aug, 2003 10 commits
-
-
Linus Torvalds authored
-
Roland McGrath authored
When a dead detached thread has been temporarily zombified because it's ptraced and its tracer tries to reap it, it deadlocks on SMP. Here's the fix.
-
Neil Brown authored
A recent patch changed the rpc/*/channel files to behave differently depending on whether they were open for read or not. This hadn't been tested thoroughly. The cache_reader structure that was now only allocated when opening for read, had a field that was iused when writing. This patch removes that field and takes a different approach to solving the issue it addressed. And it has been tested a bit better.
-
Roland McGrath authored
A dying initial thread (thread group leader) sends SIGCHLD when it exits, but it ought to wait until all other threads exit as well. The cases of secondary threads exitting first were handled properly, but not this one. This exit.c patch fixes that test case, and I think catches the other potential bugs of this kind as well. The signal.c change adds some bug catchers, the second of which will trip on the test case in the absence of the exit.c fix.
-
Jeff Garzik authored
-
bk://linux-pnp.bkbits.net/pnp-2.5Linus Torvalds authored
into home.osdl.org:/home/torvalds/v2.5/linux
-
Adam Belay authored
-
Adam Belay authored
This patch removes the pnp name database code. Most buses, including pnp, will be using userspace to name devices in the near future. Also dev->name will be removed from the driver model soon.
-
Adam Belay authored
This patch moves the low level bios calls to a separate file, "bioscalls.c". It is a cleanup that will improve organization of the pnpbios driver code.
-
Adam Belay authored
This patch is needed in order to avoid a potential oops. It is similiar to the changes made to pci.
-