- 23 Mar, 2003 2 commits
-
-
Russell King authored
Now that we have the critical PCI changes in place, we can convert cardbus to use this PCI functionality. This allows us to scan behind PCI to PCI bridges on cardbus cards, and setup the bus resources using the generic PCI support code. Note that drivers/pci/setup-bus.c needs to be built when hotplug (ie, cardbus) is enabled.
-
Russell King authored
- Re-order functions in cistpl.c. - Combine setup_cis_mem and set_cis_map into one function. - Move cis_readable(), checksum() and checksum_match() into rsrc_mgr.c - Only pass the socket structure to validate_mem() - Remove socket_info_t *vs variable, and the race condition along with it. - Pass the socket_info_t through validate_mem(), do_mem_probe() and inv_probe() to these functions. - Call cis_readable() and checksum_match() directly from do_mem_probe().
-
- 22 Mar, 2003 1 commit
-
-
Russell King authored
Remove support for the old PCMCIA cardbus clients - all cardbus drivers should be converted to be full-class PCI citizens.
-
- 18 Mar, 2003 2 commits
-
-
Russell King authored
Remove the dependence of the PCMCIA layer on CONFIG_ISA - introduce CONFIG_PCMCIA_PROBE to determine whether we need the resource handling code. This prevents oopsen on SA11x0 and similar platforms which use statically mapped, non-windowed sockets.
-
Russell King authored
Add an element of locking to the resource manager - don't allow the PCMCIA resource lists to be changed while the pcmcia code is scanning them.
-
- 17 Mar, 2003 3 commits
-
-
Russell King authored
Cardbus uses socket->cb_config to detect when the cardbus card has been initialised. Since cb_config will eventually die, we need a solution - introduce the SOCKET_CARDBUS_CONFIG flag, which is set once we have initialised the cardbus socket.
-
Russell King authored
Remove bus_* abstractions from PCMCIA core and PCMCIA drivers; they are unused.
-
Russell King authored
get_io_map and get_mem_map PCMCIA socket methods are never called by the PCMCIA core code. They are therefore dead code, and can be removed.
-
- 16 Mar, 2003 32 commits
-
-
Andrew Morton authored
Patch from Adrian Bunk <bunk@fs.tum.de> It would be nice if everyone would try to compile the patched files before submitting patches...
-
Andrew Morton authored
raid0 doesn't have a thread, so md_wakeup_thread() derefs NULL. Neil may end up doing this differently, but meanwhile....
-
Andrew Morton authored
Patch from Roman Zippel <zippel@linux-m68k.org> - remove lock_kernel() (It was buggy too - there are at present two missing unlock_kernel()s) - fixes a bitmap corruption problem.
-
Andrew Morton authored
From latest -aa kernels.
-
Andrew Morton authored
Patch from: Suparna Bhattacharya <suparna@in.ibm.com> Just an obvious fix. The kiocbClearX macros were doing a set_bit ! They should be calling clear_bit. Ran into this now that I'm actually using kiocbClearKicked.
-
Andrew Morton authored
Patch from Alex Tomas <bzzz@tmi.comex.ru> There is a logic error in ext2_new_block(). If we manage to reserve some blocks in the final blockgroup, local variable `bit' will be equal to sbi->s_groups_count and we erroneously assume that the allocation failed. Fix that up by testing local variable `group_alloc' instead.
-
Andrew Morton authored
Patch from "Theodore Ts'o" <tytso@mit.edu> I recently noticed a bug in ext2/3; newly created inodes which inherit the noatime flag from their containing directory do not respect noatime until the inode is flushed from the inode cache and then re-read later. This is because the code which checks the ext2 no-atime attribute and then sets the S_NOATIME in inode->i_flags is present in ext2_read_inode(), but not in ext2_new_inode(). I fixed this in 2.4, and then found an even worse bug in the 2.5 code; the DIRSYNC flag is completely ignored *except* in the case where a directory is newly created using mkdir and its parent directory has the DIRSYNC flag. S_DIRSYNC doesn't get set in the ext2_new_inode() or the ext2_ioctl() paths (which is used by chattr). This patch centralizes the code which translates the ext2 flags in the raw ext2 inode to the appropriate flag values in inode->i_flags in a single location. This fixes the bug, makes things cleaner, and also removes 30 lines of code and 128 bytes of compiled x86 text in the bargain.
-
Andrew Morton authored
Patch from Oleg Drokin <green@linuxhacker.ru> There is a memleak in e100 driver from intel, both in 2.4 and 2.5 e100_ethtool_gstrings does not free "strings" variable if it cannot copy it to userspace.
-
Andrew Morton authored
Patch from Anders Gustafsson <andersg@0x63.nu> We're getting a division-by-zero in the writeback code during early rootfs population, because writeback has not yet been initialised. Fix that by performing an explicit initialisation rather than relying on initcall ordering.
-
Andrew Morton authored
Patch from Kevin Pedretti <pedretti@ieee.org> The previous fix for unmapping hugetlb regions could still produce incorrect alignments if the munmap request covers multiple VMA's. Fix it by always unmapped the entire hugepage VMA inside the inner loop.
-
Andrew Morton authored
Patch from "Randy.Dunlap" <rddunlap@osdl.org> Reverts the recent alteration of the format of the `mem=' option. This is because `mem=' is interpreted by bootloaders and may not be freely changed. Instead, the new functionality to set specific memory region usages is provided via the new "memmap=" option. The documentation for memmap= is added, and the documentation for mem= is updated.
-
Andrew Morton authored
The recent (untested?) "cleanup" removed a null-pointer test.
-
http://linux-isdn.bkbits.net/linux-2.5.makeLinus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
Randy Dunlap authored
As requested by Andrew, this moves the hugetlbfs config option into the Pseudo filesystems section near tmpfs.
-
Greg Ungerer authored
Also fix some spelling.
-
Greg Ungerer authored
-
Greg Ungerer authored
-
bk://bk.arm.linux.org.uk:14691/linux-2.5-pci/Linus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
Russell King authored
Patch from Ivan Kokshaysky This fixes long standing typo ('size' instead of 'r_size') which causes overestimate of the bridge memory ranges calculated in pbus_size_mem(). For example, if we have a device with one 1Mb and one 2Mb memory ranges behind the bridge, calculated size and alignment of the bridge memory window will be 4Mb and 2Mb respectively, while the correct values are 3Mb and 1Mb.
-
Russell King authored
-
Russell King authored
In an attempt to "unuse" pci_do_scan_bus() so it can be eventually killed, make pci_scan_bus_parented() call the new pci_scan_child_bus() and pci_bus_add_devices(). The only remaining callers are the hotplug drivers. Eventually, pci_bus_add_devices() will be removed from this function - it is intended that architectures should call this after they have done any setups and fixups to the scanned bus. It is legal to call pci_bus_add_devices() on a bus which has already had this function called, so architectures could update today.
-
Russell King authored
Pull out the bits of cardbus configuration - the secondary latency timer, and the number of bus numbers we reserve.
-
Russell King authored
pci_read_config_dword() takes a u32 pointer, not unsigned long.
-
Russell King authored
Miscellaneous cleanups to probe.c: - make code/comments wrap before column 80. - remove extraneous space.
-
Russell King authored
Kill pcibios_update_resource(), replacing it with pci_update_resource(). pci_update_resource() uses pcibios_resource_to_bus() to convert a resource to a device BAR - the transformation should be exactly the same as the transformation used for the PCI bridges. pci_update_resource "knows" about 64-bit BARs, but doesn't attempt to set the high 32-bits to anything non-zero - currently no architecture attempts to do something different. If anyone cares, please fix; I'm going to reflect current behaviour for the time being. Ivan pointed out the following architectures need to examine their pcibios_update_resource() implementation - they should make sure that this new implementation does the right thing. #warning's have been added where appropriate. ia64 mips mips64 This cset also includes a fix for the problem reported by AKPM where 64-bit arch compilers complain about the resource mask being placed in a u32.
-
Russell King authored
Convert pcibios_fixup_pbus_ranges() into something more generic, namely pcibios_resource_to_bus() - we are really trying to convert resources to something to program into bus registers for bridge windows, and in fact, PCI device BARs. This is necessary since some architectures, namely Alpha, ARM and PARISC have an offset between PCI addressing and host-based addressing, so resources need to be adjusted when read or when written back to the bus. We provide a generic version in asm-generic/pci.h, which most architectures use. This patch finds the following architectures with something to think consider: - ppc, ppc64 adjusts resources for devices, but not buses. This is inconsistent, and leads to improperly programmed windows/BARs. PPC people (Anton) has a replacement PCI resource implementation which should do the right thing.
-
Russell King authored
Patch from Ivan Kokshaysky remove the "parent" or "root" second argument to pcibios_update_resource(). This highlights the following architectures doing something wrong in their implementation: - ia64 - mips it8172 - mips "generic mips boards" - mips64 "generic mips boards" - mips64 IP27
-
Russell King authored
Fix breakage in pci-3 - we scanned all functions if function 0 was not present. This causes some host bridges to lock up when scanning devfn 255 on PPC machines.
-
http://linux-scsi.bkbits.net/scsi-for-linus-2.5Linus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
Ingo Molnar authored
This removes/fixes a few whitespaces and removes the MAX_PRIO setting in the init task path which is unnecessary and which might even lead to bugs - MAX_PRIO is outside the valid range and technically the init thread is not an idle thread yet at this point.
-
Ingo Molnar authored
This fixes a fundamental (and long-standing) bug in the sleep-average estimator which is the root cause of the "contest process_load" problems reported by Mike Galbraith and Andrew Morton, and which problem is addressed by Mike's patch. The bug is the following: the sleep_time code in activate_task() over-estimates the true sleep time by 0.5 jiffies on average (0.5 msecs on recent 2.5 kernels). Furthermore, for highly context-switch intensive and CPU-intensive workloads it means a constant 1 jiffy over-estimation. This turns the balance of giving and removing ticks and nils the effect of the CPU busy-tick, catapulting the task(s) to highly interactive status - while in reality they are constantly burning CPU time. The fix is to round down sleep_time, not to round it up. This slightly under-estimates the sleep time, but this is not a real problem, any task with a sleep time in the 1 jiffy range will see timekeeping granularity artifacts from various parts of the kernel anyway. We could use rdtsc to estimate the sleep time, but i think that's unnecessary overhead. The fixups in Mike's scheduler patch (which is in -mm8) basically work around this bug. The patch below definitely fixes the contest-load starvation bug, but it remains to be seen what other effects it has on interactivity. In any case, this bug in the estimator is real and if there's any other interactivity problem around then we need to deal with it ontop of this patch. This bug has been in the O(1) scheduler from day 1 on basically, so i'm quite hopeful that a number of interactivity complaints are fixed by this patch.
-
James Bottomley authored
into raven.il.steeleye.com:/home/jejb/BK/scsi-for-linus-2.5
-