/* * Copyright (c) 2014 LSI Corporation * * This software is licensed under the terms of the GNU General Public * License version 2, as published by the Free Software Foundation, and * may be copied, distributed, and modified under those terms. */ #ifndef _DT_BINDINGS_CLK_AXM5516_H #define _DT_BINDINGS_CLK_AXM5516_H #define AXXIA_CLK_FAB_PLL 0 #define AXXIA_CLK_CPU_PLL 1 #define AXXIA_CLK_SYS_PLL 2 #define AXXIA_CLK_SM0_PLL 3 #define AXXIA_CLK_SM1_PLL 4 #define AXXIA_CLK_FAB_DIV 5 #define AXXIA_CLK_SYS_DIV 6 #define AXXIA_CLK_NRCP_DIV 7 #define AXXIA_CLK_CPU0_DIV 8 #define AXXIA_CLK_CPU1_DIV 9 #define AXXIA_CLK_CPU2_DIV 10 #define AXXIA_CLK_CPU3_DIV 11 #define AXXIA_CLK_PER_DIV 12 #define AXXIA_CLK_MMC_DIV 13 #define AXXIA_CLK_FAB 14 #define AXXIA_CLK_SYS 15 #define AXXIA_CLK_NRCP 16 #define AXXIA_CLK_CPU0 17 #define AXXIA_CLK_CPU1 18 #define AXXIA_CLK_CPU2 19 #define AXXIA_CLK_CPU3 20 #define AXXIA_CLK_PER 21 #define AXXIA_CLK_MMC 22 #endif 16f94a3815b413f1868e10d'/> net-next plumbingsTobias Klauser
summaryrefslogtreecommitdiff
path: root/include/net
diff options
context:
space:
mode:
authorDan Williams <dan.j.williams@intel.com>2016-12-06 09:10:12 -0800
committerDan Williams <dan.j.williams@intel.com>2016-12-06 16:08:10 -0800
commitefda1b5d87cbc3d8816f94a3815b413f1868e10d (patch)
tree0763bed2ce9fa2d6cee7eda350ed24733ed8c1c8 /include/net
parent9a901f5495e26e691c7d0ea7b6057a2f3e6330ed (diff)
acpi, nfit, libnvdimm: fix / harden ars_status output length handling
Given ambiguities in the ACPI 6.1 definition of the "Output (Size)" field of the ARS (Address Range Scrub) Status command, a firmware implementation may in practice return 0, 4, or 8 to indicate that there is no output payload to process. The specification states "Size of Output Buffer in bytes, including this field.". However, 'Output Buffer' is also the name of the entire payload, and earlier in the specification it states "Max Query ARS Status Output Buffer Size: Maximum size of buffer (including the Status and Extended Status fields)". Without this fix if the BIOS happens to return 0 it causes memory corruption as evidenced by this result from the acpi_nfit_ctl() unit test. ars_status00000000: 00020000 00000000 ........ BUG: stack guard page was hit at ffffc90001750000 (stack is ffffc9000174c000..ffffc9000174ffff) kernel stack overflow (page fault): 0000 [#1] SMP DEBUG_PAGEALLOC task: ffff8803332d2ec0 task.stack: ffffc9000174c000 RIP: 0010:[<ffffffff814cfe72>] [<ffffffff814cfe72>] __memcpy+0x12/0x20 RSP: 0018:ffffc9000174f9a8 EFLAGS: 00010246 RAX: ffffc9000174fab8 RBX: 0000000000000000 RCX: 000000001fffff56 RDX: 0000000000000000 RSI: ffff8803231f5a08 RDI: ffffc90001750000 RBP: ffffc9000174fa88 R08: ffffc9000174fab0 R09: ffff8803231f54b8 R10: 0000000000000008 R11: 0000000000000001 R12: 0000000000000000 R13: 0000000000000000 R14: 0000000000000003 R15: ffff8803231f54a0 FS: 00007f3a611af640(0000) GS:ffff88033ed00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: ffffc90001750000 CR3: 0000000325b20000 CR4: 00000000000406e0 Stack: ffffffffa00bc60d 0000000000000008 ffffc90000000001 ffffc9000174faac 0000000000000292 ffffffffa00c24e4 ffffffffa00c2914 0000000000000000 0000000000000000 ffffffff00000003 ffff880331ae8ad0 0000000800000246 Call Trace: [<ffffffffa00bc60d>] ? acpi_nfit_ctl+0x49d/0x750 [nfit] [<ffffffffa01f4fe0>] nfit_test_probe+0x670/0xb1b [nfit_test] Cc: <stable@vger.kernel.org> Fixes: 747ffe11b440 ("libnvdimm, tools/testing/nvdimm: fix 'ars_status' output buffer sizing") Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Diffstat (limited to 'include/net')