From: Linus Torvalds Date: Fri, 23 Nov 2007 20:11:06 +0000 (-0500) Subject: Import pre2.0.14 X-Git-Tag: pre2.0.14 X-Git-Url: http://git.neil.brown.name/?a=commitdiff_plain;h=688cbeedc548a033fb790c60f0a2a57c09dbd93c;p=history.git Import pre2.0.14 --- diff --git a/Documentation/Changes b/Documentation/Changes index 139be9610e03..67ca0dd278e0 100644 --- a/Documentation/Changes +++ b/Documentation/Changes @@ -18,7 +18,7 @@ and was originally written and maintained by Alessandro Sigala Taylor. Check out http://www.cviog.uga.edu/LinuxBleed.html if you prefer a HTML-ized shopping list. -Last updated: June 5, 1996. +Last updated: June 6, 1996. Current Author: Chris Ricker (gt1355b@prism.gatech.edu). Current Releases @@ -28,7 +28,7 @@ Current Releases - PPP daemon Stable: 2.2.0f - Dynamic linker (ld.so) 1.7.14 - GNU CC 2.7.2 -- Binutils 2.6.0.12 +- Binutils 2.6.0.14 - Linux C Library Stable: 5.2.18, Beta: 5.3.12 - Linux C++ Library 2.7.1.4 - Termcap 2.0.8 @@ -205,11 +205,11 @@ File Locking (Sendmail) As of pre2.0.6 (aka 1.99.6), mixed-style file locking is no longer allowed. For example, a file cannot be simultaneously locked with -`flock' (BSD-style) and `lockf' (SYSV-style). Among the programs this -has impacted are older sendmails. If you get a message that sendmail -cannot lock aliases.dir (or other files), you'll need to upgrade to at -least 8.7.x. The latest sendmail is at -ftp://ftp.cs.berkeley.edu/ucb/src/sendmail/sendmail.8.7.5.tar.gz. +`flock' and `fcntl'. See Documentation/locks.txt for all the gory +details. Among the programs this has impacted are older sendmails. If +you get a message that sendmail cannot lock aliases.dir (or other +files), you'll need to upgrade to at least 8.7.x. The latest sendmail +is at ftp://ftp.cs.berkeley.edu/ucb/src/sendmail/sendmail.8.7.5.tar.gz. Uugetty ======= @@ -262,36 +262,45 @@ direction (either incoming or outgoing). There also exists a possibility to match on device names and/or device addresses, so that only packets coming in/going out via that -device (network interface) match with a rule. - - You'll need to get ipfwadm from ftp://ftp.xos.nl/pub/linux/ipfwadm. -Use ipfwadm-2.1.tar.gz if your kernel is 1.3.66 or later. +device (network interface) match with a rule. You'll need to get +ipfwadm from ftp://ftp.xos.nl/pub/linux/ipfwadm/ipfwadm-2.1.tar.gz to +use this. IP Firewalls ============ The IP firewall code has been changed drastically during 1.3.x. There are now 3 categories of firewall rules: one for incoming packets, -one for outgoing packets, and one for packets being forwarded. - - There also exists a possibility to match on device names and/or -device addresses, so that only packets coming in/going out via that -device (network interface) match with a rule. This is especially -useful to prevent spoofing. - - You'll need to get ipfwadm from ftp://ftp.xos.nl/pub/linux/ipfwadm. -Use ipfwadm-2.1.tar.gz if your kernel is 1.3.66 or later. +one for outgoing packets, and one for packets being forwarded. There +also exists a possibility to match on device names and/or device +addresses, so that only packets coming in/going out via that device +(network interface) match with a rule. This is especially useful to +prevent spoofing. You'll need to get +ftp://ftp.xos.nl/pub/linux/ipfwadm/ipfwadm-2.1.tar.gz to use this. IP Masquerading =============== - IP masquerading is now part of the standard kernel. Note that you -always need to load separate modules (ip_masq_ftp.o and/or ip_masq_irc.o) -if you are going to use FTP or IRC in combination with masquerading. -Use "make modules" to generated them. + IP masquerading is now part of the standard kernel. However, you +always need to load separate modules (ip_masq_ftp.o and/or +ip_masq_irc.o) if you are going to use FTP or IRC in combination with +masquerading. You'll need to get +ftp://ftp.xos.nl/pub/linux/ipfwadm/ipfwadm-2.1.tar.gz to use this. + +ISDN support +============ + + The new kernels support ISDN. You'll need ISDN utils available from +ftp://ftp.franken.de/pub/isdn4linux/isdn4k-utils-1.3.97.tar.gz to try +this. + +Term is broken +============== - You'll need to get ipfwadm from ftp://ftp.xos.nl/pub/linux/ipfwadm. -Use ipfwadm-2.1.tar.gz if your kernel is 1.3.66 or later. + Term (a comm line multiplexer similar in purpose to slirp) does not +work with kernels later than 1.3.60. Since the author of term is +apparently currently on vacation, there is no fix forthcoming. I +suggest that those of you who rely on term learn to use slirp. Networking ========== @@ -428,22 +437,6 @@ ftp://sunsite.unc.edu/pub/Linux/system/Misc/fdutils-4.3.src.tar.gz. In the future, fdformat might disappear entirely, so get used to using superformat instead. -Please send info about any other packages that 1.3.x "broke" or about -any new features of 1.3.x that require extra or new packages for use to -Chris Ricker (gt1355b@prism.gatech.edu). I generate this from a -modified texinfo setup, so you don't need to bother generating a diff -against the current version before you send the additional information -to me. - -nfsd daemon doesn't work anymore -================================ - The Red Hat distributions 2.x, 3.x and Caldera 1.0 have a bug where -they do "route add -net 127.0.0.1" at startup. That is wrong. The -correct command is "route add -net 127.0.0.0". - -Workaround: Change in "/etc/sysconfig/network-scripts/ifup-lo" the -"route add -net ${IPADDR}" into "route add -net 127.0.0.0". - How to know the version of the installed programs ************************************************* @@ -466,9 +459,9 @@ Where to get the files Binutils ======== -ftp://sunsite.unc.edu/pub/Linux/GCC/binutils-2.6.0.12.bin.tar.gz +ftp://sunsite.unc.edu/pub/Linux/GCC/binutils-2.6.0.14.bin.tar.gz Installation notes: -ftp://sunsite.unc.edu/pub/Linux/GCC/release.binutils-2.6.0.12 +ftp://sunsite.unc.edu/pub/Linux/GCC/release.binutils-2.6.0.14 GNU CC ====== diff --git a/Makefile b/Makefile index bba28043fe0e..2fee017c05a4 100644 --- a/Makefile +++ b/Makefile @@ -1,6 +1,6 @@ VERSION = 1 PATCHLEVEL = 99 -SUBLEVEL = 13 +SUBLEVEL = 14 ARCH = i386 diff --git a/README b/README index 28be1c7350ef..bfe98b0a0c66 100644 --- a/README +++ b/README @@ -185,7 +185,7 @@ COMPILING the kernel: IF SOMETHING GOES WRONG: - if you have problems that seem to be due to kernel bugs, please check - the file MAINTAINERS to see if there is a particualr person associated + the file MAINTAINERS to see if there is a particular person associated with the part of the kernel that you are having trouble with. If there isn't anyone listed there, then the second best thing is to mail them to me (Linus.Torvalds@Helsinki.FI), and possibly to any other diff --git a/drivers/cdrom/mcdx.c b/drivers/cdrom/mcdx.c index 78a0a3fc0291..8f1f3a31a30a 100644 --- a/drivers/cdrom/mcdx.c +++ b/drivers/cdrom/mcdx.c @@ -38,9 +38,9 @@ * Jon Tombs, Bjorn Ekwall (module support) * Daniel v. Mosnenck (he sent me the Technical and Programming Reference) * Gerd Knorr (he lent me his PhotoCD) - * Nils Faerber and Roger E. Wolff (extensivly tested the LU portion) + * Nils Faerber and Roger E. Wolff (extensively tested the LU portion) * Andreas Kies (testing the mysterious hang up's) - * Heiko Eissfeld (VERIFY_READ/WRITE) + * Heiko Eissfeldt (VERIFY_READ/WRITE) * Marcin Dalecki (improved performance, shortened code) * ... somebody forgotten? * @@ -89,7 +89,7 @@ static const char *mcdx_c_version #define xtrace(lvl, fmt, args...) \ { if (lvl > 0) \ { printk(KERN_DEBUG MCDX ":: " fmt, ## args); } } -#define xdebug(fmt, args...) printk(KERN_DEBUG MCDX ":: " fmg, ## args) +#define xdebug(fmt, args...) printk(KERN_DEBUG MCDX ":: " fmt, ## args) #else #define xtrace(lvl, fmt, args...) { ; } #define xdebug(fmt, args...) { ; } @@ -100,7 +100,7 @@ static const char *mcdx_c_version /* Following are the number of sectors we _request_ from the drive every time an access outside the already requested range is done. The _direct_ size is the number of sectors we're allowed to skip - directly (perfoming a read instead of requesting the new sector + directly (performing a read instead of requesting the new sector needed */ const int REQUEST_SIZE = 800; /* should be less then 255 * 4 */ const int DIRECT_SIZE = 400; /* should be less then REQUEST_SIZE */ @@ -149,7 +149,7 @@ struct s_version { /* Per drive/controller stuff **************************************/ struct s_drive_stuff { - /* waitquenes */ + /* waitqueues */ struct wait_queue *busyq; struct wait_queue *lockq; struct wait_queue *sleepq; @@ -164,7 +164,7 @@ struct s_drive_stuff { /* cd infos */ struct s_diskinfo di; struct s_multi multi; - struct s_subqcode* toc; /* first enty of the toc array */ + struct s_subqcode* toc; /* first entry of the toc array */ struct s_subqcode start; struct s_subqcode stop; int xa; /* 1 if xa disk */ @@ -683,7 +683,7 @@ mcdx_open(struct inode *ip, struct file *fp) * autoclose wouldn't probably be what we want. * - If we didn't try to close the door yet, close it and go on. * - If we autoclosed the door and couldn't succeed in find a valid - * CD we shouln't try autoclose any longer (until a valid CD is + * CD we shouldn't try autoclose any longer (until a valid CD is * in.) */ if (inb((unsigned int) stuffp->rreg_status) & MCDX_RBIT_DOOR) { @@ -923,7 +923,7 @@ static void mcdx_delay(struct s_drive_stuff *stuff, long jifs) * run for other processes) * >0 means at least sleep for that amount. * May be we could use a simple count loop w/ jumps to itself, but - * I wanna make this independend of cpu speed. [1 jiffie is 1/HZ] sec */ + * I wanna make this independent of cpu speed. [1 jiffy is 1/HZ] sec */ { unsigned long tout = jiffies + jifs; if (jifs < 0) return; @@ -981,7 +981,7 @@ mcdx_intr(int irq, void *dev_id, struct pt_regs* regs) xinfo( "intr() irq %d status 0x%02x\n", irq, inb((unsigned int) stuffp->rreg_data)); } else { - xinfo( "intr() irq %d ambigous hw status\n", irq); + xinfo( "intr() irq %d ambiguous hw status\n", irq); } } else { xtrace(IRQ, "irq() irq %d ok, status %02x\n", irq, b); @@ -1327,7 +1327,7 @@ static int mcdx_transfer(struct s_drive_stuff *stuffp, char *p, int sector, int nr_sectors) /* This seems to do the actually transfer. But it does more. It - keeps track of errors ocurred and will (if possible) fall back + keeps track of errors occurred and will (if possible) fall back to single speed on error. Return: -1 on timeout or other error else status byte (as in stuff->st) */ @@ -1341,7 +1341,7 @@ mcdx_transfer(struct s_drive_stuff *stuffp, else return ans; if (stuffp->readerrs && stuffp->readcmd == READ1X) { - xwarn("XXX Alrady reading 1x -- no chance\n"); + xwarn("XXX Already reading 1x -- no chance\n"); return -1; } @@ -1385,7 +1385,7 @@ static int mcdx_xfer(struct s_drive_stuff *stuffp, * to be already requested, so we don't need to bother the * drive with new requests ... * Wait for the drive become idle, but first - * check for possible occured errors --- the drive + * check for possible occurred errors --- the drive * seems to report them asynchronously */ diff --git a/drivers/char/ChangeLog b/drivers/char/ChangeLog index aebe36929359..266480bb4521 100644 --- a/drivers/char/ChangeLog +++ b/drivers/char/ChangeLog @@ -29,7 +29,7 @@ Sun May 26 09:33:52 1996 Theodore Ts'o nasty TCP hijacking attacks. (init_std_data): Initialize using gettimeofday() instead of - struct timveal xtime. + struct timeval xtime. (fast_add_entropy_word, add_entropy_word): Rename the inline function add_entropy_word() to diff --git a/drivers/char/pty.c b/drivers/char/pty.c index 5d464d966d39..b004a33652a9 100644 --- a/drivers/char/pty.c +++ b/drivers/char/pty.c @@ -74,10 +74,8 @@ static void pty_close(struct tty_struct * tty, struct file * filp) } wake_up_interruptible(&tty->read_wait); wake_up_interruptible(&tty->write_wait); - tty->packet = 0; if (!tty->link) return; - tty->link->packet = 0; wake_up_interruptible(&tty->link->read_wait); wake_up_interruptible(&tty->link->write_wait); set_bit(TTY_OTHER_CLOSED, &tty->link->flags); diff --git a/drivers/char/random.c b/drivers/char/random.c index 0b189bbd2e7a..55714a619c78 100644 --- a/drivers/char/random.c +++ b/drivers/char/random.c @@ -351,7 +351,7 @@ static void add_entropy_word(struct random_bucket *r, /* * Unfortunately, while the GCC optimizer for the i386 understands how - * to opimize a static rotate left of x bits, it doesn't know how to + * to optimize a static rotate left of x bits, it doesn't know how to * deal with a variable rotate of x bits. So we use a bit of asm magic. */ #if (!defined (__i386__)) diff --git a/drivers/char/serial.c b/drivers/char/serial.c index fb50693fc56c..7f3e31179879 100644 --- a/drivers/char/serial.c +++ b/drivers/char/serial.c @@ -90,13 +90,6 @@ static int serial_refcount; #define _INLINE_ inline -#ifdef MODULE -static int io[PORT_MAX] = { 0, }; -static int irq[PORT_MAX] = { 0, }; -static int type[PORT_MAX] = { 0, }; -static int flags[PORT_MAX] = { 0, }; -#endif - #if defined(MODULE) && defined(SERIAL_DEBUG_MCOUNT) #define DBG_CNT(s) printk("(%s): [%x] refc=%d, serc=%d, ttyc=%d -> %s\n", \ kdevname(tty->device), (info->flags), serial_refcount,info->count,tty->count,s) @@ -2825,16 +2818,6 @@ int rs_init(void) info->icount.rng = info->icount.dcd = 0; info->next_port = 0; info->prev_port = 0; -#ifdef MODULE - if(irq[i]) - info->irq=irq[i]; - if (io[i]) - info->port=io[i]; - if (type[i]) - info->type = type[i]; - if (flags[i]) - info->flags = flags[i]; -#endif if (info->irq == 2) info->irq = 9; if (info->type == PORT_UNKNOWN) { diff --git a/drivers/char/tty_io.c b/drivers/char/tty_io.c index bd1570bd3e9a..a3711950c01d 100644 --- a/drivers/char/tty_io.c +++ b/drivers/char/tty_io.c @@ -431,9 +431,6 @@ void do_tty_hangup(struct tty_struct * tty, struct file_operations *fops) tty->session = 0; tty->pgrp = -1; tty->ctrl_status = 0; - tty->packet = 0; - if (tty->link) - tty->link->packet = 0; if (tty->driver.flags & TTY_DRIVER_RESET_TERMIOS) *tty->termios = tty->driver.init_termios; if (tty->driver.hangup) diff --git a/drivers/scsi/sr.c b/drivers/scsi/sr.c index 34014176da0a..36964935cdf9 100644 --- a/drivers/scsi/sr.c +++ b/drivers/scsi/sr.c @@ -40,7 +40,7 @@ #include "constants.h" #define MAX_RETRIES 3 -#define SR_TIMEOUT (15 * HZ) +#define SR_TIMEOUT (30 * HZ) static int sr_init(void); static void sr_finish(void); diff --git a/include/linux/mcdx.h b/include/linux/mcdx.h index 318886ca2e07..b1b431326643 100644 --- a/include/linux/mcdx.h +++ b/include/linux/mcdx.h @@ -26,7 +26,7 @@ * Jon Tombs, Bjorn Ekwall (module support) * Daniel v. Mosnenck (he sent me the Technical and Programming Reference) * Gerd Knorr (he lent me his PhotoCD) - * Nils Faerber and Roger E. Wolff (extensivly tested the LU portion) + * Nils Faerber and Roger E. Wolff (extensively tested the LU portion) * Andreas Kies (testing the mysterious hang up's) * ... somebody forgotten? * Marcin Dalecki diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c index 20b26eaed081..c21faa019a60 100644 --- a/net/ipv4/tcp_input.c +++ b/net/ipv4/tcp_input.c @@ -919,7 +919,7 @@ static int tcp_ack(struct sock *sk, struct tcphdr *th, u32 ack, int len) * the ACK handshake on an initial SYN packet as well. * Rather than introducing a new test here for this * special case, we just reset the initial values for - * rtt immediatly after we move to the established state. + * rtt immediately after we move to the established state. */ if (!(flag&2)) /* Not retransmitting */ tcp_rtt_estimator(sk,skb);