* Pavel Roskin <proski@gnu.org> wrote:so ... i suspect the requirement would be for NdisMAllocateSharedMemory() to return a linear address that is DMA-able, and to properly map it to a physical address via dma_map_single(). I can see only one complication in pushing this to user-space: physical fragmentation of allocations. What are the typical buffer sizes that NDIS drivers request from the kernel? Is it frequently above 4K? you could try to create a syscall-ish API towards the kernel that allows DMA, it would have the following functionality: - allocate a piece of continuous memory and return its physical address plus its linear address as well and map the linear address into the user-space pagetables. This memory would be unfragmented on the physical side. you probably could even use/hack hugetlbfs right now to achieve something very similar. (hugetlbfs pages are unfragmented 2MB largepages) if the NDIS API is done halfways right, then there's no need for any of these buffers to be in kernel-space and for the driver to run in kernel space. i think someone should really try to push a known-well-behaving NDIS driver (for which a Linux driver exists too) down to user-space. NDIS has been around since Netware so it's a pretty well-understood driver model. And with an iommu it could all be made a safe sandbox as well (an NDIS device could never exit its sandbox). Ingo --
| Arjan van de Ven | [Patch v2] Make PCI extended config space (MMCONFIG) a driver opt-in |
| Tilman Schmidt | git guidance |
| Vu Pham | Re: [Scst-devel] Integration of SCST in the mainstream Linux kernel |
| Greg KH | [GIT PATCH] driver core patches against 2.6.24 |
git: | |
| David Miller | Re: Git and GCC |
| Mike | I don't want the .git directory next to my code. |
| Steffen Prohaska | merge vs rebase: Is visualization in gitk the only problem? |
| David Kastrup | What is the idea for bare repositories? |
| Richard Stallman | Real men don't attack straw men |
| GVG GVG | ssh_exchange_identification: Connection closed by remote host |
| Falk Brockerhoff | ftp-proxy and no route to host issue |
| Pieter Verberne | Remove escape characters from file |
| Chuck Lever | Re: [bug?] tg3: Failed to load firmware "tigon/tg3_tso.bin" |
| David Miller | Re: [PATCH] pkt_sched: Destroy gen estimators under rtnl_lock(). |
| Stefan Richter | Re: [GIT]: Networking |
| jamal | Re: [LARTC] ifb and ppp |
