Re: Examples of Per-CPU Variables in Kernel source

2013-03-01 Thread Prabhu nath
In the context of tasklets, A tasklet list is headed by tasklet_vec and tasklet_hi_vec. This is defined per-CPU. U can see this at http://lxr.linux.no/#linux+v3.8.1/kernel/softirq.c#L400 Regards, Prabhu On Sun, Feb 24, 2013 at 2:07 PM, Shraddha Kamat sh200...@gmail.com wrote: I was reading

Re: relocatable modules' symbols

2013-03-01 Thread Prabhu nath
In principle, the linker will associate the kernel code/data to the Kernel virtual address space i.e. between 0xC000_ to 0x_ and the same linker will associate the Application's code/data to the user virtual address space i.e. between 0x_ to 0xBFFF_. Linker itself cannot

[ARM_LINUX] ioremap() allowing to map system memory...

2013-03-01 Thread sandeep kumar
Hi All I am using ARM based board. In mine, i did the following... void __iomem *tcpm_base = ioremap_nocache(0x03B0, 10*SZ_3MB); Actually i didnt reserve the 30MB memory @ 0x3B0. But still the call is succesful and i am able to read the memory. In the logs it is just showing a warning,

Re: [ARM_LINUX] ioremap() allowing to map system memory...

2013-03-01 Thread Prabhu nath
On Fri, Mar 1, 2013 at 4:48 PM, sandeep kumar coolsandyfor...@gmail.comwrote: Hi All I am using ARM based board. In mine, i did the following... void __iomem *tcpm_base = ioremap_nocache(0x03B0, 10*SZ_3MB); Actually i didnt reserve the 30MB memory @ 0x3B0. But still the call is

Re: [ARM_LINUX] ioremap() allowing to map system memory...

2013-03-01 Thread sandeep kumar
Looks like you are trying to pass the address of physical memory to this function as a parameter and it is screwing up. Yes, i intentionally gave some physical address which is part of system memory. My problem infact is, it is not screwing up. It is allowing me to do that. Its not 'panic'ing On

Re: relocatable modules' symbols

2013-03-01 Thread John Smith
what linear address is the virtual address 0xc000 respondable to ? the highest 10 bits 0x300 is pde , which means the 0x300th entry of the page dir. As I know ,at boot stage , that pde has not been ever filles . then how does the kernel code been addressed? 2013/3/1 Prabhu nath

Re: [ARM_LINUX] ioremap() allowing to map system memory...

2013-03-01 Thread Valdis . Kletnieks
On Fri, 01 Mar 2013 16:48:12 +0530, sandeep kumar said: Don't you think it should throw panic()while calling the ioremap() itself. Because this sounds like a serious violation... As you noted, it does give you a warning. That's a kernel design philosophy - to reserve the panic() and BUG()

Re: [ARM_LINUX] ioremap() allowing to map system memory...

2013-03-01 Thread Arlie Stephens
On Mar 01 2013, valdis.kletni...@vt.edu wrote: X-Mailer: exmh version 2.8.0 04/21/2012 with nmh-1.4-dev On Fri, 01 Mar 2013 16:48:12 +0530, sandeep kumar said: Don't you think it should throw panic()while calling the ioremap() itself. Because this sounds like a serious violation... As

MTD NOR write issue for files greater than a few hundred bytes

2013-03-01 Thread Holmes, Michael A (Mike)
All, The issue I have is as follows. When writing to the MTD on NOR in Linux for a file of more than a few bytes, it fails with a MTD software timeout. Writing upto 100 bytes are fine, in this test when I jumped to 300 it failed. I also proved that the small writes do get written; I wrote

[filesystem] struct of m_inode

2013-03-01 Thread lx
Hi, I'm learning the kernel of 0.12, and the function in inode.c: static int _bmap(struct m_inode * inode,int block,int create) { struct buffer_head * bh; int i; if (block0) panic(_bmap: block0); if (block = 7+512+512*512)

Re: [filesystem] struct of m_inode

2013-03-01 Thread Valdis . Kletnieks
On Sat, 02 Mar 2013 10:28:26 +0800, lx said: if (block = 7+512+512*512) because the i_zone[9]. But the question is why the i_zone[7] can repesent 512 , and i_zone[8] can repesent 512*512 ? Sngle, double, and triple indirect blocks... http://en.wikipedia.org/wiki/Inode_pointer_structure

Re: How to measure the RAM read/write performance

2013-03-01 Thread sandeep kumar
Another easy way to make memory(ie..pages) non cacheble is use the below function, dma_alloc_coherent(NULL, size, p, GFP_KERNEL); I did like what you said. With the timings,i can see it is reading directly from RAM. I have some doubts.. -- What exactly happend here? Here read/write are done by