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 [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to