Messages in this thread | | | Date | Fri, 8 Mar 2002 10:07:51 -0800 (PST) | From | Linus Torvalds <> | Subject | Re: [PATCH] Futexes IV (Fast Lightweight Userspace Semaphores) |
| |
On Tue, 5 Mar 2002, Rusty Russell wrote: > > 1) FUTEX_UP and FUTEX_DOWN defines. (Robert Love) > 2) Fix for the "decrement wraparound" problem (Paul Mackerras) > 3) x86 fixes: tested on dual x86 box.
This doesn't work on highmem machines - doing the conversion from "<struct page, offset>" to "page_address(page)+offset" is simply not legal (not even for pure hashing purposes - page_address() changes as you kmap it).
You need to keep the <struct page,offset> tuple in that format, and no other. And when you actually touch the page, you need to do the kmap()/kunmap() (and you must not keep it mapped while you sleep, because that might trivially make the kernel run out of virtual mappings).
Linus
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |