fadump.c (d418b19f34ed0c751a69810080596f7e749595aa) fadump.c (d8e73458f33a24810413ee3a0cd020b644de2f98)
1// SPDX-License-Identifier: GPL-2.0-or-later
2/*
3 * Firmware Assisted dump: A robust mechanism to get reliable kernel crash
4 * dump with assistance from firmware. This approach does not use kexec,
5 * instead firmware assists in booting the kdump kernel while preserving
6 * memory contents. The most of the code implementation has been adapted
7 * from phyp assisted dump implementation written by Linas Vepstas and
8 * Manish Ahuja

--- 1355 unchanged lines hidden (view full) ---

1364
1365static ssize_t enabled_show(struct kobject *kobj,
1366 struct kobj_attribute *attr,
1367 char *buf)
1368{
1369 return sprintf(buf, "%d\n", fw_dump.fadump_enabled);
1370}
1371
1// SPDX-License-Identifier: GPL-2.0-or-later
2/*
3 * Firmware Assisted dump: A robust mechanism to get reliable kernel crash
4 * dump with assistance from firmware. This approach does not use kexec,
5 * instead firmware assists in booting the kdump kernel while preserving
6 * memory contents. The most of the code implementation has been adapted
7 * from phyp assisted dump implementation written by Linas Vepstas and
8 * Manish Ahuja

--- 1355 unchanged lines hidden (view full) ---

1364
1365static ssize_t enabled_show(struct kobject *kobj,
1366 struct kobj_attribute *attr,
1367 char *buf)
1368{
1369 return sprintf(buf, "%d\n", fw_dump.fadump_enabled);
1370}
1371
1372static ssize_t mem_reserved_show(struct kobject *kobj,
1373 struct kobj_attribute *attr,
1374 char *buf)
1375{
1376 return sprintf(buf, "%ld\n", fw_dump.reserve_dump_area_size);
1377}
1378
1372static ssize_t registered_show(struct kobject *kobj,
1373 struct kobj_attribute *attr,
1374 char *buf)
1375{
1376 return sprintf(buf, "%d\n", fw_dump.dump_registered);
1377}
1378
1379static ssize_t registered_store(struct kobject *kobj,

--- 48 unchanged lines hidden (view full) ---

1428 fw_dump.ops->fadump_region_show(&fw_dump, m);
1429 mutex_unlock(&fadump_mutex);
1430 return 0;
1431}
1432
1433static struct kobj_attribute release_attr = __ATTR_WO(release_mem);
1434static struct kobj_attribute enable_attr = __ATTR_RO(enabled);
1435static struct kobj_attribute register_attr = __ATTR_RW(registered);
1379static ssize_t registered_show(struct kobject *kobj,
1380 struct kobj_attribute *attr,
1381 char *buf)
1382{
1383 return sprintf(buf, "%d\n", fw_dump.dump_registered);
1384}
1385
1386static ssize_t registered_store(struct kobject *kobj,

--- 48 unchanged lines hidden (view full) ---

1435 fw_dump.ops->fadump_region_show(&fw_dump, m);
1436 mutex_unlock(&fadump_mutex);
1437 return 0;
1438}
1439
1440static struct kobj_attribute release_attr = __ATTR_WO(release_mem);
1441static struct kobj_attribute enable_attr = __ATTR_RO(enabled);
1442static struct kobj_attribute register_attr = __ATTR_RW(registered);
1443static struct kobj_attribute mem_reserved_attr = __ATTR_RO(mem_reserved);
1436
1437static struct attribute *fadump_attrs[] = {
1438 &enable_attr.attr,
1439 &register_attr.attr,
1444
1445static struct attribute *fadump_attrs[] = {
1446 &enable_attr.attr,
1447 &register_attr.attr,
1448 &mem_reserved_attr.attr,
1440 NULL,
1441};
1442
1443ATTRIBUTE_GROUPS(fadump);
1444
1445DEFINE_SHOW_ATTRIBUTE(fadump_region);
1446
1447static void fadump_init_files(void)

--- 162 unchanged lines hidden ---
1449 NULL,
1450};
1451
1452ATTRIBUTE_GROUPS(fadump);
1453
1454DEFINE_SHOW_ATTRIBUTE(fadump_region);
1455
1456static void fadump_init_files(void)

--- 162 unchanged lines hidden ---