On 06/10/2009 11:29 AM, FUJITA Tomonori wrote: > On Wed, 10 Jun 2009 11:15:10 +0300 > Boaz Harrosh <bharrosh@xxxxxxxxxxx> wrote: >> That is a violation of block API. All block drivers must call >> blk_end_request(). > > Where can I find a documentation about it? > No documentation > If not, can you stop claiming a new rule? > The fact that ALL block drivers call it for proper service of ALL ULDS, does it not make it a rule? > If you want to propose a new rule, you need to fix the existing users > first. > Sorry I missed them. I couldn't even imagine that there will be any. Will send patches, sorry. > >> If they do not, then they can not for example be >> called from inside Kernel. They relay on special bsg behavior >> that always uses map_user. > > Of course, we send SMP requests only via BSG. SMP is the first reason > why we invented BSG. > Of course what? Show me the big fat comment that says: only use from BSG!!! other wise broken block driver. > <snip> > > You don't need SAS hardware to play with blk_rq_map_user() and > blk_rq_unmap_user(). All you need to do is writing a module that play > with these functions. > > >> I do believe you that there is no leak, I just want to understand why? >> And any way, all "BSG SMP" drivers must be fixed to call blk_end_request(). >> They can not be dependent on the specific ULD that calls them. Boaz -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html