From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jeff Moyer Subject: Re: [PATCH V2 0/2] Auto stop async-write on block device when device removed. Date: Mon, 23 Sep 2013 10:47:53 -0400 Message-ID: References: <201309171121559232246@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: axboe , viro , LKML , linux-fsdevel To: majianpeng Return-path: In-Reply-To: <201309171121559232246@gmail.com> (majianpeng@gmail.com's message of "Tue, 17 Sep 2013 11:21:58 +0800") Sender: linux-kernel-owner@vger.kernel.org List-Id: linux-fsdevel.vger.kernel.org majianpeng writes: > For async-write on block device,if device removed,but the vfs don't know it. > It will continue to do. > Patch1 set size of inode of block device to zero when removed disk.By this,vfs know > disk changed. > Path2 add size-check on blk_aio_write.If pos of write larger than size of inode,it will > return zero.So the user can check disk state. OK, so the basic problem is that __generic_file_aio_write will always return 0 after device removal, yes? I'm not sure why that's a real issue, can you explain exactly why you're trying to change this? As for your patches, I don't think that putting the i_size_write into invalidate_partitions is a good idea. Consider the case of rescanning partitions: you will always detect a size change now, which is not good. Cheers, Jeff