Changeset 20864 in vbox for trunk/include
- Timestamp:
- Jun 23, 2009 7:19:42 PM (16 years ago)
- svn:sync-xref-src-repo-rev:
- 49009
- Location:
- trunk/include/VBox
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/VBox/pdmdrv.h
r20706 r20864 621 621 622 622 /** 623 * Calls the HC R0 VMM entry point, in a safer but slower manner than SUPCallVMMR0. 623 * Calls the HC R0 VMM entry point, in a safer but slower manner than 624 * SUPR3CallVMMR0. 624 625 * 625 626 * When entering using this call the R0 components can call into the host kernel -
trunk/include/VBox/sup.h
r20862 r20864 68 68 { 69 69 /** The usual invalid entry. 70 * This is returned by SUP GetPagingMode() */70 * This is returned by SUPR3GetPagingMode() */ 71 71 SUPPAGINGMODE_INVALID = 0, 72 72 /** Normal 32-bit paging, no global pages */ … … 453 453 * @returns VBox status code. 454 454 */ 455 SUPR3DECL(int) SUP Install(void);455 SUPR3DECL(int) SUPR3Install(void); 456 456 457 457 /** … … 460 460 * @returns VBox status code. 461 461 */ 462 SUPR3DECL(int) SUP Uninstall(void);462 SUPR3DECL(int) SUPR3Uninstall(void); 463 463 464 464 /** … … 543 543 * Initializes the support library. 544 544 * Each succesful call to SUPR3Init() must be countered by a 545 * call to SUP Term(false).545 * call to SUPR3Term(false). 546 546 * 547 547 * @returns VBox status code. … … 558 558 */ 559 559 #ifdef __cplusplus 560 SUPR3DECL(int) SUP Term(bool fForced = false);560 SUPR3DECL(int) SUPR3Term(bool fForced = false); 561 561 #else 562 SUPR3DECL(int) SUP Term(int fForced);562 SUPR3DECL(int) SUPR3Term(int fForced); 563 563 #endif 564 564 … … 571 571 * VM is about to be destroyed. 572 572 */ 573 SUPR3DECL(int) SUP SetVMForFastIOCtl(PVMR0 pVMR0);573 SUPR3DECL(int) SUPR3SetVMForFastIOCtl(PVMR0 pVMR0); 574 574 575 575 /** … … 583 583 * @param pvArg Argument. 584 584 */ 585 SUPR3DECL(int) SUP CallVMMR0(PVMR0 pVMR0, VMCPUID idCpu, unsigned uOperation, void *pvArg);586 587 /** 588 * Variant of SUP CallVMMR0, except that this takes the fast ioclt path585 SUPR3DECL(int) SUPR3CallVMMR0(PVMR0 pVMR0, VMCPUID idCpu, unsigned uOperation, void *pvArg); 586 587 /** 588 * Variant of SUPR3CallVMMR0, except that this takes the fast ioclt path 589 589 * regardsless of compile-time defaults. 590 590 * … … 594 594 * @param idCpu The virtual CPU ID. 595 595 */ 596 SUPR3DECL(int) SUP CallVMMR0Fast(PVMR0 pVMR0, unsigned uOperation, VMCPUID idCpu);597 598 /** 599 * Calls the HC R0 VMM entry point, in a safer but slower manner than SUPCallVMMR0.600 * When entering using this call the R0 components can call into the host kernel601 * (i.e. use the SUPR0 and RT APIs).596 SUPR3DECL(int) SUPR3CallVMMR0Fast(PVMR0 pVMR0, unsigned uOperation, VMCPUID idCpu); 597 598 /** 599 * Calls the HC R0 VMM entry point, in a safer but slower manner than 600 * SUPR3CallVMMR0. When entering using this call the R0 components can call 601 * into the host kernel (i.e. use the SUPR0 and RT APIs). 602 602 * 603 603 * See VMMR0Entry() for more details. … … 612 612 * limit on this, just below 4KB. 613 613 */ 614 SUPR3DECL(int) SUP CallVMMR0Ex(PVMR0 pVMR0, VMCPUID idCpu, unsigned uOperation, uint64_t u64Arg, PSUPVMMR0REQHDR pReqHdr);614 SUPR3DECL(int) SUPR3CallVMMR0Ex(PVMR0 pVMR0, VMCPUID idCpu, unsigned uOperation, uint64_t u64Arg, PSUPVMMR0REQHDR pReqHdr); 615 615 616 616 /** … … 672 672 * @returns The paging mode. 673 673 */ 674 SUPR3DECL(SUPPAGINGMODE) SUP GetPagingMode(void);674 SUPR3DECL(SUPPAGINGMODE) SUPR3GetPagingMode(void); 675 675 676 676 /** 677 677 * Allocate zero-filled pages. 678 678 * 679 * Use this to allocate a number of pages rather than using RTMem*() and mess with 680 * alignment. The returned address is of course page aligned. Call SUPPageFree() 681 * to free the pages once done with them. 679 * Use this to allocate a number of pages suitable for seeding / locking. 680 * Call SUPR3PageFree() to free the pages once done with them. 682 681 * 683 682 * @returns VBox status. … … 685 684 * @param ppvPages Where to store the base pointer to the allocated pages. 686 685 */ 687 SUPR3DECL(int) SUP PageAlloc(size_t cPages, void **ppvPages);688 689 /** 690 * Frees pages allocated with SUP PageAlloc().686 SUPR3DECL(int) SUPR3PageAlloc(size_t cPages, void **ppvPages); 687 688 /** 689 * Frees pages allocated with SUPR3PageAlloc(). 691 690 * 692 691 * @returns VBox status. 693 * @param pvPages Pointer returned by SUP PageAlloc().692 * @param pvPages Pointer returned by SUPR3PageAlloc(). 694 693 * @param cPages Number of pages that was allocated. 695 694 */ 696 SUPR3DECL(int) SUP PageFree(void *pvPages, size_t cPages);695 SUPR3DECL(int) SUPR3PageFree(void *pvPages, size_t cPages); 697 696 698 697 /** … … 702 701 * Use SUPR3PageFreeEx() to free memory allocated with this function. 703 702 * 704 * This SUPR3PageAllocEx and SUPR3PageFreeEx replaces SUPPageAllocLocked, 705 * SUPPageAllocLockedEx, SUPPageFreeLocked, SUPPageAlloc, SUPPageLock, 706 * SUPPageUnlock and SUPPageFree. 703 * This SUPR3PageAllocEx and SUPR3PageFreeEx replaces SUPR3PageAllocLockedEx, 704 * SUPR3PageFreeLocked, SUPR3PageAlloc, and SUPR3PageFree. 707 705 * 708 706 * @returns VBox status code. … … 765 763 * Allocate non-zeroed locked pages. 766 764 * 767 * Use this to allocate a number of pages rather than using RTMem*() and mess with768 * alignment. The returned address is of course page aligned. Call SUPPageFreeLocked()769 * to free the pages once done with them.770 *771 765 * @returns VBox status code. 772 766 * @param cPages Number of pages to allocate. … … 775 769 * On entry this will point to an array of with cbMemory >> PAGE_SHIFT entries. 776 770 * NULL is allowed. 777 */ 778 SUPR3DECL(int) SUPPageAllocLockedEx(size_t cPages, void **ppvPages, PSUPPAGE paPages); 779 780 /** 781 * Frees locked pages allocated with SUPPageAllocLocked(). 771 * @todo remove this. 772 */ 773 SUPR3DECL(int) SUPR3PageAllocLockedEx(size_t cPages, void **ppvPages, PSUPPAGE paPages); 774 775 /** 776 * Frees locked pages allocated with SUPPageAllocLockedEx(). 782 777 * 783 778 * @returns VBox status. 784 * @param pvPages Pointer returned by SUP PageAlloc().779 * @param pvPages Pointer returned by SUPR3PageAllocLockedEx(). 785 780 * @param cPages Number of pages that was allocated. 786 */ 787 SUPR3DECL(int) SUPPageFreeLocked(void *pvPages, size_t cPages); 788 789 /** 790 * Allocated memory with page aligned memory with a contiguous and locked physical 791 * memory backing below 4GB. 792 * 793 * @returns Pointer to the allocated memory (virtual address). 794 * *pHCPhys is set to the physical address of the memory. 795 * The returned memory must be freed using SUPContFree(). 796 * @returns NULL on failure. 797 * @param cPages Number of pages to allocate. 798 * @param pHCPhys Where to store the physical address of the memory block. 799 */ 800 SUPR3DECL(void *) SUPContAlloc(size_t cPages, PRTHCPHYS pHCPhys); 781 * @todo remove this. 782 */ 783 SUPR3DECL(int) SUPR3PageFreeLocked(void *pvPages, size_t cPages); 801 784 802 785 /** … … 807 790 * *pHCPhys is set to the physical address of the memory. 808 791 * If ppvR0 isn't NULL, *ppvR0 is set to the ring-0 mapping. 809 * The returned memory must be freed using SUP ContFree().792 * The returned memory must be freed using SUPR3ContFree(). 810 793 * @returns NULL on failure. 811 794 * @param cPages Number of pages to allocate. … … 817 800 * the world switchers. 818 801 */ 819 SUPR3DECL(void *) SUP ContAlloc2(size_t cPages, PRTR0PTR pR0Ptr, PRTHCPHYS pHCPhys);820 821 /** 822 * Frees memory allocated with SUP ContAlloc().802 SUPR3DECL(void *) SUPR3ContAlloc(size_t cPages, PRTR0PTR pR0Ptr, PRTHCPHYS pHCPhys); 803 804 /** 805 * Frees memory allocated with SUPR3ContAlloc(). 823 806 * 824 807 * @returns VBox status code. … … 826 809 * @param cPages Number of pages to be freed. 827 810 */ 828 SUPR3DECL(int) SUP ContFree(void *pv, size_t cPages);811 SUPR3DECL(int) SUPR3ContFree(void *pv, size_t cPages); 829 812 830 813 /** … … 837 820 * @param cPages Number of pages to allocate. 838 821 * @param ppvPages Where to store the pointer to the allocated memory. 839 * The pointer stored here on success must be passed to SUPLowFree when840 * the memory should be released.822 * The pointer stored here on success must be passed to 823 * SUPR3LowFree when the memory should be released. 841 824 * @param ppvPagesR0 Where to store the ring-0 pointer to the allocated memory. optional. 842 825 * @param paPages Where to store the physical addresses of the individual pages. 843 826 */ 844 SUPR3DECL(int) SUP LowAlloc(size_t cPages, void **ppvPages, PRTR0PTR ppvPagesR0, PSUPPAGE paPages);845 846 /** 847 * Frees memory allocated with SUP LowAlloc().827 SUPR3DECL(int) SUPR3LowAlloc(size_t cPages, void **ppvPages, PRTR0PTR ppvPagesR0, PSUPPAGE paPages); 828 829 /** 830 * Frees memory allocated with SUPR3LowAlloc(). 848 831 * 849 832 * @returns VBox status code. … … 851 834 * @param cPages Number of pages that was allocated. 852 835 */ 853 SUPR3DECL(int) SUP LowFree(void *pv, size_t cPages);836 SUPR3DECL(int) SUPR3LowFree(void *pv, size_t cPages); 854 837 855 838 /** … … 864 847 * @param ppvImageBase Where to store the image address. 865 848 */ 866 SUPR3DECL(int) SUP LoadModule(const char *pszFilename, const char *pszModule, void **ppvImageBase);849 SUPR3DECL(int) SUPR3LoadModule(const char *pszFilename, const char *pszModule, void **ppvImageBase); 867 850 868 851 /** … … 889 872 * @remark This will not actually 'free' the module, there are of course usage counting. 890 873 */ 891 SUPR3DECL(int) SUP FreeModule(void *pvImageBase);874 SUPR3DECL(int) SUPR3FreeModule(void *pvImageBase); 892 875 893 876 /** … … 900 883 * @param ppvValue Where to store the symbol value. 901 884 */ 902 SUPR3DECL(int) SUP GetSymbolR0(void *pvImageBase, const char *pszSymbol, void **ppvValue);885 SUPR3DECL(int) SUPR3GetSymbolR0(void *pvImageBase, const char *pszSymbol, void **ppvValue); 903 886 904 887 /** … … 906 889 * 907 890 * @returns VBox status code. 908 * @deprecated Use SUP LoadModule(pszFilename, "VMMR0.r0", &pvImageBase)909 */ 910 SUPR3DECL(int) SUP LoadVMM(const char *pszFilename);891 * @deprecated Use SUPR3LoadModule(pszFilename, "VMMR0.r0", &pvImageBase) 892 */ 893 SUPR3DECL(int) SUPR3LoadVMM(const char *pszFilename); 911 894 912 895 /** … … 914 897 * 915 898 * @returns VBox status code. 916 * @deprecated Use SUP FreeModule().917 */ 918 SUPR3DECL(int) SUP UnloadVMM(void);899 * @deprecated Use SUPR3FreeModule(). 900 */ 901 SUPR3DECL(int) SUPR3UnloadVMM(void); 919 902 920 903 /** … … 924 907 * @param pHCPhys Where to store the physical address of the GIP. 925 908 */ 926 SUPR3DECL(int) SUP GipGetPhys(PRTHCPHYS pHCPhys);909 SUPR3DECL(int) SUPR3GipGetPhys(PRTHCPHYS pHCPhys); 927 910 928 911 /**
Note:
See TracChangeset
for help on using the changeset viewer.