The patch titled Subject: block-prep-work-for-batch-completion-fix-4 has been added to the -mm tree. Its filename is block-prep-work-for-batch-completion-fix-4.patch Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/SubmitChecklist when testing your code *** The -mm tree is included into linux-next and is updated there every 3-4 working days ------------------------------------------------------ From: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> Subject: block-prep-work-for-batch-completion-fix-4 fix it for mm-allow-for-outstanding-swap-writeback-accounting.patch Cc: Kent Overstreet <koverstreet@xxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- include/linux/swap.h | 6 ++++-- mm/page_io.c | 3 ++- 2 files changed, 6 insertions(+), 3 deletions(-) diff -puN include/linux/swap.h~block-prep-work-for-batch-completion-fix-4 include/linux/swap.h --- a/include/linux/swap.h~block-prep-work-for-batch-completion-fix-4 +++ a/include/linux/swap.h @@ -330,9 +330,11 @@ static inline void mem_cgroup_uncharge_s /* linux/mm/page_io.c */ extern int swap_readpage(struct page *); extern int swap_writepage(struct page *page, struct writeback_control *wbc); -extern void end_swap_bio_write(struct bio *bio, int err); +extern void end_swap_bio_write(struct bio *bio, int err, + struct batch_complete *batch); extern int __swap_writepage(struct page *page, struct writeback_control *wbc, - void (*end_write_func)(struct bio *, int)); + void (*end_write_func)(struct bio *bio, int err, + struct batch_complete *batch)); extern int swap_set_page_dirty(struct page *page); extern void end_swap_bio_read(struct bio *bio, int err, struct batch_complete *batch); diff -puN mm/page_io.c~block-prep-work-for-batch-completion-fix-4 mm/page_io.c --- a/mm/page_io.c~block-prep-work-for-batch-completion-fix-4 +++ a/mm/page_io.c @@ -204,7 +204,8 @@ out: } int __swap_writepage(struct page *page, struct writeback_control *wbc, - void (*end_write_func)(struct bio *, int)) + void (*end_write_func)(struct bio *bio, int err, + struct batch_complete *batch)) { struct bio *bio; int ret = 0, rw = WRITE; _ Patches currently in -mm which might be from akpm@xxxxxxxxxxxxxxxxxxxx are linux-next.patch arch-alpha-kernel-systblss-remove-debug-check.patch i-need-old-gcc.patch revert-ipc-dont-allocate-a-copy-larger-than-max.patch auditsc-use-kzalloc-instead-of-kmallocmemset-fix.patch drivers-video-implement-a-simple-framebuffer-driver-fix.patch timer_list-convert-timer-list-to-be-a-proper-seq_file.patch posix-timers-correctly-get-dying-task-time-sample-in-posix_cpu_timer_schedule.patch mm.patch mm-shmemc-remove-an-ifdef.patch xen-tmem-enable-xen-tmem-shim-to-be-built-loaded-as-a-module-fix.patch staging-zcache-enable-ramster-to-be-built-loaded-as-a-module-fix.patch memcg-relax-memcg-iter-caching-checkpatch-fixes.patch mm-make-snapshotting-pages-for-stable-writes-a-per-bio-operation.patch kexec-vmalloc-export-additional-vmalloc-layer-information-fix.patch mm-hugetlb-include-hugepages-in-meminfo-checkpatch-fixes.patch mm-speedup-in-__early_pfn_to_nid.patch mm-speedup-in-__early_pfn_to_nid-fix.patch include-linux-memoryh-implement-register_hotmemory_notifier.patch ipc-utilc-use-register_hotmemory_notifier.patch mm-slubc-use-register_hotmemory_notifier.patch drivers-base-nodec-switch-to-register_hotmemory_notifier.patch fs-proc-kcorec-use-register_hotmemory_notifier.patch kernel-cpusetc-use-register_hotmemory_notifier.patch mm-limit-growth-of-3%-hardcoded-other-user-reserve.patch mm-replace-hardcoded-3%-with-admin_reserve_pages-knob.patch mm-reinititalise-user-and-admin-reserves-if-memory-is-added-or-removed.patch mm-reinititalise-user-and-admin-reserves-if-memory-is-added-or-removed-v9-checkpatch-fixes.patch resource-add-release_mem_region_adjustable-fix.patch resource-add-release_mem_region_adjustable-fix-fix.patch resource-add-release_mem_region_adjustable-fix-fix-fix.patch mm-madvise-complete-input-validation-before-taking-lock-fix.patch clear_refs-sanitize-accepted-commands-declaration-fix.patch selftest-add-simple-test-for-soft-dirty-bit.patch memcg-add-memorypressure_level-events-checkpatch-fixes.patch memcg-add-memorypressure_level-events-fix.patch mm-thp-add-split-tail-pages-to-shrink-page-list-in-page-reclaim-fix-fix.patch include-linux-mmzoneh-cleanups.patch include-linux-mmzoneh-cleanups-fix.patch drop_caches-add-some-documentation-and-info-messsge.patch memcg-debugging-facility-to-access-dangling-memcgs-fix.patch genalloc-add-devres-support-allow-to-find-a-managed-pool-by-device-fix.patch genalloc-add-devres-support-allow-to-find-a-managed-pool-by-device-fix-fix.patch misc-generic-on-chip-sram-allocation-driver-fix.patch kernel-smpc-cleanups.patch early_printk-consolidate-random-copies-of-identical-code-v3-fix.patch include-linux-printkh-include-stdargh.patch get_maintainer-use-filename-only-regex-match-for-tegra-fix.patch argv_split-teach-it-to-handle-mutable-strings-fix.patch lib-string_helpers-introduce-generic-string_unescape-fix.patch kernel-timerc-ove-some-non-timer-related-syscalls-to-kernel-sysc-checkpatch-fixes.patch epoll-trim-epitem-by-one-cache-line-on-x86_64-fix.patch binfmt_elfc-use-get_random_int-to-fix-entropy-depleting.patch init-mainc-convert-to-pr_foo.patch rtc-ds1307-long-block-operations-bugfix.patch hfsplus-fix-warnings-in-fs-hfsplus-bfindc-in-function-hfs_find_1st_rec_by_cnid-fix.patch usermodehelper-export-_exec-and-_setup-functions-fix.patch kexec-use-min_t-to-simplify-logic-fix.patch ipc-introduce-obtaining-a-lockless-ipc-object-fix.patch ipcsem-do-not-hold-ipc-lock-more-than-necessary-fix-checkpatch-fixes.patch ipcsem-open-code-and-rename-sem_lock-fix.patch ipc-sysv-shared-memory-limited-to-8tib-fix.patch kernel-pidc-improve-flow-of-a-loop-inside-alloc_pidmap-fix.patch pid_namespacec-h-simplify-defines-fix.patch drivers-net-rename-random32-to-prandom_u32-fix.patch gadget-remove-only-user-of-aio-retry-checkpatch-fixes.patch aio-remove-retry-based-aio-checkpatch-fixes.patch aio-add-kiocb_cancel.patch aio-make-aio_put_req-lockless-checkpatch-fixes.patch aio-refcounting-cleanup-checkpatch-fixes.patch wait-add-wait_event_hrtimeout.patch aio-make-aio_read_evt-more-efficient-convert-to-hrtimers-checkpatch-fixes.patch aio-use-cancellation-list-lazily.patch aio-give-shared-kioctx-fields-their-own-cachelines.patch generic-dynamic-per-cpu-refcounting.patch generic-dynamic-per-cpu-refcounting-checkpatch-fixes.patch aio-dont-include-aioh-in-schedh.patch aio-dont-include-aioh-in-schedh-fix.patch aio-kill-ki_retry.patch aio-kill-ki_retry-fix.patch aio-kill-ki_retry-checkpatch-fixes.patch block-prep-work-for-batch-completion-checkpatch-fixes.patch block-prep-work-for-batch-completion-fix-2.patch block-prep-work-for-batch-completion-fix-3.patch block-prep-work-for-batch-completion-fix-3-fix.patch block-prep-work-for-batch-completion-fix-4.patch block-aio-batch-completion-for-bios-kiocbs.patch block-aio-batch-completion-for-bios-kiocbs-checkpatch-fixes.patch block-aio-batch-completion-for-bios-kiocbs-fix.patch lib-add-lz4-compressor-module-fix.patch crypto-add-lz4-cryptographic-api-fix.patch debugging-keep-track-of-page-owners-fix-2-fix.patch debugging-keep-track-of-page-owners-fix-2-fix-fix-fix.patch journal_add_journal_head-debug.patch kernel-forkc-export-kernel_thread-to-modules.patch mutex-subsystem-synchro-test-module.patch slab-leaks3-default-y.patch put_bh-debug.patch -- To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html