Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 155065 - decode aio system call arguments
Summary: decode aio system call arguments
Keywords:
Status: CLOSED NEXTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: strace
Version: 4
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Roland McGrath
QA Contact: Brian Brock
URL:
Whiteboard:
Depends On:
Blocks: FC4Target
TreeView+ depends on / blocked
 
Reported: 2005-04-15 22:06 UTC by Zach Brown
Modified: 2007-11-30 22:11 UTC (History)
0 users

Fixed In Version:
Doc Type: Enhancement
Doc Text:
Clone Of:
Environment:
Last Closed: 2005-05-09 08:21:37 UTC


Attachments (Terms of Use)
decode aio syscall args; against 4.5.11 (deleted)
2005-04-15 22:08 UTC, Zach Brown
no flags Details | Diff

Description Zach Brown 2005-04-15 22:06:55 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.7.2) Gecko/20040803

Description of problem:
The version this bug is being filed on is a total lie.  I based this patch on 4.5.11 from sf and haven't looked in fc packages for aio support.

Anyway, I wanted to see what were in the aio syscalls.  So instead of seeing 

> $ strace ../test-aio 2>&1 | grep '^io_'
> io_setup(0x1, 0x7fbffff478)             = 0
> io_submit(0x2a95557000, 0x2, 0x7fbffff3e0) = 2
> io_cancel(0x2a95557000, 0x7fbffff430, 0x7fbffff380) = -1 EAGAIN (Resource temporarily unavailable)
> io_getevents(0x2a95557000, 0x1, 0x2, 0x7fbffff3a0, 0x7fbffff370) = 2
> io_destroy(0x2a95557000)                = 0

I wanted

> $ ./strace ../test-aio 2>&1 | grep '^io_'
> io_setup(1, {182894030848})             = 0
> io_submit(182894030848, 2, {{0x123, 0, 0, 0, 0}, {0x456, 0, 0, 0, 0}}) = 2
> io_cancel(182894030848, {0x123, 0, 0, 0, 0}, {...}) = -1 EAGAIN (Resource temporarily unavailable)
> io_getevents(182894030848, 1, 2, {{0x123, 0x7fbffff430, -22, 0}, {0x456, 0x7fbffff3f0, -22, 0}}, {123, 456}) = 2
> io_destroy(182894030848)                = 0

so I whipped up a patch that adds support.  It might be fragile and bad as this is my first time diving into strace.  So I'm hoping that I can get feedback and if it's suitable that it can make its way upstream and into distros.

> $ gendiff . .decode-aio | diffstat
>  config.h.in                |    3
>  configure.ac               |    2
>  desc.c                     |  160 +++++++++++++++++++++++++++++++++++++++++++++
>  linux/alpha/syscallent.h   |   10 +-
>  linux/hppa/syscallent.h    |   10 +-
>  linux/ia64/syscallent.h    |   10 +-
>  linux/mips/syscallent.h    |   10 +-
>  linux/powerpc/syscallent.h |   10 +-
>  linux/s390/syscallent.h    |   10 +-
>  linux/s390x/syscallent.h   |   10 +-
>  linux/syscall.h            |    1
>  linux/x86_64/syscallent.h  |   10 +-
>  12 files changed, 205 insertions(+), 41 deletions(-)

I'll attach the patch once the bug is filed.

DEAR BUGZILLA, IT SURE WOULD BE COOL IF I COULD ATTACH A FILE AT BUG CREATION TIME.  YOURS, HOOP-JUMPER.

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


How reproducible:
Always

Steps to Reproduce:
run strace on an app with aio syscalls, you crap.

Additional info:

Comment 1 Zach Brown 2005-04-15 22:08:28 UTC
Created attachment 113260 [details]
decode aio syscall args; against 4.5.11

Comment 2 Roland McGrath 2005-05-09 08:21:37 UTC
I put the patch in upstream.


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