ChangeSet@1.2199, 2004-10-14 11:03:12-07:00, torvalds@ppc970.osdl.org Take the whole PCI bus range into account when scanning PCI bridges. A bridge that has been set up by firmware to cover multiple PCI buses but doesn't actually have anything connected behind some of them caused us to use the incorrect maxmimum bus number span when scanning the bridge chip. Problem reported by Tim Saunders, with Russell King suggesting the fix. ChangeSet@1.2198, 2004-10-14 11:00:06-07:00, torvalds@ppc970.osdl.org Fix threaded user page write memory ordering Make sure we order the writes to a newly created page with the page table update that potentially exposes the page to another CPU. This is a no-op on any architecture where getting the page table spinlock will already do the ordering (notably x86), but other architectures can care. ChangeSet@1.2197, 2004-10-13 21:31:45-07:00, ysato@users.sourceforge.jp [PATCH] H8/300 some error/warning fix Signed-off-by: Yoshinori Sato Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2196, 2004-10-13 21:31:33-07:00, blaisorblade_spam@yahoo.it [PATCH] uml: fix critical IP checksum corruption From: Lars Ellenberg Add a memory barrier to the assembly checksum code - the code was copied straight from the i386 one, and the patch resyncs the code with the original. I'll check if the original code can be included directly (i.e. "#include") after 2.6.9. Without this patch, every 2.6 UML release corrupts the checksum of every UDP fragmented packet with size >= MTU (verified by various people, we all agree on this issue; nobody reported "Works fine here"). The corrupted packets are not accepted, thus blocking any kind of communication with large-sized UDP packets. In fact, I've even dissected the UML -> host traffic before and after this patch with Ethereal - and it always reported an incorrect checksum for fragmented UDP packets before and always correct after applying the patch. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2195, 2004-10-13 21:31:21-07:00, blaisorblade_spam@yahoo.it [PATCH] uml: use always a separate io thread for UBD Currently, ubd=sync is different from replacing ubd#= with ubd#s=. This is against Principle of Least Surprise, so remove this difference. Also the current ubd=sync behaviour is completely useless: it is to make sure that when the kernel has synched its I/O to the virtual disk, the host does not invalidate this with his caching; this causes ReiserFS corruption. But since actually we call end_request() only after the io_thread has done its work, we never lie to the block layer. Using O_SYNC as we do when replacing ubd#= with ubd#s= is enough. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2194, 2004-10-13 21:31:09-07:00, blaisorblade_spam@yahoo.it [PATCH] uml: fix ubd deadlock on SMP From: BlaisorBlade , Chris Wright Avoid deadlocking onto the request lock in the UBD driver, i.e. don't lock the queue spinlock when called from the request function. In detail: Rename ubd_finish() to __ubd_finish() and remove ubd_io_lock from it. Add wrapper, ubd_finish(), which grabs lock before calling __ubd_finish(). Update do_ubd_request to use the lock free __ubd_finish() to avoid deadlock. Also, apparently prepare_request is called with ubd_io_lock held, so remove locks there. Signed-off-by: Chris Wright Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2193, 2004-10-13 21:30:57-07:00, blaisorblade_spam@yahoo.it [PATCH] uml: mark broken configs Some configuration options are known not to compile. So then make them depend on CONFIG_BROKEN. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2192, 2004-10-13 21:30:46-07:00, blaisorblade_spam@yahoo.it [PATCH] uml: kbuild - add even more cleaning Remove one more symlink when doing make mrproper ARCH=um Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2191, 2004-10-13 21:30:34-07:00, blaisorblade_spam@yahoo.it [PATCH] uml: update makefile to new kbuild API names Drop the usage of check_gcc and host-progs, and use their new names. A must-have :-). Oh, and it will create lots of serious problems - it will give me your root account! Yes, you don't see the code in the patch, but it happens! :-))) Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2190, 2004-10-13 21:30:22-07:00, blaisorblade_spam@yahoo.it [PATCH] uml: make -j fix Makes the UML build system work well even under parallel make (tested, so far, even with -j50). Please notice that it must be updated for every makefile change. Or better, every makefile change must use correct dependencies (and they are easy to miss). Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2189, 2004-10-13 21:30:10-07:00, blaisorblade_spam@yahoo.it [PATCH] uml: Single Linking Step for vmlinux Uml-specific patch (which requires a mainline hook, mailed separately). This patch avoid the linking kludge which leaves kbuild link vmlinux and then link it with libc inside linux. This kludge has the big problem of making kallsyms break, since the kallsyms pass is done on a completely Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2188, 2004-10-13 21:29:58-07:00, blaisorblade_spam@yahoo.it [PATCH] uml: no extraversion in arch/um/Makefile for mainline Extraversion in arch/um/Makefile is not needed in mainline, but just for separate patches; also, they should set it in the main Makefile, not elsewhere (Jeff Garzik has just complained). Also remove the dependency from version.h on arch/um/Makefile: it was added because arch/um/Makefile could change the kernel version number. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2187, 2004-10-13 21:29:46-07:00, blaisorblade_spam@yahoo.it [PATCH] uml: force using /bin/bash for building This forces make to use bash rather than whatever /bin/sh is linked to. Without this, since there are some bash extensions used in the build and when /bin/sh isn't bash, then the build fails without a clear error message. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2186, 2004-10-13 21:29:34-07:00, blaisorblade_spam@yahoo.it [PATCH] uml: Set cflags before including arch Makefile If arch/$(ARCH)/Makefile is included before adding -O2 (and the rest) to CFLAGS, I must duplicate the addition of it to USER_CFLAGS for UML. So let's fix this. Also, the below code is useless, since if CONFIG_DEBUG_INFO is y, then CONFIG_FRAME_POINTER is always y. ifeq ($(CONFIG_DEBUG_INFO),y) CFLAGS := $(subst -fomit-frame-pointer,,$(CFLAGS)) endif Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2185, 2004-10-13 21:29:22-07:00, blaisorblade_spam@yahoo.it [PATCH] uml: export more Symbols Adds a lot more EXPORT_SYMBOLS calls. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2184, 2004-10-13 21:29:10-07:00, blaisorblade_spam@yahoo.it [PATCH] uml: fix an "unused" warnings Fixes some random warnings. To avoid "defined but not used" for not_configged_ops, make it be defined only if at least one channel is not defined. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2183, 2004-10-13 21:28:58-07:00, blaisorblade_spam@yahoo.it [PATCH] uml: finish update for 2.6.8 API changes Add some updates for API changes in 2.6.8 which were not included in the original UML patch; these fixes were detected by some warnings, so I probably missed some more ones. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2182, 2004-10-13 21:28:46-07:00, blaisorblade_spam@yahoo.it [PATCH] uml: fix warning for unused var That var is used only when CONFIG_UML_REAL_TIME_CLOCK is on, so #ifdef its definition. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181, 2004-10-13 21:28:34-07:00, blaisorblade_spam@yahoo.it [PATCH] uml: fix wrong type for rb_entry call With the type-safe rb_entry (based on container_of, I sent it) I discovered this type error, so I've fixed it. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2180, 2004-10-13 21:28:22-07:00, blaisorblade_spam@yahoo.it [PATCH] uml: don't declare cpu_online - fix compilation error Avoid redeclaring again (resulting in a compilation error) cpu_online and cpu_*_map, which are now declared elsewhere. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2179, 2004-10-13 21:28:10-07:00, jmorris@redhat.com [PATCH] SELinux: fix bugs in mprotect hook The patch below by Roland McGrath fixes two bugs in the implementation of the selinux_file_mprotect hook: It calls selinux_file_mmap, which has two problems. First, the stacked security module will get both mmap and mprotect callbacks for an mprotect call, which is wrong. Secondly, the vm_flags value contains VM_* bits, and these do not match the MAP_* bits of the same name or function, so it passes bogus flags and causes every mprotect to be treated as if MAP_SHARED were in use. The patch shares the common code while not having one function call the other, and fixes these two bugs. Signed-off-by: James Morris Signed-off-by: Roland McGrath Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2178, 2004-10-13 21:27:58-07:00, sds@epoch.ncsc.mil [PATCH] SELinux: retain ptracer SID across fork This fixes a bug in SELinux to retain the ptracer SID (if any) across fork. Otherwise, SELinux will always deny attempts by traced children to exec domain-changing programs even if the policy would have allowed the tracer to trace the new domains as well. Signed-off-by: Stephen Smalley Signed-off-by: James Morris Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2177, 2004-10-13 21:27:49-07:00, tim@physik3.uni-rostock.de [PATCH] Fix reporting of process start times Derive process start times from the posix_clock_monotonic notion of uptime instead of "jiffies", consistent with the earlier change to /proc/uptime itself. (http://linus.bkbits.net:8080/linux-2.5/cset@3ef4851dGg0fxX58R9Zv8SIq9fzNmQ?na%0Av=index.html|src/.|src/fs|src/fs/proc|related/fs/proc/proc_misc.c) Process start times are reported to userspace in units of 1/USER_HZ since boot, thus applications as procps need the value of "uptime" to convert them into absolute time. Currently "uptime" is derived from an ntp-corrected time base, but process start time is derived from the free-running "jiffies" counter. This results in inaccurate, drifting process start times as seen by the user, even if the exported number stays constant, because the users notion of "jiffies" changes in time. It's John Stultz's patch anyways, which I only messed up a bit, but since people started trading signed-off lines on lkml: Signed-off-by: Tim Schmielau Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2176, 2004-10-13 21:27:37-07:00, nico@cam.org [PATCH] Fix MTD build error for Lubbock map driver Without this patch, Lubbock is pretty unusable in current 2.6.9-rc4. The same fix already present in the MTD CVS. Signed-off-by: Nicolas Pitre Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2175, 2004-10-13 21:27:25-07:00, okir@suse.de [PATCH] auth_domain_lookup fix This patch makes sure that auth_domain_lookup returns NULL when it doesn't find a matching entry, rather than the last entry in the hash chain. Signed-off-by: Olaf Kirch Acked-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2174, 2004-10-13 21:27:13-07:00, dtor_core@ameritech.net [PATCH] Fix oops in parkbd parkbd - zero-fill allocated serio structure to prevent Oops when registering port. Signed-off-by: Dmitry Torokhov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2173, 2004-10-13 21:27:01-07:00, andrea@novell.com [PATCH] ptep_establish smp race x86 PAE >4G This avoid userspace mm corruption during COWs with threads (i.e. malloc;fork;clone) on x86 PAE with >4G of ram Signed-Off-By: Andrea Arcangeli Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2172, 2004-10-13 21:26:49-07:00, rddunlap@osdl.org [PATCH] cyber2000: fix init/exit section confusion - cyberpro_free_fb_info() is called by both __devinit & __devexit code, so it cannot be __devinit. - igs_regs[] is used by resume code (indirectly), so it cannot be discardable. This leaves one reference in cyber2000fb that 'make buildcheck' complains about, but I believe that it's OK, that being ".probe" here: static struct pci_driver cyberpro_driver = { .name = "CyberPro", .probe = cyberpro_pci_probe, Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2171, 2004-10-13 21:26:37-07:00, takata@linux-m32r.org [PATCH] m32r: remove obsolete system calls This patch is for removing obsolete system calls from m32r kernel, such as old_mmap and old_select. * arch/m32r/kernel/entry.S: - Remove an obsolete system call, old_mmap, from the syscall table. * arch/m32r/kernel/sys_m32r.c: - Remove obsolete system calls, old_mmap() and old_select(). - do_mmap2() is renamed to sys_mmap2(). * CAUTION (for m32r users): The new kernel (applied this patch) does not have a backward compatibility. The new kernel and old library pair does not work. So, those who want to use the new kernel must use a new version of glibc (the GNU C library), which uses the "mmap2(_NR_mmap2)" syscall for __mmap() instead of the "old_mmap(__NR_mmap)". The new glibc package, libc6_2.3.2.ds1-16.0.3_m32r.deb, is provided on the following site, please apt-get/download it and upgrade. http://debian.linux-m32r.org/dists/03_cambrian/main/binary-m32r/ Signed-off-by: Hirokazu Takata Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2170, 2004-10-13 21:26:25-07:00, takata@linux-m32r.org [PATCH] m32r: fix syscall table This patch fixes the system call table for m32r. The latest kernel cannot be linked for m32r, because the following experimental syscalls doesn't exist in the prepatch kernel of bk-tree. * include/asm-m32r/unistd.h: - Remove syscalls from #285(perfctr_info) to #293(keyctl). * arch/m32r/kernel/entry.S: ditto. Signed-off-by: Hirokazu Takata Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2169, 2004-10-13 21:26:13-07:00, akpm@osdl.org [PATCH] revert writeback threshold changes The post-2.6.8 recent tweaks to the page writeback thresholding code seems to be doing the wrong thing for small unmapped_ratios - nathans had a few problems with it. The problem it was trying to fix is minor and fairly theoretical anyway, so back it out to the old code. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2168, 2004-10-13 21:26:01-07:00, john.l.byrne@hp.com [PATCH] fix oops in fork() cleanup path It will oops on an error path if the thread being forked is a process with a NULL mm. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2167, 2004-10-13 21:25:49-07:00, clameter@sgi.com [PATCH] time interpolator fixes - Remove the setting of CLOCK_REALTIME and CLOCK_MONOTONIC resolution according to the interpolator resolution since this causes periodic timer signals to fail. The clocks will still be high-resolution but the "resolution" reported reflects the timer intervals possible via timer_settime (also more conformant to what the Single Unix Specification says). - Make the IA64 clock_gettime fastcall fall back on negative clock numbers instead of returning CLOCK_REALTIME. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2164.1.3, 2004-10-13 13:30:49+10:00, hch@sgi.com [XFS] fix a freeze/thaw deadlock Signed-off-by: Nathan Scott ChangeSet@1.2164.1.2, 2004-10-13 13:10:46+10:00, nathans@sgi.com [XFS] Fix regression when running in laptop mode, causes hangs on sync. SGI Modid: xfs-linux:xfs-kern:19744a Signed-off-by: Nathan Scott ChangeSet@1.2164.1.1, 2004-10-13 13:07:07+10:00, nathans@sgi.com [XFS] Fix up write_inode return type to use the right signedness. SGI Modid: xfs-linux:xfs-kern:19632a Signed-off-by: Nathan Scott ChangeSet@1.2165, 2004-10-12 07:52:30-07:00, dwmw2@infradead.org [PATCH] ppc64: one more explicit cmp instruction sizing Signed-off-by: David Woodhouse Signed-off-by: Linus Torvalds ChangeSet@1.2164, 2004-10-11 08:32:50-07:00, sreenib@lsil.com [PATCH] megaraid 2.20.4: fix a data corruption bug Fixes a data corruption issue. Because of a typo in the driver, IO packets were wrongly shared by the IOCTL path. This caused the whole IO command to be replaced by an incoming IOCTL command. ChangeSet@1.2163, 2004-10-11 08:26:06-07:00, nickpiggin@yahoo.com.au [PATCH] ACPI: check parameter for NULL ACPI still explodes on my old PII and stops it booting. Anyway, it is oopsing in drivers/acpi/scan.c line 207 where element (which is NULL) gets dereferenced. The ACPI bios on this thing has always seemed to be pretty broken, but this at least allows the 'power' button to continue to work (the only reason why I want ACPI). ChangeSet@1.2162, 2004-10-10 19:55:28-07:00, torvalds@ppc970.osdl.org Linux 2.6.9-rc4 TAG: v2.6.9-rc4