Four symbols CONFIG_ATM_CLIP, CONFIG_ATM_CLIP_NO_ICMP, CONFIG_ATM_LANE,
and CONFIG_ATM_MPOA depend on CONFIG_EXPERIMENTAL but do not say so
in their banners.
Greg Banks [Thu, 20 Jun 2002 06:42:50 +0000 (23:42 -0700)]
[PATCH] PATCH 2.5: kconfig lowercase EXPERIMENTAL tag
The convention is that symbols that depend on $CONFIG_EXPERIMENTAL are
marked in the banner with the string (EXPERIMENTAL). There are 4 cases
where that string is correctly used but is lowercase instead of uppercase.
Greg Banks [Thu, 20 Jun 2002 06:42:36 +0000 (23:42 -0700)]
[PATCH] PATCH 2.5: kconfig choice default value
The default value specified as the last word of the "choice" statement
should be a unique abbreviation of one of the sub-prompts, not some
random string never seen before.
Rusty Russell [Thu, 20 Jun 2002 06:41:54 +0000 (23:41 -0700)]
[PATCH] Fix SMP compilation with 'multiquad' driver
The 2.4.18pre10 kernel, like many if its predecessors, can't compile
the multiquad driver in an SMP kernel (maybe only as a module; it's
been a long time since I wrote this fix). Here's a patch.
Arnd Bergmann [Thu, 20 Jun 2002 06:41:41 +0000 (23:41 -0700)]
[PATCH] fix lots of warnings about 'struct tty_driver'
When compiling 2.5.20 (and ealier, likely) without procfs, the declaration
for struct tty_driver is missing in proc_fs.h, causing many compiler warnings
that are fixed by this patch.
Andrey Panin [Thu, 20 Jun 2002 06:41:00 +0000 (23:41 -0700)]
[PATCH] add unlikely() into add_timer()
This micropatch adds unlikely() macro into add_timer() bug check code.
Without this path gcc 3.1 makes bad thing reordering printk() into
the middle of function body.
Andreas Dilger [Thu, 20 Jun 2002 06:40:46 +0000 (23:40 -0700)]
[PATCH] TRIVIAL EPERM -> EACCESS
the following micro-patch changes ext[23]_ioctl to return EACCES
(permission denied) instead of EPERM (operation not permitted) if
the caller is not authorized to change the flags on a file.
Andreas Bombe [Thu, 20 Jun 2002 06:40:32 +0000 (23:40 -0700)]
[PATCH] Fix bashisms in scripts_patch-kernel
The following trivial patch makes the patch-kernel script executable by
a bare bone POSIX shell like ash. Either that, or the interpreter line
has to be changed to /bin/bash.
The same patch applies to 2.4 (with some line offset).
Robert Love [Thu, 20 Jun 2002 06:07:45 +0000 (23:07 -0700)]
[PATCH] mark 3 variables as __initdata
The attached patch marks the following variables with __initdata:
arch/i386/kernel/mpparse.c :: static unsigned int num_processors
arch/i386/kernel/smpboot.c :: static int smp_b_stepping
arch/i386/kernel/smpboot.c :: static int max_cpus
The data is static and only used by __init functions so can successfully
be jettisoned after boot. Compiled and booted successfully on an SMP
machine.
I also set max_cpus to NR_CPUS instead of -1. Besides being the
logically correct value and simplifying a loop elsewhere, this change
allows NR_CPUS to be set to various values other than the normal 32
which is growing in utility with the hotplug CPU changes now in
mainline.
Rusty Russell [Thu, 20 Jun 2002 05:42:08 +0000 (22:42 -0700)]
[PATCH] Async Futex
This patch adds a FUTEX_FD call, for opening a file descriptor
attached to a futex, which can be used with poll, select or SIGIO.
Rewritten so that closing fd unpins page, as per Linus's suggestion,
and fixed not to call poll_wait with a spinlock as per Martin Wirth's
sharp eyes.
Albert Cranford [Thu, 20 Jun 2002 05:40:05 +0000 (22:40 -0700)]
[PATCH] 2.5.23 i2c updates 4/4
i2c-elektor.c:Adding call to pcf_isa_init to i2c_pcfisa_init causes:
i2c-elektor.o: In function `i2c_pcfisa_init':
i2c-elektor.o(.text.init+0x95): undefined reference to `local symbol
i2c-elektor.c: fix by removing __exit for inline compiling.
Albert Cranford [Thu, 20 Jun 2002 05:39:52 +0000 (22:39 -0700)]
[PATCH] 2.5.23 i2c updates 3/4
i2c-algo-bit.c: Leave kernel time_before/after_eq
Remove #ifdef MODULE_LICENSE around MODULE_LICENSE.
Remove #include <linux/sched.h> since i2c.h has it now.
i2c-algo-pcf.c: Remove #include <linux/sched.h> since i2c.h has it now.
Remove #ifdef MODULE_LICENSE around MODULE_LICENSE.
Remove #include <linux/sched.h> since i2c.h has it now.
i2c/i2c-elektor.c: Leave kernel __exit pcf_isa_exit(void)
Remove #ifdef MODULE_LICENSE around MODULE_LICENSE.
i2c-elv.c: Leave kernel __exit bit_elv_exit(void)
Remove #ifdef MODULE_LICENSE around MODULE_LICENSE.
i2c-philips-par.c: Remove #ifdef MODULE_LICENSE around MODULE_LICENSE.
i2c/i2c-velleman.c: Leave kernel __exit bit_velle_exit(void)
Remove #ifdef MODULE_LICENSE around MODULE_LICENSE.
Drop i2c-algo-8xx.[ch] deltas
Drop i2c-algo-ppc405.[ch] deltas
Drop i2c-pcf-epp.c deltas
Drop i2c-ppc405.[ch] deltas
Drop i2c-ppc405adap.h deltas
Drop i2c-pport.c deltas
Drop i2c-rpx.c deltas
Albert Cranford [Thu, 20 Jun 2002 05:39:39 +0000 (22:39 -0700)]
[PATCH] 2.5.23 i2c updates 2/4
i2c-core.c:Leave LINUX_VERSION in kernel. Leave i2c_debug=1. Leave
CONFIG names as in the kernel. Remove #ifdef MODULE_LICENSE around
MODULE_LICENSE.
i2c-dev.c:Remove #ifdef MODULE_LICENSE around MODULE_LICENSE.
Remove compatibality code for < 2.4.0
i2c-proc.c: Print message on kmalloc failure. Leave ENOMEM as in kernel.
Remove #ifdef MODULE_LICENSE around MODULE_LICENSE. Remove 2.2.19 compat
code.
Stephen Rothwell [Thu, 20 Jun 2002 05:25:59 +0000 (22:25 -0700)]
[PATCH] make kstack_depth_to_print and some APM stuff static
Tridge has written a little utility
(http://samba.org/ftp/unpacked/junkcode/findstatic.pl) that (given a set of
object files) works out a list of candidate finctions and variables that
may be able to be made static. Obviously some hand checking is needed
(different configs and/or architectures etc), but it seems useful.
Here is my first patch using its outout.
kstack_depth_to_print is used in many architectures, but only in one
file in each. In some architectures it is declared and not used. It
is not even clear why kstack_depth_to_print is not a #define. Tridge
suggested that maybe you could change its value with a debugger ...
The APM code has a function and a struct that can be static.
David Mosberger [Thu, 20 Jun 2002 05:24:19 +0000 (22:24 -0700)]
[PATCH] nasty bug in free_pgtables() (for ia64)
Strictly speaking, this patch is needed only for arches which use
discontiguous virtual address bits for the PGD index.
When we originally worked on this code (~ 2 years ago or so, in
response to a bug report & patch from an Intel guy), I had myself
convinced that the code is correct, but of course I missed the fact
that:
pgd_index(first) < pgd_index(last)
does NOT imply that:
first < last
For example, with a 16KB page size on ia64, we might end up with:
Note here that first_idx < last_idx even though first > last. This is
because pgd_index() ignores bits 44..60.
I suppose we could put the extra check inside #ifdef __ia64__, but
that would be rather ugly and would really mean that Linux does not
support discontiguous PGD indices.
Neil Brown [Thu, 20 Jun 2002 05:23:32 +0000 (22:23 -0700)]
[PATCH] Make ITERATE_MDDEV work on non-SMP
For an SMP kernel, spin_lock() et.al. are functions.
For a UP kernel, they are statements that must be terminated
by a ';'. This is not quite the same thing, and hence spin_lock()
cannot be using inside a parenthesised expession.
This patch changes ITERATE_MDDEV to use gcc's "statement expressions"
instead which has the benefit of making the conditionals
more readable.
Neil Brown [Thu, 20 Jun 2002 05:23:20 +0000 (22:23 -0700)]
[PATCH] Md sync: Remove compiler warning that revealed a bug.
When we abort a resync before we even started (because we were
interrupted while waiting for a conflicting resync to finish)
we should not wait or, particularly, do the closing sync_request
(as we haven't even calculated max_sectors yet).
Pam Delaney [Thu, 20 Jun 2002 05:08:20 +0000 (22:08 -0700)]
[PATCH] Fusion driver update
This upgrades the fusion driver
- Provides support for the Ultra320 1030/1020 parts
- Provides support for the PCI-X FC parts (919X/929X)
- Provides proper support for high memory cases
- Provides IA64 support
- Adds kernels calls (pci_enable_device, pci_set_dma_mask,
scsi_set_pci_device) for proper registration of PCI devics.
- Adds New Error Handling support
Matthew Wilcox [Thu, 20 Jun 2002 05:02:14 +0000 (22:02 -0700)]
[PATCH] Convert cm206 to a tasklet
Removes CM206_BH (patch approved by maintainer).
Deletes the no-longer-used BH entries from the enum. Explicit numbers
added so as not to destroy binary compatibility needlessly.
Martin Dalecki [Thu, 20 Jun 2002 04:59:43 +0000 (21:59 -0700)]
[PATCH] IDE 93
- Revert patch number 92. It turned out to be broken behind hope. Personally I
attribute this to the recent heat wave over here and apologize for the
problems this may have caused. Turned out that my note about the change
beeing dnagerous in the last change log was more then true...
- Locking issues for ioctl handling.
- Remove waiting_for_dma bit field. Use IDE_DMA bit flag instead.
Apply this bit globally and not in the corresponding implementation
functions.
NTFS: 2.0.10 - There can only be 2^32 - 1 inodes on an NTFS volume.
- Add check at mount time to verify that the number of inodes on the
volume does not exceed 2^32 - 1, which is the maximum allowed for
NTFS according to Microsoft.
- Change mft_no member of ntfs_inode structure to be unsigned long.
Update all users. This makes ntfs_inode->mft_no just a copy of struct
inode->i_ino. But we can't just always use struct inode->i_ino and
remove mft_no because extent inodes do not have an attached struct
inode.
Ingo Molnar [Wed, 19 Jun 2002 12:44:33 +0000 (14:44 +0200)]
- this patch fixes the migration init to correctly work with the
new hot-pluggable CPU enumeration method, and the possibility
to not boot on CPU#0.
(btw., i find RR's comment offensive. How can any code be called 'crap' just
because the author of a new patch has not converted the code to the new
assumptions yet? The original code was perfectly valid.)
NTFS: 2.0.9 release. Decompression engine now uses a single buffer and other cleanups.
- Remove unused variables left over after Rusty's patch to the decompression
engine.
- Change buffer size in ntfs_readdir()/ntfs_filldir() to use
NLS_MAX_CHARSET_SIZE.
- Miscellaneous minor cleanups to comments.
Dave Kleikamp [Wed, 19 Jun 2002 04:13:56 +0000 (23:13 -0500)]
Exclusive access to JFS journal devices
Use bd_claim/bd_release to guarentee exclusive access to the external
log device. I also fixed a struct block_device leak once I touched
that code (missing bdput() both in lmLogClose and the lmLogOpen
error path) and sanitized the failure path labels.
I suppose one can argue whether that is ugly or rather nice for
documentary purposes, but make on its own cannot figure out where a file
is supposed to live, so we have to help it.
(For the targets handled by Rules.make the situation is different, there
Rules.make knows what's source and what's object and can add prefixes
as necessary, so the most of the Makefiles are actually not affected by
this kind of change)
For now, as $(obj) = $(src) = ., we only add "./", so the potential for
breakage is rather small.
Linus Torvalds [Tue, 18 Jun 2002 11:23:01 +0000 (04:23 -0700)]
Merge penguin.transmeta.com:/home/penguin/torvalds/repositories/kernel/md-merge
into penguin.transmeta.com:/home/penguin/torvalds/repositories/kernel/linux
Neil Brown [Tue, 18 Jun 2002 11:21:49 +0000 (04:21 -0700)]
[PATCH] md 22 of 22 - Generalise md sync threads
Previously each raid personality (Well, 1 and 5) started their
own thread to do resync, but md.c had a single common thread to do
reconstruct. Apart from being untidy, this means that you cannot
have two arrays reconstructing at the same time, though you can have
to array resyncing at the same time..
This patch changes the personalities so they don't start the resync,
but just leave a flag to say that it is needed.
The common thread (mdrecoveryd) now just monitors things and starts a
separate per-array thread whenever resync or recovery (or both) is
needed.
When the recovery finishes, mdrecoveryd will be woken up to re-lock
the device and activate the spares or whatever.
raid1 needs to know when resync/recovery starts and ends so it can
allocate and release resources.
It allocated when a resync request for stripe 0 is received.
Previously it deallocated for resync in it's own thread, and
deallocated for recovery when the spare is made active or inactive
(depending on success).
As raid1 doesn't own a thread anymore this needed to change. So to
match the "alloc on 0", the md_do_resync now calls sync_request one
last time asking to sync one block past the end. This is a signal to
release any resources.