Received: by 2002:a05:6a10:9e8c:0:0:0:0 with SMTP id y12csp299707pxx; Thu, 29 Oct 2020 03:01:04 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxwESy5U6Y5iwLa5zR/YuaEIt9ljVHReCdW2TAXtDbz7Cgoh8VEHaBf96C5fZaT1S2g/bNl X-Received: by 2002:a17:906:6d04:: with SMTP id m4mr3443237ejr.68.1603965663621; Thu, 29 Oct 2020 03:01:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1603965663; cv=none; d=google.com; s=arc-20160816; b=WuULAmJyDgDyIoE6jk4nsDhNakAHgmSF4xM9IQXeYws5FKM0HhbUOjQpl47QZhO0SW 3zmkam+BCle6l3sKO6TxNitXIaUAiTnCJwnG+lIIc48yzAoLSVOZ3lqpjD/a9oYuY2NE PzILuG4Klg06lmVtabwZ9hLoCwwJnilKG0f+o8WqK1+OIordMtO5YIdiApQpQKghIbFH hAseYZ7s8o+b1t4yAgOFYYbIfOSPyTyKdgOzkU55/bD+9pODQc2SJ/lI6mfWwhDdWi5T R6CB5VaLo1O9syZi05y2tEQvN3SXzpC/ESk6RnKv2Fz7//XfaEoGJZgl7tzqrK77rrCQ lvAg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:message-id:date:subject:cc:to:from; bh=9dx7plUxCX4jyhogFsxNm5RXbVjzzZ7MapJegfERjbw=; b=B0D5DE7MXEnQxlzCIX8dlvE732bqESwwoyn2uGlh0jeCPpluZ5sImUnZvWLPPsvMi+ 8+pWktOAC9SQs0Zm4Ux+ZkCQMpTq252PbZ4kJ518ZL0tIBXGKLQOFpecnEFV7LryRiI1 HNh9Vyd41/sVC1cry4BvjXb1IMLdZE8fdV7G6tzIczEFoZkt+cCiu46vRDw+nZ200PYf k2LGDIrqB2g+eFa0xW9Tq3f+MDXO5RzSpkQIMrcQQV6yZirvkAY39C7vL7lbVN5ezi42 x8X81J5fR40HFGh8z4ZtXsu6RSvOePMmvnDvRUYpgBPcxxhSdPmcCTUsEfTEwSMCv/82 p5zw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id t17si1399448ejf.597.2020.10.29.03.00.41; Thu, 29 Oct 2020 03:01:03 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2390465AbgJ1X26 (ORCPT + 99 others); Wed, 28 Oct 2020 19:28:58 -0400 Received: from alexa-out.qualcomm.com ([129.46.98.28]:4913 "EHLO alexa-out.qualcomm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2390331AbgJ1X1G (ORCPT ); Wed, 28 Oct 2020 19:27:06 -0400 Received: from ironmsg07-lv.qualcomm.com (HELO ironmsg07-lv.qulacomm.com) ([10.47.202.151]) by alexa-out.qualcomm.com with ESMTP; 28 Oct 2020 04:20:46 -0700 X-QCInternal: smtphost Received: from ironmsg02-blr.qualcomm.com ([10.86.208.131]) by ironmsg07-lv.qulacomm.com with ESMTP/TLS/AES256-SHA; 28 Oct 2020 04:20:44 -0700 X-QCInternal: smtphost Received: from vbadigan1-linux.qualcomm.com ([10.206.25.77]) by ironmsg02-blr.qualcomm.com with ESMTP; 28 Oct 2020 16:50:23 +0530 Received: by vbadigan1-linux.qualcomm.com (Postfix, from userid 76677) id 9FEE9213D0; Wed, 28 Oct 2020 16:50:22 +0530 (IST) From: Veerabhadrarao Badiganti To: adrian.hunter@intel.com, ulf.hansson@linaro.org Cc: linux-mmc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, Veerabhadrarao Badiganti , Jens Axboe , Baolin Wang , Chaotian Jing , Peng Hao Subject: [PATCH] mmc: block: Prevent new req entering queue while freeing up the queue Date: Wed, 28 Oct 2020 16:49:42 +0530 Message-Id: <1603883984-24333-1-git-send-email-vbadigan@codeaurora.org> X-Mailer: git-send-email 2.7.4 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The commit bbdc74dc19e0 ("mmc: block: Prevent new req entering queue after its cleanup") has introduced this change but it got moved after del_gendisk() with commit 57678e5a3d51 ("mmc: block: Delete gendisk before cleaning up the request queue"). It is blocking reboot with below Call stack(). INFO: task reboot:3086 blocked for more than 122 seconds. __schedule schedule schedule_timeout io_schedule_timeout do_wait_for_common wait_for_completion_io submit_bio_wait blkdev_issue_flush ext4_sync_fs __sync_filesystem sync_filesystem fsync_bdev invalidate_partition del_gendisk mmc_blk_remove_req mmc_blk_remove mmc_bus_remove device_release_driver_internal device_release_driver bus_remove_device device_del mmc_remove_card mmc_remove mmc_stop_host mmc_remove_host sdhci_remove_host sdhci_msm_remove sdhci_msm_shutdown platform_drv_shutdown device_shutdown kernel_restart_prepare kernel_restart So bringing this change back. Signed-off-by: Veerabhadrarao Badiganti --- I'm observing this issue 100% of the time with shutdown callback added to sdhci-msm driver. I'm trying on 5.4 kernel with ChromeOS. Please let me know if this can be fixed in a better way. --- drivers/mmc/core/block.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/mmc/core/block.c b/drivers/mmc/core/block.c index 8d3df0be0355..76dbb2b8a13b 100644 --- a/drivers/mmc/core/block.c +++ b/drivers/mmc/core/block.c @@ -2627,6 +2627,7 @@ static void mmc_blk_remove_req(struct mmc_blk_data *md) * from being accepted. */ card = md->queue.card; + blk_set_queue_dying(md->queue.queue); if (md->disk->flags & GENHD_FL_UP) { device_remove_file(disk_to_dev(md->disk), &md->force_ro); if ((md->area_type & MMC_BLK_DATA_AREA_BOOT) && -- Qualcomm India Private Limited, on behalf of Qualcomm Innovation Center, Inc., is a member of Code Aurora Forum, a Linux Foundation Collaborative Project