1. 14 6月, 2021 19 次提交
  2. 11 6月, 2021 3 次提交
    • P
      io_uring: add feature flag for rsrc tags · 9690557e
      Pavel Begunkov 提交于
      Add IORING_FEAT_RSRC_TAGS indicating that io_uring supports a bunch of
      new IORING_REGISTER operations, in particular
      IORING_REGISTER_[FILES[,UPDATE]2,BUFFERS[2,UPDATE]] that support rsrc
      tagging, and also indicating implemented dynamic fixed buffer updates.
      Signed-off-by: NPavel Begunkov <asml.silence@gmail.com>
      Link: https://lore.kernel.org/r/9b995d4045b6c6b4ab7510ca124fd25ac2203af7.1623339162.git.asml.silence@gmail.comSigned-off-by: NJens Axboe <axboe@kernel.dk>
      9690557e
    • P
      io_uring: change registration/upd/rsrc tagging ABI · 992da01a
      Pavel Begunkov 提交于
      There are ABI moments about recently added rsrc registration/update and
      tagging that might become a nuisance in the future. First,
      IORING_REGISTER_RSRC[_UPD] hide different types of resources under it,
      so breaks fine control over them by restrictions. It works for now, but
      once those are wanted under restrictions it would require a rework.
      
      It was also inconvenient trying to fit a new resource not supporting
      all the features (e.g. dynamic update) into the interface, so better
      to return to IORING_REGISTER_* top level dispatching.
      
      Second, register/update were considered to accept a type of resource,
      however that's not a good idea because there might be several ways of
      registration of a single resource type, e.g. we may want to add
      non-contig buffers or anything more exquisite as dma mapped memory.
      So, remove IORING_RSRC_[FILE,BUFFER] out of the ABI, and place them
      internally for now to limit changes.
      Signed-off-by: NPavel Begunkov <asml.silence@gmail.com>
      Link: https://lore.kernel.org/r/9b554897a7c17ad6e3becc48dfed2f7af9f423d5.1623339162.git.asml.silence@gmail.comSigned-off-by: NJens Axboe <axboe@kernel.dk>
      992da01a
    • E
      coredump: Limit what can interrupt coredumps · 06af8679
      Eric W. Biederman 提交于
      Olivier Langlois has been struggling with coredumps being incompletely written in
      processes using io_uring.
      
      Olivier Langlois <olivier@trillion01.com> writes:
      > io_uring is a big user of task_work and any event that io_uring made a
      > task waiting for that occurs during the core dump generation will
      > generate a TIF_NOTIFY_SIGNAL.
      >
      > Here are the detailed steps of the problem:
      > 1. io_uring calls vfs_poll() to install a task to a file wait queue
      >    with io_async_wake() as the wakeup function cb from io_arm_poll_handler()
      > 2. wakeup function ends up calling task_work_add() with TWA_SIGNAL
      > 3. task_work_add() sets the TIF_NOTIFY_SIGNAL bit by calling
      >    set_notify_signal()
      
      The coredump code deliberately supports being interrupted by SIGKILL,
      and depends upon prepare_signal to filter out all other signals.   Now
      that signal_pending includes wake ups for TIF_NOTIFY_SIGNAL this hack
      in dump_emitted by the coredump code no longer works.
      
      Make the coredump code more robust by explicitly testing for all of
      the wakeup conditions the coredump code supports.  This prevents
      new wakeup conditions from breaking the coredump code, as well
      as fixing the current issue.
      
      The filesystem code that the coredump code uses already limits
      itself to only aborting on fatal_signal_pending.  So it should
      not develop surprising wake-up reasons either.
      
      v2: Don't remove the now unnecessary code in prepare_signal.
      
      Cc: stable@vger.kernel.org
      Fixes: 12db8b69 ("entry: Add support for TIF_NOTIFY_SIGNAL")
      Reported-by: NOlivier Langlois <olivier@trillion01.com>
      Signed-off-by: N"Eric W. Biederman" <ebiederm@xmission.com>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      06af8679
  3. 09 6月, 2021 1 次提交
  4. 08 6月, 2021 1 次提交
  5. 06 6月, 2021 5 次提交
  6. 05 6月, 2021 1 次提交
  7. 04 6月, 2021 5 次提交
  8. 03 6月, 2021 5 次提交