---
name: "vm_insert_pfn"
section: "9"
platform: "linux"
package: "linux-manual-4.9"
version: "4.9.228-1"
release: "Debian 9 (Stretch)"
platforms: ["linux"]
url: "https://new.carta.tech/vm_insert_pfn"
---

# vm\_insert\_pfn(9)

insert single pfn into user vma

## NAME

vm\_insert\_pfn - insert single pfn into user vma

## SYNOPSIS

**int vm\_insert\_pfn(struct vm\_area\_struct \*** *vma***, unsigned long** *addr***, unsigned long** *pfn***);**

## ARGUMENTS

*vma*

user vma to map to

*addr*

target user address of this page

*pfn*

source kernel pfn

## DESCRIPTION

Similar to vm\_insert\_page, this allows drivers to insert individual pages they've allocated into a user vma. Same comments apply.

This function should only be called from a vm\_ops-\>fault handler, and in that case the handler should return NULL.

vma cannot be a COW mapping.

As this is called only for pages that do not currently exist, we do not need to flush old virtual caches or the TLB.

## COPYRIGHT
