This is sources Bugzilla
Bugzilla Version 2.17.5
Bugzilla Bug 10192
  Use writev_not_cancel_no_status in elf/dl-misc.c Last modified: 2009-06-16 04:08
     Query page      Enter new bug
Bug#: 10192   Hardware:   Reporter: Aurelien Jarno <aurelien@aurel32.net>
Host: Target: Build:
Product:     Add CC:
Component:   Version:   CC:
Remove selected CCs
Status: RESOLVED   Priority:  
Resolution: WONTFIX   Severity:  
Assigned To: Ulrich Drepper <drepper@redhat.com>   Target Milestone:  
Flags: Requestee:
  backport ()
  examined ()
  testsuite ()
Summary:
Keywords:

Attachment Description Type Created Actions
rtld-not-cancel.diff Patch to fix the problem patch 2009-05-23 12:44 Edit | Diff
Create a New Attachment (proposed patch, testcase, etc.) View All

Bug 10192 depends on: Show dependency tree
Show dependency graph
Bug 10192 blocks:

Additional Comments:


Leave as RESOLVED WONTFIX
Reopen bug
Mark bug as VERIFIED

View Bug Activity   |   Format For Printing


Description:   Last confirmed: 0000-00-00 00:00 Opened: 2009-05-23 12:43
elf/dl-misc.c does a few direct call to __writev() when inline syscalls are not 
available. With some kernels it does not make sense to use inline syscalls as 
the arguments are passed on the stack with the default calling convention.

Since version 2.10, the code of writev includes a cancellation call to free a 
potentially malloced buffer. This means that ld.so should have unwind support 
which is not possible.

A solution is to use writev_not_cancel_no_status from not-cancel.h which seems 
to have been done exactly from this problem. A patch will follow.

------- Additional Comment #1 From Aurelien Jarno 2009-05-23 12:44 -------
Created an attachment (id=3959)
Patch to fix the problem

------- Additional Comment #2 From Ulrich Drepper 2009-06-16 04:08 -------
(In reply to comment #0)
> elf/dl-misc.c does a few direct call to __writev() when inline syscalls are not 
> available. With some kernels it does not make sense to use inline syscalls as 
> the arguments are passed on the stack with the default calling convention.

That's no argument.  Implementing the inlining won't hurt either.  Uniformity of
the ports is essential.

     Query page      Enter new bug
Actions: New | Query | bug # | Reports | Requests   New Account | Log In