Changeset 81 for trunk/include/k/kLdr.h
- Timestamp:
- Aug 19, 2016, 12:10:38 AM (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/include/k/kLdr.h
r58 r81 637 637 int kLdrModMap(PKLDRMOD pMod); 638 638 int kLdrModUnmap(PKLDRMOD pMod); 639 int kLdrModAllocTLS(PKLDRMOD pMod);640 void kLdrModFreeTLS(PKLDRMOD pMod);641 639 int kLdrModReload(PKLDRMOD pMod); 642 640 int kLdrModFixupMapping(PKLDRMOD pMod, PFNKLDRMODGETIMPORT pfnGetImport, void *pvUser); 643 int kLdrModCallInit(PKLDRMOD pMod, KUPTR uHandle);644 int kLdrModCallTerm(PKLDRMOD pMod, KUPTR uHandle);645 int kLdrModCallThread(PKLDRMOD pMod, KUPTR uHandle, unsigned fAttachingOrDetaching);646 641 /** @} */ 647 642 … … 652 647 int kLdrModRelocateBits(PKLDRMOD pMod, void *pvBits, KLDRADDR NewBaseAddress, KLDRADDR OldBaseAddress, 653 648 PFNKLDRMODGETIMPORT pfnGetImport, void *pvUser); 649 /** @} */ 650 651 /** @name Operations on both internally and externally managed mappings. 652 * @{ */ 653 /** Special pvMapping value to pass to kLdrModAllocTLS, 654 * kLdrModFreeTLS, kLdrModCallInit, kLdrModCallTerm, and kLdrModCallThread that 655 * specifies the internal mapping (kLdrModMap). */ 656 #define KLDRMOD_INT_MAP ((void *)~(KUPTR)0) 657 int kLdrModAllocTLS(PKLDRMOD pMod, void *pvMapping); 658 void kLdrModFreeTLS(PKLDRMOD pMod, void *pvMapping); 659 int kLdrModCallInit(PKLDRMOD pMod, void *pvMapping, KUPTR uHandle); 660 int kLdrModCallTerm(PKLDRMOD pMod, void *pvMapping, KUPTR uHandle); 661 int kLdrModCallThread(PKLDRMOD pMod, void *pvMapping, KUPTR uHandle, unsigned fAttachingOrDetaching); 654 662 /** @} */ 655 663 … … 726 734 int (* pfnUnmap)(PKLDRMOD pMod); 727 735 /** @copydoc kLdrModAllocTLS */ 728 int (* pfnAllocTLS)(PKLDRMOD pMod );736 int (* pfnAllocTLS)(PKLDRMOD pMod, void *pvMapping); 729 737 /** @copydoc kLdrModFreeTLS */ 730 void (*pfnFreeTLS)(PKLDRMOD pMod );738 void (*pfnFreeTLS)(PKLDRMOD pMod, void *pvMapping); 731 739 /** @copydoc kLdrModReload */ 732 740 int (* pfnReload)(PKLDRMOD pMod); … … 734 742 int (* pfnFixupMapping)(PKLDRMOD pMod, PFNKLDRMODGETIMPORT pfnGetImport, void *pvUser); 735 743 /** @copydoc kLdrModCallInit */ 736 int (* pfnCallInit)(PKLDRMOD pMod, KUPTR uHandle);744 int (* pfnCallInit)(PKLDRMOD pMod, void *pvMapping, KUPTR uHandle); 737 745 /** @copydoc kLdrModCallTerm */ 738 int (* pfnCallTerm)(PKLDRMOD pMod, KUPTR uHandle);746 int (* pfnCallTerm)(PKLDRMOD pMod, void *pvMapping, KUPTR uHandle); 739 747 /** @copydoc kLdrModCallThread */ 740 int (* pfnCallThread)(PKLDRMOD pMod, KUPTR uHandle, unsigned fAttachingOrDetaching);748 int (* pfnCallThread)(PKLDRMOD pMod, void *pvMapping, KUPTR uHandle, unsigned fAttachingOrDetaching); 741 749 /** @copydoc kLdrModSize */ 742 750 KLDRADDR (* pfnSize)(PKLDRMOD pMod);
Note:
See TracChangeset
for help on using the changeset viewer.