I'm testing a framegrabber driver for the TekRam C210 framegrabber. The
driver (for a ZR26120 chip) uses the bigphysarea patch to get a chunk of
continuous physical memory. The program does something like:
pScreen=(char*)mmap((caddr_t)0,FrameBufferSize,
PROT_READ,MAP_FILE|MAP_SHARED,fd,(off_t)0);
The program works ok and I can capture frames without problems. But when I
finish grabbing and do a close(fd):
Feb 15 05:33:57 multivac kernel: iput: inode 104123 on device 03:02 still
has mappings.
When I do exit(0):
Feb 15 05:34:02 multivac kernel: Inode i_mmap ring corrupted
Feb 15 05:34:02 multivac kernel: VFS: iput: trying to free free inode
Feb 15 05:34:02 multivac kernel: VFS: device 3c:00, inode 104123,
mode=00020660
I have tried doing a munmap before closing the socket obtaining the same
results.
Any ideas?
How can I get a chunk of continuous physical memory in kernels 2.1.xx?
Regards,
-- __ /\ \ [] Miguel Angel Vilariño Monreal [] 2:343/128.5@fidonet.org [] \/ / [] mailto:mvil3274@alu-etsetb.upc.es [] 757:101/9.5@redbbs.org [] / /\ [] mailto:mavilar@pangea.org [] l: 41º23.25' N [] / /\ \ [] http://www.pangea.org/~mavilar [] L: 002º07.74' E []
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu