Mercurial > hg > truffle
diff src/os/linux/vm/perfMemory_linux.cpp @ 17765:91dc38ae09f3
8033464: Linux code cleanup
8033931: Several nightly tests failing with assert(imin < imax) failed: Unexpected page size
Summary: cleaned up warnings in linux specific os code.
Reviewed-by: dcubed, hseigel, coleenp, dsamersoff
Contributed-by: gerald.thornbrugh@oracle.com
author | dcubed |
---|---|
date | Mon, 24 Mar 2014 13:36:32 -0700 |
parents | 1f4355cee9a2 |
children | 4ca6dc0799b6 78bbf4d43a14 |
line wrap: on
line diff
--- a/src/os/linux/vm/perfMemory_linux.cpp Mon Mar 24 09:14:14 2014 -0700 +++ b/src/os/linux/vm/perfMemory_linux.cpp Mon Mar 24 13:36:32 2014 -0700 @@ -1,5 +1,5 @@ /* - * Copyright (c) 2001, 2013, Oracle and/or its affiliates. All rights reserved. + * Copyright (c) 2001, 2014, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it @@ -891,8 +891,16 @@ FREE_C_HEAP_ARRAY(char, filename, mtInternal); // open the shared memory file for the give vmid - fd = open_sharedmem_file(rfilename, file_flags, CHECK); - assert(fd != OS_ERR, "unexpected value"); + fd = open_sharedmem_file(rfilename, file_flags, THREAD); + + if (fd == OS_ERR) { + return; + } + + if (HAS_PENDING_EXCEPTION) { + ::close(fd); + return; + } if (*sizep == 0) { size = sharedmem_filesize(fd, CHECK);