I assumed it its safe, but I wanted to point out the performance loss:
+ without CONFIG_BIGMEM, the shared page will remain shared during
swapout and during the swapin.
[please correct me if I'm wrong]
+ with CONFIG_BIGMEM and a page in the bigmem area, the "shared-status"
is lost, and 2 independant pages are created.
If Stephen implements bounce buffers in ll_rw_page(), then the pages
could remain shared.
[but I still think bounce buffers in ll_rw_page() during swap-out could
cause OOM problems]
------------
Btw, is the big kernel lock required for calling lookup_swap_cache()?
The comment in mm/swap_state.c says[line 290]:
"[...] we rely on the kernel lock getting page table operations atomic
even if [...]"
but do_swap_page() [mm/memory.c, line 974] calls lookup_swap_cache()
without acquiring the big kernel lock.
-- Manfred
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/