Patchwork dmi: dmicheck: add more checks for invalid DMI fields (LP: #1262236)

login
register
mail settings
Submitter Colin King
Date Jan. 7, 2014, 10:59 a.m.
Message ID <1389092385-31328-1-git-send-email-colin.king@canonical.com>
Download mbox | patch
Permalink /patch/307613/
State Accepted
Headers show

Comments

Colin King - Jan. 7, 2014, 10:59 a.m.
From: Colin Ian King <colin.king@canonical.com>

There are a lot of weird and wonderful invalid DMI fields that
should be checked for in the dmicheck.  I've scanned thousands of
bug reports for invalid fields and added them to the dmicheck tests.

Signed-off-by: Colin Ian King <colin.king@canonical.com>
---
 src/dmi/dmicheck/dmicheck.c | 103 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 103 insertions(+)
Alex Hung - Jan. 8, 2014, 7:45 a.m.
On 01/07/2014 06:59 PM, Colin King wrote:
> From: Colin Ian King <colin.king@canonical.com>
>
> There are a lot of weird and wonderful invalid DMI fields that
> should be checked for in the dmicheck.  I've scanned thousands of
> bug reports for invalid fields and added them to the dmicheck tests.
>
> Signed-off-by: Colin Ian King <colin.king@canonical.com>
> ---
>   src/dmi/dmicheck/dmicheck.c | 103 ++++++++++++++++++++++++++++++++++++++++++++
>   1 file changed, 103 insertions(+)
>
> diff --git a/src/dmi/dmicheck/dmicheck.c b/src/dmi/dmicheck/dmicheck.c
> index f73d6f6..c6a3151 100644
> --- a/src/dmi/dmicheck/dmicheck.c
> +++ b/src/dmi/dmicheck/dmicheck.c
> @@ -84,16 +84,119 @@ typedef struct {
>   	uint8_t	offset;
>   } fwts_dmi_used_by_kernel;
>
> +/*
> + *  Table derived by scanning thousands of DMI table dumps from bug reports
> + */
>   static const fwts_dmi_pattern dmi_patterns[] = {
> +	{ "DMISerialNumber",	"Serial Number",	"0000000" },
> +	{ "DMISerialNumber",	"Serial Number",	"00000000" },
> +	{ "DMISerialNumber",	"Serial Number",	"000000000" },
> +	{ "DMISerialNumber",	"Serial Number",	"0000000000" },
> +	{ "DMISerialNumber",	"Serial Number",	"0x00000000" },
> +	{ "DMISerialNumber",	"Serial Number",	"0x0000000000000000" },
> +	{ "DMISerialNumber",	"Serial Number",	"012345678" },
>   	{ "DMISerialNumber",	"Serial Number",	"0123456789" },
> +	{ "DMISerialNumber",	"Serial Number",	"01234567890" },
> +	{ "DMISerialNumber",	"Serial Number",	"012345678900" },
> +	{ "DMISerialNumber",	"Serial Number",	"0123456789000" },
>   	{ "DMISerialNumber",	"Serial Number",	"System Serial Number" },
>   	{ "DMISerialNumber",	"Serial Number",	"MB-1234567890" },
> +	{ "DMISerialNumber",	"Serial Number",	"NB-1234567890" },
> +	{ "DMISerialNumber",	"Serial Number",	"NB-0123456789" },
> +	{ "DMISerialNumber",	"Serial Number",	"Base Board Serial Number" },
> +	{ "DMISerialNumber",	"Serial Number",	"Chassis Serial Number" },
> +	{ "DMISerialNumber",	"Serial Number",	"<cut out>" },
> +	{ "DMISerialNumber",	"Serial Number",	"Empty" },
> +	{ "DMISerialNumber",	"Serial Number",	"[Empty]" },
> +	{ "DMISerialNumber",	"Serial Number",	"NA" },
> +	{ "DMISerialNumber",	"Serial Number",	"N/A" },
> +	{ "DMISerialNumber",	"Serial Number",	"None" },
> +	{ "DMISerialNumber",	"Serial Number",	"None1" },
> +	{ "DMISerialNumber",	"Serial Number",	"Not Available" },
> +	{ "DMISerialNumber",	"Serial Number",	"Not Specified" },
> +	{ "DMISerialNumber",	"Serial Number",	"NotSupport" },
> +	{ "DMISerialNumber",	"Serial Number",	"Not Supported by CPU" },
> +	{ "DMISerialNumber",	"Serial Number",	"Not Supported" },
> +	{ "DMISerialNumber",	"Serial Number",	"OEM Chassis Serial Number" },
> +	{ "DMISerialNumber",	"Serial Number",	"OEM_Define1" },
> +	{ "DMISerialNumber",	"Serial Number",	"OEM_Define2" },
> +	{ "DMISerialNumber",	"Serial Number",	"OEM_Define3" },
> +	{ "DMISerialNumber",	"Serial Number",	"SerNum0" },
> +	{ "DMISerialNumber",	"Serial Number",	"SerNum00" },
> +	{ "DMISerialNumber",	"Serial Number",	"SerNum01" },
> +	{ "DMISerialNumber",	"Serial Number",	"SerNum02" },
> +	{ "DMISerialNumber",	"Serial Number",	"SerNum03" },
> +	{ "DMISerialNumber",	"Serial Number",	"SerNum1" },
> +	{ "DMISerialNumber",	"Serial Number",	"SerNum2" },
> +	{ "DMISerialNumber",	"Serial Number",	"SerNum3" },
> +	{ "DMISerialNumber",	"Serial Number",	"SerNum4" },
> +	{ "DMISerialNumber",	"Serial Number",	"TBD by ODM" },
> +	{ "DMISerialNumber",	"Serial Number",	"To Be Defined By O.E.M" },
> +	{ "DMISerialNumber",	"Serial Number",	"To be filled by O.E.M." },
> +	{ "DMISerialNumber",	"Serial Number",	"To Be Filled By O.E.M." },
> +	{ "DMISerialNumber",	"Serial Number",	"Unknow" },
> +	{ "DMISerialNumber",	"Serial Number",	"Unknown" },
> +	{ "DMISerialNumber",	"Serial Number",	"XXXXXXXXXXXX" },
> +	{ "DMISerialNumber",	"Serial Number",	"XXXXXXXXXXX" },
> +	{ "DMISerialNumber",	"Serial Number",	"XXXXXXXXXX" },
> +	{ "DMISerialNumber",	"Serial Number",	"XXXXXXXXX" },
> +	{ "DMISerialNumber",	"Serial Number",	"XXXXXXXX" },
> +	{ "DMISerialNumber",	"Serial Number",	"XXXXXX" },
> +	{ "DMISerialNumber",	"Serial Number",	"XXXXX" },
>   	{ "DMISerialNumber",	NULL,			"Chassis Serial Number" },
> +	{ "DMIAssetTag",	"Asset Tag",		"0000000000" },
> +	{ "DMIAssetTag",	"Asset Tag",		"0x00000000" },
>   	{ "DMIAssetTag",	"Asset Tag",		"1234567890" },
> +	{ "DMIAssetTag",	"Asset Tag",		"123456789000" },
> +	{ "DMIAssetTag",	"Asset Tag",		"9876543210" },
> +	{ "DMIAssetTag",	"Asset Tag",		"A1_AssetTagNum0" },
> +	{ "DMIAssetTag",	"Asset Tag",		"A1_AssetTagNum1" },
> +	{ "DMIAssetTag",	"Asset Tag",		"A1_AssetTagNum2" },
> +	{ "DMIAssetTag",	"Asset Tag",		"A1_AssetTagNum3" },
> +	{ "DMIAssetTag",	"Asset Tag",		"ABCDEFGHIJKLM" },
>   	{ "DMIAssetTag",	"Asset Tag",		"Asset-1234567890" },
> +	{ "DMIAssetTag",	"Asset Tag",		"Asset Tag" },
> +	{ "DMIAssetTag",	"Asset Tag",		"Asset Tag:" },
> +	{ "DMIAssetTag",	"Asset Tag",		"AssetTagNum0" },
> +	{ "DMIAssetTag",	"Asset Tag",		"AssetTagNum1" },
> +	{ "DMIAssetTag",	"Asset Tag",		"AssetTagNum2" },
> +	{ "DMIAssetTag",	"Asset Tag",		"AssetTagNum3" },
> +	{ "DMIAssetTag",	"Asset Tag",		"AssetTagNum4" },
> +	{ "DMIAssetTag",	"Asset Tag",		"Asset tracking" },
> +	{ "DMIAssetTag",	"Asset Tag",		"ATN12345678901234567" },
> +	{ "DMIAssetTag",	"Asset Tag",		"Base Board Asset Tag#" },
> +	{ "DMIAssetTag",	"Asset Tag",		"Base Board Asset Tag" },
> +	{ "DMIAssetTag",	"Asset Tag",		"Chassis Asset Tag" },
> +	{ "DMIAssetTag",	"Asset Tag",		"<cut out>" },
> +	{ "DMIAssetTag",	"Asset Tag",		"Fill By OEM" },
> +	{ "DMIAssetTag",	"Asset Tag",		"N/A" },
> +	{ "DMIAssetTag",	"Asset Tag",		"No Asset Information" },
> +	{ "DMIAssetTag",	"Asset Tag",		"No Asset Tag" },
> +	{ "DMIAssetTag",	"Asset Tag",		"None" },
> +	{ "DMIAssetTag",	"Asset Tag",		"Not Available" },
> +	{ "DMIAssetTag",	"Asset Tag",		"Not Specified" },
> +	{ "DMIAssetTag",	"Asset Tag",		"OEM_Define0" },
> +	{ "DMIAssetTag",	"Asset Tag",		"OEM_Define1" },
> +	{ "DMIAssetTag",	"Asset Tag",		"OEM_Define2" },
> +	{ "DMIAssetTag",	"Asset Tag",		"OEM_Define3" },
> +	{ "DMIAssetTag",	"Asset Tag",		"OEM_Define4" },
> +	{ "DMIAssetTag",	"Asset Tag",		"TBD by ODM" },
> +	{ "DMIAssetTag",	"Asset Tag",		"To Be Defined By O.E.M" },
> +	{ "DMIAssetTag",	"Asset Tag",		"To be filled by O.E.M." },
> +	{ "DMIAssetTag",	"Asset Tag",		"To Be Filled By O.E.M." },
> +	{ "DMIAssetTag",	"Asset Tag",		"Unknown" },
> +	{ "DMIAssetTag",	"Asset Tag",		"XXXXXXXXXXXX" },
> +	{ "DMIAssetTag",	"Asset Tag",		"XXXXXXXXXXX" },
> +	{ "DMIAssetTag",	"Asset Tag",		"XXXXXXXXXX" },
> +	{ "DMIAssetTag",	"Asset Tag",		"XXXXXXXXX" },
> +	{ "DMIAssetTag",	"Asset Tag",		"XXXXXXXX" },
> +	{ "DMIAssetTag",	"Asset Tag",		"XXXXXXX" },
> +	{ "DMIAssetTag",	"Asset Tag",		"XXXXXX" },
>   	{ "DMIChassisVendor",	NULL,			"Chassis Manufacture" },
>   	{ "DMIChassisVersion",	NULL,			"Chassis Version" },
>   	{ "DMIProductVersion",	NULL,			"System Version" },
> +	{ "DMIBadDefault",	NULL,			"To Be Defined By O.E.M" },
> +	{ "DMIBadDefault",	NULL,			"To be filled by O.E.M." },
>   	{ "DMIBadDefault",	NULL,			"To Be Filled By O.E.M." },
>   	{ NULL,			NULL,			NULL }
>   };
>

Acked-by: Alex Hung <alex.hung@canonical.com>
Ivan Hu - Jan. 9, 2014, 6:16 a.m.
On 01/07/2014 06:59 PM, Colin King wrote:
> From: Colin Ian King <colin.king@canonical.com>
>
> There are a lot of weird and wonderful invalid DMI fields that
> should be checked for in the dmicheck.  I've scanned thousands of
> bug reports for invalid fields and added them to the dmicheck tests.
>
> Signed-off-by: Colin Ian King <colin.king@canonical.com>
> ---
>   src/dmi/dmicheck/dmicheck.c | 103 ++++++++++++++++++++++++++++++++++++++++++++
>   1 file changed, 103 insertions(+)
>
> diff --git a/src/dmi/dmicheck/dmicheck.c b/src/dmi/dmicheck/dmicheck.c
> index f73d6f6..c6a3151 100644
> --- a/src/dmi/dmicheck/dmicheck.c
> +++ b/src/dmi/dmicheck/dmicheck.c
> @@ -84,16 +84,119 @@ typedef struct {
>   	uint8_t	offset;
>   } fwts_dmi_used_by_kernel;
>
> +/*
> + *  Table derived by scanning thousands of DMI table dumps from bug reports
> + */
>   static const fwts_dmi_pattern dmi_patterns[] = {
> +	{ "DMISerialNumber",	"Serial Number",	"0000000" },
> +	{ "DMISerialNumber",	"Serial Number",	"00000000" },
> +	{ "DMISerialNumber",	"Serial Number",	"000000000" },
> +	{ "DMISerialNumber",	"Serial Number",	"0000000000" },
> +	{ "DMISerialNumber",	"Serial Number",	"0x00000000" },
> +	{ "DMISerialNumber",	"Serial Number",	"0x0000000000000000" },
> +	{ "DMISerialNumber",	"Serial Number",	"012345678" },
>   	{ "DMISerialNumber",	"Serial Number",	"0123456789" },
> +	{ "DMISerialNumber",	"Serial Number",	"01234567890" },
> +	{ "DMISerialNumber",	"Serial Number",	"012345678900" },
> +	{ "DMISerialNumber",	"Serial Number",	"0123456789000" },
>   	{ "DMISerialNumber",	"Serial Number",	"System Serial Number" },
>   	{ "DMISerialNumber",	"Serial Number",	"MB-1234567890" },
> +	{ "DMISerialNumber",	"Serial Number",	"NB-1234567890" },
> +	{ "DMISerialNumber",	"Serial Number",	"NB-0123456789" },
> +	{ "DMISerialNumber",	"Serial Number",	"Base Board Serial Number" },
> +	{ "DMISerialNumber",	"Serial Number",	"Chassis Serial Number" },
> +	{ "DMISerialNumber",	"Serial Number",	"<cut out>" },
> +	{ "DMISerialNumber",	"Serial Number",	"Empty" },
> +	{ "DMISerialNumber",	"Serial Number",	"[Empty]" },
> +	{ "DMISerialNumber",	"Serial Number",	"NA" },
> +	{ "DMISerialNumber",	"Serial Number",	"N/A" },
> +	{ "DMISerialNumber",	"Serial Number",	"None" },
> +	{ "DMISerialNumber",	"Serial Number",	"None1" },
> +	{ "DMISerialNumber",	"Serial Number",	"Not Available" },
> +	{ "DMISerialNumber",	"Serial Number",	"Not Specified" },
> +	{ "DMISerialNumber",	"Serial Number",	"NotSupport" },
> +	{ "DMISerialNumber",	"Serial Number",	"Not Supported by CPU" },
> +	{ "DMISerialNumber",	"Serial Number",	"Not Supported" },
> +	{ "DMISerialNumber",	"Serial Number",	"OEM Chassis Serial Number" },
> +	{ "DMISerialNumber",	"Serial Number",	"OEM_Define1" },
> +	{ "DMISerialNumber",	"Serial Number",	"OEM_Define2" },
> +	{ "DMISerialNumber",	"Serial Number",	"OEM_Define3" },
> +	{ "DMISerialNumber",	"Serial Number",	"SerNum0" },
> +	{ "DMISerialNumber",	"Serial Number",	"SerNum00" },
> +	{ "DMISerialNumber",	"Serial Number",	"SerNum01" },
> +	{ "DMISerialNumber",	"Serial Number",	"SerNum02" },
> +	{ "DMISerialNumber",	"Serial Number",	"SerNum03" },
> +	{ "DMISerialNumber",	"Serial Number",	"SerNum1" },
> +	{ "DMISerialNumber",	"Serial Number",	"SerNum2" },
> +	{ "DMISerialNumber",	"Serial Number",	"SerNum3" },
> +	{ "DMISerialNumber",	"Serial Number",	"SerNum4" },
> +	{ "DMISerialNumber",	"Serial Number",	"TBD by ODM" },
> +	{ "DMISerialNumber",	"Serial Number",	"To Be Defined By O.E.M" },
> +	{ "DMISerialNumber",	"Serial Number",	"To be filled by O.E.M." },
> +	{ "DMISerialNumber",	"Serial Number",	"To Be Filled By O.E.M." },
> +	{ "DMISerialNumber",	"Serial Number",	"Unknow" },
> +	{ "DMISerialNumber",	"Serial Number",	"Unknown" },
> +	{ "DMISerialNumber",	"Serial Number",	"XXXXXXXXXXXX" },
> +	{ "DMISerialNumber",	"Serial Number",	"XXXXXXXXXXX" },
> +	{ "DMISerialNumber",	"Serial Number",	"XXXXXXXXXX" },
> +	{ "DMISerialNumber",	"Serial Number",	"XXXXXXXXX" },
> +	{ "DMISerialNumber",	"Serial Number",	"XXXXXXXX" },
> +	{ "DMISerialNumber",	"Serial Number",	"XXXXXX" },
> +	{ "DMISerialNumber",	"Serial Number",	"XXXXX" },
>   	{ "DMISerialNumber",	NULL,			"Chassis Serial Number" },
> +	{ "DMIAssetTag",	"Asset Tag",		"0000000000" },
> +	{ "DMIAssetTag",	"Asset Tag",		"0x00000000" },
>   	{ "DMIAssetTag",	"Asset Tag",		"1234567890" },
> +	{ "DMIAssetTag",	"Asset Tag",		"123456789000" },
> +	{ "DMIAssetTag",	"Asset Tag",		"9876543210" },
> +	{ "DMIAssetTag",	"Asset Tag",		"A1_AssetTagNum0" },
> +	{ "DMIAssetTag",	"Asset Tag",		"A1_AssetTagNum1" },
> +	{ "DMIAssetTag",	"Asset Tag",		"A1_AssetTagNum2" },
> +	{ "DMIAssetTag",	"Asset Tag",		"A1_AssetTagNum3" },
> +	{ "DMIAssetTag",	"Asset Tag",		"ABCDEFGHIJKLM" },
>   	{ "DMIAssetTag",	"Asset Tag",		"Asset-1234567890" },
> +	{ "DMIAssetTag",	"Asset Tag",		"Asset Tag" },
> +	{ "DMIAssetTag",	"Asset Tag",		"Asset Tag:" },
> +	{ "DMIAssetTag",	"Asset Tag",		"AssetTagNum0" },
> +	{ "DMIAssetTag",	"Asset Tag",		"AssetTagNum1" },
> +	{ "DMIAssetTag",	"Asset Tag",		"AssetTagNum2" },
> +	{ "DMIAssetTag",	"Asset Tag",		"AssetTagNum3" },
> +	{ "DMIAssetTag",	"Asset Tag",		"AssetTagNum4" },
> +	{ "DMIAssetTag",	"Asset Tag",		"Asset tracking" },
> +	{ "DMIAssetTag",	"Asset Tag",		"ATN12345678901234567" },
> +	{ "DMIAssetTag",	"Asset Tag",		"Base Board Asset Tag#" },
> +	{ "DMIAssetTag",	"Asset Tag",		"Base Board Asset Tag" },
> +	{ "DMIAssetTag",	"Asset Tag",		"Chassis Asset Tag" },
> +	{ "DMIAssetTag",	"Asset Tag",		"<cut out>" },
> +	{ "DMIAssetTag",	"Asset Tag",		"Fill By OEM" },
> +	{ "DMIAssetTag",	"Asset Tag",		"N/A" },
> +	{ "DMIAssetTag",	"Asset Tag",		"No Asset Information" },
> +	{ "DMIAssetTag",	"Asset Tag",		"No Asset Tag" },
> +	{ "DMIAssetTag",	"Asset Tag",		"None" },
> +	{ "DMIAssetTag",	"Asset Tag",		"Not Available" },
> +	{ "DMIAssetTag",	"Asset Tag",		"Not Specified" },
> +	{ "DMIAssetTag",	"Asset Tag",		"OEM_Define0" },
> +	{ "DMIAssetTag",	"Asset Tag",		"OEM_Define1" },
> +	{ "DMIAssetTag",	"Asset Tag",		"OEM_Define2" },
> +	{ "DMIAssetTag",	"Asset Tag",		"OEM_Define3" },
> +	{ "DMIAssetTag",	"Asset Tag",		"OEM_Define4" },
> +	{ "DMIAssetTag",	"Asset Tag",		"TBD by ODM" },
> +	{ "DMIAssetTag",	"Asset Tag",		"To Be Defined By O.E.M" },
> +	{ "DMIAssetTag",	"Asset Tag",		"To be filled by O.E.M." },
> +	{ "DMIAssetTag",	"Asset Tag",		"To Be Filled By O.E.M." },
> +	{ "DMIAssetTag",	"Asset Tag",		"Unknown" },
> +	{ "DMIAssetTag",	"Asset Tag",		"XXXXXXXXXXXX" },
> +	{ "DMIAssetTag",	"Asset Tag",		"XXXXXXXXXXX" },
> +	{ "DMIAssetTag",	"Asset Tag",		"XXXXXXXXXX" },
> +	{ "DMIAssetTag",	"Asset Tag",		"XXXXXXXXX" },
> +	{ "DMIAssetTag",	"Asset Tag",		"XXXXXXXX" },
> +	{ "DMIAssetTag",	"Asset Tag",		"XXXXXXX" },
> +	{ "DMIAssetTag",	"Asset Tag",		"XXXXXX" },
>   	{ "DMIChassisVendor",	NULL,			"Chassis Manufacture" },
>   	{ "DMIChassisVersion",	NULL,			"Chassis Version" },
>   	{ "DMIProductVersion",	NULL,			"System Version" },
> +	{ "DMIBadDefault",	NULL,			"To Be Defined By O.E.M" },
> +	{ "DMIBadDefault",	NULL,			"To be filled by O.E.M." },
>   	{ "DMIBadDefault",	NULL,			"To Be Filled By O.E.M." },
>   	{ NULL,			NULL,			NULL }
>   };
>

Acked-by: Ivan Hu <ivan.hu@canonical.com>

Patch

diff --git a/src/dmi/dmicheck/dmicheck.c b/src/dmi/dmicheck/dmicheck.c
index f73d6f6..c6a3151 100644
--- a/src/dmi/dmicheck/dmicheck.c
+++ b/src/dmi/dmicheck/dmicheck.c
@@ -84,16 +84,119 @@  typedef struct {
 	uint8_t	offset;
 } fwts_dmi_used_by_kernel;
 
+/*
+ *  Table derived by scanning thousands of DMI table dumps from bug reports
+ */
 static const fwts_dmi_pattern dmi_patterns[] = {
+	{ "DMISerialNumber",	"Serial Number",	"0000000" },
+	{ "DMISerialNumber",	"Serial Number",	"00000000" },
+	{ "DMISerialNumber",	"Serial Number",	"000000000" },
+	{ "DMISerialNumber",	"Serial Number",	"0000000000" },
+	{ "DMISerialNumber",	"Serial Number",	"0x00000000" },
+	{ "DMISerialNumber",	"Serial Number",	"0x0000000000000000" },
+	{ "DMISerialNumber",	"Serial Number",	"012345678" },
 	{ "DMISerialNumber",	"Serial Number",	"0123456789" },
+	{ "DMISerialNumber",	"Serial Number",	"01234567890" },
+	{ "DMISerialNumber",	"Serial Number",	"012345678900" },
+	{ "DMISerialNumber",	"Serial Number",	"0123456789000" },
 	{ "DMISerialNumber",	"Serial Number",	"System Serial Number" },
 	{ "DMISerialNumber",	"Serial Number",	"MB-1234567890" },
+	{ "DMISerialNumber",	"Serial Number",	"NB-1234567890" },
+	{ "DMISerialNumber",	"Serial Number",	"NB-0123456789" },
+	{ "DMISerialNumber",	"Serial Number",	"Base Board Serial Number" },
+	{ "DMISerialNumber",	"Serial Number",	"Chassis Serial Number" },
+	{ "DMISerialNumber",	"Serial Number",	"<cut out>" },
+	{ "DMISerialNumber",	"Serial Number",	"Empty" },
+	{ "DMISerialNumber",	"Serial Number",	"[Empty]" },
+	{ "DMISerialNumber",	"Serial Number",	"NA" },
+	{ "DMISerialNumber",	"Serial Number",	"N/A" },
+	{ "DMISerialNumber",	"Serial Number",	"None" },
+	{ "DMISerialNumber",	"Serial Number",	"None1" },
+	{ "DMISerialNumber",	"Serial Number",	"Not Available" },
+	{ "DMISerialNumber",	"Serial Number",	"Not Specified" },
+	{ "DMISerialNumber",	"Serial Number",	"NotSupport" },
+	{ "DMISerialNumber",	"Serial Number",	"Not Supported by CPU" },
+	{ "DMISerialNumber",	"Serial Number",	"Not Supported" },
+	{ "DMISerialNumber",	"Serial Number",	"OEM Chassis Serial Number" },
+	{ "DMISerialNumber",	"Serial Number",	"OEM_Define1" },
+	{ "DMISerialNumber",	"Serial Number",	"OEM_Define2" },
+	{ "DMISerialNumber",	"Serial Number",	"OEM_Define3" },
+	{ "DMISerialNumber",	"Serial Number",	"SerNum0" },
+	{ "DMISerialNumber",	"Serial Number",	"SerNum00" },
+	{ "DMISerialNumber",	"Serial Number",	"SerNum01" },
+	{ "DMISerialNumber",	"Serial Number",	"SerNum02" },
+	{ "DMISerialNumber",	"Serial Number",	"SerNum03" },
+	{ "DMISerialNumber",	"Serial Number",	"SerNum1" },
+	{ "DMISerialNumber",	"Serial Number",	"SerNum2" },
+	{ "DMISerialNumber",	"Serial Number",	"SerNum3" },
+	{ "DMISerialNumber",	"Serial Number",	"SerNum4" },
+	{ "DMISerialNumber",	"Serial Number",	"TBD by ODM" },
+	{ "DMISerialNumber",	"Serial Number",	"To Be Defined By O.E.M" },
+	{ "DMISerialNumber",	"Serial Number",	"To be filled by O.E.M." },
+	{ "DMISerialNumber",	"Serial Number",	"To Be Filled By O.E.M." },
+	{ "DMISerialNumber",	"Serial Number",	"Unknow" },
+	{ "DMISerialNumber",	"Serial Number",	"Unknown" },
+	{ "DMISerialNumber",	"Serial Number",	"XXXXXXXXXXXX" },
+	{ "DMISerialNumber",	"Serial Number",	"XXXXXXXXXXX" },
+	{ "DMISerialNumber",	"Serial Number",	"XXXXXXXXXX" },
+	{ "DMISerialNumber",	"Serial Number",	"XXXXXXXXX" },
+	{ "DMISerialNumber",	"Serial Number",	"XXXXXXXX" },
+	{ "DMISerialNumber",	"Serial Number",	"XXXXXX" },
+	{ "DMISerialNumber",	"Serial Number",	"XXXXX" },
 	{ "DMISerialNumber",	NULL,			"Chassis Serial Number" },
+	{ "DMIAssetTag",	"Asset Tag",		"0000000000" },
+	{ "DMIAssetTag",	"Asset Tag",		"0x00000000" },
 	{ "DMIAssetTag",	"Asset Tag",		"1234567890" },
+	{ "DMIAssetTag",	"Asset Tag",		"123456789000" },
+	{ "DMIAssetTag",	"Asset Tag",		"9876543210" },
+	{ "DMIAssetTag",	"Asset Tag",		"A1_AssetTagNum0" },
+	{ "DMIAssetTag",	"Asset Tag",		"A1_AssetTagNum1" },
+	{ "DMIAssetTag",	"Asset Tag",		"A1_AssetTagNum2" },
+	{ "DMIAssetTag",	"Asset Tag",		"A1_AssetTagNum3" },
+	{ "DMIAssetTag",	"Asset Tag",		"ABCDEFGHIJKLM" },
 	{ "DMIAssetTag",	"Asset Tag",		"Asset-1234567890" },
+	{ "DMIAssetTag",	"Asset Tag",		"Asset Tag" },
+	{ "DMIAssetTag",	"Asset Tag",		"Asset Tag:" },
+	{ "DMIAssetTag",	"Asset Tag",		"AssetTagNum0" },
+	{ "DMIAssetTag",	"Asset Tag",		"AssetTagNum1" },
+	{ "DMIAssetTag",	"Asset Tag",		"AssetTagNum2" },
+	{ "DMIAssetTag",	"Asset Tag",		"AssetTagNum3" },
+	{ "DMIAssetTag",	"Asset Tag",		"AssetTagNum4" },
+	{ "DMIAssetTag",	"Asset Tag",		"Asset tracking" },
+	{ "DMIAssetTag",	"Asset Tag",		"ATN12345678901234567" },
+	{ "DMIAssetTag",	"Asset Tag",		"Base Board Asset Tag#" },
+	{ "DMIAssetTag",	"Asset Tag",		"Base Board Asset Tag" },
+	{ "DMIAssetTag",	"Asset Tag",		"Chassis Asset Tag" },
+	{ "DMIAssetTag",	"Asset Tag",		"<cut out>" },
+	{ "DMIAssetTag",	"Asset Tag",		"Fill By OEM" },
+	{ "DMIAssetTag",	"Asset Tag",		"N/A" },
+	{ "DMIAssetTag",	"Asset Tag",		"No Asset Information" },
+	{ "DMIAssetTag",	"Asset Tag",		"No Asset Tag" },
+	{ "DMIAssetTag",	"Asset Tag",		"None" },
+	{ "DMIAssetTag",	"Asset Tag",		"Not Available" },
+	{ "DMIAssetTag",	"Asset Tag",		"Not Specified" },
+	{ "DMIAssetTag",	"Asset Tag",		"OEM_Define0" },
+	{ "DMIAssetTag",	"Asset Tag",		"OEM_Define1" },
+	{ "DMIAssetTag",	"Asset Tag",		"OEM_Define2" },
+	{ "DMIAssetTag",	"Asset Tag",		"OEM_Define3" },
+	{ "DMIAssetTag",	"Asset Tag",		"OEM_Define4" },
+	{ "DMIAssetTag",	"Asset Tag",		"TBD by ODM" },
+	{ "DMIAssetTag",	"Asset Tag",		"To Be Defined By O.E.M" },
+	{ "DMIAssetTag",	"Asset Tag",		"To be filled by O.E.M." },
+	{ "DMIAssetTag",	"Asset Tag",		"To Be Filled By O.E.M." },
+	{ "DMIAssetTag",	"Asset Tag",		"Unknown" },
+	{ "DMIAssetTag",	"Asset Tag",		"XXXXXXXXXXXX" },
+	{ "DMIAssetTag",	"Asset Tag",		"XXXXXXXXXXX" },
+	{ "DMIAssetTag",	"Asset Tag",		"XXXXXXXXXX" },
+	{ "DMIAssetTag",	"Asset Tag",		"XXXXXXXXX" },
+	{ "DMIAssetTag",	"Asset Tag",		"XXXXXXXX" },
+	{ "DMIAssetTag",	"Asset Tag",		"XXXXXXX" },
+	{ "DMIAssetTag",	"Asset Tag",		"XXXXXX" },
 	{ "DMIChassisVendor",	NULL,			"Chassis Manufacture" },
 	{ "DMIChassisVersion",	NULL,			"Chassis Version" },
 	{ "DMIProductVersion",	NULL,			"System Version" },
+	{ "DMIBadDefault",	NULL,			"To Be Defined By O.E.M" },
+	{ "DMIBadDefault",	NULL,			"To be filled by O.E.M." },
 	{ "DMIBadDefault",	NULL,			"To Be Filled By O.E.M." },
 	{ NULL,			NULL,			NULL }
 };