On Sun, 4 Jun 2006, Tejun Heo wrote:
> Christoph Hellwig wrote:
> > On Sun, Jun 04, 2006 at 12:41:20PM +0900, Tejun Heo wrote:
> > > local_irq_save(flags);
> > > buf = kmap_atomic(sg->page, KM_IRQ0) + sg->offset;
> > > memcpy(buf, tw_dev->generic_buffer_virt[request_id],
> > > sg->length);
> > > + flush_kernel_dcache_page(kmap_atomic_to_page(buf -
> > > sg->offset));
> > > kunmap_atomic(buf - sg->offset, KM_IRQ0);
> > > local_irq_restore(flags);
> >
> > all these should switch to scsi_kmap_atomic_sg which should do the
> > flush_kernel_dcache_page call for you.
> >
>
> This is not specific to scsi or block. This is a common problem for all kmap
> users. As I wrote in the other mail, I think this should be mandated at the
> kmap/kunmap() interface.
Right. As I wrote scsi_k(un)map_atomic_sg I did mention that they,
probably, should go to a higher layer as they were not scsi-specific, but
as I didn't have a good idea of where exactly to put them, I called them
scsi_* and put in scsi_lib.c. Suggestions for a better place and namespace
for them very welcome. Or just feel free to move / rename them as you see
appropriate. See, e.g.,
http://marc.theaimsgroup.com/?l=linux-scsi&m=112345886816099&w=2 and the
related thread from August last year for possible other potential users of
this API.
Thanks
Guennadi
---
Guennadi Liakhovetski
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]