From patchwork Fri Nov 4 11:28:48 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Lucas Martins Alves X-Patchwork-Id: 13031654 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 75FCCC4332F for ; Fri, 4 Nov 2022 11:28:54 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id C4BA26B0071; Fri, 4 Nov 2022 07:28:53 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id BFB4D8E0002; Fri, 4 Nov 2022 07:28:53 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id A74FA8E0001; Fri, 4 Nov 2022 07:28:53 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 8FDFB6B0071 for ; Fri, 4 Nov 2022 07:28:53 -0400 (EDT) Received: from smtpin10.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 6348DABF55 for ; Fri, 4 Nov 2022 11:28:53 +0000 (UTC) X-FDA: 80095537746.10.87DB539 Received: from BRA01-ROA-obe.outbound.protection.outlook.com (mail-roabra01on2052.outbound.protection.outlook.com [40.107.111.52]) by imf14.hostedemail.com (Postfix) with ESMTP id 9CFED100003 for ; Fri, 4 Nov 2022 11:28:52 +0000 (UTC) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=Yz54iUngR33WNwxrtA/Z5SX4PUloyr4kSe2za9MeGN/s/DD8HLlsyzxMh2YdGIfFNKdSjNuDtw38m5nVKGNpmq1Tby9UfUEUQeEcAHnI/TyG5wB0+wUMXHgOBEOech3RKq3iggabV+MyxY7R1PaTFTrdwnBq0vx+Ha4JwVU1AVVkURtidjjjvAe6px/TTAuDa6DqINemtA8BhRlBJwIXG37qVO+Xhr7UcSspRtT/NfWk06hSSqNvg3byaFUAY4EZCs2daN+gq58dVmLqL9nqVXhv3zKfjm/13NCzBqmB/svYO9QLohQIYnuir5AcsgFNj1VmfIrqz0MibZlFqlRklQ== 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=MCBD/erB/oyK45SOXsFOMfzwcNKFI6NUwFsEUaVTjVY=; b=UDiiFNKYVmRXVQ1k5g8LNDwNulR9LxUitX24yAXuqbGSSeYNtWty0VXfwCNvMh/fVhGS+9AHTTFN751ER8/Lxgno8D0qPvlwPbSZDl3E03jpdu6PmszihYbZghtTydwty6pG2ctl4NnMsDQ83/CC5rvld6uwuzWZcjD2Tr5RG5Ht+AfjiSyRlGOWDcit95wBzpHfWwqGv36satOn4D+hwI6SU8ITK6KtU4Lo4mK5EW07yLhJ4fZzBfLkYoZ8mgetlaSiluD9AjXIZ3/7XBaJbtFyTUiTEvfTNQpQuZeu9XRWp13ulwCZAFTQWjUzgJqm7fxX5aYdk89eIjJTH9VNLA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=lumal21.net.br; dmarc=pass action=none header.from=lumal21.net.br; dkim=pass header.d=lumal21.net.br; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=lumal21.net.br; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=MCBD/erB/oyK45SOXsFOMfzwcNKFI6NUwFsEUaVTjVY=; b=gSbtng4wpSXY1MlkQZuPPO5K+woVnQoyryMEOW5gXZcFa2BgZ8XooSFpKvGt9SJROym+0ATPvTjuuqHgXaJbTvFRrZDotgvhZ1kgzpR6KjKGXhZ1NKDbisDoCvDD553g0GdA0+jUTk7xAEjTl3EqsLxASr583wlrffeIacC5fN3tkEepfLYRx07dwG/eBhFc11PVV2OwKSMEGIBbb0PYUaoo5DXx6ecsP76Dlc4l0JfmWaNj8bpw/wqEdtpff4220zK/a2eW3XmZCktO0Y70w4jW2UV2SqKV3+Shp9DjxpnVhmd5XJDD+ZzxhIjtgTDQ3fz7virqzl+zQMqV2A9Rbg== Received: from CP4P284MB0802.BRAP284.PROD.OUTLOOK.COM (2603:10d6:103:90::8) by CP5P284MB1903.BRAP284.PROD.OUTLOOK.COM (2603:10d6:103:f6::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5791.22; Fri, 4 Nov 2022 11:28:48 +0000 Received: from CP4P284MB0802.BRAP284.PROD.OUTLOOK.COM ([fe80::b41:7a9d:4881:4d72]) by CP4P284MB0802.BRAP284.PROD.OUTLOOK.COM ([fe80::b41:7a9d:4881:4d72%6]) with mapi id 15.20.5791.022; Fri, 4 Nov 2022 11:28:48 +0000 From: Lucas Martins Alves To: "akpm@linux-foundation.org" CC: "linux-mm@kvack.org" Subject: [RFC] mm: block swap in mtd partition Thread-Topic: [RFC] mm: block swap in mtd partition Thread-Index: AQHY8EB1pTRNYy/GbkOIHF7QJQgkXg== Date: Fri, 4 Nov 2022 11:28:48 +0000 Message-ID: Accept-Language: pt-BR, en-US Content-Language: pt-BR X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CP4P284MB0802:EE_|CP5P284MB1903:EE_ x-ms-office365-filtering-correlation-id: 364cef8d-c24f-4c38-d623-08dabe57be25 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: kks6cyAS9QRLKDwCJEd1GWPADrkpLXJLRsjOjM8uaa6yXxVh3Gw/aCRfEWWLW5/y2TxUJQo22JTwcS4drUjtJrhyLto2T6GOzpSTPGCSZ8CCEWXj38L7D1vYxK3jiL9tP3omIkpJ+SnDxjzjKdOBfI+kvF3a7vd9k8yvB4n6JsJU4hgD+/dk0LL0f/QgwJcI5rbeOTpQCV49vFjYF6c999kpb9uOkMvSlpd7B3/GEp52x51WWpYprjdqg1wompdVyEzJuOlH54FyI0LLOTte2enBk7zDmjjpJTJdL0X2S1xbQvOXsLLeWC2LcgE0n0K7fLSbQO7tG5IXo5sa94CgI8MILquKeeCcLQQrI0ljl9JsEL4FuUkdwHSi3OL8RiMLkuRzbItNShHqUrJd2ScObuINray42eeU5zm526e8YhpNofHdD+rgWmAZaISpOWk3jCnti7gmcvUaSpz2Q6d+bBRRzOigw6eL+Quj3V6b8ORGncxMs5aSnZfa6SBHcjBT4c834+BNDMdP+lWPozQX+V0RJtN8gMGoK/DA8kER8/zz1fHg0oq0JkQdJNyb9VZxQ3vU0Er9dgAgXw618+KYBfTtsquieVlauoee/NtN+Tue1oTFeM3ABfJz5yDnqBSRLxktOi9YJHc8amQSt7CwGqrhmdAh/SzYkprYWBkf/AcVcle+xkdh09lg/6Hl+Gepacn6ygNzpIay7+34B6Py2PfN/d/PErR1z37rqRUL+UuI47PawHgLadJby6agW/qNu9/b6oZXKqqiC8TYK9bR8g== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CP4P284MB0802.BRAP284.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230022)(4636009)(366004)(136003)(39830400003)(376002)(346002)(396003)(451199015)(4326008)(55016003)(38070700005)(33656002)(122000001)(86362001)(7696005)(66446008)(38100700002)(6506007)(64756008)(19627405001)(316002)(8676002)(76116006)(71200400001)(66476007)(478600001)(6916009)(66946007)(186003)(2906002)(83380400001)(5660300002)(8936002)(66556008)(41300700001)(26005)(9686003)(52536014);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?q?14fXmn9O6rWd2HIsxbosbE4THhby?= =?utf-8?q?PNeFTUWEPdi770mtHjuag/WjRUkjuV5dYSNFpqvATDkc1PEC6kqn+gmfI9AYrhm7/?= =?utf-8?q?gkbB/GRdN+sLTedIGQCqo2yuAhYOatBcMeqXB0qiJfOMzE5oXQMU88EpTMdkGkjVK?= =?utf-8?q?Ar3wIotFoQnXIl9cdJ33v+pohb4eK0jw+RIs3PUnOxTcj2rU8xiuLTHxA6JDir9kl?= =?utf-8?q?5sesyIrz0kRRbOuoamwBWrcpFPiFkbLcWHRdAmj1dL86s5AVvK39mSKxKnsgVsAzn?= =?utf-8?q?X8wuyg+LUws375nFqJuuyn3OUP0sG9/fK0nsGUmQbi+G/Gy2TxClf95EBvb6slsHQ?= =?utf-8?q?iQrg9Sk9I23HCTMif+DG0IgWf7nEQT0N5U8AMr7HyM3TRJKn2TBgM1oYBEGyx6NuK?= =?utf-8?q?nBD/wP8cpyeKYNzRFWg+nYD0AbmKDeRYHRuSMIWTUet5KMrO3AJf5K+higBTK9PkT?= =?utf-8?q?FULtpNrBZpdyzEsCWvgfEtv68TN/jomaN1lRZskIDoL46K84WO7scrOsMGeNgB/UY?= =?utf-8?q?SAmxmjuZT0xNQOkvbITUuK7b3K3Lq7FxO0h9YcXL/SlmfMcvjNMSm4lGNxVrTERRl?= =?utf-8?q?Wr49gFWrfc2K3C+TIp47o8d1Wnn7h2bWNoecz0U1NNW5bpYVIuSJVV/nZapwL7Uc5?= =?utf-8?q?9eR6GBD7Q0M4os1/7O8q3wM0+BMRtyCtkTxYIaSmjqtJM7OBOtWdBNxR+mR6IWQ5W?= =?utf-8?q?2C4UpswAKIb9A6b+YCqmH9AIBjkXb9OYkOQMd91X1SxMmvNnmpInBtCZuF9T4enFL?= =?utf-8?q?UKT1TIoa6BmQP8HFW6R9TIFdGhEJDhVMrBXjwWQ2OEph94h9Eu+g3s+maFJqzxkqU?= =?utf-8?q?gisJY/9DQIC0AOSBDUy7QaxLySprjzElQOFdMJTTxSYUA/UcifHFGFD8fAYlHD+Uq?= =?utf-8?q?wak5JVNs0ndvhC/QAwtMwQWmr6Kjj/46MIcQQ15VpcXak+fEzOJepbcSlnP0j5ITY?= =?utf-8?q?EsdVMZna3W/eLpgPFJTcj+kh3mcwKkxGxMu7g1F8eWSLe72RU305ZqjN4Bjuj+5Ce?= =?utf-8?q?1VmEG8CdaroB0YkGKpogNy14jlocSdHz0NuDp5nqTXgPdjpAPMh6kG07jPZjPJGIM?= =?utf-8?q?7xHYMrCer+T6xzHoy2HQQwp9RUHoJj+pLUXzf62JGsxVa2y0EBykhf7s4c4FSaWEU?= =?utf-8?q?x9HLpu6QlcYZUkjYMRp5xndoWoyFxvdM9TW8pIFiVy9S6OslP2eHrQmrC5NR+9i37?= =?utf-8?q?zlDfAqNOcn/epkax7nl+NNsWRi4BarydVOQ7vgOK1E9EwrOB56W3deTUpCabHOul9?= =?utf-8?q?SPNXtMBLkedXp4DguI9TpbcuKUeaK4UGkUFKghYXLHAbRCnFsoTOQ+dk8OBte4qQQ?= =?utf-8?q?fDUxBHo5z6EdZFNgEQu7rCOeeBI3uFruAswyfG2+d9FljBzeMOlroNmYyKpbwRVb6?= =?utf-8?q?t9k0P+vzLPrweIk4mhBPbW7OeTjmnBxHZ9UFoedPc1eNTtr8LmyAJS/xr7HddxtIa?= =?utf-8?q?+yB/kQrklhDvj7H2Ml3FH0iwKt8lxBrU/GyFDiwDeJr7W5k44mVN6e97JXJhEBe4h?= =?utf-8?q?/bGQHym/iO0A?= MIME-Version: 1.0 X-OriginatorOrg: lumal21.net.br X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CP4P284MB0802.BRAP284.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-Network-Message-Id: 364cef8d-c24f-4c38-d623-08dabe57be25 X-MS-Exchange-CrossTenant-originalarrivaltime: 04 Nov 2022 11:28:48.7767 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 99055dd4-6575-473d-944c-c3b1a5a6649e X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: GHPrgwZfY+gBFTMIbp/XPh4KcMP9WhVI4oVtUUQiW1PTC/yLmoMmdVE+mDu48Lp4ZkaB4pLKFay3sXNyiCbQ+9obJBu9CnAke308ZyrdfCM= X-MS-Exchange-Transport-CrossTenantHeadersStamped: CP5P284MB1903 ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1667561333; 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=MCBD/erB/oyK45SOXsFOMfzwcNKFI6NUwFsEUaVTjVY=; b=fE0i9E1XvE1B8RPdBXMffVhq1Mc+KBaSPbpXul8cNtkZnbGXMQ8X1tbj5G9N6pHkIf2Cw7 D5sCWX6JwPEgPJLPeDMYXIOTu2Hbcn/nwjURromaPKNXWM9gTNu1YkwpGU5eO2C3CXfgVK XdW1//hUUxjFVzM8c8bsiEya3yAZZO4= ARC-Authentication-Results: i=2; imf14.hostedemail.com; dkim=pass header.d=lumal21.net.br header.s=selector1 header.b=gSbtng4w; dmarc=pass (policy=reject) header.from=lumal21.net.br; spf=pass (imf14.hostedemail.com: domain of lucas.alves@lumal21.net.br designates 40.107.111.52 as permitted sender) smtp.mailfrom=lucas.alves@lumal21.net.br; arc=pass ("microsoft.com:s=arcselector9901:i=1") ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1667561333; a=rsa-sha256; cv=pass; b=YwKTAmQHnLO7cctPl3ctRhL623O8kLj5zaKEIMVbakSfDxrwXPiRgf2G4XECh0YHEErQ43 F0hh0TStf8XTrvohGlXCjEtKDkpNSTSPgMECikvByy4MpMLERjxhwb8noMYuTxJAtUOu3b +hIOpDfXH3Rr1MZsXBRrM31e41UpIhw= Authentication-Results: imf14.hostedemail.com; dkim=pass header.d=lumal21.net.br header.s=selector1 header.b=gSbtng4w; dmarc=pass (policy=reject) header.from=lumal21.net.br; spf=pass (imf14.hostedemail.com: domain of lucas.alves@lumal21.net.br designates 40.107.111.52 as permitted sender) smtp.mailfrom=lucas.alves@lumal21.net.br; arc=pass ("microsoft.com:s=arcselector9901:i=1") X-Rspam-User: X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: 9CFED100003 X-Stat-Signature: hbg1dyannb6wp1pdnbuuqc4kwif3qmce X-HE-Tag: 1667561332-808250 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, I'm enabling swap in kernel version 4.9.206 for an embedded system, however I want users of that kernel to not be able to use mtd partitions for swap, so I made the change below. Is there a better way to do this within the kernel? Can this change have undesirable effects on the kernel? diff --git a/mm/swapfile.c b/mm/swapfile.c index 855f62ab8c1b..92fed4eb7a97 100644 --- a/mm/swapfile.c +++ b/mm/swapfile.c @@ -2450,6 +2450,22 @@ SYSCALL_DEFINE2(swapon, const char __user *, specialfile, int, swap_flags)      mapping = swap_file->f_mapping;      inode = mapping->host; +     if( S_ISBLK(inode->i_mode) ) +           if( imajor(inode) == MTD_BLOCK_MAJOR ) +           { +                 pr_warn("It is not allowed to use internal flash partitions for swap.\n"); +                 error = -EINVAL; +                 goto bad_swap; +           } + +     if( S_ISREG(inode->i_mode) ) +           if( MAJOR(inode->i_sb->s_dev) == MTD_BLOCK_MAJOR ) +           { +                 pr_warn("It is not allowed to use files in internal flash for swap.\n"); +                 error = -EINVAL; +                 goto bad_swap; +           } +      /* If S_ISREG(inode->i_mode) will do inode_lock(inode); */      error = claim_swapfile(p, inode);      if (unlikely(error))