Submitter | Jun Wu |
---|---|
Date | March 12, 2017, 9:23 a.m. |
Message ID | <10ec43758c6b4034a0ee.1489310634@localhost.localdomain> |
Download | mbox | patch |
Permalink | /patch/19141/ |
State | Changes Requested |
Headers | show
Return-Path: <mercurial-devel-bounces@mercurial-scm.org> X-Original-To: patchwork@mercurial-scm.org Delivered-To: patchwork@mercurial-scm.org Received: from localhost (localhost [127.0.0.1]) by mercurial-scm.org (Postfix) with ESMTP id DCE6E2C1E9; Sun, 12 Mar 2017 05:24:34 -0400 (EDT) X-Virus-Scanned: Debian amavisd-new at mercurial-scm.org Received: from mercurial-scm.org ([127.0.0.1]) by localhost (mercurial-scm.org [127.0.0.1]) (amavisd-new, port 10024) with LMTP id 2EDWT3HEUZgM; Sun, 12 Mar 2017 05:24:34 -0400 (EDT) Received: from mercurial-scm.org (localhost [IPv6:::1]) by mercurial-scm.org (Postfix) with ESMTP id 3DD392C1F2; Sun, 12 Mar 2017 05:24:30 -0400 (EDT) X-Original-To: mercurial-devel@mercurial-scm.org Delivered-To: mercurial-devel@mercurial-scm.org Received: from localhost (localhost [127.0.0.1]) by mercurial-scm.org (Postfix) with ESMTP id B258D2C1AF for <mercurial-devel@mercurial-scm.org>; Sun, 12 Mar 2017 05:24:28 -0400 (EDT) X-Virus-Scanned: Debian amavisd-new at mercurial-scm.org Received: from mercurial-scm.org ([127.0.0.1]) by localhost (mercurial-scm.org [127.0.0.1]) (amavisd-new, port 10024) with LMTP id t2gRMZm02Olc for <mercurial-devel@mercurial-scm.org>; Sun, 12 Mar 2017 05:24:27 -0400 (EDT) Received: from mx0b-00082601.pphosted.com (mx0b-00082601.pphosted.com [67.231.153.30]) by mercurial-scm.org (Postfix) with ESMTPS id 222A12C1CD for <mercurial-devel@mercurial-scm.org>; Sun, 12 Mar 2017 05:24:26 -0400 (EDT) Received: from pps.filterd (m0109332.ppops.net [127.0.0.1]) by mx0a-00082601.pphosted.com (8.16.0.20/8.16.0.20) with SMTP id v2C9O2gq018133 for <mercurial-devel@mercurial-scm.org>; Sun, 12 Mar 2017 01:24:25 -0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fb.com; h=content-type : mime-version : content-transfer-encoding : subject : message-id : in-reply-to : references : date : from : to; s=facebook; bh=3Afz7JGoDy1LB/RUp60lOGFRb3FIuZpLskWvsjX5izM=; b=M2HdeLcEmUGKUEjnLUQ7HJOH0ymjm8xSyrWJuv0DoGyjNyhpvozoDyAkn4ZZd0eGvRI7 BpnA7M8NnD5vAesaVbM20Ubvt3KFJlrMzK87mzUoVRSpAF4nCriFU8boBhqXFCc78k7+ mO3JxXKybOi2G3QRTUtItFo7wO+T+u54j/0= Received: from mail.thefacebook.com ([199.201.64.23]) by mx0a-00082601.pphosted.com with ESMTP id 294fum9y9v-4 (version=TLSv1 cipher=ECDHE-RSA-AES256-SHA bits=256 verify=NOT) for <mercurial-devel@mercurial-scm.org>; Sun, 12 Mar 2017 01:24:25 -0800 Received: from NAM02-SN1-obe.outbound.protection.outlook.com (192.168.54.28) by o365-in.thefacebook.com (192.168.16.22) with Microsoft SMTP Server (TLS) id 14.3.319.2; Sun, 12 Mar 2017 01:24:23 -0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fb.onmicrosoft.com; s=selector1-fb-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=3Afz7JGoDy1LB/RUp60lOGFRb3FIuZpLskWvsjX5izM=; b=EKJQusQBjYViFJqDwiuV4ERSDgqbtd00hE7Af+sBgjdfq0JBakf7GlugtZfemZFZmpVNwvchgLWZjZkDmyjb+S4b3idmGx2QOPDSdUUh8djCN+hLuXikYr1YtVPZXnIMlk6KKUQeUsnNpbm8o9G7WE3gblgULJv+P2zVqSV4gds= Authentication-Results: mercurial-scm.org; dkim=none (message not signed) header.d=none; mercurial-scm.org; dmarc=none action=none header.from=fb.com; Received: from localhost.localdomain (199.201.64.2) by MWHPR15MB1520.namprd15.prod.outlook.com (10.173.235.17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.947.12; Sun, 12 Mar 2017 09:24:05 +0000 MIME-Version: 1.0 Subject: [PATCH 5 of 7 V3] util: disable hardlink for copyfile if fstype is outside a whitelist X-Mercurial-Node: 10ec43758c6b4034a0eeecf24a54752784c82a2c X-Mercurial-Series-Index: 5 X-Mercurial-Series-Total: 7 Message-ID: <10ec43758c6b4034a0ee.1489310634@localhost.localdomain> X-Mercurial-Series-Id: <3fbaae1fa75a54a527d4.1489310630@localhost.localdomain> In-Reply-To: <3fbaae1fa75a54a527d4.1489310630@localhost.localdomain> References: <3fbaae1fa75a54a527d4.1489310630@localhost.localdomain> User-Agent: Mercurial-patchbomb/4.1.1+378-4e98743085e0 Date: Sun, 12 Mar 2017 01:23:54 -0800 From: Jun Wu <quark@fb.com> To: <mercurial-devel@mercurial-scm.org> X-Originating-IP: [199.201.64.2] X-ClientProxiedBy: BN6PR03CA0012.namprd03.prod.outlook.com (10.168.230.150) To MWHPR15MB1520.namprd15.prod.outlook.com (10.173.235.17) X-MS-Office365-Filtering-Correlation-Id: 5cfdcbec-8307-413e-9385-08d4692987ea X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:MWHPR15MB1520; X-Microsoft-Exchange-Diagnostics: 1; MWHPR15MB1520; 3:tjpLe0jScg81NP45+sS9wQ5CopfUsE71gKDOmezrfAvEp97C66Dspb0h469j5Ya2CfUDYX8YG72Rq90jEuiL4oFctjrdrOJjHeWTf78jNXJ+WjtDQEWmRQbla3gn4V9uOjKgHzi5K07WipbvaKqgJxs4JOFT/rFiuqDqZVBw7fNjogbliO5WFLwsTjuVRrOJFEMS4gDgMd1phjnZmQJAXanOzfzbO6EL7JvXifWIpq930Sbx7oNXmW81O7GeyTc8XxOIt5FVN8WtiVvkpjQPcg==; 25:FTE8jz89Cf9YQ5msiIBM1b9tsxKTtsE3bzjLhk79AO+5mVe7qLIY49mL43RkUcFM0qMJH/EGhb4ilXuUs1qn+RcR93RYpqub0Xtpr7KWJhtGbokKmEsvQ9bWhR0moroV54GfcVEsgi9dxoYeHO1PQRtKSrMF/j6KvW+yvfuQdvSb2TDwxwePDULzxrz5quvsdWRm9/WEMHleBVolhH+2LEdBOIwDfH3fqnsQwj0vpSCa1YtVPRYKQYuxEzeswOfm89it6go8dZA5kFZJfgncHu6l+TqXqchykg001LAqY3fG4fUFvuDe2y1up3QvQT1sYr4lLCDUniHyKne+Bxwhinihwf9O9P3FnpZVTrfL9rRXAeL8EjffJ0ufdL1CmChDQiiEF2yfUWd9+m5ZUu+nmdfgiqhpyLYTbzAyB3Y1p0zsOwjN6/gbj6i1t9wW3sCbNaKpCHRm8vZ5C76o6HY+tg== X-Microsoft-Exchange-Diagnostics: 1; MWHPR15MB1520; 31:Zo2g0eWBgDWb2G/8WXEwUWmiFyE1JpUPCNDyQL2X4oSAw6oHLKl5pf3EMPU0BpeC5kPNaZrRNr+bvza+hahfWcQ0UPlDfBObDv3YbzqfeuaszDO24GGOlYQu6xcexCVD+AjRT0cPIX9mDujqPfUk0GoMdBxn902P48ko4yvr27k78KJ4m6Pjwn66x0MH7DAXo64Vc0FFUCYEKjRpMpX1mFtkpOOwyULWkG/FRCR2JyFJexebWv3+npBLTY2NJaRv; 20:sg0ffyHP93NvVtxTus34OzQuw07lkfcCLYZCShvPKQ3EVpswxPv658aVxGJh/ar4hcINdDj2BnBY9rKA+5S6KWaxgSmO5hxFuDIMLZEFCaEwKo0lCo6todPC10Z7mLejUhJ9IlqjrSrJfG5JC8W2jMmInzHQp/fuG6/XvWmygKtmhZK65B4+7rdl2kHwAZ9Gmm0FBR5/Dw3u8XJ8ujdR8U6Mi4vxYDnOxz0tSEvO1/eZAKZ8dP/oV9c0iXWZ3YmJhlOWv5mBMkWp886TfbHHueqWDWeojWf/04nR+xMD777ZF2atCy6ILbDC8BnTGwOxcCJqWbpzi+egIKwCUmdgsvPuRdWL4H/QRELzM/I2zeSnp77/+pldyg7RYnED8/12trRyHJJkRtNMD4TcBERNvY5/nbnnVk7uPkbGK01yODNaD58/MOgrXaYTBwnrFGMfZ6OyX8z3PADD6JDke0FqUY7ygCkbY4vkBhHBDd0h4ZQ5+ZRTpT0CBpPFtQZ/VNJE X-Microsoft-Antispam-PRVS: <MWHPR15MB1520FA5B5D55C7FEC3DBC35BCD220@MWHPR15MB1520.namprd15.prod.outlook.com> X-Exchange-Antispam-Report-Test: UriScan:(67672495146484)(63843785518722); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(8121501046)(5005006)(3002001)(10201501046)(6041248)(20161123560025)(20161123555025)(20161123558025)(20161123564025)(20161123562025)(6072148); SRVR:MWHPR15MB1520; BCL:0; PCL:0; RULEID:; SRVR:MWHPR15MB1520; X-Microsoft-Exchange-Diagnostics: 1; MWHPR15MB1520; 4:U8u0+UUJNZ97PeIK3Yuj6AwvZ3o7qc+YUpXNFGkUG4sasb9iepiMNzTWan/d6/iMR/YduDEw5aHahbpP6FdnDtIIJ8J3s+nwe9y7t9k5SeMHwBi8AIkm2LUDTlKe5Zkw2UnRpk9DjCwR47JYfkJSaHA3sB/AqvtyotEbE98txQvU7IuPGFRO67TuHDzTKwgt1j7P7Yg12nPBgAUufjnSbQ9yuxmzVFPVzOokqUjviVK/a2VExgITRKDs7zGqYjtnSdjEdJF/FvWnMnYIVBiNTzM2qhIW0CcTeSrvWw1c8PIldb2DJ/70jUF+cDPKYawvdvd5+N1UZsMjxqMC1aZmOrs2OneTYkgIRAiHdNVREK5CSyhz/2WJFAsj8gFNETka/yqzow7DyYMDPgFVf6kDUEi81DR3p/gubqI3XtXe2Fsgg7uf8xoBTBz0gC/2HVzjsWKaS3vvoqcxTu/PI2O/+xdgAXTY1dbmIsys4Y8aZpDewTMlFPhtHQqTNH6bt3EyJfGVRqrE9t1bCEJx7XerKNdBrBOjI0myBZzuzBTxNbIeBdhHzA0Cp4U1bz9DlSwxRH5AFZpqJCL4n6mx/vE54M6FHHS1YJm/1Fv+dLg18Zc36eH7ai+P3Gew94DJK1mWVxQMoz7v5dpfYfr7nlcxar96HCGt+AOhzdDqnLEaquzfAPa9S4y8p1sSfMsTwTCm X-Forefront-PRVS: 0244637DEA X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(4630300001)(6009001)(6069001)(39830400002)(39450400003)(81166006)(2906002)(50466002)(2351001)(6506006)(6666003)(46406003)(305945005)(25786008)(38730400002)(6916009)(61506002)(7736002)(5660300001)(6306002)(230700001)(6116002)(55016002)(83506001)(53936002)(2950100002)(8676002)(3846002)(575784001)(23726003)(110136004)(86362001)(9686003)(47776003)(189998001)(97756001)(33646002)(76176999)(54356999)(42186005)(4001350100001)(66066001)(50986999); DIR:OUT; SFP:1102; SCL:1; SRVR:MWHPR15MB1520; H:localhost.localdomain; FPR:; SPF:None; MLV:sfv; LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; MWHPR15MB1520; 23:+4NKja2DpumZAAWIujSO4s4xkkSOaHsp7zhwSDO3r?= =?us-ascii?Q?CRcfZlyoXXMIzmzgQOdXniYYqyURHWlxUe95oVSvHiig1oWGXpsVuRL/kxEL?= =?us-ascii?Q?n2/2eC3jpgZxIiOIC56b/7cW8iwhRX08WKVn6MZUsNSyu9qEQtDXDq+QrNL/?= =?us-ascii?Q?wlLqPCK/do6OAmjmPfzkRQVh110PESkISiXbkNNLgZyOjad/DEGee5Xzwppi?= =?us-ascii?Q?3JPxGob8yzzwXz885PGj55osc2CLmY9N1a/SyD0b53ZJDFaxCGHidiGs2XeJ?= =?us-ascii?Q?KpwSosqJjI5tAfsBtwmvspNSS7xNVLMtMAWKx7ccyPcztbSR9k1jlUnvufID?= =?us-ascii?Q?Oo8kCztzKLtb9Xm+P2q7hO94RZUZmXi18NWDjXxxPj4EILY2aGwK/hr7bYUJ?= =?us-ascii?Q?Hf7IZw46JduhTggnrJyULuMsD1o/uXP5Z6G3NXcnt61TZqga5w/IyegmUQxF?= =?us-ascii?Q?lZHX3qeVSbczgBdxKy7z4ZifJTD5K5wLuoRTyWrrDqZ+8b1g+Ia5J0sfBrZV?= =?us-ascii?Q?MIIaJf443/X3uI+zp5zxel3e/aYpSe6g0R0AKGCe3DiUwhw7oMp+xxA/+coM?= =?us-ascii?Q?TJLBTr5p3Io2JboLDQW/IR7m/eTx57hj9BffAS6C0J/5yKiClNODIyQchKsv?= =?us-ascii?Q?iAPtcvq58BoUdsh0S5ISOrwsXoGvBhwyCHUL4s5V3ZBx1OUxGVRXKDrWZOwF?= =?us-ascii?Q?xLEgnlLxjPwurWjjkhnWaVN/2A0O3LwOa4iM25/x8qYtpEOK1fo02T3PuBMQ?= =?us-ascii?Q?J8I3TFOIZqxUSOW0axqOAMiNXPOhhXyFNi/IdFlwYqcDsN6bSluKiYfjnAVI?= =?us-ascii?Q?bR57VcjbkvLmEPSyKsEagToOnTzoABri+mI2Vr98rjbJteNNZ2fPmXHWQc6h?= =?us-ascii?Q?MMJ+QtayV5jzIUk3DpDUms2uL96m9sMUfwoVfclCySkDxrbJ5mzo+jT/lzfK?= =?us-ascii?Q?uPwy7XMlfnXT/tWBRQNOb9LNf6+Nou8F/1OMCoGWArYCFTQ0K/Y/bQuelclm?= =?us-ascii?Q?shHAC07RfTv3YCqwCgyh24HNU/RYQfYkbuIgdwi+PlB8JGVyk6nO4uzEwv5x?= =?us-ascii?Q?zaDIw8VaVMvMj1KKHZiHyo+LPf/?= X-Microsoft-Exchange-Diagnostics: 1; MWHPR15MB1520; 6:Svt6QDZlHMwNz1acXs+OckIXMvL+3/aoIM5XVs8XPVRobY7dDq7FmKCZ0LGnqmvDg0FSCpdvMCmY8MgEyh8Z5se6Dr3lSMHSZ7XqbTxB/wTA4jqFVTPHTbPSzFps+jTQyBIm2giRzGd+9USbB89INjL9VfFogXSDlmVJRPGAO+YlfkjE8nAxxpl6G0uM5oUV0YlzAOKcYvQYqo7oCwGb+XcunGJymrHWqD3YlH/3Oq8QyfL/45Cw4KIYeTSYPa5A0ljFI8dmyV+BpC+vGOGAJDwOacaGPj+H9hUTpLhMHfbO3o4CSDmxbdLj9AFTtCL+CcU6IMf2CEs8VjrV5fJtjaWhkrYNFXZIfpaHHh8aeF3KT6KLBy3npKNnNV5UktZ0npqZpeDavi5UOAE2OejXGw==; 5:FnuTHN8cfJTAXkLF5Iu/Zu1fAP1ZOduEPD/CxpYEc6hXrmbGulnKY1e0NDyr6zTO6VifCVAOdFE6PR2vkiI3VKAy6trWzYbe1MluYoECv7ra+UKqmWgWFDg/YYeYPv1UnCvoviui66AUdsLE7Yq2hrlnNYM6PbZ+cnQpzSISd1s=; 24:GlEVYmaSaMXb3RnSPeSEmFyxK1JNc55tEcrYKSolsqGwCRMiSibCsgrfOMRSNBPyH7B+a0v2XgnYOX+av17axSibap/3d5ZVeFnr3xURi2U= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; MWHPR15MB1520; 7:j7B9xFNAyyXYwwjiRW4Ba0HjHr40AkHYHPNZsnsmGopqILwqZcmWaUBRFS+xSEED5GefV8druGaYoxlx1Iw4od7NqvWEM2y/uJIAsdrpnJN2UT+iJzdDwTnWyf1bgGKGdB596W78gJvPYzpU0/Mtw0PzNjFbl1TPE5D7sOf2Q/np6n9EJLJcHUiqn2OUEqfdj8ut8PxR2Dn0gGWnk42evTiwVU664YR61eEznpKkHy4+4QCOiEdCMWGGe5L4WDJLvKZLleEufVDgZQYd3cNSZCSCTJdLUjRK5d/rzeNjegtN7Kp2fK1kkXGFjwPBzYzqF1heDDoTcbRLOhxIlIl3wA==; 20:W0/9tyMArdLCoa051xsyQOScDuiI4VbQPNwsMPhuBxRa8jLnk4+XWAERztcUsmfMQ88ipkVHLE1SAHhhgtKSmvVjIv3QSEzp7fb35VbkDH35d5xn8P6CLbe4B5a+Hfi6LrO9jZnyBj+4yvAJDEHwvTC5Pw0qs3ekG+9mQBTkrSs= X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Mar 2017 09:24:05.0847 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: MWHPR15MB1520 X-OriginatorOrg: fb.com X-Proofpoint-Spam-Reason: safe X-FB-Internal: Safe X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:, , definitions=2017-03-12_07:, , signatures=0 X-BeenThere: mercurial-devel@mercurial-scm.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <mercurial-devel.mercurial-scm.org> List-Unsubscribe: <https://www.mercurial-scm.org/mailman/options/mercurial-devel>, <mailto:mercurial-devel-request@mercurial-scm.org?subject=unsubscribe> List-Archive: <http://www.mercurial-scm.org/pipermail/mercurial-devel/> List-Post: <mailto:mercurial-devel@mercurial-scm.org> List-Help: <mailto:mercurial-devel-request@mercurial-scm.org?subject=help> List-Subscribe: <https://www.mercurial-scm.org/mailman/listinfo/mercurial-devel>, <mailto:mercurial-devel-request@mercurial-scm.org?subject=subscribe> Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Errors-To: mercurial-devel-bounces@mercurial-scm.org Sender: "Mercurial-devel" <mercurial-devel-bounces@mercurial-scm.org> |
Comments
Jun Wu - March 12, 2017, 9:23 a.m.
Patch
diff --git a/mercurial/util.py b/mercurial/util.py --- a/mercurial/util.py +++ b/mercurial/util.py @@ -1063,4 +1063,13 @@ def checksignature(func): allowhardlinks = False +# a whilelist of known filesystems where hardlink works reliably +_hardlinkfswhitelist = set([ + 'btrfs', + 'ext3', + 'ext4', + 'tmpfs', + 'xfs', +]) + def copyfile(src, dest, hardlink=False, copystat=False, checkambig=False): '''copy a file, preserving mode and optionally other stat info like @@ -1079,4 +1088,10 @@ def copyfile(src, dest, hardlink=False, oldstat = checkambig and filestat(dest) unlink(dest) + if hardlink: + # Hardlinks are problematic on CIFS (issue4546), do not allow hardlinks + # unless we are confident that dest is on a whitelisted filesystem. + fstype = getfstype(dest) + if fstype not in _hardlinkfswhitelist: + hardlink = False if allowhardlinks and hardlink: try: