From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753467AbcARCYV (ORCPT ); Sun, 17 Jan 2016 21:24:21 -0500 Received: from mail-sg2apc01on0131.outbound.protection.outlook.com ([104.47.125.131]:63674 "EHLO APC01-SG2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1753371AbcARCYS (ORCPT ); Sun, 17 Jan 2016 21:24:18 -0500 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=hoshino@labs.cybozu.co.jp; Subject: Re: crashblk: a block device crash emulator. To: Josef Bacik , Andreas Dilger References: <5696FEED.1080604@labs.cybozu.co.jp> <5698957C.8010508@labs.cybozu.co.jp> <56995210.2000201@fb.com> CC: linux-fsdevel , , From: Takashi HOSHINO Message-ID: <569C4CC1.3000601@labs.cybozu.co.jp> Date: Mon, 18 Jan 2016 11:24:01 +0900 User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.5.1 MIME-Version: 1.0 In-Reply-To: <56995210.2000201@fb.com> Content-Type: text/plain; charset="windows-1252"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [61.202.247.129] X-ClientProxiedBy: KAWPR01CA0030.jpnprd01.prod.outlook.com (2a01:111:e400:b00b::12) To SIXPR03MB0783.apcprd03.prod.outlook.com (2a01:111:e400:b40e::23) X-Microsoft-Exchange-Diagnostics: 1;SIXPR03MB0783;2:wwW1ITmlE1MvWNJdZWSu8Njxej4sEMZyjxeVh9UwOhTb+BIHsLD+Ii7kq0lQnxLGZBaJu9UYeOvUdRUsa6ujb9Bw6Zwdg2RsdsY1fbxqQ/e5yR5E0jyEDexFXyad9JwEV/GVP4RVWj/ecC3ncquFTw==;3:H/c63M8uNwonUhJstXPgoSR9WqyZILdlUvHhtinie10iyM5YG+yTqw1Y9QR6QVNhC1RNhTH7q07P466aH9bOozyEf33twv9pBqE8O91IK8qywtZSAbcusm9a3rdUXUO+;25:KfDoAf31OhAyEcRbhVi3/tjKnIoGTulHjBlFGAAEZNrxALFKpV6SIYWSDmCRaly44b9Rh7ns2fRwDqHi1fhi3KfqY/IsUlqXGxc4wSFinb0d9H2HkWmCIk5066xCX4YCBFn69IjJz5QFbrBBtjTbzaWTFqKW1uznLby+eU9SeVcZfE4nz9YvGm8xV+w6M3M1CmwHWBv0HwKTUHIMPzoK0hTrkMzkfPx1yBEV/5shynsLRuol9b3WSgYT7jVd3pF7 X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:SIXPR03MB0783; X-MS-Office365-Filtering-Correlation-Id: fc469d80-1cef-443c-116d-08d31fae74fe X-Microsoft-Exchange-Diagnostics: 1;SIXPR03MB0783;20:ZtpUWD5APXg2cS1IOq2S1r3zCFAUbPtYIAFUGqOMmcGdEfKTKwtDs4yQqsexdJdrJ1Py0q4leIsImQkaBRFD4qcLpsJArDKko5ukcVgHSapjeMy4304qCSIrIUaDvpdSy0xZvzD6iT6U6uKtjNYdZ3N1NWnbQcUG1aYzws2tL8DExA2UB2/A4FvuxNGkw1tu+Y6tEcWsRsQL+JH5yp9iOzwxixnKzb2guCZwO3Xt2+q1gXOYmo1H3OBaUb14sfhQ6vqGRhzt+6AWPzME53+uAljKNLCec04k3Oj6Y9+8mfmwtP9peODxXY1WG29+NDAAmuvfK67Mx3bsesdtvreQiw0p0u4djQthYG1/Awqhg1lLOiaG5/xhy8A4f6puj551ZTr1k+lPGlYTxSwX4828aUlUCp/Om2SIKrTBvJyCmAEDhOSFtL6AbREjCwQOLr7zwPK9sJTLLVK2AcnODbky9C6nF0NJH6wD0/HN00wLLbrMU2HRtdSS6SMZDN0qqRfR;4:fV6p/wEhV/V5uLPgO4a1jqmatG5/s9NMZRKCBe9Lpf5zOBn7m5y10xleAA3oK3yk8txQlX1Mp6jwTvogK9093rVnRpJRcFLknzlQnqsJAa88QYE1AC0MYBW6QZCSKxN7r63maFwia9dRJq4831M5TKgV3opKEAQtNvX9QDgDbqwhenZHYQG8Cn4V0dkbMNiHVoDs4UOp1nlXUtNyLcTxTBWt1phqT2PAAgxlgfAwr+vT20fzjkMJ7ZhwtT9uFpVtqwA1iK5b7sj9ViHkymvTr0k4VfUsUZwQ2BgFcruPZnAeqnQPtLqJi6Iq4edXevvc0EdKxXgwJlep/b5486COS5uD5y/WJmFxHwQ4JTCpP6ZZgC2L+ebD7YjfT1BU0k/AJ+NtCUmz2reGW+bqNO8bFJ5hF0hv2Biw7At9xDNC7RtORMroNf88NcXbLTysIqQf X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(104891823409981); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(5005006)(8121501046)(520078)(10201501046)(3002001);SRVR:SIXPR03MB0783;BCL:0;PCL:0;RULEID:;SRVR:SIXPR03MB0783; X-Forefront-PRVS: 08252193F3 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10019020)(979002)(6009001)(6049001)(53754006)(189002)(479174004)(199003)(24454002)(377454003)(164054003)(586003)(80316001)(87976001)(23746002)(105586002)(5008740100001)(5001960100002)(93886004)(1096002)(2950100001)(77096005)(64126003)(230700001)(5004730100002)(83506001)(33656002)(101416001)(97736004)(5001770100001)(189998001)(87266999)(65806001)(74482002)(3846002)(65956001)(76176999)(122386002)(50466002)(81156007)(40100003)(54356999)(4001350100001)(50986999)(106356001)(4326007)(6116002)(59896002)(86362001)(19580405001)(92566002)(19580395003)(2906002)(66066001)(65816999)(47776003)(42186005)(969003)(989001)(999001)(1009001)(1019001);DIR:OUT;SFP:1102;SCL:1;SRVR:SIXPR03MB0783;H:[10.210.39.1];FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?Windows-1252?Q?1;SIXPR03MB0783;23:cTm1HnDen6bgXGQqe7E1bbUlP8QWnXdj0fWlD?= =?Windows-1252?Q?gzA/ErM9tJ6Evl7uJDhHsJZ55yMudLmZFOB9SVg2N+xUyql7FmTivmjB?= =?Windows-1252?Q?Q3bqSdO/sbIckYDxwpA0qzTyeXLqq3upp0d7ZNBZyNpjFpv1gDiQtZ1T?= =?Windows-1252?Q?WTHeJ4ej2DIOSKmXGPdB3I7BPq2Jrs2A9ViepbGKHDkSZOmyV36qZz/D?= =?Windows-1252?Q?GTioh0eJm9Svjuu2PcLrF95cusc1iWKHFtXhG9BAHaKRLOeB69qhhTLY?= =?Windows-1252?Q?oiIOBNgBQGrlc8dYIq2OgbS0U56wElXmszPA+QTLEMwB9RpYUSp4iO9k?= =?Windows-1252?Q?UzVXouH5oj144JOIE6UYd7tqDSLc1cdJDnQhRktuuouhStmwbPMQwVwq?= =?Windows-1252?Q?tLpM9Nfd13jR28nPF216eSBRoaffrY3h6nwvyX1uozeAzEhRM0zOUxxy?= =?Windows-1252?Q?z42uTBy/HUQfbmNJJr3PotmODWZ/ZE4gCY7q/3OxPeV9I+6QbLuG80PV?= =?Windows-1252?Q?aobKHb4dp8+CEHTtpKzPsGRF9ak3/dBoFeI4FX6IQ5n8tp6kDZATBDkP?= =?Windows-1252?Q?B5L9dFb7rot3P9InrgUXe+55pnFBzYKzxlV0nbp7+qnpUUWmbZFV62+a?= =?Windows-1252?Q?Y+NIGN8vwGoFrd3ckK20LvND0zisNeiuPCrNIrJwHSqX/ZDoElhN2sGX?= =?Windows-1252?Q?BPREt6b23Rj8OOEK1fMMaAftYaAwBiCUvxE0Px8nxnCWWiKbWRKDxY87?= =?Windows-1252?Q?txuDrhucQVoEEWGbgFstbFb2tMlt88o7/UG4LW5TXVaDSG4AvKJNXFhz?= =?Windows-1252?Q?hSp1Ucpi0FNdqd+EJRZ5y+1aFq0/9VR5v0UW9MIjEdxUbEL79XW4OgCq?= =?Windows-1252?Q?hZ6nniO/UmUYtKFAqycNO+m2XgOXcy1KLSFyVfl8tInvODtEC0HXugPL?= =?Windows-1252?Q?UOvjVQ3G/oCgKY7zfg+7KBBugXeBHM6F5auRrOGAC9Jowe336OpN7xzh?= =?Windows-1252?Q?POCpDVP5VhGYBVXTZg+wI7gO6r22NJ+xSqwAxVlxob5GY1k0YRu8zGKq?= =?Windows-1252?Q?iKLRB6g6vgxiLzW99lUAlINJRDT6W6N7JifG1cLJpN8w5RcQuO1u12NA?= =?Windows-1252?Q?AlW2T+v9fZHCyiHDoNgDu+95Z6OrOa9ZEWPHxTkI3nZt9uinexzFaqIx?= =?Windows-1252?Q?1CFF6uwcp4GubZhdrG15unGlrqqJHbRNtDG4eETSLiTIPa2/dgPsK596?= =?Windows-1252?Q?S0UWLdTDsN48xc/9KTBdSHq4d0KihnNUCKGBnhS8PRbiA4zJ71z/ufzD?= =?Windows-1252?Q?zlXd7gJVtVMs234T2HwGldzdwryvF28rGHWBjGcOhGFFerRxNRbKC3LL?= =?Windows-1252?Q?8yi55JyrOonQYLOK+3Kf1sYasAF/rZgVkqOHuy58vFRrM8JX2NF3DlzU?= =?Windows-1252?Q?QIl2ZpmQQpbOGQW1nwQrYOorhZrTzlqnEq7n9a1QjOovpD3WTgmT5iM2?= =?Windows-1252?Q?lM4negNCiuEMnVGWpv8vZd55aGcP4dZgwq+b/S5NzGefH6S76YCaYXFF?= =?Windows-1252?Q?lGjKeve7NiEKMY4auYnNVp6XCwIvXdo9je6d0IXZRLyFZ9CH9wYssdeR?= =?Windows-1252?B?QT09?= X-Microsoft-Exchange-Diagnostics: 1;SIXPR03MB0783;5:TGSoYI3/1C/rVzuvr7+c//JgiQ91OF+4P1FHFW4mkN/xjMxBfopFjaik2YD1HjtVfTHjZ6UZj6HXu4LQXD03V3IUamKd+R8QwysJczD7NyR3r9NZ8Y+06A55ghiMpF4RXm08akmaY8+KaMa8jlQSXA==;24:lSq9JC+x1W3eDAtsPAqBMsjFHoOZw2i41lMuR9eqOpJoUvWIlzvvCbsN0d+uwPnZETvouxFuo27MSTnVD009q8Z61p8ZGbD0uW02hhL07Qc= SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: labs.cybozu.co.jp X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Jan 2016 02:24:13.1325 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: SIXPR03MB0783 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 2016/01/16 5:09, Josef Bacik wrote: > On 01/15/2016 01:45 AM, Takashi HOSHINO wrote: >> Hi Andreas, >> >> On 2016/01/15 4:44, Andreas Dilger wrote: >>> On Jan 13, 2016, at 6:50 PM, Takashi HOSHINO >>> wrote: >>>> >>>> Hi all, >>>> >>>> I'm developing 'crashblk'. >>>> It is a memory block device driver to emulate crash, IO error, >>>> and various response time. >>> >>> Why not use/improve dm-flakey for this, rather than making yet another >>> device that does something similar? >> >> I did not know dm-flakey until your reply. Thank you. >> >> I read its documents and code a bit. >> The big purpose of two projects are the same, which is to test software >> on block devices with errors, but their functions are almost different. >> >> It may be nice idea to implement alternative implementation of crashblk >> on device-mapper version by someone. >> Currently I'm not familiar with device-mapper development, and I do not >> have any motivation with it. >> > > There's also dm-log-writes which will log writes to an external journal > to allow you to replay writes and verify the fs is consistent at all > steps of operation. Thanks, My colleague let me know about dm-log-writes several months ago and I read its code. Its very small and nice! (<1000 lines) I felt it is useful to DEBUG file systems or wrapper devices but not useful to TEST them because it will tell us too much information. BTW, our another software WalB, which is our primary test target of crashblk, also log-writes to an journal device. Its primary usage is to backup devices incrementally or to replicate them, while it may also useful for debug purpose. But WalB uses journals not only to extract logs for replay but also to keep consistency and control durability of data like some filesystems, so it requires more code. Thanks, Takashi