Unix and Linux Discussions Tagged with address |
|
Thread / Thread Starter |
Last Post |
Replies |
Views |
Forum |
|
|
|
0 |
5,715 |
Cybersecurity |
|
|
|
1 |
2,470 |
UNIX for Beginners Questions & Answers |
|
|
|
7 |
9,619 |
Cybersecurity |
|
|
|
4 |
7,000 |
What is on Your Mind? |
|
|
|
8 |
2,544 |
UNIX for Beginners Questions & Answers |
|
|
|
1 |
2,867 |
Programming |
|
|
|
1 |
4,285 |
Shell Programming and Scripting |
|
|
|
8 |
5,471 |
UNIX for Dummies Questions & Answers |
|
|
|
0 |
2,108 |
OS X Support RSS |
|
|
|
0 |
2,268 |
UNIX and Linux Applications |
|
|
|
4 |
11,824 |
UNIX and Linux Applications |
|
|
|
1 |
7,256 |
UNIX for Dummies Questions & Answers |
|
|
|
2 |
9,291 |
IP Networking |
|
|
|
3 |
34,259 |
OS X (Apple) |
|
|
|
3 |
9,210 |
UNIX for Advanced & Expert Users |
|
|
|
2 |
3,093 |
IP Networking |
|
|
|
6 |
13,222 |
Solaris |
|
|
|
0 |
3,962 |
Programming |
|
|
|
1 |
4,224 |
UNIX for Dummies Questions & Answers |
|
|
|
1 |
5,333 |
Post Here to Contact Site Administrators and Moderators |
|
|
|
5 |
20,036 |
UNIX for Dummies Questions & Answers |
|
|
|
4 |
9,199 |
Programming |
|
|
|
3 |
5,009 |
IP Networking |
|
|
|
4 |
7,625 |
UNIX for Dummies Questions & Answers |
|
|
|
1 |
13,408 |
IP Networking |
|
|
|
2 |
9,268 |
UNIX for Dummies Questions & Answers |
|
|
|
4 |
222,392 |
UNIX for Dummies Questions & Answers |
|
|
|
1 |
9,426 |
UNIX for Dummies Questions & Answers |
|
|
|
3 |
10,508 |
UNIX for Advanced & Expert Users |
|
|
|
7 |
10,045 |
UNIX for Advanced & Expert Users |
|
|
|
7 |
176,241 |
UNIX for Dummies Questions & Answers |
|
|
|
8 |
30,900 |
UNIX for Dummies Questions & Answers |
|
|
|
1 |
3,685 |
UNIX for Advanced & Expert Users |
|
|
|
1 |
5,923 |
IP Networking |
|
|
|
1 |
5,014 |
IP Networking |
|
|
|
5 |
5,490 |
IP Networking |
|
|
|
2 |
2,982 |
UNIX for Dummies Questions & Answers |
|
|
|
10 |
11,553 |
UNIX for Dummies Questions & Answers |
|
|
|
1 |
3,879 |
Post Here to Contact Site Administrators and Moderators |
|
|
|
4 |
6,724 |
IP Networking |
KSEG_TO_PHYS(9r) KSEG_TO_PHYS(9r)
NAME
KSEG_TO_PHYS - General: Converts a kernel-unmapped virtual address to a physical address
SYNOPSIS
vm_offset_t KSEG_TO_PHYS(
vm_offset_t addr );
ARGUMENTS
Specifies the buffer virtual address to convert to a physical address.
DESCRIPTION
The KSEG_TO_PHYS routine converts a kernel-unmapped virtual address to a kernel physical address. Device drivers can use this physical
address in DMA operations. Prior to calling KSEG_TO_PHYS, device driver writers often call one of the following routines to determine
whether the address passed is a virtual address in the addressed kernel segment: IS_KSEG_VA
Determines if the specified address is located in the kernel-unmapped address space. IS_SEG0_VA
Determines if the specified address is located in the user-mapped address space. IS_SEG1_VA
Determines if the specified address is located in the kernel-mapped address space.
RETURN VALUES
Upon successful completion, KSEG_TO_PHYS returns the physical address.
EXAMPLE
The following code fragment shows a call to KSEG_TO_PHYS:
. . .
caddr_t virt_addr; [1] unsigned phys_addr; [2]
. . .
if(IS_KSEG_VA(virt_addr)) { [3]
phys_addr = KSEG_TO_PHYS(virt_addr); [4]
. . .
Declares a variable to store the user buffer's virtual address. Declares a variable to store the physical address returned by
KSEG_TO_PHYS. Before calling KSEG_TO_PHYS, calls IS_KSEG_VA to determine if the virtual address is from the kernel-unmapped address space.
If the virtual address is from the kernel-unmapped address space, then calls KSEG_TO_PHYS to convert the address to a corresponding physi-
cal address.
SEE ALSO
Routines: IS_KSEG_VA(9r), PHYS_TO_KSEG(9r)
KSEG_TO_PHYS(9r)