Messages in this thread | | | Date | Tue, 15 Mar 2011 21:18:14 -0700 (PDT) | From | Alex Dubov <> | Subject | Re: [PATCH 1/4] scatterlist: new helper functions |
| |
> > I don't think so. > > Splitting (or merging) a request and playing with sg lists > inside a > driver is a bad idea. Such should be done in the block > layer. > > I still don't see why the block layer can't do that for the > driver. > > I believe that the helper functions for such should not be > added. >
In a particular case of flash-like devices, letting the block layer split requests into memory sequential blocks too often results in unnecessary fragmentation of writes/erases.
If only one sg entry is requested from the block layer, it will be (more often than not) only 1 or 2 pages in length, even if total size of prospective write request spans multiple erase blocks.
So there are really only two options for legacy memorystick driver: 1. Play with scatterlists explicitly. 2. Make it an MTD backend, rather then stand-alone block device.
The second option makes more sense, but it is not necessarily the optimal approach for implementation of this particular media format.
| |