From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id B950BC28D13 for ; Mon, 22 Aug 2022 11:22:12 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id EDD988D0002; Mon, 22 Aug 2022 07:22:11 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id E8BDD8D0001; Mon, 22 Aug 2022 07:22:11 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D06318D0002; Mon, 22 Aug 2022 07:22:11 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id C364B8D0001 for ; Mon, 22 Aug 2022 07:22:11 -0400 (EDT) Received: from smtpin01.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 95AADAB145 for ; Mon, 22 Aug 2022 11:22:11 +0000 (UTC) X-FDA: 79826989662.01.4309568 Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by imf23.hostedemail.com (Postfix) with ESMTP id 2732714002C for ; Mon, 22 Aug 2022 11:22:10 +0000 (UTC) Received: from pps.filterd (m0246630.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 27MB3efX024181; Mon, 22 Aug 2022 11:22:09 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h=date : from : to : cc : subject : message-id : content-type : mime-version; s=corp-2022-7-12; bh=zFkPHcrdovQjaFo3ssQ/2a8cgUSkFz2NMGM/LQV49Mc=; b=sDR4j9T7bw0Sz10ccm3/xW36v0HRkzznvbgwwemuZclJTRWFvjEm42SzLiTcRksKDvNQ sOyRl1rIl7K8bJSYQUipMNG9XtVWWoUjtoZCKai72QiL96W7jmhzu49+JXMqWHrkE5nX zTaVQEkDvxnqekPM8x3mJuOgAjjj0xK1Hie8rZxaZ2IfQ7CHKHzNnyYQfsD2B3aYasNc e90iQugiN2QNIvNiIrUq0lxj7SESf+7nseV/wxumUSwQ4/vwK2/ViA6/3CuLJFrycy3X JQiy8THqsv8CTHuXGKDuIPP4Ol43jviGTZMCPL2IGOWd/FRWsLvLQarFCmIImZrBF/0v eg== Received: from iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (iadpaimrmta03.appoci.oracle.com [130.35.103.27]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 3j477786qw-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 22 Aug 2022 11:22:09 +0000 Received: from pps.filterd (iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com [127.0.0.1]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (8.17.1.5/8.17.1.5) with ESMTP id 27MAO3HX036169; Mon, 22 Aug 2022 11:22:08 GMT Received: from nam10-mw2-obe.outbound.protection.outlook.com (mail-mw2nam10lp2107.outbound.protection.outlook.com [104.47.55.107]) by iadpaimrmta03.imrmtpd1.prodappiadaev1.oraclevcn.com (PPS) with ESMTPS id 3j3mn1n37p-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 22 Aug 2022 11:22:08 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=esqHSe3iQ0ou6V7LGqp+id1xDcG4krSk1kEd9WnuXsLdfrZXW/8i3j+X+8pjN5cFsJ50Z21fTCkbgg2ZPr70e4njgx6kquxAU6RYSy20Wz8s3Y5SUUGI+kyBOi2Y4wUFkEDHwTTjRDth7eN2cy8LL1y7YtTWi10cHbf/ZBdCMpPKVNv0mOJRcz3lhuXvzwDnIiKfIWaWsqYqYnFVz+AUwC0MIL9NTbzz6hYWyIshsEH2BuoeGrxzha21qP86G7dPXitDO8Gf/FT2Xnc6O5Kv21/fhImFArmLFGYdbRU92+HMTLvQZqTS2dsJ2KIpkGCE3FPkAbVd88a2PUFU3v5PdQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=zFkPHcrdovQjaFo3ssQ/2a8cgUSkFz2NMGM/LQV49Mc=; b=ec1l/AedCJOe1PKOsMRviNUVAYtyeKE1dvhR18wFEaNVeqUZyZfNuhx8nBUeJimbAZv5PeH9JtmWfg6cqz6IZ/JUl1rVkCT5rz13SAvYHMaNUqTemI+rP5RNGmjU31hpvZVR/cN1IS6c+tZYoF7m+6lJqZl9zz1Zxdm5XrV7G4O9v3aFZSwmR6Y8LFg/urDqf9c9wE7W9OkarQs4tSLMrDCAEQV+av192FkhMojkxjHNLNefGm4s3BHvBi2tx0ZKQLks2Ql8UwvQWN1QCv/oeO2HAGkOXoPDdRM4Sj5pZXEAnFe3PJgYzdgq7eQ2O40kMpdVzrewyt5+Od0/JmRDhw== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=oracle.com; dmarc=pass action=none header.from=oracle.com; dkim=pass header.d=oracle.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.onmicrosoft.com; s=selector2-oracle-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=zFkPHcrdovQjaFo3ssQ/2a8cgUSkFz2NMGM/LQV49Mc=; b=NUG5jWET7HlHk0qkGUmAfQD/2xkrv6BT82kKVFadf59MuPiRh8hRp89bzhf26g0c67s3T04Edm6jTdwhVvFZeTDne8aCbIJOOaY/gxJp65JJh/j4JBpMV5lD4pumjS5QYXaDwLsWq1MsNVLrayOEkxGwE4f6bhOqDWnJ+Y4thIs= Received: from MWHPR1001MB2365.namprd10.prod.outlook.com (2603:10b6:301:2d::28) by MW5PR10MB5714.namprd10.prod.outlook.com (2603:10b6:303:19b::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5546.22; Mon, 22 Aug 2022 11:22:06 +0000 Received: from MWHPR1001MB2365.namprd10.prod.outlook.com ([fe80::209e:de4d:68ea:c026]) by MWHPR1001MB2365.namprd10.prod.outlook.com ([fe80::209e:de4d:68ea:c026%3]) with mapi id 15.20.5546.022; Mon, 22 Aug 2022 11:22:06 +0000 Date: Mon, 22 Aug 2022 14:21:55 +0300 From: Dan Carpenter To: yuzhao@google.com Cc: linux-mm@kvack.org Subject: [bug report] mm: multi-gen LRU: debugfs interface Message-ID: Content-Type: text/plain; charset=us-ascii Content-Disposition: inline X-ClientProxiedBy: ZRAP278CA0018.CHEP278.PROD.OUTLOOK.COM (2603:10a6:910:10::28) To MWHPR1001MB2365.namprd10.prod.outlook.com (2603:10b6:301:2d::28) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 03fe5c36-be57-450c-e826-08da84308b7f X-MS-TrafficTypeDiagnostic: MW5PR10MB5714:EE_ X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: 17UWw6WJZa1ekNGxN+wey/M6B39pymk2tH1+W/0TB6+4qaqS/sHXVpRbP+odF7Tt8jCUgoNotf12kRHYlQhTlA9vXH/v0eV2BbQ1z6zZbZgXOUU3McCMaqbCFRKL4uwmiI4ItiVXRKsYYecoQxVcAO2OiQR7FYyK17Qh1fhmjlukjIehT6yXhfDrj5rrgbJFMRoe9wyW11ZgEaFkY2B7GAvLKidOxxjo2pmEfvJg//h+SUU+C0IQwBLMAWQN8jwckYRY0Dpq0Myi0D3VWMEKHj5T/6qfz6E4jVfcEFhAn2N4wgemlg8Re6aqIgogsiIQv/y4xs3XcU/IgEvqvsRbuTONgvqwP3Yi6Nvhs+isacvUSSvC66u0/6OQchwYnBIMteRQ0kaWll0fPxxnFx4GAjktGBzk5P7oLjWow/2vWZndQbC19fV9X1PuOjHKwAAFcIAnsTr4FA9cb8Q/vsufOih7gJdgce0+JNEvYDcRmfk9pcq/CZzf32etYSDQ4dLiHhtSU5fuP3qde1KE89a1ALi9afAiyalc/yD+AcgzVIQaz5kkOGOsHRySHB3DlS1zecLQjdRxmugw1WdEozkTBuGpmBsKNZWZnAURK7mZ3rxwrLlvAyvd5r7Xj78YZmpVpmPbLcMN3z5Ck+TLPEC7IH1QB9z0f91+pXVaZLxKSdbJssEg++Ymhf7mlRf8Ohh2RWrsIzfu6rWpqgvRDtUNTZVpMH4pJaUW35cw/wKwToNg5rlFG9Xgx57EAawqJqy69KpH8wcAY5SaUAWnHYRYVw== X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:MWHPR1001MB2365.namprd10.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230016)(7916004)(396003)(136003)(39860400002)(376002)(346002)(366004)(186003)(6506007)(6666004)(9686003)(8936002)(26005)(6512007)(6916009)(44832011)(86362001)(316002)(41300700001)(52116002)(5660300002)(33716001)(38100700002)(83380400001)(478600001)(66946007)(66476007)(66556008)(6486002)(4326008)(8676002)(38350700002)(2906002);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?S38EMICHo5EZBS7AiWqux7e0Xa7WlWTDs89trNmRZVfc6V9S4MI4pqCbGSLY?= =?us-ascii?Q?Snq4gaTc4fhr8//DIUei+BzkqLNiKR9QOLcGKs4Nq6+oomQ4ikWurYHJyx2K?= =?us-ascii?Q?kFjxt0EHSt1nuPBiajGWAYJwOGQqrGACjJxfgqEfbb4ZSztGhmSwn2KeIL9v?= =?us-ascii?Q?FoIvE+POzzyZ4NmTFmTA82umeW/obBKJ8/WFaRcGI3UfgQFlqavf2Snt9Nd5?= =?us-ascii?Q?F7lu03DESXiNTpVQX/v9cyTpCZTYFavfFKPOloQf7MPNeC0R9wUwztVB51xh?= =?us-ascii?Q?3fe3DgBrFDPNeLvXHgbI9KH657hpQAa7ELFZp+I7kurSPhFMipaaXPxqO/xr?= =?us-ascii?Q?wdkOpzQ3angsXBuCXhSdkg6BNqewIayc9hn4di78aV2OraRSApgI8X5FpzIX?= =?us-ascii?Q?1LdrnEzQCNF9v7A9VhDN4a4CclCEGiRGVanQshwDIfP2ZpIHITyCEEdH/vsk?= =?us-ascii?Q?pbdnPbHqPiezj2SaefdEdZulvq8SLjfSKcBEhW0IkK46KU0hguQl/NiL1m9e?= =?us-ascii?Q?vvlAGQLhR1GoJFtMJg+ndh3JCtmqkkIVSISmzCqJZfZ4441ghsWGTHQpzSSE?= =?us-ascii?Q?dfxEIOK7rx+OFpE96rZQ1DEh670DnDTd7St/sbs6sy7OBHxNj36wyt6JK+vX?= =?us-ascii?Q?XkL629noH+lTS/tS1ihfGlVQtlEkxHhI/zgmpD/5SCldRo3kBkDMFZB7pior?= =?us-ascii?Q?zRScMrfNPY3l9GC8qNoCS0mi9V+PzA4lGy6WP2f319Mwf8bOuUKZkMlI+CJc?= =?us-ascii?Q?aYvWhPuT0bo2eIxmfs4sindDEdurTkEEKs/LnVLKMPtnuqmVlS5ei4KeVUF5?= =?us-ascii?Q?WNgjyH5J7V1d7m9t/ME3Mz3KnSfApuECtjrBIbId42P2OXtSGKPH+maH43IG?= =?us-ascii?Q?OAAIwJOx+TIopcxUGDTN9izh0ysJLUmxZTpjMTtpqBG1tboVOxtKqM4KUeP8?= =?us-ascii?Q?B33PGPhKGpeEF9/sWPSWtvKTyO3PdbmraCftsn9tYSnTGNrtmosEJ4yKOeRM?= =?us-ascii?Q?0bm//5Nnt6jR75ovGaFS4TxgxGdOgNKHTnWzynuOcDFYd9+1uzjMdvKcMn18?= =?us-ascii?Q?LmvQ+Gh9QaFAi+iok61x+tSNSpZTj3oYAKgf61basLwS71ZUKmgjSTTIlvR4?= =?us-ascii?Q?gygvKyh21MiHFrmWN8V2ZQfIrlFqfHPt/GO9QDCm2FVMxZD4inkUK4jTD/zN?= =?us-ascii?Q?TaDk5gX89HrjtezcglNuCDqojapYgLBDEaXUXSsxlmv/pL6aNWpVBFABLpUG?= =?us-ascii?Q?wSJoi3DhgzNbC+OzLwgUvJ9nH+mrnLBj1GjdmlBrgpspEFgJSeUrzT5XPCfs?= =?us-ascii?Q?12k9do4QmG3nAu6+CiGoOomQUBQV9GQp07sUGwFjQZEQWgjvJxcHH+aXOqvc?= =?us-ascii?Q?ReFJAAprD/Ossf7v/ipJ01pypKWtGQQ6Sn8sE3XALMBGKTqa9yEtqmKIDQaQ?= =?us-ascii?Q?OidvCwWraKEJy+axjbfH2RAFulloe8IKlb3YOHvqLVOfwm73t1faAPxQWwDB?= =?us-ascii?Q?xEKcy3pD/0UeuV77Nb917/ODXFBzhCbhVHlUcikQY+IZM5oFovUqf8Mw8rp2?= =?us-ascii?Q?c2RdZuCV12e0AzIv2M2Hp0bLwWhlfq+WsGxSx+6WySR4IJbOVrTm9CWliFK9?= =?us-ascii?Q?6Q=3D=3D?= X-OriginatorOrg: oracle.com X-MS-Exchange-CrossTenant-Network-Message-Id: 03fe5c36-be57-450c-e826-08da84308b7f X-MS-Exchange-CrossTenant-AuthSource: MWHPR1001MB2365.namprd10.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Aug 2022 11:22:06.2558 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 4e2c6054-71cb-48f1-bd6c-3a9705aca71b X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: Q6d4DjMbaoCNQ7X9+3YtOs83Jw640KtGZqsuQPDSSno7wTKLx8o8GXA3gY+W44P3LhHh2YvkDq+1XtuXajcz77FZ9ZomJigXdo4tpo22ShM= X-MS-Exchange-Transport-CrossTenantHeadersStamped: MW5PR10MB5714 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.895,Hydra:6.0.517,FMLib:17.11.122.1 definitions=2022-08-22_06,2022-08-22_01,2022-06-22_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 mlxscore=0 suspectscore=0 malwarescore=0 spamscore=0 mlxlogscore=995 phishscore=0 bulkscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2207270000 definitions=main-2208220048 X-Proofpoint-ORIG-GUID: v7oTs0Vbdv29bvJjR4gX5aVNtHD87D4y X-Proofpoint-GUID: v7oTs0Vbdv29bvJjR4gX5aVNtHD87D4y ARC-Authentication-Results: i=2; imf23.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2022-7-12 header.b=sDR4j9T7; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=NUG5jWET; arc=pass ("microsoft.com:s=arcselector9901:i=1"); spf=pass (imf23.hostedemail.com: domain of dan.carpenter@oracle.com designates 205.220.177.32 as permitted sender) smtp.mailfrom=dan.carpenter@oracle.com; dmarc=pass (policy=none) header.from=oracle.com ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1661167331; a=rsa-sha256; cv=pass; b=XRXSpsON7csYQJuJ+METzk+M5Vc+zQSkwikqr2WIYxNqwJi3ISEjkxb0EKBdCN5E5V95Bd QWjoUHviH8Ss+UbsM9+g+Mv3lDFR4GkFqxG2EK/VF/QQofa+hF+LIV/YHp1vat2K6dI9+8 Wo+eMBYaIHbTImwj+8v0SapFhK+Nnrs= ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1661167331; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding:in-reply-to: references:dkim-signature; bh=zFkPHcrdovQjaFo3ssQ/2a8cgUSkFz2NMGM/LQV49Mc=; b=5b0JEt1j9iYLvb+GUm88RPQ/XvJQwbhmVN0/GnckUTPLZXYS9a+Mbfo9+IGgvsvROFZDM8 annAHeYLSkOB9OTJZ13McWWK5G0M8R3luPGC0HyXnVjXP+hzEVTYni/MBBzbsgfDT5tYfn yk0LpAZ6gq+LGCIkarjTXWgPX/mgGmo= Authentication-Results: imf23.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2022-7-12 header.b=sDR4j9T7; dkim=pass header.d=oracle.onmicrosoft.com header.s=selector2-oracle-onmicrosoft-com header.b=NUG5jWET; arc=pass ("microsoft.com:s=arcselector9901:i=1"); spf=pass (imf23.hostedemail.com: domain of dan.carpenter@oracle.com designates 205.220.177.32 as permitted sender) smtp.mailfrom=dan.carpenter@oracle.com; dmarc=pass (policy=none) header.from=oracle.com X-Rspam-User: X-Rspamd-Server: rspam07 X-Stat-Signature: ojkx5mqm74khkdfqwb37hss5kjofntx4 X-Rspamd-Queue-Id: 2732714002C X-HE-Tag: 1661167330-602611 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: Hello Yu Zhao, The patch e02f70ddcaca: "mm: multi-gen LRU: debugfs interface" from Aug 15, 2022, leads to the following Smatch static checker warning: mm/vmscan.c:5706 lru_gen_seq_write() warn: uncapped user index 'cur[end]' mm/vmscan.c 5654 static ssize_t lru_gen_seq_write(struct file *file, const char __user *src, 5655 size_t len, loff_t *pos) 5656 { 5657 void *buf; 5658 char *cur, *next; 5659 unsigned int flags; 5660 struct blk_plug plug; 5661 int err = -EINVAL; 5662 struct scan_control sc = { 5663 .may_writepage = true, 5664 .may_unmap = true, 5665 .may_swap = true, 5666 .reclaim_idx = MAX_NR_ZONES - 1, 5667 .gfp_mask = GFP_KERNEL, 5668 }; 5669 5670 buf = kvmalloc(len + 1, GFP_KERNEL); 5671 if (!buf) 5672 return -ENOMEM; 5673 5674 if (copy_from_user(buf, src, len)) { 5675 kvfree(buf); 5676 return -EFAULT; 5677 } 5678 5679 set_task_reclaim_state(current, &sc.reclaim_state); 5680 flags = memalloc_noreclaim_save(); 5681 blk_start_plug(&plug); 5682 if (!set_mm_walk(NULL)) { 5683 err = -ENOMEM; 5684 goto done; 5685 } 5686 5687 next = buf; 5688 next[len] = '\0'; 5689 5690 while ((cur = strsep(&next, ",;\n"))) { 5691 int n; 5692 int end; 5693 char cmd; 5694 unsigned int memcg_id; 5695 unsigned int nid; 5696 unsigned long seq; 5697 unsigned int swappiness = -1; 5698 unsigned long opt = -1; 5699 5700 cur = skip_spaces(cur); 5701 if (!*cur) 5702 continue; 5703 5704 n = sscanf(cur, "%c %u %u %lu %n %u %n %lu %n", &cmd, &memcg_id, &nid, 5705 &seq, &end, &swappiness, &end, &opt, &end); --> 5706 if (n < 4 || cur[end]) { ^^^^^^^^ The static checker is correct that "end" comes from the user and it can be any unsigned int. This is debugfs code so there is no security impact. 5707 err = -EINVAL; 5708 break; 5709 } 5710 5711 err = run_cmd(cmd, memcg_id, nid, seq, &sc, swappiness, opt); 5712 if (err) 5713 break; 5714 } 5715 done: 5716 clear_mm_walk(); 5717 blk_finish_plug(&plug); 5718 memalloc_noreclaim_restore(flags); 5719 set_task_reclaim_state(current, NULL); 5720 5721 kvfree(buf); 5722 5723 return err ? : len; 5724 } regards, dan carpenter