- Timestamp:
- Jan 8, 2002, 11:34:11 PM (24 years ago)
- Location:
- trunk/src/kernel32
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/kernel32/oslibdos.cpp
r7724 r7744 1 /* $Id: oslibdos.cpp,v 1.9 2 2002-01-04 14:11:23sandervl Exp $ */1 /* $Id: oslibdos.cpp,v 1.93 2002-01-08 22:34:10 sandervl Exp $ */ 2 2 /* 3 3 * Wrappers for OS/2 Dos* API … … 3028 3028 static PROC_DosSetThreadAffinity pfnDosSetThreadAffinity = NULL; 3029 3029 static BOOL fInit = FALSE; 3030 MPAFFINITY mask; 3031 3032 if(fInit == FALSE && pfnDosSetThreadAffinity == NULL) { 3030 MPAFFINITY mask; 3031 APIRET rc; 3032 3033 if(fInit == FALSE && pfnDosSetThreadAffinity == NULL) 3034 { 3035 ULONG nrCPUs; 3036 3037 rc = DosQuerySysInfo(QSV_NUMPROCESSORS, QSV_NUMPROCESSORS, &nrCPUs, sizeof(nrCPUs)); 3038 if (rc != 0 || nrCPUs == 1) 3039 {//not supported 3040 fInit = TRUE; 3041 SetLastError(ERROR_SUCCESS_W); 3042 return TRUE; 3043 } 3044 3033 3045 HMODULE hDoscalls; 3034 3046 if(DosQueryModuleHandle("DOSCALLS", &hDoscalls) == NO_ERROR) { … … 3041 3053 return TRUE; 3042 3054 } 3043 APIRET rc;3044 3055 USHORT sel = RestoreOS2FS(); 3045 3056 … … 3059 3070 static PROC_DosQueryThreadAffinity pfnDosQueryThreadAffinity = NULL; 3060 3071 static BOOL fInit = FALSE; 3061 MPAFFINITY mask; 3062 3063 if(fInit == FALSE && pfnDosQueryThreadAffinity == NULL) { 3072 MPAFFINITY mask; 3073 APIRET rc; 3074 3075 if(fInit == FALSE && pfnDosQueryThreadAffinity == NULL) 3076 { 3077 ULONG nrCPUs; 3078 3079 rc = DosQuerySysInfo(QSV_NUMPROCESSORS, QSV_NUMPROCESSORS, &nrCPUs, sizeof(nrCPUs)); 3080 if (rc != 0 || nrCPUs == 1) 3081 {//not supported 3082 fInit = TRUE; 3083 *pdwThreadAffinityMask = 1; 3084 SetLastError(ERROR_SUCCESS_W); 3085 return TRUE; 3086 } 3087 3064 3088 HMODULE hDoscalls; 3065 3089 if(DosQueryModuleHandle("DOSCALLS", &hDoscalls) == NO_ERROR) { … … 3076 3100 ULONG scope = (fMaskType == MASK_SYSTEM) ? AFNTY_SYSTEM : AFNTY_THREAD; 3077 3101 3078 APIRET rc;3079 3102 USHORT sel = RestoreOS2FS(); 3080 3103 … … 3083 3106 3084 3107 if(rc == NO_ERROR) { 3085 *pdwThreadAffinityMask = mask.mask[0]; 3086 } 3108 *pdwThreadAffinityMask = mask.mask[0]; 3109 } 3110 3087 3111 SetLastError(error2WinError(rc,ERROR_INVALID_PARAMETER)); 3088 3112 return (rc == NO_ERROR); -
trunk/src/kernel32/process.cpp
r7318 r7744 1 /* $Id: process.cpp,v 1. 9 2001-11-10 12:47:47sandervl Exp $ */1 /* $Id: process.cpp,v 1.10 2002-01-08 22:34:11 sandervl Exp $ */ 2 2 3 3 /* … … 124 124 BOOL WINAPI SetProcessAffinityMask( HANDLE hProcess, DWORD affmask ) 125 125 { 126 dprintf(("SetProcessAffinityMask %x %x", hProcess, affmask)); 126 127 ProcessAffinityMask = affmask; 127 128 //TODO: should update all threads, but that doesn't seem possible in OS/2 … … 135 136 LPDWORD lpSystemAffinityMask) 136 137 { 138 dprintf(("GetProcessAffinityMask %x %x %x", hProcess, lpProcessAffinityMask, lpSystemAffinityMask)); 139 137 140 /* It is definitely important for a process to know on what processor 138 141 it is running :-) */
Note:
See TracChangeset
for help on using the changeset viewer.