Messages in this thread | | | Date | Sat, 4 Jul 2009 09:59:41 -0700 | Subject | discard/UNMAP support: prepare_discard_fn does not pass enough info even in 2.6.31rc1 | From | Richard Sharpe <> |
| |
Hi,
I am trying to get BLKDICARD/unmap support working in SCST, and while I have some code that works if I directly submit requests to scst_local, things _seem_ broken above me.
There has been some support for BLKDISCARD requests for a number of kernel releases already (starting about 2.6.28), but for UNMAP, and probably any real support for DISCARD, we need to know the starting sector and the range of sectors being discarded. However, at the point at prepare_unmap_fn is called, that info has not been placed in the request. Probably the simplest change would be to pass the bio to prepare_discard_fn as well.
Matthew Wilcox published a patch that looks like it does close to the right things here: http://lkml.org/lkml/2008/11/23/81
This passes the bio to prepare_discard_fn and has implemented a discard function in sd.c so I do not have to do that work in my LLD, but it seems to target an earlier version of the spec. I am working with 08-149r9-3.pdf off of the T10 site.
Who should I contact about getting these changes merged or proposing a different set of changes?
-- Regards, Richard Sharpe
| |