lkml.org 
[lkml]   [2007]   [Feb]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
Subject[PATCH -mm 0/7][AIO] - AIO completion signal notification v6

Hi Andrew,

here is the latest rework of the aio notification and listio support
patches with comments from Oleg Nesterov and you addressed.

Sébastien.

This set now consists in 7 patches:

1. rework-compat-sys-io-submit: cleanup the sys_io_submit() compat layer,
making it more efficient and laying out the base for the following patches

2. aio-header-fix-includes: fixes the double inclusion of uio.h in aio.h

3. aio-fix-access_ok-check: fixes the access_ok() checks

4. make-good_sigevent-non-static: move good_sigevent into signal.c, rename
it to something more meaningfull and make it non-static

5. make-__sigqueue_alloc-free-non-static: make __sigqueue_alloc() and
__sigqueue_free() non static

6. aio-notify-sig: the AIO completion signal notification

7. add-listio-syscall-support: adds listio support via a new syscall

Description are in the individual patches.


Changes from v5: based on comments from Oleg Nesterov and Andrew Morton

- Fix for signo range not checked in the SIGEV_THREAD_ID case in
good_sigevent()
- renamed good_sigevent() to sigevent_find_task()

- Fixed the access_ok checks in sys_io_submit() and
compat_sys_io_submit()

- Made __sigqueue_alloc() and __sigqueue_free() non static
- Reworked the aio code to directly use __sigqueue_alloc() and
__sigqueue_free() and avoid messing with SIGQUEUE_PREALLOC

- Removed the unneeded PF_EXITING check in aio_setup_sigevent()
- Added a comment in aio_setup_sigevent() for why there is no task
ref leak
- Changed read_lock(&tasklist_lock) to rcu_read_lock() in
aio_setup_sigevent()

- Fixed an ioctx reference leak in compat_sys_lio_submit()
- Renamed lio_check() as lio_notify()
- Added comments to lio_notify() and lio_create()
- Replaced sigqueue_free() by __sigqueue_free() in lio_notify()

Changes from v4:
No comments received for v4, so it must be perfect ;-)
replaced the IOCB_CMD_GROUP listio implementation with Bharata's
syscall approach which I find much cleaner.

Changes from v3:

- added justification for the compat_sys_io_submit() cleanup - Zach Brown
- more cleanups in compat_sys_io_submit() to put it in line with
sys_io_submit() - Zach Brown

- Changed "Export good_sigevent()" patch name to "Make good_sigevent()
non-static" to better describe what it does. - Christoph Hellwig
- Reworked good_sigevent() to make it more readable. - Christoph Hellwig

- Simplified the use of the SIGEV_* constants in signal notification -
Christoph Hellwig
- Take a reference on the target task both for the SIGEV_THREAD_ID and
SIGEV_SIGNAL cases.

Changes from v2:
- rebased to 2.6.19-rc6-mm2
- reworked the sys_io_submit() compat layer as suggested by Zach Brown
- fixed saving of a pointer to a task struct in aio-notify-sig as
pointed out by Andrew Morton

Changes from v1:
- cleanups suggested by Christoph Hellwig, Badari Pulavarty and
Zach Brown
- added lisio patch


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2007-02-01 10:41    [W:0.076 / U:0.452 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site