Message ID | 1674536682-18404-1-git-send-email-quic_schowdhu@quicinc.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [V1] bootconfig: Increase max nodes of bootconfig from 1024 to 8192 for DCC support | expand |
On Tue, 24 Jan 2023 10:34:42 +0530 Souradeep Chowdhury <quic_schowdhu@quicinc.com> wrote: > The Data Capture and Compare(DCC) is a debugging tool that uses the bootconfig > for configuring the register values during boot-time. Increase the max nodes > supported by bootconfig to cater to the requirements of the Data Capture and > Compare Driver. Thanks, this looks good to me :) Acked-by: Masami Hiramatsu (Google) <mhiramat@kernel.org> > > Signed-off-by: Souradeep Chowdhury <quic_schowdhu@quicinc.com> > --- > include/linux/bootconfig.h | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/include/linux/bootconfig.h b/include/linux/bootconfig.h > index 1611f9d..ca73940 100644 > --- a/include/linux/bootconfig.h > +++ b/include/linux/bootconfig.h > @@ -59,7 +59,7 @@ struct xbc_node { > /* Maximum size of boot config is 32KB - 1 */ > #define XBC_DATA_MAX (XBC_VALUE - 1) > > -#define XBC_NODE_MAX 1024 > +#define XBC_NODE_MAX 8192 > #define XBC_KEYLEN_MAX 256 > #define XBC_DEPTH_MAX 16 > > -- > 2.7.4 >
Hi everyone, It looks like this broke the bootconfig tests (tools/bootconfig/test- bootconfig.sh), tested on 6.1.18: Max node number check test case 12 (./bootconfig -a ./temp-HCfT.bconf ./initrd-NGHv)... Apply ./temp-HCfT.bconf to ./initrd-NGHv Number of nodes: 1024 Size: 8110 bytes Checksum: 599485 \t\t[OK] test case 13 (./bootconfig -a ./temp-HCfT.bconf ./initrd-NGHv)... Apply ./temp-HCfT.bconf to ./initrd-NGHv Number of nodes: 1025 Size: 8118 bytes Checksum: 600212 \t\t[NG] When I adjust the max node number for the tests to 8192, test case 13 passes, but test case 12 then fails: Max node number check test case 12 (./bootconfig -a ./temp-qZHF.bconf ./initrd-0v99)... Error: Config data is too big. \t\t[NG] test case 13 (./bootconfig -a ./temp-qZHF.bconf ./initrd-0v99)... Error: Config data is too big. \t\t[OK] Grs, Heinz
On Sun, 12 Mar 2023 12:49:44 +0100 Heinz Wiesinger <pprkut@slackware.com> wrote: > Hi everyone, Oops, thanks for pointing it out. I have to run the test in the test environment... > > It looks like this broke the bootconfig tests (tools/bootconfig/test- > bootconfig.sh), tested on 6.1.18: > > Max node number check > test case 12 (./bootconfig -a ./temp-HCfT.bconf ./initrd-NGHv)... > Apply ./temp-HCfT.bconf to ./initrd-NGHv > Number of nodes: 1024 > Size: 8110 bytes > Checksum: 599485 > \t\t[OK] > test case 13 (./bootconfig -a ./temp-HCfT.bconf ./initrd-NGHv)... > Apply ./temp-HCfT.bconf to ./initrd-NGHv > Number of nodes: 1025 > Size: 8118 bytes > Checksum: 600212 > \t\t[NG] Yes, it needs to test with 8192 and 8193 nodes. Those are boundary checker. Thanks! > > When I adjust the max node number for the tests to 8192, test case 13 passes, > but test case 12 then fails: > > Max node number check > test case 12 (./bootconfig -a ./temp-qZHF.bconf ./initrd-0v99)... > Error: Config data is too big. > \t\t[NG] > test case 13 (./bootconfig -a ./temp-qZHF.bconf ./initrd-0v99)... > Error: Config data is too big. > \t\t[OK] Ah, it hits the size limitation. :D Each node consumes "node%d\n" = 6-11 bytes, and 11 bytes*8k = 88k bytes > 32K bytes. So, for making 8k nodes (including delimiter), we need to use 3 random alphabets for node name. (26^3 = 17576) Let me fix that and thanks for report! > > Grs, > Heinz
diff --git a/include/linux/bootconfig.h b/include/linux/bootconfig.h index 1611f9d..ca73940 100644 --- a/include/linux/bootconfig.h +++ b/include/linux/bootconfig.h @@ -59,7 +59,7 @@ struct xbc_node { /* Maximum size of boot config is 32KB - 1 */ #define XBC_DATA_MAX (XBC_VALUE - 1) -#define XBC_NODE_MAX 1024 +#define XBC_NODE_MAX 8192 #define XBC_KEYLEN_MAX 256 #define XBC_DEPTH_MAX 16
The Data Capture and Compare(DCC) is a debugging tool that uses the bootconfig for configuring the register values during boot-time. Increase the max nodes supported by bootconfig to cater to the requirements of the Data Capture and Compare Driver. Signed-off-by: Souradeep Chowdhury <quic_schowdhu@quicinc.com> --- include/linux/bootconfig.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) -- 2.7.4