On Sat, Mar 10, 2001, Abheek Anand <[EMAIL PROTECTED]> wrote:
> I am looking at porting the Linux driver for the UHCI host controller onto
> a custom kernel. We have developed a soft real-time kernel using OSKIT for
> embedded systems. Since we need to capture images for some of the
> applications we have also ported the Linux BTTV driver to the kernel.
> Currently we are porting the USB code from 2.2.18 onto the kernel.
> 
> Now my current problem is this. The UHCI driver (uhci.c) creates several
> kernel slab caches which are cache-aligned etc etc for creating objects.
> Some of these are uhci_td_cachep, uhci_qh_cachep etc. Now currently we
> have not developed any memory management schema in our kernel, and treat
> memory as a flat contiguos region without any fancy
> segmentation/paging/allocation algorithms enabled. (Dirty yes, but it
> seems to works rather well :)
> 
> My question is this: how would efficiency be affected if I were to simply
> malloc all these objects from my flat memory model rather than create the
> fancy caches ( we obviously dont have a slab allocator working here!). One
> issue that immediately comes to mind is fragmentation, but perhpas that
> wont be a serious problem since we will be allocating(and freeing) some
> very specific structures. How badly would performance be affected in this
> case? I am eventually looking at porting the OV511 driver to the kernel,
> and performance (in terms of frame rate) is an issue we would take
> seriously. (We are typically looking forward to > 15 fps).
> 
> Some help/pointers/discussion in this regard would definitely be
> appreciated.

Performance isn't likely to be affected much. If you're worried, you can
grab the latest patch I sent out which implements all of that memory
management in terms of the pci DMA API and internally caches pages.

JE


_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
http://lists.sourceforge.net/lists/listinfo/linux-usb-users

Reply via email to