- 01 Aug, 2002 4 commits
-
-
Jens Axboe authored
I've got a new i/o scheduler in testing, some changes where needed in the block layer to accomodate it. Basically because right now assumptions are made about q->queue_head being the sort list. The changes in detail: o elevator_merge_requests_fn takes queue argument as well o __make_request() inits insert_here to NULL instead of q->queue_head.prev, which means that the i/o schedulers must explicitly check for this condition now. o incorporate elv_queue_empty(), it was just a place holder before o add elv_get_sort_head(). it returns the sort head of the elevator for a given request. attempt_{back,front}_merge uses it to determine whether a request is valid or not. Maybe attempt_{back,front}_merge should just be killed, I doubt they have much relevance with the wake up batching. o call the merge_cleanup functions of the elevator _after_ the merge has been done, not before. This way the elevator functions get the new state of the request, which is the most interesting. o Kill extra nr_sectors check in ll_merge_requests_fn() o bi->bi_bdev is always set in __make_request(), so kill check.
-
Martin Dalecki authored
- Change over queuedata to carry the device instead of the channel information.
-
Martin Dalecki authored
- cs5530 patches by Adam J. Richter. Small indent style adjustments. - qd65xx cli()/sti() adjustments. - Fix bogous command in ide.c pointed out by Peter Vendroviec. - Eliminate ide_stall_queue(). For those worried: we didn't sleep at all. - Eliminate support for "sector remapping". loop devices can handle stuff like that. All the custom DOS high system memmory loaded BIOS workaround tricks are obsolete right now. If anywhere it should be the FAT filesystem code which should be clever enough to deal with it by adjusting it's read/write methods. - PCI "scather gather" allocation handling revamp by Adam J. Richter. - Simplify do_ide_request after ->sleep removal. - Make do_ide_request prefer to handle the device matching the request queue it was called for first. RQ-queues are unique for devices. In a next step queuedata will be changed to point to the device not the channel.
-
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 8 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().
-
- 30 Jul, 2002 8 commits
-
-
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.
-
bk://ncpfs.bkbits.net/linux-2.5Linus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
Petr Vandrovec authored
-
Linus Torvalds authored
using a system call from kernel space. This avoids one level of hidden code, and makes what happens much more explicit (and speeds it up too, fwiw)
-
- 29 Jul, 2002 20 commits
-
-
Eric Sandeen authored
This "warning fix" bug report is actually an OOPS bugfix.
-
Matthew Wilcox authored
locks_unlock_delete is buggy in a couple of different ways (previously reported by Brian Dixon). Rather than fix it, this patch simply deletes it and uses the normal posix file locking mechanisms to remove all locks in locks_remove_posix instead.
-
Anton Blanchard authored
Make cpu_relax() on all architectures a gcc barrier to match x86.
-
http://linux-isdn.bkbits.net/linux-2.5.makeLinus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
Kai Germaschewski authored
-
Sam Ravnborg authored
-
Sam Ravnborg authored
o Corrected dependencies for parportbook o Introduced do_cmd, thus adhering to KBUILD_VERBOSE and make -s
-
Sam Ravnborg authored
do_cmd is a nice shorthand when creating rules that in one line shall adhere to KBUILD_VERBOSE and make -s. So far the only user is (will be) the docbook makefile
-
Linus Torvalds authored
file locking LSM update
-
Linus Torvalds authored
-
Hugh Dickins authored
An acct flag was added to do_munmap, true everywhere but in mremap's move_vma: instead of updating the arch and driver sources, revert that that change and temporarily mask VM_ACCOUNT around that one do_munmap. Also, noticed that do_mremap fails needlessly if both shrinking _and_ moving a mapping: update old_len to pass vm area boundaries test.
-
Hugh Dickins authored
If we support mmap MAP_NORESERVE, we should support it on shared anonymous objects: too bad that needs a few changes. do_mmap_pgoff pass VM_ACCOUNT (or not) down to shmem_file_setup, flag stored into shmem info, for use by shmem_delete_inode later. Also removed a harmless but pointless call to shmem_truncate.
-
Hugh Dickins authored
Update Doc and remove FIXME comment from fork.c now accounting right.
-
Hugh Dickins authored
do_mmap_pgoff's (file == NULL) check was incorrect: it caused shared MAP_ANONYMOUS objects to be counted twice (again in shmem_file_setup), and again on fork(); whereas the equivalent shared /dev/zero objects were correctly counted. Conversely, a private readonly file mapping was (correctly) not counted, but still not counted when mprotected to writable: mprotect_fixup had pointless "charged = 0" changes, now it does vm_enough_memory checking when private is first made writable (but later we may want to refine behaviour on a noreserve mapping). Also changed correct (flags & MAP_SHARED) test in do_mmap_pgoff to equivalent (vm_flags & VM_SHARED) test: because do_mmap_pgoff is dealing with vm_flags rather than the input flags by that stage.
-
Hugh Dickins authored
Remove vm_unacct_vma function: it's only used in one place, which can do it better by using vm_unacct_memory directly.
-
Hugh Dickins authored
do_mmap_pgoff clears MAP_NORESERVE from vm_flags when VM accounts strictly: but it's not in vm_flags, it's in flags (and tested there).
-
Hugh Dickins authored
There is no point in do_mremap clearing MAP_NORESERVE from its flags: it has already validated that only the MREMAP_ flags can be set, and it has no use for MAP_NORESERVE in the code that follows anyway.
-
Hugh Dickins authored
shmem_notify_change and shmem_file_write be careful about overflowingly large loff_t before shifting it into unsigned long for vm_enough_memory. Rename SHMEM_MAX_BLOCKS to SHMEM_MAX_INDEX (to avoid confusion with 512-byte blocks), define SHMEM_MAX_BYTES from it. But 2.5 vmtruncate lacked the s_maxbytes error handling which shmem_notify_change now expects: bring it in from the -dj tree. shmem_file_write error handling needs a closer look later on.
-
Hugh Dickins authored
Repeated overnight kernel builds in tmpfs showed insane Committed_AS by morning. The main bug was that shmem_file_write was passing (newsize-oldsize)>>PAGE_SHIFT to vm_enough_memory, but it has to be ((newsize>>PAGE_SHIFT)-(oldsize>>PAGE_SHIFT)) - imagine 1k writes. But actually, if we're going to do strict accounting, then we should round up to next page not down - use VM_ACCT macro throughout (needs unusual mix of PAGE_CACHE_SIZE with PAGE_SHIFT); and must count one page for a long symlink.
-
Christoph Hellwig authored
Currently there is no way to find out the effective object size of a slab cache. XFS has lots of IRIX-derived code that want to do zalloc() style allocations on zones (which are implemented as slab caches in XFS/Linux) and thus needs to know about it. There are three ways do implement it: a) implement kmem_cache_zalloc b) make the xfs zone a struct of kmem_cache_t and a size variable c) implement kmem_cache_size The current XFS tree does a) but I absolutely don't like it as encourages people to use kmem_cache_zalloc for new code instead of thinking about how to utilize slab object reuse. b) would be easy, but I guess kmem_cache_size is usefull enough to get into the kernel. Here's the patch:
-