Fix mmap flags in bcol_basesmuma_smcm_reg_mmap
if in_ptr is NULL, the MAP_FIXED flag cannot be passed to mmap this caused a hang in topology/cart and topology/sub from ibm test suite on trunk. cmr=v1.8.2:reviewer=hjelmn This commit was SVN r31890.
Этот коммит содержится в:
родитель
75616320b5
Коммит
d04db1e213
@ -448,10 +448,14 @@ bcol_basesmuma_smcm_mmap_t * bcol_basesmuma_smcm_reg_mmap(void *in_ptr,
|
||||
bcol_basesmuma_smcm_mmap_t *map;
|
||||
bcol_basesmuma_smcm_file_header_t *seg;
|
||||
unsigned char* myaddr = NULL;
|
||||
int flags = MAP_SHARED;
|
||||
|
||||
/* map the file and initialize the segment state */
|
||||
if (NULL != in_ptr) {
|
||||
flags |= MAP_FIXED;
|
||||
}
|
||||
seg = (bcol_basesmuma_smcm_file_header_t *)
|
||||
mmap(in_ptr, length, PROT_READ|PROT_WRITE, MAP_SHARED|MAP_FIXED, fd, 0);
|
||||
mmap(in_ptr, length, PROT_READ|PROT_WRITE, flags, fd, 0);
|
||||
if((void*)-1 == seg) {
|
||||
return NULL;
|
||||
}
|
||||
|
Загрузка…
x
Ссылка в новой задаче
Block a user