Bug 109457 - libaio DSO has text relocation
Summary: libaio DSO has text relocation
Alias: None
Product: Red Hat Enterprise Linux 3
Classification: Red Hat
Component: libaio
Version: 3.0
Hardware: i686
OS: Linux
Target Milestone: ---
Assignee: Jeff Moyer
QA Contact:
Depends On:
TreeView+ depends on / blocked
Reported: 2003-11-07 23:42 UTC by Ulrich Drepper
Modified: 2007-11-30 22:06 UTC (History)
0 users

Clone Of:
Last Closed: 2004-08-26 07:42:25 UTC

Attachments (Terms of Use)
Patch to fix the problem (2.93 KB, patch)
2003-11-07 23:43 UTC, Ulrich Drepper
no flags Details | Diff
change libaio to use syscall(2) (18.17 KB, patch)
2004-02-24 22:04 UTC, Jeff Moyer
no flags Details | Diff

Description Ulrich Drepper 2003-11-07 23:42:51 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6a)
Gecko/20031105 Firebird/0.7+

Description of problem:
The libaio DSO has a text relocation.  The author had some problems
with getting syscall wrapper compiled with -fpic so he disabled it. 

Version-Release number of selected component (if applicable):

How reproducible:

Steps to Reproduce:
1.eu-readelf -d /usr/lib/libaio.so.1 | fgrep TEXTREL

Actual Results:    TEXTREL

Expected Results:  No output

Additional info:

Comment 1 Ulrich Drepper 2003-11-07 23:43:50 UTC
Created attachment 95808 [details]
Patch to fix the problem

Haven't done much testing but the code passed visual inspection.

Comment 2 Jeff Moyer 2004-02-24 22:04:05 UTC
Created attachment 98017 [details]
change libaio to use syscall(2)

This patch gets rid of the inline assembler and changes it to use syscall(2). 
I've also added the -fpic as suggested by Uli.	Uli, does this fix the problem
equally as well?

Comment 3 Ulrich Drepper 2004-02-25 06:51:37 UTC
The patch looks OK.  Using syscall() is a little bit less efficient
but the costs vanish compared to the syscall cost itself.  I haven't
tested the patch but if it builds on all archs and the test using
readelf described in the report everything should be fine.

Comment 4 Ulrich Drepper 2004-08-26 07:42:25 UTC
The second patch is in the current release (0.3.99).

Note You need to log in before you can comment on or make changes to this bug.