[prev in list] [next in list] [prev in thread] [next in thread] 

List:       helix-server-cvs
Subject:    [Server-cvs] common/util/platform/linux epoll.cpp,1.2,1.3
From:       dcollins () helixcommunity ! org
Date:       2010-08-13 21:13:16
Message-ID: 201008132112.o7DLCsvB000750 () mailer ! progressive-comp ! com
[Download RAW message or body]

Update of /cvsroot/server/common/util/platform/linux
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv16445/server/common/util/platform/linux

Modified Files:
	epoll.cpp 
Log Message:
Synopsis
========
Fixes PR 266124: Linux 64-bit LSB build-busters in trace.c and epoll.cpp

Branches: SERVER_CURRENT_RN (HEAD)
Reviewer: Chytanya


Description
===========

The 64-bit Linux LSB build had the following build-busters:

trace.c:
REG_RIP and REG_RBP were not defined, so the backtrace code was not
building.  LSB gives you access to ucontext_t and it's register-related
data structures, but doesn't tell you which register is which!

epoll.cpp:
For some reason the stub routines are not linking, and for now since
they shouldn't actually ever get used, and all they do is print an error
anyhow, I just print an error instead.  I left the original code there
commented-out since I'd like to fix it correctly when time permits.
This should never be triggered in an actual product deployment.
This wrapper is necessary since epoll is not officially part of the
LSB3.1 interfaces, and we have use dlsym() to to find the epoll API
symbols before we can call them.


Files Affected
==============

server/common/util/trace.c
server/common/util/platform/linux/epoll.cpp


Testing Performed
=================

Unit Tests:
- N/A

Integration Tests:
- N/A

Leak Tests:
- N/A

Performance Tests:
- N/A

Platforms Tested: N/A
Build verified: linux-lsb31-x86_64

QA Hints
========
* N/A


Index: epoll.cpp
===================================================================
RCS file: /cvsroot/server/common/util/platform/linux/epoll.cpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -d -r1.2 -r1.3
--- epoll.cpp	19 Sep 2008 21:55:21 -0000	1.2
+++ epoll.cpp	13 Aug 2010 21:13:13 -0000	1.3
@@ -72,9 +72,11 @@
 
     if (!m_pCreateFunc || !m_pControlFunc || !m_pWaitFunc)
     {
-        m_pCreateFunc  = (int (*)(int))&HXEPoll::CreateStub;
-        m_pControlFunc = (int (*)(int, int, int, struct epoll_event*))&HXEPoll::ControlStub;
-        m_pWaitFunc    = (int (*)(int, struct epoll_event*, int, int))&HXEPoll::WaitStub;
+        printf("HXEPoll error: not initialized\n");
+        //XXXDC: disabled due to a linkage problem on LSB3.1
+        //m_pCreateFunc  = (int (*)(int))&HXEPoll::CreateStub;
+        //m_pControlFunc = (int (*)(int, int, int, struct epoll_event*))&HXEPoll::ControlStub;
+        //m_pWaitFunc    = (int (*)(int, struct epoll_event*, int, int))&HXEPoll::WaitStub;
     }
     else
     {


_______________________________________________
Server-cvs mailing list
Server-cvs@helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/server-cvs
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic