Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 07 Mar 1997 12:39:41 -0800
From:      David Greenman <dg@root.com>
To:        Brian McGovern <bmcgover@cisco.com>
Cc:        hackers@freebsd.org
Subject:   Re: Memory/buffer questions... 
Message-ID:  <199703072039.MAA07138@root.com>
In-Reply-To: Your message of "Fri, 07 Mar 1997 09:44:22 EST." <199703071444.JAA01671@bmcgover-pc.cisco.com> 

next in thread | previous in thread | raw e-mail | index | archive | help
>What the board is capable of doing however, is to allocate memory in the
>kernel, and then doing DMA from the card right to the ram using bus
>mastering. What I'm thinking of doing is using a default 2-4Kb buffer,
>but put it in the host, and then allow kernel options to resize the buffers
>(so if someone is getting hosed performace, they could possibly kick it up
>to 8K, etc).
>
>With that in mind, I think my questions are:
>
>1.) Is this even possible (ie - is the passage I read defunct, or is there
>really a limit as to the amount of memory that can be dynamically allocated).
>
>2.) I would need to have this memory space accesable from devices on the PCI
>bus. Is there any special steps I'll need to take to map this memory to 
>someplace special? How about to make sure it stays locked in to physical memory
>so DMA can occur? Fortunately, since the processor on the board will do it
>once properly configured, I can safely say that I won't have to do much mucking
>with the Intel DMA chip, so long as the conditions are met so the card can see
>it.

   Yes, it's not a problem. The only problem is mallocing large memory chunks
(larger than a page) due to the potential for virtual memory fragmentation
causing the allocation to fail. Memory that is malloced will be and stay
resident, so no need to worry about that.
   Oh, if the card does bus master DMA, then what "Intel DMA chip" are you
talking about?

-DG

David Greenman
Core-team/Principal Architect, The FreeBSD Project



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199703072039.MAA07138>