I have added the 2.6.29 support and it appears to do what is required.
Feedback appreciated.
The use of grab_cache_page_write_begin has been backported to 2.6.28 so for
more recent subreleases of 2.6.28. There are no useful kernel version
identifiers for the releases between 2.6.28 and 2.6.29 so you will need to
hack the appropriate lines manually.
-- Charles