|
| |
| | futex |
 | | Futexes are typically used to implement the contended case of a lock in shared memory, as described in futex(4). |  | | Futexes were designed and worked on by Hubertus Franke (IBM Thomas J. Watson Research Center), Matthew Kirkwood, Ingo Molnar (Red Hat) and Rusty Russell (IBM Linux Technology Center). |  | | Implementors are expected to be assembly literate and to have read the sources of the futex userspace library referenced below. |
|
http://ds9a.nl/futex-manpages/futex2.html
(737 words)
|
|
| |
| | Futex - Wikipedia, the free encyclopedia |
 | | A futex consists of a piece of memory (an aligned integer) that can be shared between processes; it can be incremented and decremented by atomic assembler instructions, and processes can wait for the value to become positive. |  | | Futexes were created by Hubertus Franke (IBM Thomas J. Watson Research Center), Matthew Kirkwood, Ingo Molnar (Red Hat) and Rusty Russell (IBM Linux Technology Center). |  | | Hubertus Franke, Rusty Russell, Matthew Kirkwood, fuss, futexes and furwocks: Fast Userlevel Locking in Linux, Ottawa Linux Symposium 2002, online |
|
http://en.wikipedia.org/wiki/Futex
(246 words)
|
|
| |
| | Gmane -- Mail To News And Back Again |
 | | To solve this problem, 'Robust Futex' patches were created and presented on lkml: the one written by Todd Kneisel and David Singleton is the most advanced at the moment. |  | | To answer that, we first need to understand what futexes are: normal futexes are special types of locks that in the noncontended case can be acquired/released from userspace without having to enter the kernel. |  | | New approach to robust futexes ------------------------------ At the heart of this new approach there is a per-thread private list of robust locks that userspace is holding (maintained by glibc) - which userspace list is registered with the kernel via a new syscall [this registration happens at most once per thread lifetime]. |
|
http://article.gmane.org/gmane.linux.kernel/379641
(1506 words)
|
|
| |
| | lowlevellock.h - IA64wiki |
 | | In this context, futex represents 1 - untaken 0 - taken by one user <0 - taken by more users ------------------------------------------- lll_trylock (int *futex) ------------------------------------------- if (*futex == 1) atomic_decrement(futex); return false else return true as above, use a compare and swap for the if/dec operation. |  | | With only two users, one holding the lock and one waiting for it, the second user will do an unnecessary futex call after it got the lock and releases it again. |  | | ------------------------------------------- lll_mutex_lock (int *futex) ------------------------------------------- increment the lock. |
|
http://www.gelato.unsw.edu.au/IA64wiki/lowlevellock.h
(554 words)
|
|
| |
| | Conference Call 4/6/2005 Minutes |
 | | This multiplexed interface to Fusyn is built on top of the Futex Interface, and was implemented to demonstrate performance differences between the Futex interface and the Fusyn interface. |  | | Joe Korty noted that the Futex-based abstraction, originally used for measurement, cannot emulate Futexes perfectly, and that finding the minor discrepancies between the two implementations is time consuming, especially since Futex is a moving target at this time. |  | | Ordered wait queues, however, are supported when using Futex interface. |
|
http://lists.osdl.org/pipermail/robustmutexes/2005-April/000532.html
(1011 words)
|
|
| |
| | LWN: Patch: futex-2.5.40-B5 |
 | | It used to do an unconditional get_user_pages() call, which did a vma lookup and other heavy-handed tactics - while the common case is that the page is mapped and available. |  | | The bugfixes are: - fix locking bug noticed by Martin Wirth: the ordering of page_table_lock, vcache_lock and futex_lock was inconsistent and created the possibility of an SMP deadlock. |  | | the attached patch (against BK-curr) adds a number of futex bugfixes, performance improvements and cleanups. |
