- 18 Oct, 2002 40 commits
-
-
Linus Torvalds authored
-
Dipankar Sarma authored
This adds a set of list macros that make handling of list protected by RCU simpler. The interfaces added are - list_add_rcu list_add_tail_rcu - Adds an element by taking care of memory barrier (wmb()). list_del_rcu - Deletes an element but doesn't re-initialize the pointers in the element for supporting RCU based traversal. list_for_each_rcu __list_for_each_rcu - Traversal of RCU protected list - takes care of memory barriers transparently.
-
Dipankar Sarma authored
This first RCU helper patch adds a read_barrier_depends() primitive to all archs which is NOP for archs that doesn't require an rmb() for data dependent reads when writes are ordered using a wmb(). In reality, only alpha requires an rmb(), the rest are NOPs. It is likely to be necessary in most situations that would use RCU. Please apply. Description : Sometime ago, during a discussion on lock-free lookups, it was agreed that an additional memory barrier interface, read_barrier_depends() that is lighter than an rmb(), is necessary to make sure that data-dependent reads are not re-ordered over this barrier. For many processors, data-dependency enforces order, so this interface is a NOP, but for those that don't (like alpha), it can be a rmb(). For example, the following code would force ordering (the initial value of "a" is zero, "b" is one, and "p" is "&a"): CPU 0 CPU 1 b = 2; memory_barrier(); p = &b; q = p; read_barrier_depends(); d = *q; because the read of "*q" depends on the read of "p" and these two reads should be separated by a read_barrier_depends(). However, the following code, with the same initial values for "a" and "b": CPU 0 CPU 1 a = 2; memory_barrier(); b = 3; y = b; read_barrier_depends(); x = a; does not enforce ordering, since there is no data dependency between the read of "a" and the read of "b". Therefore, on some CPUs, such as Alpha, "y" could be set to 3 and "x" to 0. rmb() needs to be used here, not read_barrier_depends(). The original discussion can be found at - http://marc.theaimsgroup.com/?t=100259422200002&r=1&w=2 Explanation of the need for read_barrier_depends() can be found at http://lse.sf.net/locking/wmbdd.html
-
Frank Davis authored
This fixes a 'used but not declared' compile error
-
David S. Miller authored
It ends up trying to list_del() from an uninitialized list_head.
-
Randy Dunlap authored
-
Linus Torvalds authored
kill the machine. Damn I hate people who kill the machine for no good reason.
-
http://mdomsch.bkbits.net/linux-2.5-edd-tolinusLinus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
Matt Domsch authored
into dell.com:/home/mdomsch/bk/linux-2.5-edd-tolinus
-
http://gkernel.bkbits.net/net-drivers-2.5Linus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
Jeb J. Cramer authored
* Documentation/networking/e1000.txt updates
-
Jeb J. Cramer authored
* Added bullets to changelog * Whitespace cleanup
-
Jeb J. Cramer authored
* Forcing 1000/fd is easier to undo with ethtool * Adapters supporting WoL capabilities are now an inclusive versus exclusive list
-
Jeb J. Cramer authored
* Added software interrupt to ensure rx ring is cleaned in case of previous allocation failures * Filled netdev->mem_end member
-
Jeb J. Cramer authored
* Adding notifier to track ifname change for /proc info
-
Jeb J. Cramer authored
* 2/3 wire downshift phy bits changed in newer phy revs
-
Jeb J. Cramer authored
* Newer controllers required manual phy PM enable for WoL to work
-
Jeb J. Cramer authored
* Set interrupt delay timer defaults to 0 across all adapters
-
Jeb J. Cramer authored
* Changed flow control defaults to minimize packet drops
-
Jeb J. Cramer authored
* add new pci ids
-
Scott Feldman authored
* updates to Documentation/networking/e100.txt
-
Scott Feldman authored
* Updated change log * Adding notifier to track ifname change for /proc info
-
Scott Feldman authored
* Added meaningful message for self-test failures * Removed confusing messages from probe when link isn't detected
-
Scott Feldman authored
* Remove broken home-grown Rx polling mode (make way for NAPI)
-
http://suncobalt.bkbits.net/net-drivers-2.5Jeff Garzik authored
into redhat.com:/home/jgarzik/repo/net-drivers-2.5
-
Jeff Garzik authored
into redhat.com:/home/jgarzik/repo/net-drivers-2.5
-
Angus Sawyer authored
A cloned bio still needs destructor set (and should clear bi_io_vec as well), this was broken when Jens rewrote bio_alloc() recently. This should now be OK with the mempool_alloc failing, and initialises bi_io_vec = NULL for nr_iovecs = 0.
-
-
http://linux-isdn.bkbits.net/linux-2.5.makeLinus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
Kai Germaschewski authored
into tp1.ruhr-uni-bochum.de:/home/kai/src/kernel/v2.5/linux-2.5.make
-
bk://linuxusb.bkbits.net/linus-2.5Linus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
Linus Torvalds authored
locked "xchg". It only needs a compiler barrier on UP.
-
Russell King authored
This fixes the UP set_task_state and set_current_state in 2.5.43 to ensure that we don't re-order loads around the store for setting task->state. This patch is from Nicolas Pitre, nico@cam.org (As a side note - 2.4.10 also contains the same problem, but 2.2 contain the memory barrier.)
-
bk://linux-bt.bkbits.net/bt-2.5Linus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
Greg Kroah-Hartman authored
into kroah.com:/home/greg/linux/BK/gregkh-2.5
-
Romain Liévin authored
you will find a patch for the tipar char driver. This patch fixes some typos and add a documentation entry.
-
Randy Dunlap authored
-
Adam Kropelin authored
-
bk://ldm.bkbits.net/linux-2.5-coreLinus Torvalds authored
into home.transmeta.com:/home/torvalds/v2.5/linux
-
Patrick Mochel authored
If a device didn't match a driver, bus_match() returned 0, and device_attach() would break out of the loop. So, the first driver was the only one being checked every time.
-