History

Merge tag 'for-5.7/io_uring-2020-03-29' of git://git.kernel.dk/linux-block

Pull io_uring updates from Jens Axboe: "Here are the io_uring changes for this merge window. Light on new features this time around (just splice + buffer selection), lots of cleanups, fixes, and improvements to existing support. In particular, this contains: - Cleanup fixed file update handling for stack fallback (Hillf) - Re-work of how pollable async IO is handled, we no longer require thread offload to handle that. Instead we rely using poll to drive this, with task_work execution. - In conjunction with the above, allow expendable buffer selection, so that poll+recv (for example) no longer has to be a split operation. - Make sure we honor RLIMIT_FSIZE for buffered writes - Add support for splice (Pavel) - Linked work inheritance fixes and optimizations (Pavel) - Async work fixes and cleanups (Pavel) - Improve io-wq locking (Pavel) - Hashed link write improvements (Pavel) - SETUP_IOPOLL|SETUP_SQPOLL improvements (Xiaoguang)" * tag 'for-5.7/io_uring-2020-03-29' of git://git.kernel.dk/linux-block: (54 commits) io_uring: cleanup io_alloc_async_ctx() io_uring: fix missing 'return' in comment io-wq: handle hashed writes in chains io-uring: drop 'free_pfile' in struct io_file_put io-uring: drop completion when removing file io_uring: Fix ->data corruption on re-enqueue io-wq: close cancel gap for hashed linked work io_uring: make spdxcheck.py happy io_uring: honor original task RLIMIT_FSIZE io-wq: hash dependent work io-wq: split hashing and enqueueing io-wq: don't resched if there is no work io-wq: remove duplicated cancel code io_uring: fix truncated async read/readv and write/writev retry io_uring: dual license io_uring.h uapi header io_uring: io_uring_enter(2) don't poll while SETUP_IOPOLL|SETUP_SQPOLL enabled io_uring: Fix unused function warnings io_uring: add end-of-bits marker and build time verify it io_uring: provide means of removing buffers io_uring: add IOSQE_BUFFER_SELECT support for IORING_OP_RECVMSG ...

Linus Torvalds committed 6 years ago

Commit e59cd882 parents 1592614 3d9932a12 files · +1826 −856Browse files

Showing the changes to include/trace (1 of 12 files). Show all

Unified · Split

include/trace/events/io_uring.h+103−0
@@ -357,6 +357,109 @@ TRACE_EVENT(io_uring_submit_sqe, · 356 unmodified lines
357357 __entry->force_nonblock, __entry->sq_thread)
358358 );
359359
360+TRACE_EVENT(io_uring_poll_arm,
361+
362+ TP_PROTO(void *ctx, u8 opcode, u64 user_data, int mask, int events),
363+
364+ TP_ARGS(ctx, opcode, user_data, mask, events),
365+
366+ TP_STRUCT__entry (
367+ __field( void *, ctx )
368+ __field( u8, opcode )
369+ __field( u64, user_data )
370+ __field( int, mask )
371+ __field( int, events )
372+ ),
373+
374+ TP_fast_assign(
375+ __entry->ctx = ctx;
376+ __entry->opcode = opcode;
377+ __entry->user_data = user_data;
378+ __entry->mask = mask;
379+ __entry->events = events;
380+ ),
381+
382+ TP_printk("ring %p, op %d, data 0x%llx, mask 0x%x, events 0x%x",
383+ __entry->ctx, __entry->opcode,
384+ (unsigned long long) __entry->user_data,
385+ __entry->mask, __entry->events)
386+);
387+
388+TRACE_EVENT(io_uring_poll_wake,
389+
390+ TP_PROTO(void *ctx, u8 opcode, u64 user_data, int mask),
391+
392+ TP_ARGS(ctx, opcode, user_data, mask),
393+
394+ TP_STRUCT__entry (
395+ __field( void *, ctx )
396+ __field( u8, opcode )
397+ __field( u64, user_data )
398+ __field( int, mask )
399+ ),
400+
401+ TP_fast_assign(
402+ __entry->ctx = ctx;
403+ __entry->opcode = opcode;
404+ __entry->user_data = user_data;
405+ __entry->mask = mask;
406+ ),
407+
408+ TP_printk("ring %p, op %d, data 0x%llx, mask 0x%x",
409+ __entry->ctx, __entry->opcode,
410+ (unsigned long long) __entry->user_data,
411+ __entry->mask)
412+);
413+
414+TRACE_EVENT(io_uring_task_add,
415+
416+ TP_PROTO(void *ctx, u8 opcode, u64 user_data, int mask),
417+
418+ TP_ARGS(ctx, opcode, user_data, mask),
419+
420+ TP_STRUCT__entry (
421+ __field( void *, ctx )
422+ __field( u8, opcode )
423+ __field( u64, user_data )
424+ __field( int, mask )
425+ ),
426+
427+ TP_fast_assign(
428+ __entry->ctx = ctx;
429+ __entry->opcode = opcode;
430+ __entry->user_data = user_data;
431+ __entry->mask = mask;
432+ ),
433+
434+ TP_printk("ring %p, op %d, data 0x%llx, mask %x",
435+ __entry->ctx, __entry->opcode,
436+ (unsigned long long) __entry->user_data,
437+ __entry->mask)
438+);
439+
440+TRACE_EVENT(io_uring_task_run,
441+
442+ TP_PROTO(void *ctx, u8 opcode, u64 user_data),
443+
444+ TP_ARGS(ctx, opcode, user_data),
445+
446+ TP_STRUCT__entry (
447+ __field( void *, ctx )
448+ __field( u8, opcode )
449+ __field( u64, user_data )
450+ ),
451+
452+ TP_fast_assign(
453+ __entry->ctx = ctx;
454+ __entry->opcode = opcode;
455+ __entry->user_data = user_data;
456+ ),
457+
458+ TP_printk("ring %p, op %d, data 0x%llx",
459+ __entry->ctx, __entry->opcode,
460+ (unsigned long long) __entry->user_data)
461+);
462+
360463 #endif /* _TRACE_IO_URING_H */
361464
362465 /* This part must be outside protection */

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t