The param "start" actually referes to the physical memory start, which is to be mapped into virtual area vma. And it is the field vma->vm_start which stands for the start of the area. Most of the time, we do not read through whole implementation of a function but only the definition and essential comments. Accurate comments are definitely the base stone.
Unified · Split
| @@ -2009,7 +2009,7 @@ EXPORT_SYMBOL(remap_pfn_range); · 2008 unmodified lines | |||
| 2009 | /** | 2009 | /** |
| 2010 | * vm_iomap_memory - remap memory to userspace | 2010 | * vm_iomap_memory - remap memory to userspace |
| 2011 | * @vma: user vma to map to | 2011 | * @vma: user vma to map to |
| 2012 | * @start: start of area | 2012 | * @start: start of the physical memory to be mapped |
| 2013 | * @len: size of area | 2013 | * @len: size of area |
| 2014 | * | 2014 | * |
| 2015 | * This is a simplified io_remap_pfn_range() for common driver use. The | 2015 | * This is a simplified io_remap_pfn_range() for common driver use. The |