|
http://lwn.net/Articles/11483
(594 words)
|
|
| |
| | [SunRay-Users] sunray debian audio |
 | | futex resumed>) = 0 [pid 13138] poll( [pid 13141] futex(0x8064008, FUTEX_WAKE, 1) = 0 [pid 13141] futex(0x8094ef0, FUTEX_WAIT, 0, NULL [pid 13138] <... |
|
http://www.filibeto.org/pipermail/sunray-users/2005-April/000691.html
(184 words)
|
|
| |
| | Linux: A virtual-to-physical page mapping cache |
 | | Ingo Molnar's vcache code, part of his ongoing futex work, has been merged into the 2.5.39 development kernel. |  | | It implements "a 'mapping change' notification for virtual lookup caches, and makes the futex code use that to keep the futex page pinning consistent across copy-on-write events in the VM space. |  | | it will then be serialized by the futex lock in the callback function. |
|
http://kerneltrap.org/node/434
(2239 words)
|
|
| |
| | LKML: david singleton: robust futex patch for 2.6.14-rc3-rt13 |
 | | There is also one fix to futex.c where the first waiter on a futex waits instead of returning -EAGAIN. |  | | Ingo, here's a patch for the robust futex changes that match the glibc/nptl changes for robust futexes. |  | | */ @@ -1179,16 +1174,6 @@ goto out_release_sem; } - /* - * user mode called us because futex had owner and waitflag was - * set. |
|
http://lkml.org/lkml/2005/10/8/75
(301 words)
|
|
| |
| | [PATCH] Add FUTEX_CMP_REQUEUE futex op Linux Kernel |
 | | The base futex concept and interface is simple (although the |  | | (you have a special wrapper around futex anyway, so why not to handle |  | | > (you have a special wrapper around futex anyway, so why not to handle |
|
http://www.gossamer-threads.com/lists/linux/kernel/442342?do=post_view_flat
(4581 words)
|
|
| |
| | Linux-Kernel Archive: [PATCH] Futex Asynchronous Interface |
 | | a futex to a file descriptor, for use with poll/select or SIGIO |  | | Maybe reply: Martin Wirth: "Re: [PATCH] Futex Asynchronous Interface" |  | | */ head = hash_futex(page, pos_in_page); switch (op) { case FUTEX_WAIT: @@ -236,7 +240,8 @@ default: ret = -EINVAL; } - unpin_page(page); + if (ret < 0) + unpin_page(page); return ret; } Name: Asynchronous interface for futexes Author: Rusty Russell Status: Tested on 2.5.20 Depends: Futex/comment-fix.patch.gz Futex/copy-from-user.patch.gz Depends: Futex/no-write-needed.patch.gz Futex/unpin-page-fix.patch.gz Depends: Futex/waitq.patch.gz Futex/waker-unpin-page.patch.gz |
|
http://www.uwsg.indiana.edu/hypermail/linux/kernel/0206.0/1200.html
(581 words)
|
|
| |
| | gmane.comp.lib.phil |
 | | __wakeup_seq)); -#elif BYTE_ORDER == BIG_ENDIAN - int *futex = ((int *) (andcond->__data. |
|
http://blog.gmane.org/gmane.comp.lib.phil
(4054 words)
|
|
| |
| | Kernel Traffic #172 For 23 Jun 2002 |
 | | Rusty felt that for network programming at least, the socket API was not the best model to copy (close by, Alan Cox said much the same thing); and Peter Wæchtler suggested /proc/futex instead, which he said would involve "Less adminstrative work, clean interface (also for shell scripts like Alan suggested). |  | | And as a result, there has _never_ been any sysadmin problems with either. |  | | They're NOT SysV semaphores, and they are done 99% in user space. |
|
http://www.kerneltraffic.org/kernel-traffic/kt20020624_172_print.html
(3133 words)
|
|
| |
| | [No title] |
 | | On GNU/Linux the Linux kernel version > 2.6.x is required in addition to a having NPTL enabled glibc to make PThreads inter-process read/write locks, mutexes, and conditionals usable by SmTk. |  | | ------------ Dependences ------------ Platform: GNU/Linux: * Linux kernel version > 2.6.x with futex enabled http://en.wikipedia.org/wiki/Futex * glibc with NPTL enabled http://en.wikipedia.org/wiki/NPTL * GTK+ (GIMP Toolkit) - widget library GTK+ depends on many other packages (not all listed here). |  | | We think that IRIX has a PThreads inter-process read/write locks, mutexes, and conditionals without a system call when there is no contended case. |
|
http://smtk.sourceforge.net/README
(1075 words)
|
|
| |
| | [No title] |
 | | Name: Futex Update Author: Rusty Russell Status: Beta D: This changes futex semantics to a simple "sleep if this address D: equals this value" interface, which is more convenient for building D: other primitives. |  | | This does not include the async interface (FUTEX_AWAIT) which we still don't agree on, but that's orthogonal. |
|
http://codemonkey.org.uk/projects/patches/merged/2.5.12/dj1/futex-update.diff
(518 words)
|
|
| |
| | Native POSIX Thread Library - Wikipedia, the free encyclopedia |
 | | NPTL is a so-called 1×1 threads library, in that threads created by the user (via the pthread_create() library function) are in 1-1 correspondence with schedulable entities in the kernel (processes, in the Linux case). |  | | However, NPTL requires specialized kernel support to implement (for example) the contended case of synchronisation primitives which might require threads to sleep and be re-awoken. |  | | The primitive used for this is known as a futex. |
|
http://en.wikipedia.org/wiki/Native_POSIX_Thread_Library
(579 words)
|
|
| |
| | About |
 | | FuTex Complete Accounting Software has been available for windowed environments since 1993. |  | | This has helped to increase usability of the system. |  | | We continually upgrade and change our applications to meet the needs of our clients. |
|
http://www.futex.com/Index_files/page0001.htm
(83 words)
|
|
| |
| | SecuritySpace - CAN-2005-0937 |
 | | Some futex functions in futex.c for Linux kernel 2.6.x perform get_user calls while holding the mmap_sem semaphore, which could allow local users to cause a deadlock condition in do_page_fault by triggering get_user faults while another thread is executing mmap or other functions. |  | | Please email me a vulnerability test announcement whenever a new test is added. |  | | Please email me your monthly newsletters, informing the latest services, improvements & surveys. |
|
http://www.securityspace.com/smysecure/catid.html?ctype=cve&id=CAN-2005-0937
(68 words)
|
|
| |
| | Futex - Stock Market Trading Outside of London |
 | | In depth analyst support keeping you up to date with break ing news |  | | At Futex we are committed to providing the best fully integrated Training Program for our new Graduates. |  | | At Futex we are dedicated to delivering this opportunity to traders who would prefer to do their business outside of London. |
|
http://www.futex.co.uk
(236 words)
|
|
| |
| | Bug 47 - The PTS 2-1.c in directory sem_timedwait can not work |
 | | In order to make the rtnptl with no rubust mutex runnable, we should also modify the lll_wq_timedwait macro. |  | | So when robust mutex is disabled,the timeout can be changed to the relative timeout for futex implementation. |  | | */ int oldtype = __pthread_enable_asynccancel (); - err = lll_wq_timedwait (futex, 0, abstime); + err = lll_wq_timedwait (futex, 0, andrt); /* Disable asynchronous cancellation. |
|
http://www.osdl.org/developer_bugzilla/show_bug.cgi?id=47
(695 words)
|
|
| |
| | Index |
 | | FuTex Complete Accounting System is fully compatible with the Windows |  | | System is a fully integrated Accounting System designed to meet all the rigorous Accounting Standards as set forth by the General Accounting Standards Board for Non-Profit Organizations. |  | | FuTex continues to support operations on main frame platforms. |
|
http://www.futex.com
(76 words)
|
|
| |
| | Futex - Traders |
 | | Futex will assess your market knowledge and experience. |  | | Training may be available at these sites or may have to take place at the main office. |  | | Should space not be available at our main office or you live near a regional office and would prefer to trade from one, then Futex may offer you alternative space at one of these sites. |
|
http://www.futex.co.uk/account_exp_traders.htm
(203 words)
|
|
| |
| | Linux-Kernel Archive: [patch] futex requeueing feature, futex-r |
 | | glibc's use of futexes, and the imperfect coupling of the two locks. |  | | (the patch adds a new futex syscall parameter (uaddr2), which is a |  | | Reply: Rusty Russell: "Re: [patch] futex requeueing feature, futex-requeue-2.5.69-D3" |
|
http://www.uwsg.indiana.edu/hypermail/linux/kernel/0305.2/0475.html
(1052 words)
|
|
| |
| | NeoStats Software :: View topic - RedHat 9 and NeoStats |
 | | There are a ton of bugs in redhats database about futex problems, but it doesn't seem like anyone is looking at them. |  | | Emails etc to the futex authors and ntpl authors go unanswered. |
|
http://www.neostats.net/boards/viewtopic.php?t=391
(604 words)
|
|
| |
| | nntp.perl.org - perl.ithreads (920) |
 | | Each maintains an open socket with a client, a database connection, etc. I also use a very large amount of shared memory, to the point that most of the data structures used by the app are shared. |  | | There will be better navigation features and such soon; be patient. |  | | Newsgroups: perl.ithreads To: Subject: spinning on futexes Date: Wed, 18 May 2005 18:04:38 -0400 Message-ID: From: perl-ithreads[at]bluewallpaper.com ("Jack Steadman") I have a large threaded mailing application running about 30 very active threads. |
|
http://www.nntp.perl.org/group/perl.ithreads/920
(224 words)
|
|
| |
| | [PATCH] Futex Generalization Patch |
 | | On top of this, I have made pthreads locking primitives and futexes (marginally slower than the completely-in-kernel version, but not much). |  | | From: Rusty Russell To: linux-kernel@vger.kernel.org Subject: [PATCH] Futex Generalization Patch Date: Thu, 04 Apr 2002 17:52:32 +1000 Cc: frankeh@watson.ibm.com, Peter =?iso-8859-1?q?W=E4chtler?= , Martin Wirth , drepper@redhat.com, matthew@hairy.beasts.org "This time for sure" I have a new primitive (thanks Paul Mackerras): sleep if the word at this address is equal to this value. |
|
http://lwn.net/2002/0411/a/futex.php3
(372 words)
|
|
| |
| | [No title] |
 | | }; // auto "context" object inside wait() or extra pthread_t's fields struct cond_wait_context_t { pthread_cond_t* cv; pthread_mutex_t* mutex; int futex; }; cond_wait_cleanup_handler(cond_wait_context_t* ctx) { cond_wait_cleanup (ctx->cv, ctx->mutex, ctx->futex); } cond_wait_cleanup_handler2(cond_wait_context_t* ctx) { // cond_signal (ctx->cv); |
|
http://terekhov.de/DESIGN-futex-CV-with-async.cancelable-wait.txt
(94 words)
|
|
| |
| | FrSIRT Advisories - Linux Kernel Futex Functions Local Denial Of Service Vulnerability / Exploit |
 | | A vulnerability has been identified in Microsoft Internet Explorer, which could be exploited by remote attackers to take complete control of an affected system. |  | | The problem resides in the futex functions (kernel/futex.c) that invoke "get_user()" calls and hold mmap_sem for reading at the same time, which may cause a denial of service. |  | | A new vulnerability was identified in Linux Kernel, which may be exploited by local users to conduct denial of dervice attacks. |
|
http://www.frsirt.com/english/advisories/2005/0304
(266 words)
|
|
| |
| | [kaffe] SMP and pthreads |
 | | Hi, I have checked how the linux kernel handles futex and I see a potential problem. |  | | The first thread has been interrupted during the syscall by the GC when the world has been suspended. |  | | When kaffe deadlocks with GCTest it is always hang with one thread in a pthread_mutex_unlock calling the futex syscall and the GC thread in pthread_mutex_lock calling the futex syscall. |
|
http://www.kaffe.org/pipermail/kaffe/2005-January/100995.html
(220 words)
|
|
| |
| | [No title] |
 | | * there is no thread in waitqueue on the futex. |  | | ----- The bug will appear if 2 pair of wait & wake called at (nearly)once: * Assume 4 threads, wait_A, wait_B, wake_X, and wake_Y * counters start from [total/wake/woken]=[0/0/0] * the val of futex starts from (0), update means inclement of the val. |  | | Therefore, as the result, it seems that the WAKE wakes the WAIT. |
|
http://www.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.10-rc1/2.6.10-rc1-mm5/broken-out/futex_wait-fix.patch
(382 words)
|
|
| |
| | Forums - Futex - Legit ? |
 | | Though I should think it would cost less than a Central London office as Weybridge is residential. |  | | It isnt so much the lack of being paid as it is assessing the upside vs the downside. |  | | Trading outside of London is a good idea as it saves on cost, but why Weybridge? |
|
http://www.elitetrader.com/vb/printthread.php?threadid=44538
(1779 words)
|
|
| |
| | The Walrus, the Carpenter and Tu Wong Futex |
 | | 1998 was also a busy year for the Oracle who at that time went by the name of "The Carpenter, The Walrus and Tu Wong Futex". |  | | Jesus may just have been a Carpenter, but Pontius was a Pilot AND a Taxman...a true visionary and Renaissance man. |  | | The story of how we came by the following message is strange. |
|
http://www.mancuniancandidate.com/tuwongfutex.html
(1989 words)
|
|
|