[SCSI] sg and st unmap_user_pages allow PageReserved
authorHugh Dickins <hugh@veritas.com>
Fri, 2 Dec 2005 15:59:59 +0000 (15:59 +0000)
committerJames Bottomley <jejb@titanic.(none)>
Fri, 2 Dec 2005 16:24:14 +0000 (10:24 -0600)
commit032c09d76cdb448484859cc84dac4bba8f5f8f14
treed6dded3df8c7240a17554b25ece04c9c766e21af
parent6bc733e9f71c937f3c64159bf1e569321726a44c
[SCSI] sg and st unmap_user_pages allow PageReserved

2.6.15-rc1 made sg's st_unmap_user_pages and st's sgl_unmap_user_pages
BUG on a PageReserved page.  But that's wrong: they could be unmapping
the ZERO_PAGE, which is marked PG_reserved; and perhaps others (while
get_user_pages is still permitted on VM_PFNMAP areas - that may change).

More change is needed here: sg claims to dirty even pages written from,
and st claims not to dirty even pages read into; and SetPageDirty is not
adequate for this nowadays.  Fixes to those follow in a later patch: for
the moment just fix the 2.6.15 regression.

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Acked-by: Nick Piggin <npiggin@suse.de>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
drivers/scsi/sg.c
drivers/scsi/st.c