ChangeSet@1.1055, 2003-04-14 23:07:21-07:00, randolph@tausq.org [PATCH] {get,set}affinity unification This one gets rid of sys32_{get,set}affinity in favor of a unified compat implementation. ChangeSet@1.1054, 2003-04-14 20:11:28-07:00, akpm@digeo.com [PATCH] Resource management for NFS... From: Trond Myklebust The patch fixes some problems with NFS under heavy writeout. NFS pages can be in a clean but unreclaimable state. They are unreclaimable because the server has not yet acked the write - we may need to "redirty" them if the server crashes. These are referred to as "unstable" pages. We need to count them alongside dirty and writeback pages when making flushing and throttling decisions. Otherwise the machine can be flooded with these pages and the VM has problems. ChangeSet@1.1053, 2003-04-14 20:11:02-07:00, akpm@digeo.com [PATCH] fix MCE startup ordering problems The MCE code is setting up a timer whose handler uses the workqueue code before workqueue is initialised. If you boot slowly it oopses. Convert the MCE code to use an initcall. ChangeSet@1.1052, 2003-04-14 20:10:43-07:00, akpm@digeo.com [PATCH] Posix timer hang fix From: george anzinger The MAJOR problem was a hang in the kernel if a user tried to delete a repeating timer that had a signal delivery pending. I was putting the task in a loop waiting for that same task to pick up the signal. OUCH! A minor issue relates to the need by the glibc folks, to specify a particular thread to get the signal. I had this code in all along, but somewhere in 2.5 the signal code was made POSIX compliant, i.e. deliver to the first thread that doesn't have it masked out. This now uses the code from the above mentioned clean up. Most signals go to the group delivery signal code, however, those specifying THREAD_ID (an extension to the POSIX standard) are sent to the specified thread. That thread MUST be in the same thread group as the thread that creates the timer. ChangeSet@1.1051, 2003-04-14 20:10:24-07:00, akpm@digeo.com [PATCH] export kernel_fpu_begin() to GPL modules drivers/md/xor.c needs kernel_fpu_begin() for the mmx checksumming functions. So export that to GPL modules. ChangeSet@1.1050, 2003-04-14 20:10:08-07:00, akpm@digeo.com [PATCH] genrtc: jiffies type fix use `unsigned long' for a jiffies-holding type. ChangeSet@1.1049, 2003-04-14 20:09:57-07:00, akpm@digeo.com [PATCH] fix tty shutdown race use-after-free races have been seen due to the workqueue timer in the tty structure going off after the tty was freed. Fix that up by using cancel_scheduled_work() and flush_scheduled_work(). ChangeSet@1.1048, 2003-04-14 20:09:45-07:00, akpm@digeo.com [PATCH] flush_work_queue() fixes The workqueue code currently has a notion of a per-cpu queue being "busy". flush_scheduled_work()'s responsibility is to wait for a queue to be not busy. Problem is, flush_scheduled_work() can easily hang up. - The workqueue is deemed "busy" when there are pending delayed (timer-based) works. But if someone repeatedly schedules new delayed work in the callback, the queue will never fall idle, and flush_scheduled_work() will not terminate. - If someone reschedules work (not delayed work) in the work function, that too will cause the queue to never go idle, and flush_scheduled_work() will not terminate. So what this patch does is: - Create a new "cancel_delayed_work()" which will try to kill off any timer-based delayed works. - Change flush_scheduled_work() so that it is immune to people re-adding work in the work callout handler. We can do this by recognising that the caller does *not* want to wait until the workqueue is "empty". The caller merely wants to wait until all works which were pending at the time flush_scheduled_work() was called have completed. The patch uses a couple of sequence numbers for that. So now, if someone wants to reliably remove delayed work they should do: /* * Make sure that my work-callback will no longer schedule new work */ my_driver_is_shutting_down = 1; /* * Kill off any pending delayed work */ cancel_delayed_work(&my_work); /* * OK, there will be no new works scheduled. But there may be one * currently queued or in progress. So wait for that to complete. */ flush_scheduled_work(); The patch also changes the flush_workqueue() sleep to be uninterruptible. We cannot legally bale out if a signal is delivered anyway. ChangeSet@1.1047, 2003-04-14 20:09:35-07:00, akpm@digeo.com [PATCH] Fix oprofile on hyperthreaded P4's From: Philippe Elie - oprofile is currently only profiling one sibling. Fix that with appropriate register settings. - fix an oops which could occur if the userspace driver were to request a non-existent resource. - in NMI handler counter_config[i].event is accessible from user space so user can change the event during profiling by echo xxx > /dev/oprofile/event - event mask was wrong, the bit field is 6 bits length not 5, events SSE_INPUT_ASSIST and X87_SIMD_MOVES_UOP was affected by masking high bit of event number. ChangeSet@1.1046, 2003-04-14 20:09:28-07:00, akpm@digeo.com [PATCH] missing file_lock conversions A few places were missing the rwlock->spinlock conversion. ChangeSet@1.1045, 2003-04-14 16:09:25-07:00, torvalds@home.transmeta.com Fix incorrect 'flags' usage pointed out by stricter type checking. ChangeSet@1.1044, 2003-04-14 16:08:01-07:00, torvalds@home.transmeta.com Make the x86 flags save/restore code check the type of the macro argument, so that portability issues will be found in a timely manner. ChangeSet@1.1043, 2003-04-14 15:42:06-07:00, greg@kroah.com [PATCH] Input: change input_init() to be a subsys initcall This fixes oopses when it and the hid core are compiled into the kernel. ChangeSet@1.1042, 2003-04-14 13:55:18-07:00, bcollins@debian.org [PATCH] Fix nodemgr.c compile ChangeSet@1.1041, 2003-04-14 13:50:05-07:00, acme@conectiva.com.br [PATCH] add include uaccess.h to drivers/char/sx.c ChangeSet@1.1040, 2003-04-14 13:45:37-07:00, geert@linux-m68k.org [PATCH] Amiga Gayle IDE fixes Amiga Gayle IDE fixes: Set hwif->mmio to 2 to prevent the generic IDE core from messing with our resources ChangeSet@1.1039, 2003-04-14 13:45:29-07:00, geert@linux-m68k.org [PATCH] Amiga keyboard updates Amiga keyboard: fix default keyboard mappings: - Map the parentheses keys on the numeric keypad to KPLEFTPAREN and KPRIGHTPAREN (was: NUMLOCK and SCROLLLOCK) - Map the Help key to HELP (was: F11) - Map the Amiga keys to LEFTMETA and RIGHTMETA (was: RESERVED) ChangeSet@1.1038, 2003-04-14 13:45:22-07:00, geert@linux-m68k.org [PATCH] M68k IDE irq IDE: Print IRQ number in decimal on m68k ChangeSet@1.1037, 2003-04-14 13:45:13-07:00, geert@linux-m68k.org [PATCH] M68k module support M68k: Add module support (from Roman Zippel) ChangeSet@1.1036, 2003-04-14 13:45:04-07:00, geert@linux-m68k.org [PATCH] Atari Atyfb fixes Atyfb fixes for Atari: - Add missing allocation of default_par - Kill warnings in assignments ChangeSet@1.1035, 2003-04-14 12:14:31-07:00, torvalds@home.transmeta.com Store EDID only when CONFIG_VIDEO_SELECT is set and edid function actually exists. ChangeSet@1.1034, 2003-04-14 11:47:33-07:00, torvalds@home.transmeta.com Remove all of arch/s390x and include/asm-s390x, since the 390x architecture is now just a 64-bit configuration option of the basic s390 architecture. ChangeSet@1.1033, 2003-04-14 11:27:39-07:00, schwidefsky@de.ibm.com [PATCH] s390/s390x unification (7/7) Merge s390x and s390 to one architecture. ChangeSet@1.1032, 2003-04-14 11:27:30-07:00, schwidefsky@de.ibm.com [PATCH] s390/s390x unification (6/7) Merge s390x and s390 to one architecture. ChangeSet@1.1031, 2003-04-14 11:27:11-07:00, schwidefsky@de.ibm.com [PATCH] s390/s390x unification (5/7) Merge s390x and s390 to one architecture. ChangeSet@1.1030, 2003-04-14 11:27:02-07:00, schwidefsky@de.ibm.com [PATCH] s390/s390x unification (4/7) Merge s390x and s390 to one architecture. ChangeSet@1.1029, 2003-04-14 11:26:36-07:00, schwidefsky@de.ibm.com [PATCH] s390/s390x unification (3/7) Merge s390x and s390 to one architecture. ChangeSet@1.1028, 2003-04-14 11:26:27-07:00, schwidefsky@de.ibm.com [PATCH] s390/s390x unification (2/7) Merge s390x and s390 to one architecture. ChangeSet@1.1027, 2003-04-14 11:26:19-07:00, schwidefsky@de.ibm.com [PATCH] s390/s390x unification (1/7) Merge s390x and s390 to one architecture. ChangeSet@1.1026, 2003-04-14 11:26:09-07:00, schwidefsky@de.ibm.com [PATCH] s390: dasd driver coding style (2/2) s390 dasd driver: - Coding style adaptions. Removed almost all typedefs from the dasd driver. ChangeSet@1.1025, 2003-04-14 11:26:01-07:00, schwidefsky@de.ibm.com [PATCH] s390: dasd driver coding style (1/2) s390 dasd driver: - Coding style adaptions. Removed almost all typedefs from the dasd driver. ChangeSet@1.1024, 2003-04-14 11:25:52-07:00, schwidefsky@de.ibm.com [PATCH] s390: dasd driver fixes. s390 dasd driver fixes: - Take request queue lock in dasd_end_request. - Make it work with CONFIG_DEVFS_FS=y. - Properly wait for the root device. - Cope with requests killed due to failed channel path. - Improve reference counting. - Remove devno from struct dasd_device. - Remove unnecessary bdget/bdput calls. ChangeSet@1.1023, 2003-04-14 11:25:44-07:00, schwidefsky@de.ibm.com [PATCH] s390: uni-processor builds. Fixes for s390 kernel configured with CONFIG_SMP=n. ChangeSet@1.1022, 2003-04-14 11:25:35-07:00, schwidefsky@de.ibm.com [PATCH] s390: console changes. s390 console fixes for 3215 and sclp. ChangeSet@1.1021, 2003-04-14 11:25:27-07:00, schwidefsky@de.ibm.com [PATCH] s390: common i/o layer update. Common i/o layer fixes: - Fix for path no operational condition in cio_start. - Fix handling of user interruption parameter. - Add code to wait for devices in init_ccw_bus_type. - Move qdio states out of main cio state machine. - Reworked chsc data structures. - Add ccw_device_start_timeout. - Handle path verification required flag. ChangeSet@1.1020, 2003-04-14 11:25:17-07:00, schwidefsky@de.ibm.com [PATCH] s390: syscall numbers > 255. Add support for system calls with numbers > 255. ChangeSet@1.1019, 2003-04-14 11:25:08-07:00, schwidefsky@de.ibm.com [PATCH] s390: base s390 fixes. s390 fixes: - Initialize timing related variables first and then enable the timer interrupt. - Normalize nano seconds to micro seconds in do_gettimeofday. - Add types for __kernel_timer_t and __kernel_clockid_t. - Fix ugly bug in switch_to: set prev to the return value of resume, otherwise prev still contains the previous process at the time resume was called and not the previous process at the time resume returned. They differ... - Add missing include to get the kernel compiled. - Get a closer match with the i386 termios.h file. - Cope with INITIAL_JIFFIES. - Define cpu_relax to do a cpu yield on VM and LPAR. - Don't reenable interrupts in program check handler. - Add pte_file definitions. - Fix PT_IEEE_IP special case in ptrace. - Use compare and swap to release the lock in _raw_spin_unlock. - Introduce invoke_softirq to switch to async. interrupt stack. ChangeSet@1.1017, 2003-04-14 11:05:37-07:00, rmk@arm.linux.org.uk [PATCH] flush_cache_mm in zap_page_range unmap_vmas() eventually calls tlb_start_vma(), where most architectures flush caches as necessary. The flush here seems to make the flush_cache_range() in zap_page_range() redundant, and therefore can be removed. ChangeSet@1.971.1.216, 2003-04-14 10:33:44-07:00, Kai.Makisara@kolumbus.fi [PATCH] SCSI tape sysfs and module parameter additions This contains the following changes: - export some driver parameters in sysfs - use new module parameter definitions ChangeSet@1.971.1.215, 2003-04-14 10:33:35-07:00, Kai.Makisara@kolumbus.fi [PATCH] SCSI tape EOT write fixes This contains the following changes: - EOT detection fixed when writing in fixed block mode - asynchronous writes in fixed block mode and write threshold removed to enable the EOT fixes (the parameter accepted for compatibility) ChangeSet@1.971.1.214, 2003-04-14 10:33:25-07:00, Kai.Makisara@kolumbus.fi [PATCH] SCSI tape ILI and timeout fixes This contains the following changes: - ILI fixed to work with really old drives - message printed in case block larger than read() - long timeout used when creating a tape partition ChangeSet@1.971.1.213, 2003-04-14 10:31:33-07:00, mikpe@csd.uu.se [PATCH] lapic_nmi_watchdog resume fix I managed to add a bug to the local APIC NMI watchdog's resume procedure in the driver model conversion for 2.5.67. The problem is that the resume procedure simply calls the enable procedure. If the NMI watchdog has been disabled by another driver (like oprofile or perfctr), then the NMI watchdog will incorrectly be re-enabled. I discovered this when updating the perfctr driver for 2.5.67 and seeing unexpected NMIs after a resume from apm --suspend. We can fix this by unregistering the NMI watchdog from the driver model when disabling it (like the code did before the driver model changes), or by remembering the previous state at suspend and checking it at resume. The patch below uses the second, simpler, approach. Tested, please apply. ChangeSet@1.971.103.27, 2003-04-14 09:18:41-05:00, jejb@raven.il.steeleye.com fix scsi queue plugging behaviour Following recent changes removing blk_queue_empty(), we were incorrectly plugging the queue some times (most often as part of the SCSI scan process). This was causing a non-deterministic panic in the scan code because a destroyed queue was sometimes being unplugged and run. ChangeSet@1.971.102.5, 2003-04-13 22:32:35-07:00, zaitcev@redhat.com [sparc]: pte_file with constant number of bits. ChangeSet@1.971.102.4, 2003-04-13 18:59:54-07:00, davem@nuts.ninka.net [SPARC64]: file_lock is now a spin lock. ChangeSet@1.971.102.3, 2003-04-13 17:08:36-07:00, davem@nuts.ninka.net [SPARC64]: Update defconfig. ChangeSet@1.971.1.209, 2003-04-13 16:38:55-07:00, davem@nuts.ninka.net [IPV4]: xfrm4_tunnel and ipip need to privateize some symbols. ChangeSet@1.971.99.8, 2003-04-13 18:22:24+01:00, cmayor@ca.rmk.(none) [ARM PATCH] 1453/1: fix clps711x framebuffer "use SRAM?" range Patch from cam mayor when setting up the framebuffer on the clps711x platform, the code checks to see if your allocated memory area is less than 38400 bytes. If it is, a comment is sent to the kernel output suggesting it could be placed into SRAM. This patch modifies the check so that it is suggested if the allocated memory area is less than OR EQUAL TO 38400 bytes. This value is important as 38400 bytes is exactly the size of a 320 x 240 x 4bpp screen. ChangeSet@1.971.83.4, 2003-04-13 08:30:57-05:00, jejb@raven.il.steeleye.com sym53c8xx driver v1: PA-RISC needs same PCI command fix as powerpc ChangeSet@1.971.83.3, 2003-04-13 08:26:31-05:00, jejb@raven.il.steeleye.com lasi700 add missing dma-mapping.h #include compile fix for PA-RISC ChangeSet@1.971.103.25, 2003-04-13 03:04:42-07:00, neilb@cse.unsw.edu.au [PATCH] md: Fix raid1 oops From: Angus Sawyer When the last device in a raid1 array is failed (or missing) the r1bio structure can be released (especially on very fast devices) before make_request has finished using it. This patch gets and puts an extra reference to the r1_bio around the submission loop, and uses the status in r1_bio to maintain the request status if the last refernce is held by make_request. This is also more correct for write requests, as a write should succeed if any write succeeded, not only if the last write succceeded. ChangeSet@1.971.103.24, 2003-04-13 03:04:31-07:00, neilb@cse.unsw.edu.au [PATCH] kNFSd: First step to adding state management to NFSv4 server A new file "nfs4state.c", and nfs4_setclientid{,_confirm} are moved there, with lots of code. ChangeSet@1.971.103.23, 2003-04-13 03:04:22-07:00, neilb@cse.unsw.edu.au [PATCH] kNFSd: NFSD binary compatibility breakage The removal of "struct nfsctl_uidmap" from "nfsctl_fdparm" broke binary compatiblity on 64-bit platforms (strictly speaking: on all platforms with alignof(void *) > alignof(int)). The problem is that nfsctl_uidmap contained a "char *", which forced the alignment of the entire union to be 64 bits. With the removal of the uidmap, the required alignment drops to 32 bits. Since the first member is only 32 bits in size, this breaks compatibility with user-space. Patch below fixes the problem. ChangeSet@1.971.103.22, 2003-04-13 03:04:11-07:00, neilb@cse.unsw.edu.au [PATCH] kNFSd: Return correct result for ACCESS(READ) on eXecute-only file. Currently, an NFSv3 ACCESS check for READ permission on an eXecute-only file will succeed where it should fail. This is because nfsd_permission allows READ access to eXecute only files so that mode 711 executables can be loaded and run, and nfsd_access simply uses nfsd_permission. This patch changes nfsd_permission to only map eXecute permission to read permission of MAY_OWNER_OVERRIDE was set. This is only set when trying to read from a file, so ACCESS will no longer be tricked. This change will only affect callers of nfsd_permission that specify MAY_READ and not MAY_OWNER_OVERRIDE, and nfsd_access is the only routine that calls nfsd_permission (via fh_verify) that way. ChangeSet@1.971.103.21, 2003-04-13 03:04:02-07:00, neilb@cse.unsw.edu.au [PATCH] kNFSd: nfsd/export.c tidyup and add missing exp_put There was a missing exp_put in export.c so that after a client mounts an exported filesystem, the server would never be able to unmount, even after trying to unexport. This is fixed by the last chunk of this patch. Also assorted cleanups to the code found while hunting. ChangeSet@1.971.103.20, 2003-04-13 03:01:17-07:00, akpm@digeo.com [PATCH] Put all functions in kallsyms From: Rusty Russell Introduce _sinittext and _einittext (cf. _stext and _etext), so kallsyms includes __init functions. TODO: Use huffman name compression and 16-bit offsets (see IDE oopser patch) ChangeSet@1.971.103.19, 2003-04-13 03:00:58-07:00, akpm@digeo.com [PATCH] use spinlocking in the ext2 inode allocator From Alex Tomas and myself It is identical in concept to the block allocator change. It uses the same hashed spinlock. ChangeSet@1.971.103.18, 2003-04-13 03:00:40-07:00, akpm@digeo.com [PATCH] use spinlocking in the ext2 block allocator From Alex Tomas and myself ext2 currently uses lock_super() to protect the filesystem's in-core block allocation bitmaps. On big SMP machines the contention on that semaphore is causing high context switch rates, large amounts of idle time and reduced throughput. The context switch rate can also worsen block allocation: if several tasks are trying to allocate blocks inside the same blockgroup for different files, madly rotating between those tasks will cause the files' blocks to be intermingled. On SDET and dbench-style worloads (lots of tasks doing lots of allocation) this patch (and a similar one for the inode allocator) improve throughout on an 8-way by ~15%. On 16-way NUMAQ the speedup is 150%. What wedo isto remove the lock altogether and just rely on the atomic semantics of test_and_set_bit(): if the allocator sees a block was free it runs test_and_set_bit(). If that fails, then we raced and the allocator will go and look for another block. Of course, we don't really use test_and_set_bit() because that isn'tendian-dependent. New atomic endian-independent functions are introduced: ext2_set_bit_atomic() and ext2_clear_bit_atomic(). We do not need ext2_test_bit_atomic(), since even if ext2_test_bit() returns the wrong result, that error will be detected and naturally handled in the subsequent ext2_set_bit_atomic(). For little-endian machines the new atomic ops map directly onto the test_and_set_bit(), etc. For big-endian machines we provide the architecture's impementation with the address of a spinlock whcih can be taken around the nonatomic ext2_set_bit(). The spinlocks are hashed, and the hash is scaled according to the machine size. Architectures are free to implement optimised versions of ext2_set_bit_atomic() and ext2_clear_bit_atomic(). ChangeSet@1.971.103.17, 2003-04-13 03:00:09-07:00, akpm@digeo.com [PATCH] blockgroup_lock: hashed spinlocks for ext2 and ext3 ext2 and ext3 per-blockgroup metadata needs locking. An fs-wide lock is expensive, and a per-blockgroup lock consumes too much storage (up to 32768 blockgroups per filesystem). We need something in-between. blockgroup_locks are very simple hashed spinlocks which provide this compromise. The size of the lock is scaled by NR_CPUS to implement an additional speed/space tradeoff. These locks are actually fairly generic. However I presented it as something which is specific to ext2 and ext3 so that people wouldn't go using them all over the place. They consume a lot of storage. ChangeSet@1.971.103.16, 2003-04-13 02:59:51-07:00, akpm@digeo.com [PATCH] percpu_counters: approximate but scalable counters Several places in ext2 and ext3 are using filesystem-wide counters which use global locking. Mainly for the orlov allocator's heuristics. To solve the contention which this causes we can trade off accuracy against speed. This patch introduces a "percpu_counter" library type in which the counts are per-cpu and are periodically spilled into a global counter. Readers only read the global counter. These objects are *large*. On a 32 CPU P4, they are 4 kbytes. On a 4 way p3, 128 bytes. ChangeSet@1.971.103.15, 2003-04-13 02:59:28-07:00, akpm@digeo.com [PATCH] /proc/meminfo documentation From: Dave Hansen Documents the information in /proc/meminfo ChangeSet@1.971.103.14, 2003-04-13 02:59:04-07:00, akpm@digeo.com [PATCH] vmalloc stats in /proc/meminfo From: Matt Porter There was a thread a while back on lkml where Dave Hansen proposed this simple vmalloc usage reporting patch. The thread pretty much died out as most people seemed focused on what VM loading type bugs it could solve. I had posted that this type of information was really valuable in debugging embedded Linux board ports. A common example is where people do arch specific setup that limits there vmalloc space and then they find modules won't load. ;) Having the Vmalloc* info readily available is real useful in helping folks to fix their kernel ports. ChangeSet@1.971.103.13, 2003-04-13 02:58:42-07:00, akpm@digeo.com [PATCH] /proc/interrupts allocates too much memory From: David Mosberger interrupts_open() can easily try to kmalloc() more memory than supported by kmalloc. E.g., with 16KB page size and NR_CPUS==64, it would try to allocate 147456 bytes. The workaround below is to allocate 4KB per 8 CPUs. Not really a solution, but the fundamental problem is that /proc/interrupts shouldn't use a fixed buffer size in the first place. I suppose another solution would be to use vmalloc() instead. It all feels like bandaids though. ChangeSet@1.971.103.12, 2003-04-13 02:58:14-07:00, akpm@digeo.com [PATCH] Fix kmalloc_sizes[] indexing From: Brian Gerst and David Mosberger The previous fix to the kmalloc_sizes[] array didn't null-terminate the correct array. Fix that up, and also avoid running ARRAY_SIZE() against an array which is really a null-terminated list. ChangeSet@1.971.103.11, 2003-04-13 02:57:41-07:00, akpm@digeo.com [PATCH] architecture hooks for mem_map initialization From: Christoph Hellwig This patch is from the IA64 tree, with minor cleanups from me. Split out initialization of pgdat->node_mem_map into a separate function and allow architectures to override it. This is needed for HP IA64 machines that have a virtually mapped memory map to support big memory holes without having to use discontigmem. (memmap_init_zone is non-static to allow the IA64 code to use it - I did that instead of passing it's address into the arch hook as it is done currently in the IA64 tree) ChangeSet@1.971.103.10, 2003-04-13 02:57:13-07:00, akpm@digeo.com [PATCH] bootmem speedup from the IA64 tree From: Christoph Hellwig This patch is from the IA64 tree, with some minor cleanups by me. David described it as: This is a performance speed up and some minor indendation fixups. The problem is that the bootmem code is (a) hugely slow and (b) has execution that grow quadratically with the size of the bootmap bitmap. This causes noticable slowdowns, especially on machines with (relatively) large holes in the physical memory map. Issue (b) is addressed by maintaining the "last_success" cache, so that we start the next search from the place where we last found some memory (this part of the patch could stand additional reviewing/testing). Issue (a) is addressed by using find_next_zero_bit() instead of the slow bit-by-bit testing. ChangeSet@1.971.103.9, 2003-04-13 02:56:37-07:00, akpm@digeo.com [PATCH] convert file_lock to a spinlock Time to write a 2M file, one byte at a time: Before: 1.09s user 4.92s system 99% cpu 6.014 total 0.74s user 5.28s system 99% cpu 6.023 total 1.03s user 4.97s system 100% cpu 5.991 total After: 0.79s user 5.17s system 99% cpu 5.993 total 0.79s user 5.17s system 100% cpu 5.957 total 0.84s user 5.11s system 100% cpu 5.942 total ChangeSet@1.971.103.8, 2003-04-13 02:56:06-07:00, akpm@digeo.com [PATCH] correct vm_page_prot on stack pages From: David Mosberger The patch below is needed to make it possible to map stack pages without execution permission (as we do on ia64). ChangeSet@1.971.103.7, 2003-04-13 02:55:43-07:00, akpm@digeo.com [PATCH] don't clear PG_uptodate on ENOSPC If get_block() returns -ENOSPC __block_write_full_page() is currently clearing PG_uptodate. Tht doesn't make any sense - failure to allocate space (or an IO error) does not make the page not uptodate. It will create pages which are dirty, mapped into pagetables and not uptodate, which is a nonsensical state. ChangeSet@1.971.103.6, 2003-04-13 02:55:21-07:00, akpm@digeo.com [PATCH] Fix deadlock with ext3+quota From: Jan Kara Fixes a deadlock-causing lock-ranking bug between dqio_sem and journal_start(). It sets up the needed infrastructure so that the quota code's sync_dquot() operation can call into ext3 and arrange for the transaction start to be nested outside the taking of dqio_sem. ChangeSet@1.971.103.5, 2003-04-13 02:55:02-07:00, akpm@digeo.com [PATCH] Remove flush_page_to_ram() From: Hugh Dickins This patch removes the long deprecated flush_page_to_ram. We have two different schemes for doing this cache flushing stuff, the old flush_page_to_ram way and the not so old flush_dcache_page etc. way: see DaveM's Documentation/cachetlb.txt. Keeping flush_page_to_ram around is confusing, and makes it harder to get this done right. All architectures are updated, but the only ones where it amounts to more than deleting a line or two are m68k, mips, mips64 and v850. I followed a prescription from DaveM (though not to the letter), that those arches with non-nop flush_page_to_ram need to do what it did in their clear_user_page and copy_user_page and flush_dcache_page. Dave is consterned that, in the v850 nb85e case, this patch leaves its flush_dcache_page as was, uses it in clear_user_page and copy_user_page, instead of making them all flush icache as well. That may be wrong: I'm just hesitant to add cruft blindly, changing a flush_dcache macro to flush icache too; and naively hope that the necessary flush_icache calls are already in place. Miles, please let us know which way is right for v850 nb85e - thanks. ChangeSet@1.971.103.4, 2003-04-13 02:54:42-07:00, akpm@digeo.com [PATCH] remove the test for null waitqueue in __wake_up() I've had a warning in there for 4-5 months and it has never triggered. I think it's safe to remove this test. ChangeSet@1.971.103.3, 2003-04-13 02:54:31-07:00, akpm@digeo.com [PATCH] Fix gen_rtc compilation error From: Geert Uytterhoeven It updates include/asm-{generic,parisc}/rtc.h for the recent changes in drivers/char/genrtc.c and include/asm-{m68k,ppc}/rtc.h. get_rtc_time() now returns some RTC flags instead of a 0/-1 success/failure indicator. These flags include: - RTC_BATT_BAD: RTC battery is bad (can be detected on PA-RISC) - RTC_24H: Clock runs in 24 hour mode Most of these flags are the same as drivers/char/rtc.c, but RTC_BATT_BAD is a new one. ChangeSet@1.971.103.2, 2003-04-13 02:54:20-07:00, akpm@digeo.com [PATCH] radix_tree_delete API improvement radix_tree_delete() currently returns 0 on success, -ENOENT if there was nothing to delete. But it is more useful to return the address of the deleted item on success and NULL if there was no matching item. It can potentially save a lookup+delete operation. ChangeSet@1.971.103.1, 2003-04-13 02:54:10-07:00, akpm@digeo.com [PATCH] kobject hotplug fixes - allocated storage `envp' was being leaked on an error path - kmalloc() returns void*, no need to cast it - don't return 0 from a void-returning function Greg has acked this patch. ChangeSet@1.971.99.7, 2003-04-13 10:32:04+01:00, spyro@com.rmk.(none) [ARM PATCH] 1458/1: finish nwfpe CONFIG_CPUnn removal Patch from Ian Molton missed a bit. apply ontop of earlier patch. ChangeSet@1.971.99.6, 2003-04-13 10:29:25+01:00, spyro@com.rmk.(none) [ARM PATCH] 1460/1: removes CONFIG_CPU_{26,32} from arch/arm/boot (Makefile) Patch from Ian Molton See summary ChangeSet@1.971.99.5, 2003-04-13 10:25:47+01:00, spyro@com.rmk.(none) [ARM PATCH] 1456/1: removes CONFIG_CPU_{26,32} from arch/arm/lib Patch from Ian Molton see summary ChangeSet@1.971.99.4, 2003-04-13 09:53:57+01:00, dirk.behme@com.rmk.(none) [ARM PATCH] 1497/1: Cleanup of head.S Patch from Dirk Behme Please see mail thread '[patch] Cleanup of head.S?' from 25 Feb 2003. Let us remove the third part now. The mapping set by this code is done already. The comment of rmk was 'I suspect we can kill (3) without hurting stuff that's merged into the -rmk tree, although I'm sure there's a reason it existed. I'll have to check my mail archives, but I think there was a machine that required, but it appears not to be merged.' So, let's try and see if somebody cries... ChangeSet@1.1014, 2003-04-12 17:35:36-07:00, jsimmons@kozmo.(none) [FBDEV] Improved speed performance. We copy many bytes of data instead of just one at a time. [IMSTT FBDEV] Fixed a bug that caused the hardware to lock up when scrolling. ChangeSet@1.971.99.3, 2003-04-13 00:01:27+01:00, rmk@flint.arm.linux.org.uk [ARM] Fix exception table handling This fixes a build error caused by other changes in 2.5.67. ChangeSet@1.971.1.208, 2003-04-12 15:47:09-07:00, jmorris@intercode.com.au [IPSEC]: Fix handling of uncompressable packets in tunnel mode. ChangeSet@1.971.1.207, 2003-04-12 15:43:43-07:00, jmorris@intercode.com.au [PKTSCHED]: Kill redefinition of IPPROTO_ESP in sch_sfq.c ChangeSet@1.971.1.206, 2003-04-12 12:09:30-07:00, bcollins@debian.org [PATCH] Fix module param decleration in pcilynx ChangeSet@1.971.84.2, 2003-04-12 10:25:34-05:00, jejb@raven.il.steeleye.com More axboe/patmans conflicts ChangeSet@1.971.28.13, 2003-04-12 10:06:30-05:00, patmans@us.ibm.com [PATCH] 5/5 scsi-locking-2.5 remove extra sdev2, remove extra Remove unneeded sdev2 variable. Remove extra log message. ChangeSet@1.971.28.12, 2003-04-12 10:05:58-05:00, patmans@us.ibm.com [PATCH] 4/5 scsi-locking-2.5 list_del starved_entry plus use list_del the starved_entry when sdev goes away. Use GFP_ATOMIC when allocating starget, since we hold a lock. ChangeSet@1.971.28.11, 2003-04-12 10:05:25-05:00, patmans@us.ibm.com [PATCH] 3/5 scsi-locking-2.5 prevent looping when processing Ensure that we cannot loop forever (however unlikely) when processing the starved queues. ChangeSet@1.971.28.10, 2003-04-12 10:04:53-05:00, patmans@us.ibm.com [PATCH] 2/5 scsi-locking-2.5 remove lock hierarchy Get rid of the lock hierarchy for queue_lock and host_lock (even for the single_lun case). ChangeSet@1.971.28.9, 2003-04-12 10:04:21-05:00, patmans@us.ibm.com [PATCH] 1/5 scsi-locking-2.5 single_lun store scsi_device pointer Change single_lun code to use a struct scsi_device *, so that we do not need an sdev (or queue_lock) while checking if a single_lun target is in use by a particular scsi_device. ChangeSet@1.971.100.5, 2003-04-12 02:34:39-07:00, davem@nuts.ninka.net [IGMP]: Dont dork with igmp timers on device down if not CONFIG_IP_MULTICAST. ChangeSet@1.971.100.4, 2003-04-12 02:15:54-07:00, davem@nuts.ninka.net [IPSEC]: Add ipv4 tunnel transformer. ChangeSet@1.1011, 2003-04-11 23:09:45-07:00, jsimmons@maxwell.earthlink.net [RIVA FBDEV] Cursor fixes. Almost done. At least it looks normal most of the time. ChangeSet@1.971.101.2, 2003-04-11 22:21:50-07:00, wesolows@foobazco.org [sparc]: Attempt mul/div emulation handling on all cpus. ChangeSet@1.971.101.1, 2003-04-11 22:17:23-07:00, rob@osinvestor.com [sparc]: Fix uninitialized spinlock in SRMMU code. ChangeSet@1.971.100.3, 2003-04-11 22:13:52-07:00, shemminger@osdl.org [EBTABLES]: Get rid of brlock in ebtable_broute. ChangeSet@1.971.100.2, 2003-04-11 22:12:50-07:00, shemminger@osdl.org [BRIDGE]: Kill excessive stack usage in br_ioctl. ChangeSet@1.971.100.1, 2003-04-11 22:10:23-07:00, akpm@digeo.com [IPV4]: Fix bootup lockup when !CONFIG_IP_MULTICAST. ChangeSet@1.971.1.204, 2003-04-11 21:28:52-07:00, torvalds@home.transmeta.com Annotate sys_uselib() with user pointer annotation ChangeSet@1.971.1.203, 2003-04-11 21:09:44-07:00, george@mvista.com [PATCH] too much timer simplification... Noted by David Mosberger: "If someone happens to arm a periodic timer at exactly 256 jiffies (as ohci happens to do on platforms with HZ=1024), then you end up getting an endless loop of timer activations, causing a machine hang. The problem is that __run_timers updates base->timer_jiffies _before_ running the callback routines. If a callback re-arms the timer at exactly 256 jiffies, add_timers() will reinsert the timer into the list that we're currently processing, which of course will cause the timer to expire immediately again, etc., etc., ad naseum... " The answer here is to move the whole expired list to a local header and to not look back. ChangeSet@1.971.1.202, 2003-04-11 18:38:49-07:00, bcollins@debian.org [PATCH] IEEE-1394/Firewire updates - Convert nodemgr to new driver model. - Convert to new module_param() calls. - Merged fixes for devfs mkdir and some sleep-in-atomic fixes from mainline 2.5-bk - Fix possible memory corruption on highlevel local read/write. - Fix bitmap usage for some bitops. - Fix bug in closing ISO stream. - Fixes for nodemgr probing in the event of a reset storm. - Workaround for nForce2 firewire chipset. This is preliminary. - Conversion of SBP-2 to use new driver model in nodemgr, including providing a driver for firewire unit directories and registering proper callbacks. ChangeSet@1.971.86.21, 2003-04-11 16:26:02-07:00, greg@kroah.com Merge kroah.com:/home/greg/linux/BK/bleed-2.5 into kroah.com:/home/greg/linux/BK/gregkh-2.5 ChangeSet@1.971.1.199, 2003-04-11 15:05:23-07:00, kronos@kronoz.cjb.net [PATCH] i2c: Add i2c-viapro.c driver ChangeSet@1.971.99.2, 2003-04-11 22:32:56+01:00, rmk@flint.arm.linux.org.uk [ARM] Make sys_ipc return ENOSYS for unrecognised IPC calls. ChangeSet@1.971.79.9, 2003-04-11 12:15:15-07:00, oliver@neukum.org [PATCH] USB: remove configuration change from pegasus.c the driver should not mess with configurations here. ChangeSet@1.971.79.8, 2003-04-11 12:13:54-07:00, oliver@neukum.org [PATCH] USB: remove configuration change from rtl8150 there's no reason this driver should mess with configurations. ChangeSet@1.971.86.20, 2003-04-11 11:52:08-07:00, torvalds@home.transmeta.com Make sure to kunmap() the right address in fs/nfs/dir.c. Found by Rik van Riel: "There's a serious bug in the handling of the pointer returned by kmap_atomic() in nfs/dir.c. The pointer (part of desc) is passed into find_dirent_name and from there into dir_decode, which modifies the pointer. That means you end up passing a wrong address to kunmap_atomic()." ChangeSet@1.971.99.1, 2003-04-11 19:37:39+01:00, rmk@flint.arm.linux.org.uk [ARM] Manual merge with Linus. ChangeSet@1.971.96.8, 2003-04-11 00:08:51-07:00, davem@nuts.ninka.net [PKTSCHED]: Fix double-define of __inline__ et al. ChangeSet@1.971.96.7, 2003-04-11 00:02:43-07:00, davem@nuts.ninka.net [IPV4]: Fix IGMP build with CONFIG_IP_MULTICAST disabled. ChangeSet@1.971.96.6, 2003-04-10 23:43:46-07:00, mrr@nexthop.com [IPV6]: Allow protocol to percolate up into rt6 routing operations. ChangeSet@1.971.96.5, 2003-04-10 23:35:56-07:00, dlstevens@us.ibm.com [IPV4]: IGMPv3 support, with help from Vinay Kulkarni ChangeSet@1.971.97.2, 2003-04-10 23:31:45-07:00, ehabkost@conectiva.com.br [SPARC]: Export phys_base on sparc32. ChangeSet@1.971.96.4, 2003-04-10 23:21:40-07:00, jmorris@intercode.com.au [IPSEC]: Add initial IPCOMP support. ChangeSet@1.971.96.3, 2003-04-10 23:05:42-07:00, jef@linuxbe.org [IPSEC]: Check xfrm state expiration on input after replay check. ChangeSet@1.971.96.2, 2003-04-10 23:00:19-07:00, davem@nuts.ninka.net [SCHED]: Some schedulers forget to flush filter list at destroy. ChangeSet@1.971.97.1, 2003-04-10 22:39:46-07:00, davem@nuts.ninka.net [ALSA]: Recent merge undid all of my build fixes, put them back in. ChangeSet@1.971.90.6, 2003-04-10 16:41:32-07:00, gandalf@netfilter.org [NETFILTER]: Fix modify-after-free bug in ip_conntrack. ChangeSet@1.971.95.1, 2003-04-10 17:54:26-05:00, pbadari@us.ibm.com Isn't sd_major() broken ? I am little confused about the correctness of sd_major() in drivers/scsi/sd.c. static int sd_major(int major_idx) { switch (major_idx) { case 0: return SCSI_DISK0_MAJOR; case 1 ... 7: return SCSI_DISK1_MAJOR + major_idx - 1; case 8 ... 15: return SCSI_DISK8_MAJOR + major_idx; default: BUG(); return 0; /* shut up gcc */ } } So, if major_idx = 8, It returns 143. But according to major.h, scsi has 128-135 reserved majors. But it is registering 136 - 143 as its majors. #define SCSI_DISK8_MAJOR 128 #define SCSI_DISK9_MAJOR 129 #define SCSI_DISK10_MAJOR 130 #define SCSI_DISK11_MAJOR 131 #define SCSI_DISK12_MAJOR 132 #define SCSI_DISK13_MAJOR 133 #define SCSI_DISK14_MAJOR 134 #define SCSI_DISK15_MAJOR 135 ChangeSet@1.1009, 2003-04-10 14:10:05-07:00, jsimmons@kozmo.(none) [RADEON FBDEV] Compile fixes. ChangeSet@1.971.86.17, 2003-04-10 13:49:39-07:00, torvalds@penguin.transmeta.com Add a user pointer annotation to sysinfo() ChangeSet@1.971.86.16, 2003-04-10 13:48:57-07:00, torvalds@penguin.transmeta.com Add user pointer annotations to fs/select.c ChangeSet@1.1007, 2003-04-10 11:36:24-07:00, jsimmons@kozmo.(none) [RADEON FBDEV] Detect 8 Megs of RAM not 8 Kilobytes. ChangeSet@1.1006, 2003-04-10 11:20:26-07:00, jsimmons@kozmo.(none) [FBDEV] EDID support from OpenFirmware on PPC platoforms and from the BIOS on intel platforms. ChangeSet@1.971.93.2, 2003-04-10 18:26:01+01:00, davej@codemonkey.org.uk [AGPGART] Remove unnecessary AGP printk's in DRM. If we build >1 DRM driver into the kernel, we get this lovely output.. [drm] Initialized tdfx 1.0.0 20010216 on minor 0 [drm] AGP 0.100 aperture @ 0xe0000000 64MB [drm] Initialized r128 2.3.0 20021029 on minor 1 [drm] AGP 0.100 aperture @ 0xe0000000 64MB [drm] Initialized radeon 1.8.0 20020828 on minor 2 [drm] AGP 0.100 aperture @ 0xe0000000 64MB [drm] Initialized mga 3.1.0 20021029 on minor 3 [drm] AGP 0.100 aperture @ 0xe0000000 64MB [drm] Initialized i810 1.2.1 20020211 on minor 4 [drm] AGP 0.100 aperture @ 0xe0000000 64MB [drm] Initialized i830 1.3.2 20021108 on minor 5 agpgart already outputs the info about the aperture address & size before drm initialises, so its just repetition for no purpose. ChangeSet@1.971.94.3, 2003-04-10 10:23:54-07:00, torvalds@home.transmeta.com Add user pointer annotations to fs/super.c ChangeSet@1.971.94.2, 2003-04-10 10:23:33-07:00, torvalds@home.transmeta.com Add user pointer annotations to fs/seq_file.c ChangeSet@1.971.94.1, 2003-04-10 10:23:10-07:00, torvalds@home.transmeta.com Clean up types and remove unnecessary casts from fs/readdir.c. Add user pointer annotations. ChangeSet@1.1005, 2003-04-10 07:17:43-07:00, jsimmons@kozmo.(none) Merge bk://fbdev.bkbits.net/fbdev-2.5 into kozmo.(none):/usr/src/fbdev-2.5 ChangeSet@1.1004, 2003-04-10 08:52:02-07:00, jsimmons@maxwell.earthlink.net [FBDEV] Made the upper layer code always use the cursor mask of struct fb_cursor inside struct fb_info. This moved memory management of the mask and image data to the upper layers. ChangeSet@1.1003, 2003-04-10 08:48:22-07:00, jsimmons@maxwell.earthlink.net [FBDEV] Made the upper layer code always use the cursor mask of struct fb_cursor inside struct fb_info. This moved memory management of the mask and image data to the upper layers. [RADEON FBDEV] Updates for the Radeon 9100. ChangeSet@1.971.92.2, 2003-04-10 15:38:42+02:00, perex@suse.cz ALSA and PnP update - compilation fixes - enhanced linux/pnp.h: pnp_device_is_isapnp(dev) pnp_device_is_pnpbios(dev) isapnp_card_number(dev) isapnp_csn_number(dev) ChangeSet@1.971.93.1, 2003-04-10 12:29:55+01:00, davej@codemonkey.org.uk [AGPGART] Fix up AMD64 references. Spotted by Andi Kleen. AMD64 is the architecture, not the CPU. ChangeSet@1.971.92.1, 2003-04-10 12:33:21+02:00, perex@suse.cz ALSA update - documentation - control API - added multi-elements to reduce memory usage - improved preallocation of DMA buffers - CS46xx driver - added support for secondary codec - HDSP driver - big update - firmware is loaded with hdsptool now - pmac driver updates (fixed oops and beep stuff) - VIA82xx driver updated - ymfpci driver updated - drivers updated to new PnP layer - wavefront, ad1816a, cs423x, es18xx, interwave, opl3sa2, cmi8330 ChangeSet@1.971.90.5, 2003-04-10 01:01:10-07:00, shemminger@osdl.org [BRIDGE]: Fix several locking bugs, plus cleanups. ChangeSet@1.971.90.4, 2003-04-10 00:39:07-07:00, davem@nuts.ninka.net [IPV6]: Typo, try_get_module --> try_module_get. ChangeSet@1.971.90.3, 2003-04-09 23:55:10-07:00, davem@nuts.ninka.net [IPV6]: Apply ipv4 tunnel module fixes to SIT driver. ChangeSet@1.971.90.2, 2003-04-09 23:34:14-07:00, davem@nuts.ninka.net [IPV4]: Do proper netdev module refcounting in tunnel drivers. ChangeSet@1.971.89.5, 2003-04-09 23:26:04-07:00, davem@nuts.ninka.net [SIGINFO]: asm-generic/siginfo.h needs linux/compiler.h ChangeSet@1.971.89.4, 2003-04-09 23:25:03-07:00, davem@nuts.ninka.net [sparc]: Make sure -m32 gets added to AFLAGS when needed. ChangeSet@1.971.89.3, 2003-04-09 23:14:53-07:00, davem@nuts.ninka.net [sparc]: Add missing const qualifiers to uaccess.h ChangeSet@1.971.89.2, 2003-04-09 23:05:10-07:00, davem@nuts.ninka.net [sparc]: Fix typo in uaccess.h ChangeSet@1.971.86.12, 2003-04-09 22:21:53-07:00, torvalds@home.transmeta.com Annotate read/write paths with user pointer annotations ChangeSet@1.971.86.11, 2003-04-09 22:14:00-07:00, torvalds@home.transmeta.com Annotate kernel/itimer.c with user pointer annotations. ChangeSet@1.971.86.10, 2003-04-09 22:13:38-07:00, torvalds@home.transmeta.com Annotate kernel/futex.c with user pointer annotations. ChangeSet@1.971.86.9, 2003-04-09 22:13:14-07:00, torvalds@home.transmeta.com Annotate fs/stat.c with user pointer annotations. ChangeSet@1.971.87.3, 2003-04-09 22:08:29-07:00, rusty@rustcorp.com.au [NETFILTER]: Push skb linearization deeper inside of implementation. ChangeSet@1.971.85.6, 2003-04-09 21:58:46-07:00, davem@nuts.ninka.net [SPARC]: __user attributes in signal handling. ChangeSet@1.971.86.8, 2003-04-09 21:45:24-07:00, torvalds@home.transmeta.com Merge from DRI CVS: Use the list_entry() macro instead of depending on the list-head being at the top of the DRI data structures and using hard casts. ChangeSet@1.971.88.7, 2003-04-09 21:18:00-07:00, torvalds@home.transmeta.com Fix kernel/posix-timers.c: - bad preprocessor test always tested true, even when it shouldn't. - annotate user pointers with proper annotations. Both found by my automatic type checker tool. ChangeSet@1.971.88.6, 2003-04-09 21:16:30-07:00, torvalds@home.transmeta.com Fix bad prototypes in kernel/softirq.c ChangeSet@1.971.88.5, 2003-04-09 21:16:05-07:00, torvalds@home.transmeta.com Annotate kernel/printk.c with user pointer annotations. ChangeSet@1.971.85.5, 2003-04-09 21:09:28-07:00, davem@nuts.ninka.net [SPARC]: __user tagging in sys_sparc.c ChangeSet@1.971.88.4, 2003-04-09 20:55:46-07:00, torvalds@home.transmeta.com Annotate kernel/ptrace.c with user pointer information ChangeSet@1.971.88.3, 2003-04-09 20:51:30-07:00, torvalds@home.transmeta.com Annotate uid16 with user pointer annotations. ChangeSet@1.971.88.2, 2003-04-09 20:51:08-07:00, torvalds@home.transmeta.com Annotate kernel/time.c with user pointer annotations ChangeSet@1.971.88.1, 2003-04-09 20:50:47-07:00, torvalds@home.transmeta.com Annotate sysct with user pointer annotations ChangeSet@1.1001, 2003-04-09 20:15:16-07:00, jsimmons@maxwell.earthlink.net Merge ChangeSet@1.971.86.6, 2003-04-10 03:09:17+01:00, davej@codemonkey.org.uk [AGPGART] update stale comment in x86-64 GART driver. ChangeSet@1.971.86.5, 2003-04-10 03:03:54+01:00, davej@codemonkey.org.uk [AGPGART] Print banner on detecting AMD64 GART. All the other GART drivers display what they've found, so make this one follow suit. ChangeSet@1.971.86.4, 2003-04-10 02:39:21+01:00, davej@codemonkey.org.uk [AGPGART] x86-64 Kconfig fixes. Offering the K7 GARTs on 64bit kernels causes sillyness, like reports of "unrecognised device, try unsupported". We don't want people to even try that, so don't offer it in the first place. There's really no good reason for offering any of the IA32 era GARTs on a x86-64 64bit kernel. If Intel (or whoever) ever do an x86-64 clone, a new gart driver will be started anyways, as has been done for amd-k8-agp. ChangeSet@1.971.87.2, 2003-04-09 18:03:56-07:00, yoshfuji@linux-ipv6.org [IPV{4,6}]: Convert from MOD_{INC,DEC}_USE_COUNT. ChangeSet@1.971.87.1, 2003-04-09 17:57:43-07:00, shemminger@osdl.org [VLAN]: More device registry error handling fixes. ChangeSet@1.971.1.198, 2003-04-09 17:29:50-07:00, paulus@samba.org [PATCH] i2c: Add driver for powermac keywest i2c interface Here is a patch that adds an i2c bus driver for the i2c interface found in the "KeyWest" and later combo-I/O chips used in powermacs. The patch is against Linus' current BK tree. ChangeSet@1.971.86.3, 2003-04-10 01:15:13+01:00, davej@codemonkey.org.uk [AGPGART] Remove CONFIG_AGP3. This optioned saved just a handful of bytes, and uglied up the code quite a lot. Saving less than a page of memory is not as important as maintainable code. ChangeSet@1.971.86.2, 2003-04-10 01:10:20+01:00, davej@codemonkey.org.uk [AGPGART] Kconfig cleanups. (Remove no longer needed E7x05 entries) ChangeSet@1.971.79.7, 2003-04-09 16:26:18-07:00, baldrick@wanadoo.fr [PATCH] USB speedtouch: don't open a connection if no firmware How about this one instead. MOD_INC_USE_COUNT is placed before I call any functions that can sleep. Let's just hope that the call to me doesn't come after some sleeping in the higher layers... ChangeSet@1.971.79.6, 2003-04-09 16:16:44-07:00, jcdutton@users.sourceforge.net [PATCH] USB: Add support for Pentax Still Camera to linux kernel. ChangeSet@1.971.79.5, 2003-04-09 16:15:39-07:00, oliver@neukum.org [PATCH] USB: remove unnecessary setting of configuration from audio audio should not mess with configurations. ChangeSet@1.971.79.4, 2003-04-09 16:14:48-07:00, legoll@free.fr [PATCH] USB: New USB serial device ID: Asus A600 PDA cradle Just managed to get usb-serial connection up and running with my Asus PDA, great work ! If you want to integrate the patches into the kernel tree, please do so. ChangeSet@1.971.79.3, 2003-04-09 16:14:03-07:00, baldrick@wanadoo.fr [PATCH] USB speedtouch Kconfig fix; CREDITS entry out of order Follow the style of other entries in Kconfig. CREDITS | 8 ++++---- drivers/usb/misc/Kconfig | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) ChangeSet@1.971.74.5, 2003-04-10 00:00:43+01:00, davej@codemonkey.org.uk [AGPGART] Missing C99 struct initialiser for x86-64 GART ChangeSet@1.971.74.4, 2003-04-09 23:58:33+01:00, davej@codemonkey.org.uk [AGPGART] ia64 related AGP fixes from David Mosberger. ChangeSet@1.971.74.3, 2003-04-09 23:56:30+01:00, davej@codemonkey.org.uk [AGPGART] Fold Intel i7x05 GART into intel-agp driver. Also includes various other fixes from Matt Tolentino ChangeSet@1.971.79.2, 2003-04-09 15:45:05-07:00, greg@kroah.com [PATCH] USB: fix uss720 driver to work properly with recent parport changes. ChangeSet@1.971.85.4, 2003-04-09 15:26:57-07:00, davem@nuts.ninka.net [SPARC64]: Use __user in ioctl32.c ChangeSet@1.971.85.3, 2003-04-09 15:12:32-07:00, davem@nuts.ninka.net [SPARC64]: Fix copy_in_user args in process.c ChangeSet@1.971.85.2, 2003-04-09 15:00:29-07:00, davem@nuts.ninka.net [SPARC]: Make SA_ signal mask values explicitly unsigned. ChangeSet@1.971.85.1, 2003-04-09 14:54:35-07:00, davem@nuts.ninka.net [SPARC]: Cleanup uaccess headers and add __user attributes. ChangeSet@1.971.82.6, 2003-04-09 14:36:21-07:00, greg@kroah.com i2c: clean up i2c-dev.c's formatting, DEBUG, and ioctl mess ChangeSet@1.971.81.5, 2003-04-09 11:51:40-07:00, davidm@tiger.hpl.hp.com ia64: Initial sync with 2.5.67. ChangeSet@1.971.1.195, 2003-04-09 11:44:19-07:00, torvalds@home.transmeta.com Tag more user-supplied path strings as being user pointers for type evaluation. This tags the system call interfaces in fs/open.c, fs/dcache.c and mm/swapfile.c - and tags the path walking helper functions. ChangeSet@1.971.1.194, 2003-04-09 11:32:09-07:00, akpm@digeo.com [PATCH] fix file leak in fadvise() It can miss an fput() if passed the fd of a file which has no ->mapping. ChangeSet@1.971.1.193, 2003-04-09 11:32:01-07:00, akpm@digeo.com [PATCH] 3c59x EISA tidyup From: Marc Zyngier The included patch helps 3c59x to display the correct identification string (3c592 and 3c597 were displayed as 3c590). It also gets rid of the EISA_bus reference, which is not needed anymore since the driver has been ported to the EISA probing API. ChangeSet@1.971.1.192, 2003-04-09 11:31:53-07:00, akpm@digeo.com [PATCH] task_lock commentary fixes From: Manfred Spraul Update and clarify the incorrect commentary around task_lock() ChangeSet@1.971.1.191, 2003-04-09 11:31:44-07:00, akpm@digeo.com [PATCH] struct address_space comments From: "Martin J. Bligh" Fix the commentary around the address_space fields. ChangeSet@1.971.1.190, 2003-04-09 11:31:36-07:00, akpm@digeo.com [PATCH] Make msync(MS_ASYNC) no longer start the I/O MS_ASYNC will currently wait on previously-submitted I/O, then start new I/O and not wait on it. This can cause undesirable blocking if msync is called rapidly against the same memory. So instead, change msync(MS_ASYNC) to not start any IO at all. Just flush the pte dirty bits into the pageframe and leave it at that. The IO _will_ happen within a kupdate period. And the application can use fsync() or fadvise(FADV_DONTNEED) if it actually wants to schedule the IO immediately. (This has triggered an ext3 bug - the page's buffers get dirtied so fast that kjournald keeps writing the buffers over and over for 10-20 seconds before deciding to give up for some reason) ChangeSet@1.971.1.189, 2003-04-09 11:31:28-07:00, akpm@digeo.com [PATCH] Missing brelse() in ext2/ext3 extended attribute code From: Andreas Gruenbacher Missing brelse() in ext2/ext3 extended attribute code The ext2 and ext3 EA implementations fail to release a buffer_head if the inode that is being accessed is sharing EAs with another inode, and an attribute is set to the same value that it has already, like so: $ touch f g $ setfattr -n user.test -v test f g # (Now, both f and g refer to the same EA block.) $ setfattr -n user.test -v test f With the bug, an "invalidate: busy buffer" or "invalidate: dirty buffer" message will be logged when the file system is unmounted. This patch fixes the problem. At the implementation level: The code was assuming that ext3_xattr_cache_find cannot return the same block the inode already is associated with, so testing for (old_bh != new_bh) would determine whether the old block is resued or an additional bh is held. This is wrong if the EA block is used by multiple inodes (in which case it stays in the cache), and the block isn't actually modified. Instead of testing for (old_bh != new_bh), the code now does a get_bh() in the branch that keeps the old block, which assures that new_bh now is either NULL or a handle that must be released at the end of ext3_xattr_set_handle2(). ChangeSet@1.971.1.188, 2003-04-09 11:31:19-07:00, akpm@digeo.com [PATCH] epoll cross-thread deletion fix From: Davide Libenzi This fixes a bug that might happen having a thread doing epoll_wait() with another thread doing epoll_ctl(EPOLL_CTL_DEL) and close(). The fast check inside eventpoll_release() is good to not effect performace of code not using epoll, but it requires get_file() to be called ( that can be avoided by dropping the fast check ). I opted to keep the fast check and to have epoll to call get_file() before the event send loop. I tested it on UP and 2SMP with a bug-exploiting program provided by @pivia.com ( thx to them ) and it looks fine. I also update the 2.4.20 epoll patch with this fix : ChangeSet@1.971.1.187, 2003-04-09 11:31:10-07:00, akpm@digeo.com [PATCH] Allow panics and reboots at oops time. From: Russell Miller A BUG or an oops will often leave a machine in a useless state. There is no way to remotely recover the machine from that state. The patch adds a /proc/sys/kernel/panic_on_oops sysctl which, when set, will cause the x86 kernel to call panic() at the end of the oops handler. If the user has also set /proc/sys/kernel/panic then a reboot will occur. The implementation will try to sleep for a while before panicing so the oops info has a chance of hitting the logs. The implementation is designed so that other architectures can easily do this in their oops handlers. ChangeSet@1.971.1.186, 2003-04-09 11:31:01-07:00, akpm@digeo.com [PATCH] task_vsize() speedup From: William Lee Irwin III task_vsize() mysteriously appeared on my profiles. This should remove it from them by using the already in-use elsewhere for rlimit checks mm->total_vm for the benefit of O(1) cachelines touched. ChangeSet@1.971.1.185, 2003-04-09 11:30:52-07:00, akpm@digeo.com [PATCH] JBD pasting warning fix From: "Hua Zhong" Fix a token-pasting warning from recent gcc's ChangeSet@1.971.1.184, 2003-04-09 11:30:44-07:00, akpm@digeo.com [PATCH] fix unuse_pmd fixme From: Hugh Dickins try_to_unuse drop mmlist_lock across unuse_process (with pretty dance of atomic_incs and mmputs of various mmlist markers, and a polite new cond_resched there), so unuse_process can pte_chain_alloc(GFP_KERNEL) and pass that down and down and down and down to unuse_pte: which cannot succeed more than once on a given mm (make that explicit by returning back up once succeeded). Preliminary checks moved up from unuse_pte to unuse_pmd, and done more efficiently (avoid that extra pte_file test added recently), swapoff spends far too long in here. Updated locking comments and references to try_to_swap_out. ChangeSet@1.971.1.183, 2003-04-09 11:30:35-07:00, akpm@digeo.com [PATCH] rmap comments From: Hugh Dickins Update a few locking comments in rmap.c. ChangeSet@1.971.1.182, 2003-04-09 11:30:24-07:00, akpm@digeo.com [PATCH] Replace the radix-tree rwlock with a spinlock Spinlocks don't have a buslocked unlock and are faster. On a P4, time to write a 4M file with 4M one-byte-write()s: Before: 0.72s user 5.47s system 99% cpu 6.227 total 0.76s user 5.40s system 100% cpu 6.154 total 0.77s user 5.38s system 100% cpu 6.146 total After: 1.09s user 4.92s system 99% cpu 6.014 total 0.74s user 5.28s system 99% cpu 6.023 total 1.03s user 4.97s system 100% cpu 5.991 total ChangeSet@1.971.1.181, 2003-04-09 11:30:15-07:00, akpm@digeo.com [PATCH] misc rmap speedups Even a BUG_ON() makes a measurable difference. So remove some gratuitous ones which will just trigger a null pointer deref anyway. Also remove some debug code which isn't really being maintained any more. Also replace (effectively): test_bit(N, foo); set_bit(N, foo); with set_bit(N, foo); test_bit(N, foo); In the first case we'll go onto the bus twice: once for the cache miss and once to get exclusive write access. In the second case we only go on the bus once. I think. Certainly this trick chaved 40% off the cost of shrink_list() when I did it there... This patch is worth 1% or so on the bash script testing. ChangeSet@1.971.1.180, 2003-04-09 11:30:06-07:00, akpm@digeo.com [PATCH] speed up rmap searching several functions in rmap.c are searching the ptes[] array fo find the first non-null entry. Despite the fact tha the whole lot is in L1 cache, it is expensive, especially on 128-byte cacheline machines. We can encode the index of the first non-null pte entry inside the pte_chain's `next' field and remove those searches altogether. This reduces the rmap CPU tax by about 25% on a P4. For a total runtime reduction of around 5% in the bash-script intensive test which I use. ChangeSet@1.971.1.179, 2003-04-09 11:29:58-07:00, akpm@digeo.com [PATCH] remove nr_reverse_maps VM accounting Maintaining the `nr_reverse_maps' provides makes a small but measurable decrease in page_add_rmap() overhead. I don't think it's a very useful metric, and it can be sort-of inferred from slabinfo. ChangeSet@1.971.1.178, 2003-04-09 11:29:49-07:00, akpm@digeo.com [PATCH] null-terminate the kmalloc tables From: David Mosberger The cache_sizes array needs to be NULL terminated, otherwise an oversized kmalloc request runs off the end of the table. ChangeSet@1.971.1.177, 2003-04-09 11:29:39-07:00, akpm@digeo.com [PATCH] Enforce gcc-2.95 as the minimum compiler requirement Now that sparc64 is using gcc-3.x we can disallow gcc-2.91, etc. Documentation/Changes already says 2.95.3, which is working fine for me. With this change, we no longer require that per-cpu data definitions be initialised. That was a workaround for a bug in older gccs. So remove the build infrastructure which was checking for that. Also, mention that nfs-utils-1.0.3 is required. It isn't required yet, but will be once we enable larger dev_t: there is an interface for exportfs which passes dev_t's into the kernel which breaks with larger dev_t. That interface is old, deprecated and is not used in nfs-utils-1.0.3. ChangeSet@1.971.1.176, 2003-04-09 11:29:30-07:00, akpm@digeo.com [PATCH] fix wait_on_buffer() debug code The wait_on_buffer() debug code is generating false warnings when called from __block_prepare_write(). It is legal to wait on a zero-ref buffer when its page is locked. The page lock keeps try_to_free_buffers() away. This debug code hasn't found any bugs yet. ChangeSet@1.971.1.174, 2003-04-09 11:16:17-07:00, torvalds@home.transmeta.com Add user pointer attributes to kernel/sys.c ChangeSet@1.971.1.173, 2003-04-09 11:15:49-07:00, torvalds@home.transmeta.com User pointers are not just in another address space, they also must never be dereferenced directly. Make that clear in the attribute. ChangeSet@1.971.82.5, 2003-04-09 11:04:03-07:00, schlicht@uni-mannheim.de [PATCH] i2c: fix compilation error for various i2c-devices Changed the i2c_adapter name definition to match the current interface. ChangeSet@1.971.81.4, 2003-04-09 10:56:20-07:00, mort@wildopensource.com [PATCH] ia64: Fix up "extern inline" Here is a trivial patch to processor.h to change "extern" to "static". ChangeSet@1.971.84.1, 2003-04-09 11:33:49-05:00, jejb@raven.il.steeleye.com Merge patmans/axboe ChangeSet@1.971.83.1, 2003-04-09 09:55:59-05:00, jejb@raven.il.steeleye.com Automerge ChangeSet@1.971.82.4, 2003-04-08 12:31:53-07:00, azarah@gentoo.org [PATCH] i2c: remove compiler warning in w83781d sensor driver On Wed, 2003-04-09 at 00:04, Greg KH wrote: > Oh, I'm getting the following warning when building the driver, want to > look into this? > > drivers/i2c/chips/w83781d.c: In function `store_fan_div_reg': > drivers/i2c/chips/w83781d.c:715: warning: `old3' might be used uninitialized in this function > It is because old3 is only referenced if: ((data->type != w83781d) && data->type != as99127f) as those two chips don't have extended divisor bits ... It is however set in the first occurrence: /* w83781d and as99127f don't have extended divisor bits */ if ((data->type != w83781d) && data->type != as99127f) { old3 = w83781d_read_value(client, W83781D_REG_VBAT); } and thus is rather gcc being brain dead for not being able to figure old3 is only used within a if block like that. I was not sure about style policy in a case like this, so I left it as is, it should however be possible to 'fix' it with: ChangeSet@1.971.82.3, 2003-04-08 02:49:21-07:00, azarah@gentoo.org [PATCH] i2c: Fix w83781d sensor to use Milli-Volt for in_* in sysfs I did the w83781d sysfs update as per the old spec, which was not milli-volt. This patch should fix it. ChangeSet@1.971.82.2, 2003-04-08 02:48:29-07:00, kraxel@bytesex.org [PATCH] i2c: add i2c_clientname() This patch just adds a #define and a inline function to hide the "i2c_client->name" => "i2c_client->dev.name" move introduced by the recent i2c updates. That makes it easier to build i2c drivers on both 2.4 and 2.5 kernels. ChangeSet@1.971.1.172, 2003-04-08 22:45:40-07:00, torvalds@home.transmeta.com Annotate x87 user space access functions with proper type attributes. ChangeSet@1.971.1.171, 2003-04-08 22:31:48-07:00, torvalds@home.transmeta.com Annotate fs/namei.c with user pointer annotations. ChangeSet@1.971.1.170, 2003-04-08 22:26:32-07:00, torvalds@home.transmeta.com Annotate fs/exec.c with user pointer annotations. ChangeSet@1.971.1.169, 2003-04-08 22:17:56-07:00, torvalds@home.transmeta.com Add user pointer attributes to kernel/module.c ChangeSet@1.971.1.168, 2003-04-08 21:33:49-07:00, torvalds@penguin.transmeta.com Annotate i386/signal.c with address space type annotations. ChangeSet@1.971.1.167, 2003-04-08 17:22:48-07:00, torvalds@penguin.transmeta.com Annotate scheduler system calls as taking user pointers. ChangeSet@1.971.72.10, 2003-04-08 17:18:46-07:00, rusty@rustcorp.com.au [IPSEC]: Avoid using SET_MODULE_OWNER. ChangeSet@1.971.1.166, 2003-04-08 17:14:26-07:00, torvalds@penguin.transmeta.com Make __SI_MASK explicitly unsigned, instead of depending on magic C promotion to silently do so for us. ChangeSet@1.971.1.165, 2003-04-08 17:13:12-07:00, torvalds@penguin.transmeta.com Add __user attributes to user pointers in kernel/signal.c. This was the first file tested with my type checker with the anal pointer attribute checking turned on. ChangeSet@1.971.1.164, 2003-04-08 17:11:49-07:00, torvalds@penguin.transmeta.com Add the proper sprinkling of __user attributes to the user space access functions. This allows the type checker to check proper usage. ChangeSet@1.971.1.163, 2003-04-08 17:10:42-07:00, torvalds@penguin.transmeta.com Add __user/__kernel address space modifiers. When not checking, these end up being no-ops, but they get enabled by the type checker as special address_space attributes. ChangeSet@1.971.72.9, 2003-04-08 17:09:45-07:00, shemminger@osdl.org [VLAN]: Update to new module semantics, use synchronize_net. ChangeSet@1.971.72.8, 2003-04-08 16:16:17-07:00, jmorris@intercode.com.au [IPSEC]: Support for optional policies on input got lost. ChangeSet@1.971.81.3, 2003-04-08 14:43:30-07:00, sfr@canb.auug.org.au [PATCH] ia64: compat_uptr_t and compat_ptr Here is the ia64 part of the patch. It depends on my previous COMPAT patches. This is safe to apply even before Linus applies the generic part. ChangeSet@1.971.81.2, 2003-04-08 14:27:04-07:00, sfr@canb.auug.org.au [PATCH] ia64: compat_sys_fcntl{,64} Here is the ia64 part of the patch. Pleas apply after Linus has applied the generic part. ChangeSet@1.971.1.162, 2003-04-08 12:33:12-07:00, torvalds@home.transmeta.com Fix mtdblock.c compile. From Adrian Bunk. ChangeSet@1.971.1.161, 2003-04-08 12:31:46-07:00, akpm@digeo.com [PATCH] Fix futexes in hugetlb pages There is a stunning bug. ChangeSet@1.971.1.160, 2003-04-08 12:25:26-07:00, miles@lsi.nec.co.jp [PATCH] On the v850/nb85e, acknowledge interrupts immediately after handling them Previously, it was done automatically by the `reti' isntruction upon returning from the kernel, but that doesn't do the correct thing in various cases, for instance if there's a context switch, or a softirq. ChangeSet@1.971.81.1, 2003-04-08 12:08:27-07:00, davidm@tiger.hpl.hp.com Merge ChangeSet@1.971.1.159, 2003-04-08 11:59:22-07:00, Andries.Brouwer@cwi.nl [PATCH] tty_io.c: make redirect static ChangeSet@1.971.1.158, 2003-04-08 11:59:14-07:00, Andries.Brouwer@cwi.nl [PATCH] kafstimod.c fix: make timeouts unsigned long ChangeSet@1.971.1.157, 2003-04-08 11:59:04-07:00, Andries.Brouwer@cwi.nl [PATCH] krxtimod.c fix: make timeouts unsigned long ChangeSet@1.971.1.156, 2003-04-08 11:58:55-07:00, Andries.Brouwer@cwi.nl [PATCH] paride fix: make timeouts unsigned long ChangeSet@1.889.310.55, 2003-04-08 11:40:08-07:00, davidm@tiger.hpl.hp.com ia64: Sync sys32_ipc() with x86 counter-part. ChangeSet@1.971.1.155, 2003-04-08 11:19:19-07:00, torvalds@home.transmeta.com More left-over fixups from the merge with Alan. ChangeSet@1.971.1.154, 2003-04-08 10:46:46-07:00, torvalds@home.transmeta.com Fix up merge with Alan. ChangeSet@1.971.1.153, 2003-04-08 09:47:11-07:00, alan@lxorguk.ukuu.org.uk [PATCH] make APM machine independant using mach headers ChangeSet@1.971.1.152, 2003-04-08 09:47:02-07:00, alan@lxorguk.ukuu.org.uk [PATCH] make vm86 machine independant using new headers ChangeSet@1.971.1.151, 2003-04-08 09:46:53-07:00, alan@lxorguk.ukuu.org.uk [PATCH] use mach io_ports definitions in io_apic Allows for the non standard cascade ChangeSet@1.971.1.150, 2003-04-08 09:46:44-07:00, alan@lxorguk.ukuu.org.uk [PATCH] suspend doesnt need compatmac either ChangeSet@1.971.1.149, 2003-04-08 09:46:36-07:00, alan@lxorguk.ukuu.org.uk [PATCH] last batch of audio C99 ChangeSet@1.971.1.148, 2003-04-08 09:46:25-07:00, alan@lxorguk.ukuu.org.uk [PATCH] sync opl3sa2 with 2.4 ChangeSet@1.971.1.147, 2003-04-08 09:46:16-07:00, alan@lxorguk.ukuu.org.uk [PATCH] yet more sound version/c99 ChangeSet@1.971.1.146, 2003-04-08 09:46:06-07:00, alan@lxorguk.ukuu.org.uk [PATCH] ite C99 and version/h ChangeSet@1.971.1.145, 2003-04-08 09:45:58-07:00, alan@lxorguk.ukuu.org.uk [PATCH] fix ; in mad16 ChangeSet@1.971.1.144, 2003-04-08 09:45:49-07:00, alan@lxorguk.ukuu.org.uk [PATCH] ics2101 needs to match the gus_lock name too ChangeSet@1.971.1.143, 2003-04-08 09:45:41-07:00, alan@lxorguk.ukuu.org.uk [PATCH] another C99 and version casd ChangeSet@1.971.1.142, 2003-04-08 09:45:31-07:00, alan@lxorguk.ukuu.org.uk [PATCH] fix modular gus shared lock ChangeSet@1.971.1.141, 2003-04-08 09:45:22-07:00, alan@lxorguk.ukuu.org.uk [PATCH] lots more version and C99 for audio ChangeSet@1.971.1.140, 2003-04-08 09:45:13-07:00, alan@lxorguk.ukuu.org.uk [PATCH] C99 for sound ChangeSet@1.971.1.139, 2003-04-08 09:45:05-07:00, alan@lxorguk.ukuu.org.uk [PATCH] cs4232 should be devexit ChangeSet@1.971.1.138, 2003-04-08 09:44:56-07:00, alan@lxorguk.ukuu.org.uk [PATCH] more audiov ersion scrubbing ChangeSet@1.971.1.137, 2003-04-08 09:44:48-07:00, alan@lxorguk.ukuu.org.uk [PATCH] small pc98xx fix for sound ChangeSet@1.971.1.136, 2003-04-08 09:44:38-07:00, alan@lxorguk.ukuu.org.uk [PATCH] remove version.h's ChangeSet@1.971.1.135, 2003-04-08 09:44:28-07:00, alan@lxorguk.ukuu.org.uk [PATCH] irda typo fixes ChangeSet@1.971.1.134, 2003-04-08 09:44:19-07:00, alan@lxorguk.ukuu.org.uk [PATCH] wireless uses __init ChangeSet@1.971.1.133, 2003-04-08 09:44:10-07:00, alan@lxorguk.ukuu.org.uk [PATCH] remove version crap ChangeSet@1.971.1.132, 2003-04-08 09:44:01-07:00, alan@lxorguk.ukuu.org.uk [PATCH] shared multimedia includes for saa71xx ChangeSet@1.971.1.131, 2003-04-08 09:43:54-07:00, alan@lxorguk.ukuu.org.uk [PATCH] lock for scc drivers ChangeSet@1.971.1.130, 2003-04-08 09:43:46-07:00, alan@lxorguk.ukuu.org.uk [PATCH] continued compatmac exterminations ChangeSet@1.971.1.129, 2003-04-08 09:43:39-07:00, alan@lxorguk.ukuu.org.uk [PATCH] hdreg.h typo fix ChangeSet@1.971.1.128, 2003-04-08 09:43:30-07:00, alan@lxorguk.ukuu.org.uk [PATCH] possible way to clean up fdreg.h ChangeSet@1.971.1.127, 2003-04-08 09:43:22-07:00, alan@lxorguk.ukuu.org.uk [PATCH] update dvb headers ChangeSet@1.971.1.126, 2003-04-08 09:43:15-07:00, alan@lxorguk.ukuu.org.uk [PATCH] goodbye compatmac.h ChangeSet@1.971.1.125, 2003-04-08 09:43:06-07:00, alan@lxorguk.ukuu.org.uk [PATCH] x86-64 typo fixes (Steven Cole) ChangeSet@1.971.1.124, 2003-04-08 09:42:58-07:00, alan@lxorguk.ukuu.org.uk [PATCH] header for pc9800 type detection ChangeSet@1.971.1.123, 2003-04-08 09:42:50-07:00, alan@lxorguk.ukuu.org.uk [PATCH] and voyager ChangeSet@1.971.1.122, 2003-04-08 09:42:41-07:00, alan@lxorguk.ukuu.org.uk [PATCH] and visws ChangeSet@1.971.1.121, 2003-04-08 09:42:33-07:00, alan@lxorguk.ukuu.org.uk [PATCH] add the same mach specific headers for pc9800 ChangeSet@1.971.1.120, 2003-04-08 09:42:23-07:00, alan@lxorguk.ukuu.org.uk [PATCH] add but do not yet use mach specific definitions for ports etc on PC ChangeSet@1.971.1.119, 2003-04-08 09:42:15-07:00, alan@lxorguk.ukuu.org.uk [PATCH] asm-alpha typo fixe (Steven Cole) ChangeSet@1.971.1.118, 2003-04-08 09:42:06-07:00, alan@lxorguk.ukuu.org.uk [PATCH] compatmac is not needed ChangeSet@1.971.1.117, 2003-04-08 09:41:58-07:00, alan@lxorguk.ukuu.org.uk [PATCH] compatmac is not needed ChangeSet@1.971.1.116, 2003-04-08 09:41:50-07:00, alan@lxorguk.ukuu.org.uk [PATCH] junk header removal ChangeSet@1.971.1.115, 2003-04-08 09:41:42-07:00, alan@lxorguk.ukuu.org.uk [PATCH] first pass at fixing strip for 2.5 ChangeSet@1.971.1.114, 2003-04-08 09:41:33-07:00, alan@lxorguk.ukuu.org.uk [PATCH] fix cosa verify_area ChangeSet@1.971.1.113, 2003-04-08 09:41:26-07:00, alan@lxorguk.ukuu.org.uk [PATCH] update slip to new tty module locks ChangeSet@1.971.1.112, 2003-04-08 09:41:17-07:00, alan@lxorguk.ukuu.org.uk [PATCH] first cut at 3c574_cs for SMP safety etc The old code was totally hosed for SMP, the windowing makes this stuff tricky so it may need more work ChangeSet@1.971.1.111, 2003-04-08 09:41:09-07:00, alan@lxorguk.ukuu.org.uk [PATCH] fix macmace get_free_pages parameters (Matthew Wilcox) ChangeSet@1.971.1.110, 2003-04-08 09:41:01-07:00, alan@lxorguk.ukuu.org.uk [PATCH] Update lp486e for 2.5 ChangeSet@1.971.1.109, 2003-04-08 09:40:54-07:00, alan@lxorguk.ukuu.org.uk [PATCH] fix up yam for 2.5 locking ChangeSet@1.971.1.108, 2003-04-08 09:40:46-07:00, alan@lxorguk.ukuu.org.uk [PATCH] first cut at scc.c for 2.5 locking ChangeSet@1.971.1.107, 2003-04-08 09:40:38-07:00, alan@lxorguk.ukuu.org.uk [PATCH] fix arcnet locking for 2.5 ChangeSet@1.971.1.106, 2003-04-08 09:40:30-07:00, alan@lxorguk.ukuu.org.uk [PATCH] port ltpc to 2.5 ChangeSet@1.971.1.105, 2003-04-08 09:40:22-07:00, alan@lxorguk.ukuu.org.uk [PATCH] fix error in cops port to 2.5 ChangeSet@1.971.1.104, 2003-04-08 09:40:13-07:00, alan@lxorguk.ukuu.org.uk [PATCH] remaining dvb bits ChangeSet@1.971.1.103, 2003-04-08 09:40:04-07:00, alan@lxorguk.ukuu.org.uk [PATCH] bring core media/video up to date with dvb changes ChangeSet@1.971.1.102, 2003-04-08 09:39:56-07:00, alan@lxorguk.ukuu.org.uk [PATCH] fix radio-cadet build ChangeSet@1.971.1.101, 2003-04-08 09:39:47-07:00, alan@lxorguk.ukuu.org.uk [PATCH] kill off a load of stuff now in common dvb (These changes are big because they are the result of Martin Hunold resolving a *huge* long term fork in the DVB code base). We now have one DVB codebase so the changes while big are very good news ChangeSet@1.971.1.100, 2003-04-08 09:39:35-07:00, alan@lxorguk.ukuu.org.uk [PATCH] update the dvb front end chips (Again all DVB is Martin Hunold) ChangeSet@1.971.1.99, 2003-04-08 09:38:45-07:00, alan@lxorguk.ukuu.org.uk [PATCH] update the dvb core ChangeSet@1.971.1.98, 2003-04-08 09:38:36-07:00, alan@lxorguk.ukuu.org.uk [PATCH] add drivers/media/common for mixed dvb/analog device stuff (Martin Hunold) ChangeSet@1.971.1.97, 2003-04-08 09:38:28-07:00, alan@lxorguk.ukuu.org.uk [PATCH] fix up capslock on pc9800 ChangeSet@1.971.1.96, 2003-04-08 09:38:19-07:00, alan@lxorguk.ukuu.org.uk [PATCH] fix our handling of BIOS forced PIO serverworks OSB4 (Robert Hentosh & me) ChangeSet@1.971.1.95, 2003-04-08 09:38:11-07:00, alan@lxorguk.ukuu.org.uk [PATCH] clean up pci interrupt line whacking ChangeSet@1.971.1.94, 2003-04-08 09:38:01-07:00, alan@lxorguk.ukuu.org.uk [PATCH] error handling for upd4990a (Stephan Maciej) ChangeSet@1.971.1.93, 2003-04-08 09:37:54-07:00, alan@lxorguk.ukuu.org.uk [PATCH] exterminate compatmac in sx (compatmac cleanup is all Adrian Bunk) ChangeSet@1.971.1.92, 2003-04-08 09:37:45-07:00, alan@lxorguk.ukuu.org.uk [PATCH] update char Kconfig for PC9800 ChangeSet@1.971.1.91, 2003-04-08 09:37:38-07:00, alan@lxorguk.ukuu.org.uk [PATCH] unversion.h and compatmac applicom.c ChangeSet@1.971.1.90, 2003-04-08 09:37:29-07:00, alan@lxorguk.ukuu.org.uk [PATCH] makefile for pc9800 ChangeSet@1.971.1.89, 2003-04-08 09:37:21-07:00, alan@lxorguk.ukuu.org.uk [PATCH] MOD_* can go for floppy (Bob Miller) ChangeSet@1.971.1.88, 2003-04-08 09:37:13-07:00, alan@lxorguk.ukuu.org.uk [PATCH] config for PC98xx floppy ChangeSet@1.971.1.87, 2003-04-08 09:37:03-07:00, alan@lxorguk.ukuu.org.uk [PATCH] PC9800 floppy driver (Osamu Tomita) ChangeSet@1.971.1.86, 2003-04-08 09:36:55-07:00, alan@lxorguk.ukuu.org.uk [PATCH] compatmac not needed uaccess.h is Fixes unknown symbol copy_.. in some builds ChangeSet@1.971.1.85, 2003-04-08 09:36:47-07:00, alan@lxorguk.ukuu.org.uk [PATCH] compatmac not needed ChangeSet@1.971.1.84, 2003-04-08 09:36:38-07:00, alan@lxorguk.ukuu.org.uk [PATCH] v850 updates (Miles Bader) ChangeSet@1.971.1.83, 2003-04-08 09:36:30-07:00, alan@lxorguk.ukuu.org.uk [PATCH] ppc64 syscalls return long purity ChangeSet@1.971.1.82, 2003-04-08 09:36:21-07:00, alan@lxorguk.ukuu.org.uk [PATCH] parisc - syscalls return long purity ... ChangeSet@1.971.1.81, 2003-04-08 09:36:12-07:00, alan@lxorguk.ukuu.org.uk [PATCH] fix i387 fxsr conversion ChangeSet@1.971.1.80, 2003-04-08 09:36:03-07:00, alan@lxorguk.ukuu.org.uk [PATCH] read extended cpu revision data (Dave Jones) ChangeSet@1.971.1.79, 2003-04-08 09:35:54-07:00, alan@lxorguk.ukuu.org.uk [PATCH] Config.in typos (Steve Cole and co) ChangeSet@1.971.1.78, 2003-04-08 09:35:46-07:00, alan@lxorguk.ukuu.org.uk [PATCH] fix the mode for bios call in x86-32 as well as -64 (Andi Kleen) ChangeSet@1.971.1.77, 2003-04-08 09:35:38-07:00, alan@lxorguk.ukuu.org.uk [PATCH] alpha typos part 2 ChangeSet@1.971.1.76, 2003-04-08 09:35:30-07:00, alan@lxorguk.ukuu.org.uk [PATCH] alpha typos part 1 (Steven Cole) ChangeSet@1.971.1.75, 2003-04-08 09:16:52-07:00, torvalds@home.transmeta.com Make it more explicit that jiffies are "unsigned long", but that we for the initial value ctually want to check only wrap-around in an "unsigned int". ChangeSet@1.971.1.74, 2003-04-08 09:14:26-07:00, axboe@suse.de [PATCH] move q->queuedata assign after queue init I want to make blk_init_queue() zero the queue, so we don't get anymore nasty bugs with uninitialized variables. IDE is setting queuedata before init though. ChangeSet@1.971.1.73, 2003-04-08 09:14:18-07:00, axboe@suse.de [PATCH] no blk_queue_empty The single missing bit, please add that as well. Was missed because this driver actually used elv_queue_empty, not blk_queue_empty. ChangeSet@1.971.1.72, 2003-04-07 22:54:09-07:00, torvalds@home.transmeta.com Avoid using pointers to anonymous structure initializers. It's a gcc'ism, and even gcc can apparently get confused by it. ChangeSet@1.971.72.7, 2003-04-07 22:10:58-07:00, jmorris@intercode.com.au [IPSEC]: Really move type destructor out of spinlock. ChangeSet@1.971.72.5, 2003-04-07 22:07:40-07:00, niv@us.ibm.com [TCP]: Missing SNMP stats. ChangeSet@1.971.72.4, 2003-04-07 22:02:26-07:00, jmorris@intercode.com.au [IPSEC]: AH/ESP forget to free private structs. ChangeSet@1.971.1.70, 2003-04-07 16:29:18-07:00, davem@nuts.ninka.net [SPARC]: Fix sys_ipc to return ENOSYS instead of EINVAL as appropriate. ChangeSet@1.971.1.69, 2003-04-07 16:18:59-07:00, alan@lxorguk.ukuu.org.uk [SPARC64]: syscalls returning long ChangeSet@1.971.80.2, 2003-04-07 15:56:32-07:00, greg@kroah.com i2c: fix up compile error in scx200_i2c driver. ChangeSet@1.971.75.21, 2003-04-08 00:47:26+02:00, marius@citi.umich.edu Add hooks into the NFSv4 XDR code to make use of the new uid/gid mapper upcall mechanism. ChangeSet@1.971.75.20, 2003-04-08 00:46:27+02:00, marius@citi.umich.edu Add support for mapping NFSv4 remote user/group names into local unix-style uid/gids. Note that this makes use of the RPC client upcall mechanism (rpc_pipefs) to notify a userland daemon that does the actual mapping. The results are then cached in the kernel. The userland daemon can be downloaded from the CITI NFSv4 page at http://www.citi.umich.edu/projects/nfsv4/ ChangeSet@1.971.75.19, 2003-04-08 00:31:46+02:00, trond.myklebust@fys.uio.no Make the NFSv4 write code use the stateid if it exists. ChangeSet@1.971.75.18, 2003-04-08 00:31:06+02:00, trond.myklebust@fys.uio.no Make NFSv4 'read' code use the cached stateid if it exists. ChangeSet@1.971.75.17, 2003-04-08 00:30:19+02:00, trond.myklebust@fys.uio.no Make NFSv4 'setattr()' method use the cached stateid if the file is already open. ChangeSet@1.971.75.16, 2003-04-08 00:27:37+02:00, trond.myklebust@fys.uio.no Setup code to tear down the NFSv4 state once we're done with a file. ChangeSet@1.971.75.15, 2003-04-08 00:26:25+02:00, trond.myklebust@fys.uio.no Implement stateful open() for NFSv4 as per RFC3010-bis. The resulting state is saved in the NFS-specific part of the struct inode. Initially we just start with 3 possible states: - open for read - open for write - open for read/write ChangeSet@1.971.75.14, 2003-04-08 00:23:03+02:00, trond.myklebust@fys.uio.no Prepare for the introduction of NFSv4 state code. Split out the open() method for regular files from that of directories. ChangeSet@1.971.75.13, 2003-04-08 00:19:41+02:00, trond.myklebust@fys.uio.no Remove bogus check on the size of NFSv4 'readdir' cookies. ChangeSet@1.971.75.12, 2003-04-08 00:18:17+02:00, trond.myklebust@fys.uio.no Fix a series of NFS read/readdir/readlink errors. Tightens consistency checks on the process of reading the reply skb in the SunRPC client. Reject a reply if we didn't succeed in reading the entire skb. ChangeSet@1.889.310.54, 2003-04-07 14:31:51-07:00, davidm@wailua.hpl.hp.com ia64: Fix inconsistency in sys32_execve(). Reported by Chandra Kapate). ChangeSet@1.971.78.3, 2003-04-07 13:40:55-07:00, greg@kroah.com USB: set port->tty to NULL after we have closed the port This lets any of the many checks for this contition actually have a chance of working :) ChangeSet@1.971.77.6, 2003-04-07 21:05:52+02:00, hch@sgi.com [XFS] merge over some lost changes from the XFS tree ChangeSet@1.971.78.2, 2003-04-07 10:59:54-07:00, alborchers@steinerpoint.com [PATCH] USB: patch for oops in io_edgeport.c I tracked down a problem that caused an oops in io_edgeport.c. The oops is reliably reproduced by using an EdgePort USB serial port in dosemu and then exiting dosemu. When dosemu closed the port the oops would occur. (Tested in RH 7.3 2.4.18-10.) The problem was that a USB cmd callback would come in after the close with the tty struct freed, and the edge_bulk_out_cmd_callback function would do a wakeup on the tty->write_wait queue. The tty struct was gone (I checked that tty->magic was bad) and the wakeup would oops. As you did in other places in io_edgeport.c, I added a check that edge_port->open was true before using the edge_port->port->tty struct. I added a similar check in edge_bulk_out_data_callback, though I never actually saw the problem here. I notice that in 2.4.20 a check has been added to be sure that edge_port->port->tty is not null--however, this is not enough because the tty pointer is not set to null when the port is closed. An alternate solution in 2.4.20 would be to set the usb_serial_port->tty pointer to null in usbserial.c serial_close(). This seems like a good thing to do in general, since the tty struct should not be used after a close which frees it. If you would like I investigate this a bit more--it could affect other usb serial drivers and reveal some hidden bugs. ChangeSet@1.971.77.5, 2003-04-07 19:36:15+02:00, hch@sgi.com [XFS] remove atomicIncWithWrap SGI Modid: 2.5.x-xfs:slinx:143647a ChangeSet@1.971.77.4, 2003-04-07 19:33:47+02:00, nathans@sgi.com [XFS] Fix up some minor namespace pollution problems. SGI Modid: 2.5.x-xfs:slinx:143053a ChangeSet@1.971.77.3, 2003-04-07 19:28:33+02:00, nathans@sgi.com [XFS] Fix a pagebuf leak with the pagebufs used to coordinate IO completion for unwritten extent writes. SGI Modid: 2.5.x-xfs:slinx:143052a ChangeSet@1.971.77.2, 2003-04-07 19:25:05+02:00, nathans@sgi.com [XFS] Fix definition of setresblks - nothing uses it yet, but DMF will (so fix now). SGI Modid: 2.5.x-xfs:slinx:142797a ChangeSet@1.971.69.19, 2003-04-07 10:20:21-07:00, mdharm-usb@one-eyed-alien.net [PATCH] usb-storage: add info to /proc interface This patch adds some information about the quirks of the device to the /proc interface. ChangeSet@1.971.69.18, 2003-04-07 10:19:29-07:00, mdharm-usb@one-eyed-alien.net [PATCH] usb-storage: remove BUG/BUG_ON This patch changes BUG and BUG_ON to print error messages. It is done to be (a) a little more robust, and (b) complies with Linus' idea of no BUGs unless absolutely necessary. ChangeSet@1.971.69.17, 2003-04-07 10:18:33-07:00, mdharm-usb@one-eyed-alien.net [PATCH] usb-storage: variable renames This patch changes the struct us_data 'ss' to 'us' to be consistent with the rest of the code. The old name was a legacy artifact. There are no functional changes here. ChangeSet@1.971.69.16, 2003-04-07 10:17:40-07:00, mdharm-usb@one-eyed-alien.net [PATCH] usb-storage: fix CB/CBI When we fixed the error handling, we accidentally made a mistake. A STALL on a control endpoint isn't necessarily a fatal thing -- it can be used to indicate a command failure. This fixes bugzilla bug #510. - A control endpoint stall when sending the command to a CB/CBI device is legal. Our error handling was just a little too agressive. ChangeSet@1.971.77.1, 2003-04-07 19:17:15+02:00, hch@sgi.com [XFS] remove busy inode check in the umount path - Linux checked it for us before calling into the filesystem. We're beyond the point of no return for umount anyway SGI Modid: 2.5.x-xfs:slinx:142731a ChangeSet@1.971.75.10, 2003-04-07 09:42:25-07:00, torvalds@home.transmeta.com Linux 2.5.67 TAG: v2.5.67