public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Whats the rvmalloc() story?
@ 2001-02-11  4:08 Rick Richardson
  2001-02-17  7:46 ` Anton Blanchard
  0 siblings, 1 reply; 4+ messages in thread
From: Rick Richardson @ 2001-02-11  4:08 UTC (permalink / raw)
  To: linux-kernel


I note that at least 5 device drivers have similar implementations
of rvmalloc()/rvfree() et al:

	ieee1394/video1394.c
	usb/ibmcam.c
	usb/ov511.c
	media/video/bttv-driver.c
	media/video/cpia.c

rvmalloc()/rvfree() are functions that are used to allocate large
amounts of physically non-contiguous kernel virtual memory that will
then be mmap()'ed into a user process.

I just got done writing a driver that needed rvmalloc() in order to do
chip level simulation.  Yank and put to the rescue.

Whats the story behind rvmalloc() et al?  From what I could tell,
about a year ago there were some patches to move rvmalloc() into
vmalloc() as a blessed feature of the kernel.  But it looks to
me like these patches didn't "take".

Is there some other way of doing this now?  If so, does somebody
need to go into these drivers and patch them for the blessed way?
If not, is there some plan in place to bless these functions and
remvoe the code duplication?

-Rick

-- 
Rick Richardson  rickr@mn.rr.com      http://home.mn.rr.com/richardsons/
Twins Cities traffic animations are at http://members.nbci.com/tctraffic/#1
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Whats the rvmalloc() story?
  2001-02-11  4:08 Whats the rvmalloc() story? Rick Richardson
@ 2001-02-17  7:46 ` Anton Blanchard
  2001-02-17  8:49   ` Rick Richardson
  0 siblings, 1 reply; 4+ messages in thread
From: Anton Blanchard @ 2001-02-17  7:46 UTC (permalink / raw)
  To: Rick Richardson; +Cc: linux-kernel

 
> I note that at least 5 device drivers have similar implementations
> of rvmalloc()/rvfree() et al:
> 
> 	ieee1394/video1394.c
> 	usb/ibmcam.c
> 	usb/ov511.c
> 	media/video/bttv-driver.c
> 	media/video/cpia.c
> 
> rvmalloc()/rvfree() are functions that are used to allocate large
> amounts of physically non-contiguous kernel virtual memory that will
> then be mmap()'ed into a user process.

I had to rewrite rvmalloc and friends in the bttv driver to support the
new pci dynamic mapping interface. This sounds like a good time to clean
up all these multiple definitions.

Anton

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Whats the rvmalloc() story?
  2001-02-17  7:46 ` Anton Blanchard
@ 2001-02-17  8:49   ` Rick Richardson
  2001-02-17  9:01     ` Anton Blanchard
  0 siblings, 1 reply; 4+ messages in thread
From: Rick Richardson @ 2001-02-17  8:49 UTC (permalink / raw)
  To: Anton Blanchard; +Cc: linux-kernel

On Sat, Feb 17, 2001 at 06:46:34PM +1100, Anton Blanchard wrote:
>  
> > I note that at least 5 device drivers have similar implementations
> > of rvmalloc()/rvfree() et al:
> > 
> > 	ieee1394/video1394.c
> > 	usb/ibmcam.c
> > 	usb/ov511.c
> > 	media/video/bttv-driver.c
> > 	media/video/cpia.c
> > 
> > rvmalloc()/rvfree() are functions that are used to allocate large
> > amounts of physically non-contiguous kernel virtual memory that will
> > then be mmap()'ed into a user process.
> 
> I had to rewrite rvmalloc and friends in the bttv driver to support the
> new pci dynamic mapping interface. This sounds like a good time to clean
> up all these multiple definitions.
> 
> Anton

If you are offering to do this work now, here is a thread worth
reading which includes a patch to start from...

	http://www.uwsg.iu.edu/hypermail/linux/kernel/0002.1/0586.html

BTW, Alan Cox sent me the following additional information in a
private email.  Might as well get this in the mailing list archives
for posterity so that the terms "rvmalloc" and "kiovecs" actually
appear in the same post.  This way, at least, we all know what the
plan for 2.6 should be.

On Tue, Feb 13 2001 at 14:21:50 -0500 (EST), Alan Cox wrote:
> > Whats the story behind rvmalloc() et al? From what I could tell,
> > about a year ago there were some patches to move rvmalloc() into
> > vmalloc() as a blessed feature of the kernel. But it looks to
> > me like these patches didn't "take".
>  
> The plan was to move to kiovecs for this but that didnt make 2.4.
>  
> > Is there some other way of doing this now? If so, does somebody
> > need to go into these drivers and patch them for the blessed way?
> > If not, is there some plan in place to bless these functions and
> > remove the code duplication?
>  
> I have no problem with someone verifying they are duplicates and doing
> that work.

-Rick

-- 
Rick Richardson  rickr@mn.rr.com      http://home.mn.rr.com/richardsons/
Twins Cities traffic animations are at http://members.nbci.com/tctraffic/#1

High oil prices encourage drilling and alternative energy research.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: Whats the rvmalloc() story?
  2001-02-17  8:49   ` Rick Richardson
@ 2001-02-17  9:01     ` Anton Blanchard
  0 siblings, 0 replies; 4+ messages in thread
From: Anton Blanchard @ 2001-02-17  9:01 UTC (permalink / raw)
  To: Rick Richardson; +Cc: Anton Blanchard, linux-kernel

 
> If you are offering to do this work now, here is a thread worth
> reading which includes a patch to start from...
> 
> 	http://www.uwsg.iu.edu/hypermail/linux/kernel/0002.1/0586.html
> 
> BTW, Alan Cox sent me the following additional information in a
> private email.  Might as well get this in the mailing list archives
> for posterity so that the terms "rvmalloc" and "kiovecs" actually
> appear in the same post.  This way, at least, we all know what the
> plan for 2.6 should be.

Thanks for the info.

Since we arent going to put kiovecs in here for 2.4, I'll just add the 2.4
pci DMA fixes so my bttv card will work in my sparc and someone can look at
cleaning it up properly in 2.5.

Anton

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2001-02-17  9:03 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2001-02-11  4:08 Whats the rvmalloc() story? Rick Richardson
2001-02-17  7:46 ` Anton Blanchard
2001-02-17  8:49   ` Rick Richardson
2001-02-17  9:01     ` Anton Blanchard

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox