lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Tue, 1 Feb 2022 01:37:17 +0000
From:   "Edgecombe, Rick P" <rick.p.edgecombe@...el.com>
To:     "hpa@...or.com" <hpa@...or.com>,
        "Williams, Dan J" <dan.j.williams@...el.com>,
        "Weiny, Ira" <ira.weiny@...el.com>,
        "dave.hansen@...ux.intel.com" <dave.hansen@...ux.intel.com>
CC:     "Yu, Fenghua" <fenghua.yu@...el.com>,
        "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH V8 40/44] memremap_pages: Add
 pgmap_protection_flag_invalid()

On Thu, 2022-01-27 at 09:55 -0800, ira.weiny@...el.com wrote:
> +/*
> + * pgmap_protection_flag_invalid - Check and flag an invalid use of
> a pgmap
> + *                                 protected page
> + *
> + * There are code paths which are known to not be compatible with
> pgmap
> + * protections.  

This could get hopefully get stale. Maybe the comment should just
describe what the function does and leave this reasoning to the commit
log?

> pgmap_protection_flag_invalid() is provided as a 'relief
> + * valve' to be used in those functions which are known to be
> incompatible.
> + *
> + * Thus an invalid use case can be flaged with more precise data
> rather than
> + * just flagging a fault.  Like the fault handler code this abandons

In the commit log you called this "the invalid access on fault" and it
seemed a little clearer to me then "just flagging a fault".

> the use of
> + * the PKS key and optionally allows the calling code path to
> continue based on
> + * the configuration of the memremap.pks_fault_mode command line
> + * (and/or sysfs) option.

It lets the calling code continue regardless right? It just warns if
!PKS_MODE_STRICT. Why not warn in the case of PKS_MODE_STRICT too?

Seems surprising that the stricter setting would have less checks.

> + */
> +static inline void pgmap_protection_flag_invalid(struct page *page)
> +{
> +       if (!pgmap_check_pgmap_prot(page))
> +               return;
> +       __pgmap_protection_flag_invalid(page->pgmap);
> +}

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