From mboxrd@z Thu Jan 1 00:00:00 1970 From: majianpeng Subject: [PATCH V2 0/2] Auto stop async-write on block device when device removed. Date: Tue, 17 Sep 2013 11:21:58 +0800 Message-ID: <201309171121559232246@gmail.com> Reply-To: majianpeng Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: base64 Cc: LKML , linux-fsdevel To: axboe , viro Return-path: Sender: linux-kernel-owner@vger.kernel.org List-Id: linux-fsdevel.vger.kernel.org Rm9yIGFzeW5jLXdyaXRlIG9uIGJsb2NrIGRldmljZSxpZiBkZXZpY2UgcmVtb3ZlZCxidXQgdGhl IHZmcyBkb24ndCBrbm93IGl0Lg0KSXQgd2lsbCBjb250aW51ZSB0byBkby4NClBhdGNoMSBzZXQg c2l6ZSBvZiBpbm9kZSBvZiBibG9jayBkZXZpY2UgdG8gemVybyB3aGVuIHJlbW92ZWQgZGlzay5C eSB0aGlzLHZmcyBrbm93IA0KZGlzayBjaGFuZ2VkLg0KUGF0aDIgYWRkIHNpemUtY2hlY2sgb24g YmxrX2Fpb193cml0ZS5JZiBwb3Mgb2Ygd3JpdGUgbGFyZ2VyIHRoYW4gc2l6ZSBvZiBpbm9kZSxp dCB3aWxsDQpyZXR1cm4gemVyby5TbyB0aGUgdXNlciBjYW4gY2hlY2sgZGlzayBzdGF0ZS4NCg0K VjI6DQpwYXRjaDE6DQogICAgICAtY29uc2lkZXIgdGhlIGNhc2Ugd2hpY2ggZGlzayBoYXMgcGFy dGl0aW9ucw0KICAgICAgLW1vdmUgaV9zaXplX3dyaXRlIGludG8gZnVuYyBpbnZhbGlkYXRlX3Bh cnRpdGlvbg0KcGF0Y2gyOiBObyBjaGFuZ2UNCg0KSmlhbnBlbmcgTWEgKDIpOg0KICBibG9jazog U2V0IGlub2RlIG9mIGJsb2NrX2RldmljZSBzaXplIHRvIHplcm8gd2hlbiBkZWxldGUgZ2VuZGlz ay4NCiAgYmxvY2tfZGV2OiBBZGQgc2l6ZSBjaGVjayBiZWZvcmUgZG9pbmcgYXN5bmMgd3JpdGUg b24gYmxvY2sgZGV2aWNlLg0KDQogYmxvY2svZ2VuaGQuYyB8IDYgKysrKysrDQogZnMvYmxvY2tf ZGV2LmMgfCAgNCArKysrDQogMiBmaWxlcyBjaGFuZ2VkLCAxMCBpbnNlcnRpb25zKCspDQoNCi0t IA0KMS44LjQtcmMw From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752264Ab3IQDWJ (ORCPT ); Mon, 16 Sep 2013 23:22:09 -0400 Received: from mail-pd0-f176.google.com ([209.85.192.176]:33058 "EHLO mail-pd0-f176.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752117Ab3IQDWF (ORCPT ); Mon, 16 Sep 2013 23:22:05 -0400 Date: Tue, 17 Sep 2013 11:21:58 +0800 From: majianpeng To: axboe , viro Cc: LKML , linux-fsdevel Reply-To: majianpeng Subject: [PATCH V2 0/2] Auto stop async-write on block device when device removed. X-Priority: 3 X-GUID: 88952C34-4B77-4599-AB14-332896586588 X-Has-Attach: no X-Mailer: Foxmail 7.0.1.93[cn] Mime-Version: 1.0 Message-ID: <201309171121559232246@gmail.com> Content-Type: text/plain; charset="us-ascii" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from base64 to 8bit by mail.home.local id r8H3MGYl008936 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. V2: patch1: -consider the case which disk has partitions -move i_size_write into func invalidate_partition patch2: No change Jianpeng Ma (2): block: Set inode of block_device size to zero when delete gendisk. block_dev: Add size check before doing async write on block device. block/genhd.c | 6 ++++++ fs/block_dev.c | 4 ++++ 2 files changed, 10 insertions(+) -- 1.8.4-rc0{.n++%ݶw{.n+{G{ayʇڙ,jfhz_(階ݢj"mG?&~iOzv^m ?I