proc/vmcore: let pfn_is_ram() return a bool
The callback should deal with errors internally, it doesn't make sense to expose these via pfn_is_ram(). We'll rework the callbacks next. Right now we consider errors as if "it's RAM"; no functional change. Link: https://lkml.kernel.org/r/20211005121430.30136-5-david@redhat.com Signed-off-by: David Hildenbrand <david@redhat.com> Cc: Baoquan He <bhe@redhat.com> Cc: Borislav Petkov <bp@alien8.de> Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com> Cc: Dave Young <dyoung@redhat.com> Cc: "H. Peter Anvin" <hpa@zytor.com> Cc: Ingo Molnar <mingo@redhat.com> Cc: Jason Wang <jasowang@redhat.com> Cc: Juergen Gross <jgross@suse.com> Cc: "Michael S. Tsirkin" <mst@redhat.com> Cc: Michal Hocko <mhocko@suse.com> Cc: Mike Rapoport <rppt@kernel.org> Cc: Oscar Salvador <osalvador@suse.de> Cc: "Rafael J. Wysocki" <rafael.j.wysocki@intel.com> Cc: Stefano Stabellini <sstabellini@kernel.org> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Vivek Goyal <vgoyal@redhat.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Родитель
934fadf438
Коммит
2c9feeaedf
|
@ -84,11 +84,11 @@ void unregister_oldmem_pfn_is_ram(void)
|
|||
}
|
||||
EXPORT_SYMBOL_GPL(unregister_oldmem_pfn_is_ram);
|
||||
|
||||
static int pfn_is_ram(unsigned long pfn)
|
||||
static bool pfn_is_ram(unsigned long pfn)
|
||||
{
|
||||
int (*fn)(unsigned long pfn);
|
||||
/* pfn is ram unless fn() checks pagetype */
|
||||
int ret = 1;
|
||||
bool ret = true;
|
||||
|
||||
/*
|
||||
* Ask hypervisor if the pfn is really ram.
|
||||
|
@ -97,7 +97,7 @@ static int pfn_is_ram(unsigned long pfn)
|
|||
*/
|
||||
fn = oldmem_pfn_is_ram;
|
||||
if (fn)
|
||||
ret = fn(pfn);
|
||||
ret = !!fn(pfn);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
@ -124,7 +124,7 @@ ssize_t read_from_oldmem(char *buf, size_t count,
|
|||
nr_bytes = count;
|
||||
|
||||
/* If pfn is not ram, return zeros for sparse dump files */
|
||||
if (pfn_is_ram(pfn) == 0)
|
||||
if (!pfn_is_ram(pfn))
|
||||
memset(buf, 0, nr_bytes);
|
||||
else {
|
||||
if (encrypted)
|
||||
|
|
Загрузка…
Ссылка в новой задаче