Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
linux
Commits
5fec1cd9
Commit
5fec1cd9
authored
Nov 23, 2007
by
Linus Torvalds
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Import 2.0.20
parent
63038f25
Changes
16
Hide whitespace changes
Inline
Side-by-side
Showing
16 changed files
with
203 additions
and
142 deletions
+203
-142
CREDITS
CREDITS
+1
-0
Documentation/Configure.help
Documentation/Configure.help
+104
-78
MAINTAINERS
MAINTAINERS
+12
-12
Makefile
Makefile
+1
-1
arch/i386/kernel/ksyms.c
arch/i386/kernel/ksyms.c
+4
-0
arch/i386/lib/semaphore.S
arch/i386/lib/semaphore.S
+2
-6
drivers/net/dlci.c
drivers/net/dlci.c
+6
-12
drivers/net/sdla.c
drivers/net/sdla.c
+6
-4
include/asm-alpha/atomic.h
include/asm-alpha/atomic.h
+29
-5
include/asm-alpha/processor.h
include/asm-alpha/processor.h
+1
-1
include/asm-alpha/semaphore.h
include/asm-alpha/semaphore.h
+13
-13
include/asm-i386/processor.h
include/asm-i386/processor.h
+1
-1
include/asm-i386/semaphore.h
include/asm-i386/semaphore.h
+9
-4
kernel/ksyms.c
kernel/ksyms.c
+1
-0
kernel/sched.c
kernel/sched.c
+3
-3
mm/vmscan.c
mm/vmscan.c
+10
-2
No files found.
CREDITS
View file @
5fec1cd9
...
...
@@ -1559,6 +1559,7 @@ S: Germany
N: Leonard N. Zubkoff
E: lnz@dandelion.com
W: http://www.dandelion.com/Linux/
D: BusLogic SCSI driver
D: Miscellaneous kernel fixes
S: 3078 Sulphur Spring Court
...
...
Documentation/Configure.help
View file @
5fec1cd9
...
...
@@ -3,6 +3,14 @@
# This version of the Linux kernel configuration help texts
# corresponds to the kernel versions 2.0.x.
#
# International versions available on the WWW:
# - http://www.eis.or.jp/muse/kikutani/Configure.help-1.2.x.euc
# is a Japanese translation of a previous version of this file,
# written by kikutani@eis.or.jp.
# - http://nevod.perm.su/service/linux/doc/kernel/Configure.help
# is a Russian translation of this file, maintained by
# kaf@linux.nevod.perm.su.
#
# Information about what a kernel is, what it does, how to patch and
# compile it and much more is contained in the Kernel-HOWTO, available
# via ftp (user: anonymous) from sunsite.unc.edu in the directory
...
...
@@ -202,22 +210,23 @@ CONFIG_BLK_DEV_CMD640
"SiS" chipset. Unfortunately, it has a number of rather nasty
design flaws that can cause severe data corruption under many common
conditions. Say Y here to include code which tries to automatically
detect and correct the problems under Linux.
This option also enables access to the secondary IDE ports in some
CMD640 based systems. This driver will work automatically in PCI
based systems (most new systems have PCI slots). But if your system
uses VESA local bus (VLB) instead of PCI, you must also supply a
kernel boot parameter to enable the CMD640 bugfix/support:
"ide0=cmd640_vlb" The CMD640 chip is also used on add-in cards by
Acculogic, and on the "CSA-6400E PCI to IDE controller" that some
people have
. If unsure, say Y.
detect and correct the problems under Linux.
This option also
enables access to the secondary IDE ports in some CMD640 based
systems. This driver will work automatically in PCI based systems
(most new systems have PCI slots). But if your system uses VESA
local bus (VLB) instead of PCI, you must also supply a kernel boot
parameter to enable the CMD640 bugfix/support: "ide0=cmd640_vlb" The
CMD640 chip is also used on add-in cards by Acculogic, and on the
"CSA-6400E PCI to IDE controller" that some people have. For
details, read Documentation/ide.txt
. If unsure, say Y.
CMD640 enhanced support
CONFIG_BLK_DEV_CMD640_ENHANCED
This option includes support for setting/autotuning PIO modes
and prefetch on CMD640 IDE interfaces. If you have a CMD640 IDE
interface and your BIOS does not already do this for you, then say Y
here. Otherwise say N.
This option includes support for setting/autotuning PIO modes and
prefetch on CMD640 IDE interfaces. For details, read
Documentation/ide.txt. If you have a CMD640 IDE interface and your
BIOS does not already do this for you, then say Y here. Otherwise
say N.
RZ1000 chipset bugfix/support
CONFIG_BLK_DEV_RZ1000
...
...
@@ -267,12 +276,13 @@ CONFIG_BLK_DEV_UMC8672
of the UMC-8672, and permits faster I/O speeds to be set as well.
See the Documentation/ide.txt and umc8672.c files for more info.
ALI M14
39/M1445
support
ALI M14
xx
support
CONFIG_BLK_DEV_ALI14XX
This driver is enabled at runtime using the "ide0=ali14xx" kernel
boot parameter. It enables support for the secondary IDE interface
of the chipset, and permits faster I/O speeds to be set as well.
See the Documentation/ide.txt and ali14xx.c files for more info.
of the ALI M1439/1443/1445/1487/1489 chipsets, and permits faster
I/O speeds to be set as well. See the Documentation/ide.txt and
ali14xx.c files for more info.
PROMISE DC4030 support (EXPERIMENTAL)
CONFIG_BLK_DEV_PROMISE
...
...
@@ -551,7 +561,7 @@ CONFIG_PCI_OPTIMIZE
certain BIOSes if your computer uses a PCI bus system. This is
recommended; say Y.
Intel
430FX (Triton) chipset
DMA support
Intel
82371 PIIX (Triton I/II)
DMA support
CONFIG_BLK_DEV_TRITON
If your PCI system uses an IDE harddrive (as opposed to SCSI, say)
and includes the Intel 430FX PCI Triton chipset, you will want to
...
...
@@ -804,11 +814,11 @@ IP: multicasting
CONFIG_IP_MULTICAST
This is code for addressing several networked computers at once,
enlarging your kernel by about 2 kB. If you are using gated, the
daemon that updates your computer's routing tables,
and are using
RIP2 or OSPF you will need to have this option compiled in. You also
need multicasting if you intend to participate in the MBONE, a high
bandwidth network on top of the internet which carries audio and
video broadcasts. More
information about the MBONE is on the WWW at
daemon that updates your computer's routing tables,
you will need to
have this option compiled in. You also need multicasting if you
intend to participate in the MBONE, a high bandwidth network on top
of the internet which carries audio and video broadcasts. More
information about the MBONE is on the WWW at
http://www.best.com/~prince/techinfo/mbone.html (to browse the WWW,
you need to have access to a machine on the Internet that has one of
the programs lynx, netscape or Mosaic). Information about the
...
...
@@ -1233,16 +1243,19 @@ CONFIG_BLK_DEV_SR
SCSI generic support
CONFIG_CHR_DEV_SG
If you want to use SCSI scanners, synthesizers or CD-writers or just
about anything having "SCSI" in its name other than disks, CDROMs or
tapes, say Y here. Those won't be supported by the kernel directly,
so you need some additional software which knows how to talk to
these things using the SCSI protocol. Chances are that you'll have
to write that software yourself, so have a look at the SCSI-HOWTO
and at the SCSI-Programming-HOWTO, both available via ftp (user:
anonymous) in sunsite.unc.edu:/pub/Linux/docs/HOWTO. If you want to
compile this as a module ( = code which can be inserted in and
removed from the running kernel whenever you want), say M here and
read Documentation/modules.txt and Documentation/scsi.txt.
about anything having "SCSI" in its name other than harddisks,
CDROMs or tapes, say Y here. Those won't be supported by the kernel
directly, so you need some additional software which knows how to
talk to these devices using the SCSI protocol. For CD-writers, you
would need the program cdwrite, available via ftp (user: anonymous)
from sunsite.unc.edu:/pub/Linux/utils/disk-management; for other
devices, it's possible that you'll have to write the driver software
yourself, so have a look at the SCSI-HOWTO and at the
SCSI-Programming-HOWTO, both available via ftp (user: anonymous) in
sunsite.unc.edu:/pub/Linux/docs/HOWTO. If you want to compile this
as a module ( = code which can be inserted in and removed from the
running kernel whenever you want), say M here and read
Documentation/modules.txt and Documentation/scsi.txt.
Probe all LUNs on each SCSI device
CONFIG_SCSI_MULTI_LUN
...
...
@@ -1354,9 +1367,9 @@ EATA-PIO (old DPT PM2001, PM2012A) support
CONFIG_SCSI_EATA_PIO
This driver supports all EATA-PIO protocol compliant SCSI Host
Adaptors like the DPT PM2001 and the PM2012A. EATA-DMA compliant
HBAs can also use this driver but are discouraged from doing so,
since this driver only supports harddisks and lacks numerou
s
features. You might want to have a look at the SCSI-HOWTO,
host adaptors could also use this driver but are discouraged from
doing so, since this driver only supports harddisks and lack
s
numerous
features. You might want to have a look at the SCSI-HOWTO,
available via ftp (user: anonymous) at
sunsite.unc.edu:/pub/Linux/docs/HOWTO. If you want to compile this
as a module ( = code which can be inserted in and removed from the
...
...
@@ -1482,10 +1495,10 @@ CONFIG_SCSI_NCR53C8XX_IOMAPPED
not allow targets to disconnect
CONFIG_SCSI_NCR53C8XX_NO_DISCONNECT
This option is only provided for safety if you suspect some scsi
device of yours to not support properly th
is feature. In that case,
you would say Y here. In general however, to not allow targets
to
disconnect is not reasonable if there is more than 1 device on a
scsi bus. The normal answer therefore is N.
device of yours to not support properly th
e target-disconnect
feature. In that case, you would say Y here. In general however,
to
not allow targets to disconnect is not reasonable if there is more
than 1 device on a
scsi bus. The normal answer therefore is N.
enable tagged command queuing
CONFIG_SCSI_NCR53C8XX_TAGGED_QUEUE
...
...
@@ -1497,8 +1510,8 @@ CONFIG_SCSI_NCR53C8XX_TAGGED_QUEUE
asks the driver to use up to 4 concurrent tagged commands for target
2 of controller 0.
See the file drivers/scsi/README.ncr53c8xx for more information.
WARNING!
tagged queue support requires to allow targets to
disconnect (see above)
.
WARNING!
If you say Y here, then you have to say N to "not allow
targets to disconnect", above
.
The safe answer therefore is N.
The normal answer therefore is Y.
...
...
@@ -1933,9 +1946,9 @@ CONFIG_DLCI
low-cost way to connect to a remote internet access provider or to
form a private wide area network. The one physical line from your
box to the local "switch" (i.e. the entry point to the frame relay
network
) can carry several logical point-to-point connections to
other computers connected to the frame relay network. For a general
explanation of the protocol, check out
network
, usually at the phone company) can carry several logical
point-to-point connections to other computers connected to the frame
relay network. For a general
explanation of the protocol, check out
http://frame-relay.indiana.edu/4000/4000index.html on the WWW. (To
browse the WWW, you need to have access to a machine on the Internet
that has one of the programs lynx, netscape or Mosaic.) To use frame
...
...
@@ -2724,7 +2737,7 @@ CONFIG_OPTCD
This is the driver for the 'DOLPHIN' drive with a 34-pin Sony
compatible interface. It also works with the Lasermate CR328A. If
you have one of those, say Y. This driver does not work for the
Optics Storage 8001 drive; use the IDE-ATAPI CDROM driver for th
is
Optics Storage 8001 drive; use the IDE-ATAPI CDROM driver for th
at
one.
Sanyo CDR-H94A CDROM support
...
...
@@ -2764,19 +2777,22 @@ Quota support
CONFIG_QUOTA
If you say Y here, you will be able to set per user limits for disk
usage (also called diskquotas). Currently, it works only for the
ext2 filesystem; you need the software available via ftp (user:
anonymous) in
ftp.funet.fi:/pub/Linux/PEOPLE/Linus/subsystems/quota/ in order to
use it. Probably this is only useful for multi user systems. If
unsure, say N.
ext2 filesystem. You need additional software in order to use quota
support; check the file Documentation/Changes for that. Probably the
quota support is only useful for multi user systems. If unsure, say
N.
Mandatory lock support
CONFIG_LOCK_MANDATORY
Mandatory locking is used by some System 5 style database
applications. To use this option safely you must have newer NFS
daemons, new samba, new netatalk, new mars-nwe and other file
servers. At the time of writing none of these are available. Unless
you need this feature say N.
File locking is a system designed to prevent that several processes
write to the same file at the same time, causing data
corruption. Mandatory file locking is more secure than the usual
algorithm and is used by some Unix System 5 style database
applications. For details, read Documentation/mandatory.txt. To use
this option safely you must have newer NFS daemons, new samba, new
netatalk, new mars-nwe and other file servers. At the time of
writing none of these are available. So it's safest to say N here
unless you really know that you need this feature.
Minix fs support
CONFIG_MINIX_FS
...
...
@@ -2986,9 +3002,11 @@ ISO9660 cdrom filesystem support
CONFIG_ISO9660_FS
This is the standard filesystem used on CDROMs. It was previously
known as "High Sierra Filesystem" and is called "hsfs" on other Unix
systems. If you have a CDROM drive and want to do more with it than
just listen to audio CDs and watch its LEDs, say Y (and read the
CDROM-HOWTO, available via ftp (user: anonymous) from
systems. The so-called Rock-Ridge extensions which allow for long
Unix filenames are also supported by this driver. If you have a
CDROM drive and want to do more with it than just listen to audio
CDs and watch its LEDs, say Y (and read the CDROM-HOWTO, available
via ftp (user: anonymous) from
sunsite.unc.edu:/pub/Linux/docs/HOWTO), thereby enlarging your
kernel by about 27 kB; otherwise say N. If you want to compile this
as a module ( = code which can be inserted in and removed from the
...
...
@@ -3355,18 +3373,21 @@ CONFIG_SUN_ZS
Advanced Power Management
CONFIG_APM
APM is a BIOS specification for saving power using several different
techniques. This is mostly useful for battery powered laptops with APM
compliant BIOSes. Specifically, the time will be reset after a USER
RESUME operation, the /proc/apm device will provide battery status
information, and user-space programs will receive notification of APM
"events" (e.g., battery status change). This driver does not spin down
disk drives (see hdparm(8) for that); and it doesn't turn off
VESA-compliant "green" monitors. This driver does not support the TI
4000M TravelMate and the ACER 486/DX4/75 because they don't have
compliant BIOSes. Many "green" desktop machines also don't have
compliant BIOSes, and this driver will cause those machines to panic
during the boot phase (typically, these machines are using a data
segment of 0040, which is reserved for the Linux kernel). If you don't
techniques. This is mostly useful for battery powered laptops with
APM compliant BIOSes. Specifically, the time will be reset after a
USER RESUME operation, the /proc/apm device will provide battery
status information, and user-space programs will receive
notification of APM "events" (e.g., battery status change). This
driver does not spin down disk drives (see hdparm(8) for that); and
it doesn't turn off VESA-compliant "green" monitors. This driver
does not support the TI 4000M TravelMate and the ACER 486/DX4/75
because they don't have compliant BIOSes. Many "green" desktop
machines also don't have compliant BIOSes, and this driver will
cause those machines to panic during the boot phase (typically,
these machines are using a data segment of 0040, which is reserved
for the Linux kernel). If you get random kernel OOPSes that don't
seem to be related to anything and you have a motherboard with APM
support, try disabling/enabling this option. Generally, if you don't
have a battery in your machine, there isn't much point in using this
driver.
...
...
@@ -3478,12 +3499,16 @@ CONFIG_SOFT_WATCHDOG
Berkshire Products PC Watchdog card
CONFIG_PCWATCHDOG
This is the driver for the Berkshire Products PC Watchdog card. This card
simply watches your kernel to make sure it doesn't freeze, and if it does,
it resets your computer after a certain amount of time. This driver is
like the WDT501 driver but for different hardware. The PC watchdog cards
can be ordered from http://www.berkprod.com. Some example rc.local files
are available from ftp.bitgate.com.
This is the driver for the Berkshire Products PC Watchdog card.
This card simply watches your kernel to make sure it doesn't freeze,
and if it does, it resets your computer after a certain amount of
time. This driver is like the WDT501 driver but for different
hardware. The PC watchdog cards can be ordered from
http://www.berkprod.com. Some example rc.local files are available
from ftp.bitgate.com. This driver is also available as a module ( =
code which can be inserted in and removed from the running kernel
whenever you want). If you want to compile it as a module, say M
here and read Documentation/modules.txt. Most people will say N.
Enhanced Real Time Clock Support
CONFIG_RTC
...
...
@@ -3839,7 +3864,7 @@ CONFIG_AP1000
# LocalWords: Bernd informatik rwth aachen uae affs multihosting bytecode java
# LocalWords: applets applet JDK ncsa cabi SNI Alphatronix readme LANs scarab
# LocalWords: winsock RNIS caltech OSPF honour Honouring Mbit Localtalk DEFRAG
# LocalWords:
Camtec Berkshire
# LocalWords:
localtalk download Packetwin Baycom baycom interwork ascii JNT
# LocalWords: Camtec proxying indyramp defragment defragmented UDP FAS FASXX
# LocalWords: FastSCSI SIO FDC qlogicfas QLogic qlogicisp setbaycom ife ee LJ
# LocalWords: ethz ch Travelmates ProAudioSpectrum ProAudio SoundMan SB SBPro
...
...
@@ -3849,4 +3874,5 @@ CONFIG_AP1000
# LocalWords: Soundscape SSCAPE TRIX MediaTrix PnP Maui dsp midixx EIA getty
# LocalWords: mgetty sendfax gert greenie muc lowlevel Lasermate LanManager io
# LocalWords: OOPSes trackball binghamton mobileip ncr IOMAPPED settags ns ser
# LocalWords: setsync NEGO MPARITY
# LocalWords: setsync NEGO MPARITY autotuning prefetch PIIX cdwrite utils rc
# LocalWords: PCWATCHDOG berkprod bitgate
MAINTAINERS
View file @
5fec1cd9
...
...
@@ -106,10 +106,10 @@ W: http://www.dgii.com/linux/
S: Maintained
APM DRIVER
P:
Rik Faith & Stephen Rothwell
M:
faith@cs.unc.edu, Stephen.Rothwell@canb.auug.org.au
L:
linux-laptop@vger.rutgers.edu
S:
Maintained
P:
Rik Faith & Stephen Rothwell
M:
faith@cs.unc.edu, Stephen.Rothwell@canb.auug.org.au
L:
linux-laptop@vger.rutgers.edu
S:
Maintained
APPLETALK NETWORK LAYER
P: Alan Cox & University Of Michigan
...
...
@@ -166,10 +166,10 @@ L: linux-net@vger.rutgers.edu
S: Maintained
FUTURE DOMAIN TMC-16x0 SCSI DRIVER (16-bit)
P:
Rik Faith
M:
faith@cs.unc.edu
L:
linux-scsi@vger.rutgers.edu
S:
Odd fixes (e.g., new signatures)
P:
Rik Faith
M:
faith@cs.unc.edu
L:
linux-scsi@vger.rutgers.edu
S:
Odd fixes (e.g., new signatures)
SCSI TAPE DRIVER
P: Kai Mkisara
...
...
@@ -245,10 +245,10 @@ L: linux-kernel@vger.rutgers.edu
S: Maintained
STARMODE RADIO IP (STRIP) PROTOCOL DRIVER
P:
Stuart Cheshire
M:
cheshire@cs.stanford.edu
W:
http://mosquitonet.Stanford.EDU/strip.html
S:
Maintained
P:
Stuart Cheshire
M:
cheshire@cs.stanford.edu
W:
http://mosquitonet.Stanford.EDU/strip.html
S:
Maintained
SMB FILESYSTEM:
P: Volker Lendecke
...
...
Makefile
View file @
5fec1cd9
VERSION
=
2
PATCHLEVEL
=
0
SUBLEVEL
=
19
SUBLEVEL
=
20
ARCH
=
i386
...
...
arch/i386/kernel/ksyms.c
View file @
5fec1cd9
...
...
@@ -3,6 +3,8 @@
#include <linux/user.h>
#include <linux/elfcore.h>
#include <asm/semaphore.h>
extern
void
dump_thread
(
struct
pt_regs
*
,
struct
user
*
);
extern
int
dump_fpu
(
elf_fpregset_t
*
);
...
...
@@ -11,6 +13,8 @@ static struct symbol_table arch_symbol_table = {
/* platform dependent support */
X
(
dump_thread
),
X
(
dump_fpu
),
XNOVERS
(
down_failed
),
XNOVERS
(
up_wakeup
),
#ifdef __SMP__
X
(
apic_reg
),
/* Needed internally for the I386 inlines */
X
(
cpu_data
),
...
...
arch/i386/lib/semaphore.S
View file @
5fec1cd9
...
...
@@ -12,18 +12,14 @@
*
to
increment
the
number
of
waiters
on
the
semaphore
,
*
call
"__down()"
,
and
then
eventually
return
to
try
again
.
*/
.
globl
down_failed
ALIGN
down_failed
:
ENTRY
(
down_failed
)
pushl
%
eax
pushl
%
ecx
call
SYMBOL_NAME
(
__down
)
popl
%
ecx
ret
.
globl
up_wakeup
ALIGN
up_wakeup
:
ENTRY
(
up_wakeup
)
pushl
%
eax
pushl
%
ecx
call
SYMBOL_NAME
(
__up
)
...
...
drivers/net/dlci.c
View file @
5fec1cd9
...
...
@@ -5,7 +5,7 @@
* interfaces. Requires 'dlcicfg' program to create usable
* interfaces, the initial one, 'dlci' is for IOCTL use only.
*
* Version: @(#)dlci.c 0.
25 13 May
1996
* Version: @(#)dlci.c 0.
30 12 Sep
1996
*
* Author: Mike McLagan <mike.mclagan@linux.org>
*
...
...
@@ -13,14 +13,13 @@
*
* 0.15 Mike Mclagan Packet freeing, bug in kmalloc call
* DLCI_RET handling
*
* 0.20 Mike McLagan More conservative on which packets
* are returned for retry and whic are
* are dropped. If DLCI_RET_DROP is
* returned from the FRAD, the packet is
* sent back to Linux for re-transmission
*
* 0.25 Mike McLagan Converted to use SIOC IOCTL calls
* 0.30 Jim Freeman Fixed to allow IPX traffic
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
...
...
@@ -54,7 +53,7 @@
#include <net/sock.h>
static
const
char
*
devname
=
"dlci"
;
static
const
char
*
version
=
"DLCI driver v0.
25, 13 May
1996, mike.mclagan@linux.org"
;
static
const
char
*
version
=
"DLCI driver v0.
30, 12 Sep
1996, mike.mclagan@linux.org"
;
static
struct
device
*
open_dev
[
CONFIG_DLCI_COUNT
];
...
...
@@ -143,7 +142,7 @@ static int dlci_header(struct sk_buff *skb, struct device *dev,
hdr
.
pad
=
FRAD_P_PADDING
;
hdr
.
NLPID
=
FRAD_P_SNAP
;
memset
(
hdr
.
OUI
,
0
,
sizeof
(
hdr
.
OUI
));
hdr
.
PID
=
type
;
hdr
.
PID
=
htons
(
type
)
;
hlen
=
sizeof
(
hdr
);
break
;
}
...
...
@@ -194,7 +193,8 @@ static void dlci_receive(struct sk_buff *skb, struct device *dev)
/* at this point, it's an EtherType frame */
header
=
sizeof
(
struct
frhdr
);
skb
->
protocol
=
htons
(
hdr
->
PID
);
/* Already in network order ! */
skb
->
protocol
=
hdr
->
PID
;
process
=
1
;
break
;
...
...
@@ -620,12 +620,6 @@ int dlci_init(struct device *dev)
for
(
i
=
0
;
i
<
DEV_NUMBUFFS
;
i
++
)
skb_queue_head_init
(
&
dev
->
buffs
[
i
]);
if
(
strcmp
(
dev
->
name
,
devname
)
==
0
)
{
dev
->
type
=
0xFFFF
;
dev
->
family
=
AF_UNSPEC
;
}
return
(
0
);
}
...
...
drivers/net/sdla.c
View file @
5fec1cd9
...
...
@@ -5,7 +5,7 @@
*
* Global definitions for the Frame relay interface.
*
* Version: @(#)sdla.c 0.
25 14 May
1996
* Version: @(#)sdla.c 0.
30 12 Sep
1996
*
* Credits: Sangoma Technologies, for the use of 2 cards for an extended
* period of time.
...
...
@@ -23,7 +23,8 @@
* non DLCI devices.
* 0.25 Mike McLagan Fixed problem with rejecting packets
* from non DLCI devices.
*
* 0.30 Mike McLagan Fixed kernel panic when used with modified
* ifconfig
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
...
...
@@ -58,7 +59,7 @@
#include <linux/sdla.h>
static
const
char
*
version
=
"SDLA driver v0.
25, 14 May
1996, mike.mclagan@linux.org"
;
static
const
char
*
version
=
"SDLA driver v0.
30, 12 Sep
1996, mike.mclagan@linux.org"
;
static
const
char
*
devname
=
"sdla"
;
...
...
@@ -424,6 +425,7 @@ static int sdla_cmd(struct device *dev, int cmd, short dlci, short flags,
window
=
flp
->
type
==
SDLA_S508
?
SDLA_508_CMD_BUF
:
SDLA_502_CMD_BUF
;
cmd_buf
=
(
struct
sdla_cmd
*
)(
dev
->
mem_start
+
(
window
&
SDLA_ADDR_MASK
));
ret
=
0
;
len
=
0
;
jiffs
=
jiffies
+
HZ
;
/* 1 second is plenty */
save_flags
(
pflags
);
cli
();
...
...
@@ -603,7 +605,7 @@ int sdla_deassoc(struct device *slave, struct device *master)
int
sdla_dlci_conf
(
struct
device
*
slave
,
struct
device
*
master
,
int
get
)
{
struct
frad_local
*
flp
;
struct
frad
_local
*
dlp
;
struct
dlci
_local
*
dlp
;
int
i
;
short
len
,
ret
;
...
...
include/asm-alpha/atomic.h
View file @
5fec1cd9
...
...
@@ -51,11 +51,30 @@ extern __inline__ void atomic_sub(atomic_t i, atomic_t * v)
}
/*
* Same as above, but return t
rue if we counted down to zero
* Same as above, but return t
he result value
*/
extern
__inline__
int
atomic_sub_and_test
(
atomic_t
i
,
atomic_t
*
v
)
extern
__inline__
long
atomic_add_return
(
atomic_t
i
,
atomic_t
*
v
)
{
unsigned
long
temp
,
result
;
long
temp
,
result
;
__asm__
__volatile__
(
"
\n
1:
\t
"
"ldl_l %0,%1
\n\t
"
"addl %0,%3,%0
\n\t
"
"bis %0,%0,%2
\n\t
"
"stl_c %0,%1
\n\t
"
"beq %0,1b
\n
"
"2:"
:
"=&r"
(
temp
),
"=m"
(
__atomic_fool_gcc
(
v
)),
"=&r"
(
result
)
:
"Ir"
(
i
),
"m"
(
__atomic_fool_gcc
(
v
)));
return
result
;
}
extern
__inline__
long
atomic_sub_return
(
atomic_t
i
,
atomic_t
*
v
)
{
long
temp
,
result
;
__asm__
__volatile__
(
"
\n
1:
\t
"
"ldl_l %0,%1
\n\t
"
...
...
@@ -69,11 +88,16 @@ extern __inline__ int atomic_sub_and_test(atomic_t i, atomic_t * v)
"=&r"
(
result
)
:
"Ir"
(
i
),
"m"
(
__atomic_fool_gcc
(
v
)));
return
result
==
0
;
return
result
;
}
#define atomic_dec_return(v) atomic_sub_return(1,(v))
#define atomic_inc_return(v) atomic_add_return(1,(v))
#define atomic_sub_and_test(i,v) (atomic_sub_return((i), (v)) == 0)
#define atomic_dec_and_test(v) (atomic_sub_return(1, (v)) == 0)
#define atomic_inc(v) atomic_add(1,(v))
#define atomic_dec(v) atomic_sub(1,(v))
#define atomic_dec_and_test(v) atomic_sub_and_test(1,(v))
#endif
include/asm-alpha/processor.h
View file @
5fec1cd9
...
...
@@ -59,7 +59,7 @@ struct thread_struct {
0 \
}
#define alloc_kernel_stack() get_free_page(GFP_KERNEL)
#define alloc_kernel_stack()
__
get_free_page(GFP_KERNEL)
#define free_kernel_stack(page) free_page((page))
#include <asm/ptrace.h>
...
...
include/asm-alpha/semaphore.h
View file @
5fec1cd9
...
...
@@ -7,9 +7,11 @@
* (C) Copyright 1996 Linus Torvalds
*/
#include <asm/atomic.h>
struct
semaphore
{
in
t
count
;
in
t
waiting
;
atomic_
t
count
;
atomic_
t
waiting
;
struct
wait_queue
*
wait
;
};
...
...
@@ -17,27 +19,25 @@ struct semaphore {
#define MUTEX_LOCKED ((struct semaphore) { 0, 0, NULL })
extern
void
__down
(
struct
semaphore
*
sem
);
extern
void
wake_up
(
struct
wait_queue
**
p
);
extern
void
__up
(
struct
semaphore
*
sem
);
/*
* These are not yet interrupt-safe: should use ldl_l/stl_c here..
*
* See include/asm-i386/semaphore.h on how to do this correctly
* without any jumps or wakeups taken for the no-contention cases.
* This isn't quite as clever as the x86 side, but the gp register
* makes things a bit more complicated on the alpha..
*/
extern
inline
void
down
(
struct
semaphore
*
sem
)
{
sem
->
count
--
;
/* "down_failed" */
if
(
sem
->
count
<
0
)
for
(;;)
{
if
(
atomic_dec_return
(
&
sem
->
count
)
>=
0
)
break
;
__down
(
sem
);
}
}
extern
inline
void
up
(
struct
semaphore
*
sem
)
{
sem
->
count
++
;
/* "up_wakeup" */
__up
(
sem
);
if
(
atomic_inc_return
(
&
sem
->
count
)
<=
0
)
__up
(
sem
);
}
#endif
include/asm-i386/processor.h
View file @
5fec1cd9
...
...
@@ -131,7 +131,7 @@ struct thread_struct {
NULL, 0, 0, 0, 0
/* vm86_info */
\
}
#define alloc_kernel_stack() get_free_page(GFP_KERNEL)
#define alloc_kernel_stack()
__
get_free_page(GFP_KERNEL)
#define free_kernel_stack(page) free_page((page))
static
inline
void
start_thread
(
struct
pt_regs
*
regs
,
unsigned
long
eip
,
unsigned
long
esp
)
...
...
include/asm-i386/semaphore.h
View file @
5fec1cd9
#ifndef _I386_SEMAPHORE_H
#define _I386_SEMAPHORE_H
#include <linux/linkage.h>
/*
* SMP- and interrupt-safe semaphores..
*
...
...
@@ -16,8 +18,11 @@ struct semaphore {
#define MUTEX ((struct semaphore) { 1, 0, NULL })
#define MUTEX_LOCKED ((struct semaphore) { 0, 0, NULL })
asmlinkage
void
down_failed
(
void
/* special register calling convention */
);
asmlinkage
void
up_wakeup
(
void
/* special register calling convention */
);
extern
void
__down
(
struct
semaphore
*
sem
);
extern
void
wake_up
(
struct
wait_queue
**
p
);
extern
void
__up
(
struct
semaphore
*
sem
);
/*
* This is ugly, but we want the default case to fall through.
...
...
@@ -34,7 +39,7 @@ extern inline void down(struct semaphore * sem)
"lock ; "
#endif
"decl %0
\n\t
"
"js
down_failed"
"js
"
SYMBOL_NAME_STR
(
down_failed
)
:
/* no outputs */
:
"m"
(
sem
->
count
),
"c"
(
sem
)
:
"ax"
,
"dx"
,
"memory"
);
...
...
@@ -55,8 +60,8 @@ extern inline void up(struct semaphore * sem)
"lock ; "
#endif
"incl %0
\n\t
"
"jle
up_wakeup
\n
"
"1:"
"jle
"
SYMBOL_NAME_STR
(
up_wakeup
)
"
\n
1:"
:
/* no outputs */
:
"m"
(
sem
->
count
),
"c"
(
sem
)
:
"ax"
,
"dx"
,
"memory"
);
...
...
kernel/ksyms.c
View file @
5fec1cd9
...
...
@@ -333,6 +333,7 @@ struct symbol_table symbol_table = {
X
(
insert_inode_hash
),
X
(
event
),
X
(
__down
),
X
(
__up
),
X
(
securelevel
),
/* all busmice */
X
(
add_mouse_randomness
),
...
...
kernel/sched.c
View file @
5fec1cd9
...
...
@@ -43,7 +43,7 @@
int
securelevel
=
0
;
/* system security level */
long
tick
=
1000000
/
HZ
;
/* timer interrupt period */
long
tick
=
(
1000000
+
HZ
/
2
)
/
HZ
;
/* timer interrupt period */
volatile
struct
timeval
xtime
;
/* The current time */
int
tickadj
=
500
/
HZ
;
/* microsecs */
...
...
@@ -64,7 +64,7 @@ long time_precision = 1; /* clock precision (us) */
long
time_maxerror
=
MAXPHASE
;
/* maximum error (us) */
long
time_esterror
=
MAXPHASE
;
/* estimated error (us) */
long
time_phase
=
0
;
/* phase offset (scaled us) */
long
time_freq
=
0
;
/* frequency offset (scaled ppm) */
long
time_freq
=
((
1000000
+
HZ
/
2
)
%
HZ
-
HZ
/
2
)
<<
SHIFT_USEC
;
/* frequency offset (scaled ppm) */
long
time_adj
=
0
;
/* tick adjust (scaled 1 / HZ) */
long
time_reftime
=
0
;
/* time at last adjustment (s) */
...
...
@@ -515,7 +515,7 @@ static inline void normalize_semaphore(struct semaphore *sem)
* critical part is the inline stuff in <asm/semaphore.h>
* where we want to avoid any extra jumps and calls.
*/
inline
void
__up
(
struct
semaphore
*
sem
)
void
__up
(
struct
semaphore
*
sem
)
{
normalize_semaphore
(
sem
);
wake_up
(
&
sem
->
wait
);
...
...
mm/vmscan.c
View file @
5fec1cd9
...
...
@@ -108,8 +108,13 @@ static inline int try_to_swap_out(struct task_struct * tsk, struct vm_area_struc
}
else
{
if
(
page_map
->
count
!=
1
)
return
0
;
if
(
!
(
entry
=
get_swap_page
()))
return
0
;
/* Aieee!!! Out of swap space! */
if
(
!
(
entry
=
get_swap_page
()))
{
/* Aieee!!! Out of swap space! */
int
retval
=
-
1
;
if
(
nr_swapfiles
==
0
)
retval
=
0
;
return
retval
;
}
vma
->
vm_mm
->
rss
--
;
flush_cache_page
(
vma
,
address
);
set_pte
(
page_table
,
__pte
(
entry
));
...
...
@@ -312,6 +317,9 @@ static int swap_out(unsigned int priority, int dma, int wait)
if
(
!--
p
->
swap_cnt
)
swap_task
++
;
switch
(
swap_out_process
(
p
,
dma
,
wait
))
{
/* out of swap space? */
case
-
1
:
return
0
;
case
0
:
if
(
p
->
swap_cnt
)
swap_task
++
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment