Alexander Viro [Thu, 4 Jul 2002 15:54:08 +0000 (08:54 -0700)]
[PATCH] ->i_dev switched to dev_t
* ->i_dev followed the example of ->s_dev - it's dev_t now. All
remaining uses of ->i_dev either outright want dev_t (stat()) or couldn't
care less (printing major:minor in /proc/<pid>/maps, etc.)
Alexander Viro [Thu, 4 Jul 2002 15:54:03 +0000 (08:54 -0700)]
[PATCH] assorted kdev_t cleanups in filesystems
* JFS uses its ->logdev only twice - one of the places assigns
it to_kdev_t(le32_to_cpu(...)), another uses kdev_t_to_nr() of it.
Switched to u32 - it's just a place where we store device number we'd got
from superblock.
* several reiserfs_fs.h function prototypes removed - functions
in question don't exist anymore.
* smbfs doesn't support device nodes; ->f_rdev removed.
Alexander Viro [Thu, 4 Jul 2002 15:53:44 +0000 (08:53 -0700)]
[PATCH] raid kdev_t cleanups - part 2
* a bunch of callers of partition_name() are calling
bdev_partition_name(),
* the last users of raid1 and multipath ->dev are gone; so are
the fields in question.
Alexander Viro [Thu, 4 Jul 2002 15:53:39 +0000 (08:53 -0700)]
[PATCH] raid ->diskop() splitup
* ->diskop() split into individual methods; prototypes cleaned
up. In particular, handling of hot_add_disk() gets mdk_rdev_t * of
the component we are adding as an argument instead of playing the games
with major/minor. Code cleaned up.
Alexander Viro [Thu, 4 Jul 2002 15:53:33 +0000 (08:53 -0700)]
[PATCH] raid kdev_t cleanups (part 1)
* ->error_handler() switched to struct block_device *.
* md_sync_acct() switched to struct block_device *.
* raid5 struct disk_info ->dev is gone - we use ->bdev everywhere.
* bunch of kdev_same() when we have corresponding struct block_device *
and can simply compare them is removed from drivers/md/*.c
Alexander Viro [Thu, 4 Jul 2002 15:53:28 +0000 (08:53 -0700)]
[PATCH] kdev_t crapectomy
* since the last caller of is_read_only() is gone, the function
itself is removed.
* destroy_buffers() is not used anymore; gone.
* fsync_dev() is gone; the only user is (broken) lvm.c and first
step in fixing lvm.c will consist of propagating struct block_device *
anyway; at that point we'll just use fsync_bdev() in there.
* prototype of bio_ioctl() removed - function doesn't exist
anymore.
Alexander Viro [Thu, 4 Jul 2002 15:53:22 +0000 (08:53 -0700)]
[PATCH] cdrom.c cleanups
* Bunch of functions in cdrom.c used to get kdev_t and use it
only to do cdrom_find_device(dev), even though their callers already
had struct cdrom_device_info * in question. Switched to passing
said pointer directly.
* useless exports removed; stuff not used outside of cdrom.c
made static.
Alexander Viro [Thu, 4 Jul 2002 15:53:17 +0000 (08:53 -0700)]
[PATCH] (md.c) block device size cleanups
* calc_dev_sboffset() and calc_dev_size() in md.c are getting
mk_rdev_t instead of kdev_t. Callers updated.
* calls of blkdev_size_in_bytes() in md.c replaced with use
of rdev->bdev->bd_inode->i_size.
Alexander Viro [Thu, 4 Jul 2002 15:53:12 +0000 (08:53 -0700)]
[PATCH] devpts cleanup
* devpts "upcalls" eliminated.
* instead of playing games with revalidation we simply use
ramfs-style tree and kill dentries upon devpts_pty_kill(). That
allows to get rid of a lot of code in fs/devpts/*.c.
* devpts_fs.h cleaned up.
* devpts/root.c and devpts/devpts_i.h removed.
* array of pointers to devpts inodes killed; with ramfs-style tree
it's not needed anymore.
* devpts/inode.c cleaned up.
* devpts_pty_new() used to get mk_kdev() only to convert it to
dev_t (hardly a surprise, since it's mknod() in disguise). Now it gets
dev_t as an argument.
Jens Axboe [Thu, 20 Jun 2002 07:05:46 +0000 (00:05 -0700)]
[PATCH] uninline elv_next_request()
Uninline elv_next_request() and move it to elevator.c, where it belongs.
Because of CURRENT declaration, this actually saves lots of space. From
Andrew.
Robert Kuebel [Thu, 20 Jun 2002 06:54:52 +0000 (23:54 -0700)]
[PATCH] namespace.c - compiler warning
init_rootfs() (from ramfs) doesn't appear in any header file. I didn't
see any that looked like a good home, so lets put a prototype at the top
of fs/namespace.c. This only use of this function is in namespace.c.
Robert Kuebel [Thu, 20 Jun 2002 06:54:37 +0000 (23:54 -0700)]
[PATCH] 3c509.c - 2_2
This patch makes sure the 3c509 module license is always GPL. Currently
the MODULE_LICENSE() marco is only used when CONFIG_ISAPNP or
CONFIG_ISAPNP_MODULE is defined. I have moved MODULE_LICENSE() to the
#ifdef MODULE section at the bottom of 3c509.c.
[PATCH] remove unnecessary parentheses from expand()
Not sure why I forgot to do this, but here is a small bit of tidying up
of some leftover parentheses from the memlist macro removal. The
parentheses are just noise and should go.
Stephen Rothwell [Thu, 20 Jun 2002 06:53:13 +0000 (23:53 -0700)]
[PATCH] Consolidate sys_pause
14 of our 17 architectures define sys_pause exactly the same
way. The other three don't define it at all. I assume glibc
translates pause() into sigsuspend() or something.
Greg Banks [Thu, 20 Jun 2002 06:51:51 +0000 (23:51 -0700)]
[PATCH] PATCH: kconfig wrong arch symbols
Three arch-determining symbols in drivers/mtd/maps/Config.in are wrong.
They have apparently been generated using the sensible pattern "CONFIG_FOO"
for an architecture "foo"; unfortunately the architectures are not sensible.
CONFIG_SPARC should be CONFIG_SPARC32
CONFIG_I386 should be CONFIG_X86
CONFIG_SH should be CONFIG_SUPERH
The config language is *not* shell. The construct "[ foo ] || [ bar ]"
is legal in shell but not in the config language, where we should use
the equivalent "[ foo -o bar ]"
Three symbols CONFIG_BLK_DEV_ATARAID, CONFIG_BLK_DEV_ATARAID_PDC, and
CONFIG_BLK_DEV_ATARAID_HPT depend on CONFIG_EXPERIMENTAL but do
not say so in their banners.
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.