リブートを実行した場合に, 外部から見てフリーズしたかのように見える現象が発生することがあります(頻度は高くありません). この現象は 4.14.98 版でのみ発生し, 4.1.15 版では発生しません. この時, SysReq + w で blocked-tasks を確認すると下記のような状態になっていることが分かりました: | | sysrq: SysRq : Show Blocked State | task PC stack pid father | systemd D 0 1 0 0x00000000root@glory-pc1st:~# sysrq: SysRq : HELP : loglevel(0-9) reboot(b) crash(c) terminate-all-tasks(e) memory-full-oom-kill(f) kill-all-tasks(i) thaw-filesystems(j) sak(k) show-backtrace-all-active-cpus(l) show-memory-usage(m) nice-all-RT-tasks(n) poweroff(o) show-registers(p) show-all-timers(q) unraw(r) sync(s) show-task-states(t) unmount(u) show-blocked-tasks(w) | [<80988b30>] (__schedule) from [<80988ee8>] (schedule+0x48/0xb0) | [<80988ee8>] (schedule) from [<801511d0>] (io_schedule+0x14/0x34) | [<801511d0>] (io_schedule) from [<801c9c20>] (wait_on_page_bit_killable+0xfc/0x154) | [<801c9c20>] (wait_on_page_bit_killable) from [<801caaa0>] (generic_file_read_iter+0x288/0x980) | [<801caaa0>] (generic_file_read_iter) from [<8022102c>] (__vfs_read+0xd0/0x11c) | [<8022102c>] (__vfs_read) from [<80221104>] (vfs_read+0x8c/0x110) | [<80221104>] (vfs_read) from [<80221584>] (SyS_read+0x3c/0x90) | [<80221584>] (SyS_read) from [<80107980>] (ret_fast_syscall+0x0/0x54) | kblockd D 0 26 2 0x00000000 | Workqueue: kblockd blk_mq_run_work_fn | [<80988b30>] (__schedule) from [<80988ee8>] (schedule+0x48/0xb0) | [<80988ee8>] (schedule) from [<8070dc48>] (__mmc_claim_host+0xa4/0x1f8) | [<8070dc48>] (__mmc_claim_host) from [<80720898>] (mmc_mq_queue_rq+0x1e4/0x1fc) | [<80720898>] (mmc_mq_queue_rq) from [<803e8644>] (blk_mq_dispatch_rq_list+0x2b4/0x360) | [<803e8644>] (blk_mq_dispatch_rq_list) from [<803ec1e8>] (blk_mq_sched_dispatch_requests+0x150/0x1c4) | [<803ec1e8>] (blk_mq_sched_dispatch_requests) from [<803e6d2c>] (__blk_mq_run_hw_queue+0xb0/0x13c) | [<803e6d2c>] (__blk_mq_run_hw_queue) from [<80140e28>] (process_one_work+0x1d8/0x414) | [<80140e28>] (process_one_work) from [<80141284>] (rescuer_thread+0x220/0x3c4) | [<80141284>] (rescuer_thread) from [<801468d4>] (kthread+0x14c/0x154) | [<801468d4>] (kthread) from [<80107a68>] (ret_from_fork+0x14/0x2c) | kworker/0:1H D 0 106 2 0x00000000 | Workqueue: kblockd blk_mq_run_work_fn | [<80988b30>] (__schedule) from [<80988ee8>] (schedule+0x48/0xb0) | [<80988ee8>] (schedule) from [<8070dc48>] (__mmc_claim_host+0xa4/0x1f8) | [<8070dc48>] (__mmc_claim_host) from [<80720898>] (mmc_mq_queue_rq+0x1e4/0x1fc) | [<80720898>] (mmc_mq_queue_rq) from [<803e8644>] (blk_mq_dispatch_rq_list+0x2b4/0x360) | [<803e8644>] (blk_mq_dispatch_rq_list) from [<803ec1e8>] (blk_mq_sched_dispatch_requests+0x150/0x1c4) | [<803ec1e8>] (blk_mq_sched_dispatch_requests) from [<803e6d2c>] (__blk_mq_run_hw_queue+0xb0/0x13c) | [<803e6d2c>] (__blk_mq_run_hw_queue) from [<80140e28>] (process_one_work+0x1d8/0x414) | [<80140e28>] (process_one_work) from [<80141b24>] (worker_thread+0x50/0x598) | [<80141b24>] (worker_thread) from [<801468d4>] (kthread+0x14c/0x154) | [<801468d4>] (kthread) from [<80107a68>] (ret_from_fork+0x14/0x2c) | | …略 ここで, 4.14.98 版では NXP によって MMC 関連の多数のチェリーピッキングが行われていることに気付きました. これらは, アップストリームの 4.14.x にはバックポートされていないようなパッチですから, これは NXP による独自の対応だと思います. この, 「一見フリーズのように見える現象」に関連しそうに思える下記のパッチを取り除きました. mmc: block: Add CQE support https://source.codeaurora.org/external/imx/linux-imx/commit/?h=imx_4.14.98_2.0.0_ga&id=3547cf77129572836049b81485edf201d9efa58b mmc: block: Add blk-mq support https://source.codeaurora.org/external/imx/linux-imx/commit/?h=imx_4.14.98_2.0.0_ga&id=073ecedf8101875f89a5df28b0330e828b17f0bb mmc: core: Add parameter use_blk_mq https://source.codeaurora.org/external/imx/linux-imx/commit/?h=imx_4.14.98_2.0.0_ga&id=4bac30716796588d7b96368c99f134aa8f2f7762 mmc: core: Make mmc_pre_req() and mmc_post_req() available https://source.codeaurora.org/external/imx/linux-imx/commit/?h=imx_4.14.98_2.0.0_ga&id=8d619ea246729ba74ba4406f3415d0256565332f mmc: block: Simplify cleaning up the queue https://source.codeaurora.org/external/imx/linux-imx/commit/?h=imx_4.14.98_2.0.0_ga&id=867d450251e5fc0a47a3d7191163d370ebacb8ec mmc: core: Export a few functions needed for blkmq support https://source.codeaurora.org/external/imx/linux-imx/commit/?h=imx_4.14.98_2.0.0_ga&id=d51b98835feb1415947eb339cd5a08a405c0ed3d mmc: block: Factor out mmc_setup_queue() https://source.codeaurora.org/external/imx/linux-imx/commit/?h=imx_4.14.98_2.0.0_ga&id=429b36f48e6805383db9b63444d6f29e6bdcbcbb mmc: core: Introduce host claiming by context https://source.codeaurora.org/external/imx/linux-imx/commit/?h=imx_4.14.98_2.0.0_ga&id=10400dbfd99be098589add6667605f2a1efeddb6 mmc: block: Prepare CQE data https://source.codeaurora.org/external/imx/linux-imx/commit/?h=imx_4.14.98_2.0.0_ga&id=fb62ba05f867bf1915773d9737eee75036b020fd mmc: block: Use local variables in mmc_blk_data_prep() https://source.codeaurora.org/external/imx/linux-imx/commit/?h=imx_4.14.98_2.0.0_ga&id=3c0ac8a4edbcfc2c4eace910f021fa866676ae9b mmc: mmc: Enable CQE's https://source.codeaurora.org/external/imx/linux-imx/commit/?h=imx_4.14.98_2.0.0_ga&id=63daa5ea7e523837a9713ecccb0d09cf3d1c5dc7 mmc: mmc: Enable Command Queuing https://source.codeaurora.org/external/imx/linux-imx/commit/?h=imx_4.14.98_2.0.0_ga&id=717c88b68529b11ebfe59a41d95184d2774823be mmc: core: Add support for handling CQE requests https://source.codeaurora.org/external/imx/linux-imx/commit/?h=imx_4.14.98_2.0.0_ga&id=306a8c27e97709891a6dcbc958a6cf0ab8c9c20d MLK-16155-13 mmc: sdhci-esdhc-imx: add DCMD support for CMDQ https://source.codeaurora.org/external/imx/linux-imx/commit/drivers/mmc/host/sdhci-esdhc-imx.c?h=imx_4.14.98_2.0.0_ga&id=be1d407a4cf6f76f371ab1871613662f386f3835 MLK-16155-12 mmc: sdhci-esdhc-imx: add CMDQ support https://source.codeaurora.org/external/imx/linux-imx/commit/drivers/mmc/host/sdhci-esdhc-imx.c?h=imx_4.14.98_2.0.0_ga&id=7b4865890d2e9c9fd90552132278240af33da60f この結果, フリーズのように見える現象は発生しなくなるようです. この件について, 何らかの情報をお持ちでしょうか.