- 19 Feb, 2004 1 commit
-
-
Andrew Morton authored
Fairly pointless coding-style cleanups which I've been sitting on for ages. The ramdisk driver is still buggy: it drops pagecache when unmounted. I still need to fix this. Apparently it also displays data corruption under load even when not unmounted.
-
- 18 Feb, 2004 39 commits
-
-
Greg Ungerer authored
Correct the cache setup bits for the 5407. This enables the write buffers properly (despite what the previous comment said). This combined with fixed cache flushing code provides a nice performance boost on the 5407. Also fix the ROMfs setup to only move the ROMfs region if it is actually configured.
-
Greg Ungerer authored
Added ELF relocation type defines. These are needed by the module loading code for m68knommu.
-
Greg Ungerer authored
This adds the configuration option to enable the uClinux shared flat binary support. The code support is already in the binfmt_load code, just the config option is missing.
-
Greg Ungerer authored
Fix a number of memory leaks in the uClinux binfmt_flat loader. All are related to not cleaning up properly on failure conditions.
-
Andrew Morton authored
From: Janet Morgan <janetmor@us.ibm.com> It looks like aio_nr and aio_max_nr were intended to be sysctl parameters.
-
Andrew Morton authored
From: Christoph Hellwig <hch@lst.de> I've just grepped over the tree for reamining MOD_INC_USE_COUNT users, and ftape is a really horrible one, it relies on MOD_{INC,DEV}_USE_COUNT in the most horrible places + it's own bookkepping and the <= 2.4 may unload hooks. And although I don't have the hardware I can guarantee it doesn't work as expected. So let's just remove the module_exit handler and mark it unremovable, if someone wants to fix up ftape later it's fine with me, but it's a really scary driver..
-
Andrew Morton authored
From: "Art Haas" <ahaas@airmail.net> Here's a small patch that adds C99 initializers to the file.
-
Andrew Morton authored
From: Matt Domsch <Matt_Domsch@dell.com> Patch below applies to both 2.4.25 and 2.6.3, and replaces the public domain statement and non-warranty with the GPL, as is permitted by the code being in the public domain, and is done with legal advice.
-
Andrew Morton authored
From: Gerd Knorr <kraxel@bytesex.org> "options tuner type=2" is just there for historical reasons and should only be used/needed if the main driver doesn't allow to configure the tuner type. I'm not sure whenever I can remove that altogether without breaking anything. There are several users of the tuner module, some outside the standard kernel tree ... > > if (type < TUNERS) { > > + t->type = type; > > printk("tuner: type forced to %d (%s) [insmod]\n", > > t->type,tuners[t->type].name); > > set_type(client,type); That is wrong, it will break in other corner cases, it may cause the set_type() function not doing the initializations. The prink can also be dropped because set_type does that too. The patch below removes that. It also makes the kernel messages a bit more verbose and adds support for two new tuners.
-
Andrew Morton authored
From: mcgrof@studorgs.rutgers.edu (Luis R. Rodriguez) Complete the migration from Kconfig's undocumented "enable" to "select".
-
Andrew Morton authored
From: Pragnesh Sampat <pragnesh.sampat@timesys.com> The file initramfs_data.cpio is slightly different when generated on cygwin, compared to linux, which causes the kernel to panic with the message "no cpio magic" (See Documentation/early-userspace/README). The problem in cpio generation is due to the difference in sprintf modifiers on cygwin. The code uses "%08ZX" for strlen of a device node. printf man pages discourages "Z" and has 'z' instead. Both of these are not available on cygwin sprintf (at least some versions of cygwin). The net result of all of this is that the generated file literally contains "ZX" and then the strlen after that and messes up that 110 offset etc. The file is 516 bytes long on the system that I tested and on linux it is 512 bytes. The fix below just uses "%08X" for that field.
-
Andrew Morton authored
From: Urban Widmark <urban@teststation.com> Add the necessary bits for loop-over-smbfs.
-
Andrew Morton authored
From: Michael Frank <mhf@linuxmail.org>
-
Andrew Morton authored
From: "Martin J. Bligh" <mbligh@aracnet.com> There's no real need to BUG and stop the system from booting if the BIOS spec'ed apicid for the boot CPU isn't correct - we can continue perfectly well with the real one.
-
Andrew Morton authored
From: "ZIGLIO, Frediano, VF-IT" <Frediano.Ziglio@vodafone.com> Add a new driver for the SF16FMR2 Radio card.
-
Andrew Morton authored
From: Martin Hicks <mort@wildopensource.com> This is a patch based on one that Jack Steiner sent to the ia64 list in November. The original thread can be found at: http://marc.theaimsgroup.com/?l=linux-ia64&m=106869606922555&w=2 I created the little wrapper function that was requested. I think the only other arch, other than ia64, that doesn't at least include asm-generic/tlb.h is arm. Something appears broken in TLB flushing on IA64 (& possibly other architectures). Functionally, it works but performance is bad on systems with large cpu counts. The result is that TLB flushing in exit_mmap() is frequently being done via IPIs to all cpus rather than with a "ptc" instruction or with a new context..
-
Andrew Morton authored
From: Sam Ravnborg <sam@ravnborg.org> Corrected check for missing ncurses-devel when executing "make menuconfig". Now tell user to install 'ncurses-devel' if check fails.
-
Andrew Morton authored
From: Thomas Davis <tadavis@lbl.gov> Doing a 'make rpm' will fail with the current RH9/Fedora RPM macros. The failure message is this: Processing files: kernel-debuginfo-2.6.3rc1mm1-12 error: Could not open %files file /usr/src/redhat/BUILD/kernel-2.6.3rc1mm1/debugfiles.list: No such file or directory The fix is this patch:
-
Andrew Morton authored
From: Christophe Saout <christophe@saout.de> Adds a crypto module for device-mapper. The intent here is to remove cryptoloop ASAP, to pull the remapping gunk out of the loops driver and to migrate people onto dm-crypt. It is on-disk compatible with existing cryptolop installations. See http://www.saout.de/misc/dm-crypt/ for usage details.
-
Andrew Morton authored
From: Andi Kleen <ak@suse.de> Make the "hm, page reserved twice" message dependent on CONFIG_DEBUG_BOOTMEM.
-
Andrew Morton authored
From: Willem Riede <wrlk@riede.org> The onstream drives, be they scsi, atapi, ieee1394 or usb, are supported by the osst driver. When the drives were new, code was introduced in ide-tape independently, but never really maintained since. There are issues with the drives I found and dealt with in osst, that ide-tape doesn't address. So this code in ide-tape is both redundant and imperfect. I assumed from http://marc.theaimsgroup.com/?l=linux-kernel&m=107550547613846&w=2 that there was buy in for removing it. When this patch is applied, ide-tape will refuse to attach to an onstream DI drive, and will write to syslog to use ide-scsi + osst instead.
-
Andrew Morton authored
From: BlaisorBlade <blaisorblade_spam@yahoo.it> An exhausted do_swap_page() should return VM_FAULT_OOM rather than -ENOMEM.
-
Andrew Morton authored
From: "David S. Miller" <davem@redhat.com> From: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org> If I create some kmem cache on 64-bit with like 3 u32's in it, it should silently just work and not warn.
-
Andrew Morton authored
From: Davide Libenzi <davidel@xmailserver.org> A potential race can happen in epoll_ctl(EPOLL_CTL_MOD) where an event can happen in between f_op->poll() and the lock on ep->lock (we cannot call f_op->poll() inside a lock, and the f_op->poll() callback does not carry any info at the current time - missing wake_up_info() already ;). In that case the event would be removed. We can easily leave the event inside the ready list and have the ep_send_events() logic do the job for us at later time. (Thanks to david.lee@teracruz.com for reporting the thing, since it shouldn't have been a nice one ;)
-
Andrew Morton authored
From: Anton Blanchard <anton@samba.org> Add clock_was_set to all architectures. I'm disappointed this wasnt done by whoever wrote the code. (It is a callback which the arch-specific RTC-updating code must make when someone sets the time).
-
Andrew Morton authored
From: Brian Gerst <bgerst@didntduck.org> Cleans up some leftovers from the old module loader: - Remove unused defines from modules.h - Remove unused file modsetver.h
-
Andrew Morton authored
From: Alex Goddard <agoddard@purdue.edu> How to debug module loading problems. The wording is a slightly changed version of what Rusty said.
-
Andrew Morton authored
From: MAEDA Naoaki <maeda.naoaki@jp.fujitsu.com> I am testing PCI hot-plug in 2.6.2 kernel, but sometimes a struct resource tree in kernel/resource.c was broken if multiple hot-plug requests are issued at the same time. The reason is lots of drivers call release_region() on hot removal, and __release_region(), which is invoked by release_region() macro, changes the tree without holding a writer lock for resource_lock. I think __release_region() must hold a writer lock as well as __request_region() does. A following patch fixes the issue in my environment.
-
Andrew Morton authored
From: Tim Hockin <thockin@sun.com> Remove the max_anon via dynamically allocation. We also change the idr_pre_get() interface to take a gfp mask, which should have always been there.
-
Andrew Morton authored
From: Philippe Elie <phil.el@wanadoo.fr> From: Will Cohen <wcohen@redhat.com> Add oprofile support for Pentium Mobile (P6 core). Pentium Mobile needs to unmask LVPTC vector, since it doesn't hurt other P6 core based cpus we do it unconditionally for all these. This patch require userspace tools >= 0.8 (only in sourceforge cvs currently)
-
Andrew Morton authored
From: Philippe Elie <phil.el@wanadoo.fr> From: Zwane Mwaikambo <zwane@arm.linux.org.uk> This patch adds infrastructure code and enables ARM to utilise the timer int oprofile driver. There is PMU code under development for the XScale but that is still forthcoming. In the meantime you can use the timer int driver with an updated Oprofile-CVS userspace (SF is a bit slow, please allow 24hrs).
-
Andrew Morton authored
From: Philippe Elie <phil.el@wanadoo.fr> From: Zwane Mwaikambo <zwane@arm.linux.org.uk> The nmi_timer_int oprofile driver was enabling itself unconditionally if an SMP kernel was being used on a UP system without an IOAPIC. Tested on a P5 using NMI timer int driver and UP system using timer int driver both running an SMP kernel. 2004-02-11 Zwane Mwaikambo <zwane@arm.linux.org.uk> * arch/i386/kernel/nmi.c: export nmi_active * arch/i386/oprofile/nmi_timer_int.c: use it to check if owe can use an nmi interrupt
-
Andrew Morton authored
Some machines appear to have BIOS problems which are causing 3c59x adapters to come up in a powered-off state when WOL and PM are enabled. So bring back the 2.4 `enable_wol' module option which disables wake-on-lan unless the user specifically asked for it.
-
Andrew Morton authored
From: Arjan van de Ven <arjanv@redhat.com> I have 4Kb stacks + IRQ stacks working in my tree. The biggest part of the 4K-stacks work is changing hardcoded 8Kb assumptions to the proper, pre-existing define for this. That part of the patch is appropriate in general, even when 4Kb stacks might not be.
-
Andrew Morton authored
The recent change to /proc/partitions which prevents it from displaying removeable media accidentally caused 128 NBD and 16 ramdisk partitions to appear in /proc/partitions instead. So add a specific gendisk flag which says "don't show me in /proc/partitions" and use that.
-
Andrew Morton authored
From: Christoph Hellwig <hch@lst.de> Don't try to display the per-cpu information for CPUs which aren't there.
-
Andrew Morton authored
From: Neil Brown <neilb@cse.unsw.edu.au>, From: Miquel van Smoorenburg <miquels@cistron.nl> While I was stress-testing NFS/XFS on 2.6.1/2.6.2-rc, I found that sometimes my "dd" would exit with: # dd if=/dev/zero bs=4096 > /mnt/file dd: writing `standard output': Invalid argument 1100753+0 records in 1100752+0 records out After adding some debug printk's to the server and client code and some tcpdump-ing, I found that the NFSERR_INVAL was returned by nfsd_commit on the server. Turns out that the "offset" argument is off_t instead of loff_t. It isn't used at all (unfortunately), but it _is_ checked for sanity, so that's where the error came from.
-
Andrew Morton authored
From: Benjamin Herrenschmidt <benh@kernel.crashing.org> I falled again on the crash in con_do_write() with driver->data beeing NULL. It happens during boot, when userland is playing open/close games with tty's, I was intentionally typing keys like mad during boot trying to trigger another problem when this one poped up. Looking at the code, I'm not sure how protected we are by the above (tty) layer, paulus told me to not rely on anything like locking coming from there, so I decided to extend the scope of the console semaphore one more bit to cover races between calls to con_open, con_close and con_write. Note that in con_do_write, I intentionally drop the semaphore to avoid keeping it held when waiting on the local buffer, and I added some sanity checks on tty->driver_data with some printk's in case we still have an open race by the tty layer. At least, now, the couple vc_allocated & tty->driver_data should be protected though.
-
Andrew Morton authored
From: Kingsley Cheung <kingsley@aurema.com> Is is possible to examine the data of tasks currently existing in the system which are not threads of the same thread group. For example, the only task in the group where init is group leader is itself: gen2 02:50:44 ~: ls /proc/1/task 1 However, I can then read the contents of 'stat' for any other task in the system: gen2 02:49:45 ~: cat /proc/1/task/$$/stat 1669 (bash) S 1668 1669 1669 34816 1730 256 1480 6479 12 4 8 5 5 17 15 0 1 0 +8065 3252224 451 4294967295 134512640 134955932 3221225104 3221222840 +4294960144 0 65536 3686404 1266761467 3222442959 0 0 17 0 0 0 I had a look at fs/proc/base.c and found that the 'lookup' functions for these directories were checking that the task in question existed, but overlooked the following: 1. In the function proc_pid_lookup, a check is required to ensure that the task in question is a thread group leader. Without the check, any task can have its data retrieved accordingly. Consider the following. There is a multithreaded process 1777. gen2 23:22:47 /proc/1777: ls task 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 However, I can read the stat file for its thread 1778 as follows: gen2 23:22:50 /proc/1777: cat /proc/1778/stat 1778 (multithreadtest) T 1777 1777 1672 34816 1672 64 0 0 0 0 14 17 0 0 15 0 12 0 8871 24727552 104 4294967295 134512640 134515104 3221222496 1077365276 4294960144 0 0 0 0 3222479248 0 0 -1 1 0 0 But 1778 is not meant to show up in /proc/, as intended right?: gen2 23:22:56 /proc/1777: ls /proc/ 1 1365 1661 1793 881 dma kcore scsi 10 1371 1662 18 9 driver kmsg self 1014 1372 1663 2 909 execdomains loadavg slabinfo 1032 14 1664 3 963 fb locks stat 1062 15 1665 4 966 filesystems mdstat swaps 1066 16 1666 5 buddyinfo fs meminfo sys 1067 1605 1669 6 bus ide misc sysrq-trigger 1087 1610 1670 7 cmdline interrupts modules sysvipc 1095 1611 1671 736 cpuinfo iomem mounts tty 11 1641 1672 8 crypto ioports mtrr uptime 12 1658 17 807 devices irq net version 13 1660 1777 810 diskstats kallsyms partitions vmstat 2. The other part of the bug is in the function proc_task_lookup. Here there needs to be a check that the task X is indeed a thread of the thread group Y when we read /proc/<Y>/task/<X>. Right now, this check does not exist, which allows for any existing task to have its data read from another thread group directory. The following reads the stat directory of my bash shell from the thread group 1. gen2 23:28:07 ~: cd /proc/1 gen2 23:28:10 /proc/1: ls auxv cwd exe maps mounts stat status wchan cmdline environ fd mem root statm task gen2 23:28:11 /proc/1: ls task 1 gen2 23:28:27 /proc/1: cat task/$$/stat 1671 (bash) S 1670 1671 1671 34817 1802 256 1953 8101 12 4 10 6 9 26 15 0 1 0 5789 3252224 454 4294967295 134512640 134955932 3221225104 3221222840 4294960144 0 65536 3686404 1266761467 3222442959 0 0 17 0 0 0
-