Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 73573
b: refs/heads/master
c: 64c911a
h: refs/heads/master
i:
  73571: b2170ed
v: v3
  • Loading branch information
Paul Mackerras committed Nov 13, 2007
1 parent bd547ce commit 059a86f
Show file tree
Hide file tree
Showing 514 changed files with 4,646 additions and 5,697 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 725fb29fd4bcda958b32f4479ad9934117c22019
refs/heads/master: 64c911a3f7c9864a4bbddbb77b722d5553ddcd32
23 changes: 23 additions & 0 deletions trunk/Documentation/local_ops.txt
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,29 @@ long fails. The definition looks like :
typedef struct { atomic_long_t a; } local_t;


* Rules to follow when using local atomic operations

- Variables touched by local ops must be per cpu variables.
- _Only_ the CPU owner of these variables must write to them.
- This CPU can use local ops from any context (process, irq, softirq, nmi, ...)
to update its local_t variables.
- Preemption (or interrupts) must be disabled when using local ops in
process context to make sure the process won't be migrated to a
different CPU between getting the per-cpu variable and doing the
actual local op.
- When using local ops in interrupt context, no special care must be
taken on a mainline kernel, since they will run on the local CPU with
preemption already disabled. I suggest, however, to explicitly
disable preemption anyway to make sure it will still work correctly on
-rt kernels.
- Reading the local cpu variable will provide the current copy of the
variable.
- Reads of these variables can be done from any CPU, because updates to
"long", aligned, variables are always atomic. Since no memory
synchronization is done by the writer CPU, an outdated copy of the
variable can be read when reading some _other_ cpu's variables.


* Rules to follow when using local atomic operations

- Variables touched by local ops must be per cpu variables.
Expand Down
10 changes: 0 additions & 10 deletions trunk/Documentation/networking/00-INDEX
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,6 @@
- information on the 3Com EtherLink Plus (3c505) driver.
6pack.txt
- info on the 6pack protocol, an alternative to KISS for AX.25
Configurable
- info on some of the configurable network parameters
DLINK.txt
- info on the D-Link DE-600/DE-620 parallel port pocket adapters
PLIP.txt
Expand All @@ -26,8 +24,6 @@ baycom.txt
- info on the driver for Baycom style amateur radio modems
bridge.txt
- where to get user space programs for ethernet bridging with Linux.
comx.txt
- info on drivers for COMX line of synchronous serial adapters.
cops.txt
- info on the COPS LocalTalk Linux driver
cs89x0.txt
Expand Down Expand Up @@ -78,20 +74,14 @@ ltpc.txt
- the Apple or Farallon LocalTalk PC card driver
multicast.txt
- Behaviour of cards under Multicast
ncsa-telnet
- notes on how NCSA telnet (DOS) breaks with MTU discovery enabled.
netdevices.txt
- info on network device driver functions exported to the kernel.
olympic.txt
- IBM PCI Pit/Pit-Phy/Olympic Token Ring driver info.
policy-routing.txt
- IP policy-based routing
pt.txt
- the Gracilis Packetwin AX.25 device driver
ray_cs.txt
- Raylink Wireless LAN card driver info.
routing.txt
- the new routing mechanism
shaper.txt
- info on the module that can shape/limit transmitted traffic.
sk98lin.txt
Expand Down
34 changes: 0 additions & 34 deletions trunk/Documentation/networking/Configurable

This file was deleted.

248 changes: 0 additions & 248 deletions trunk/Documentation/networking/comx.txt

This file was deleted.

16 changes: 0 additions & 16 deletions trunk/Documentation/networking/ncsa-telnet

This file was deleted.

Loading

0 comments on commit 059a86f

Please sign in to comment.