Skip to contentSkip to conversation

uapi: fix asm/bootparam.h userspace compilation errors

PATCH In review Dmitry V. Levin 4 participants 5 messages Apr 5, 2018 – Apr 9, 2018

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 uapi: fix asm/bootparam.h userspace compilation errors

Consistently use types provided by <linux/types.h> to fix the following asm/bootparam.h userspace compilation errors:

/usr/include/asm/bootparam.h:140:2: error: unknown type name 'u16'
u16 version;
/usr/include/asm/bootparam.h:141:2: error: unknown type name 'u16'
u16 compatible_version;
/usr/include/asm/bootparam.h:142:2: error: unknown type name 'u16'
u16 pm_timer_address;
/usr/include/asm/bootparam.h:143:2: error: unknown type name 'u16'
u16 num_cpus;
/usr/include/asm/bootparam.h:144:2: error: unknown type name 'u64'
u64 pci_mmconfig_base;
/usr/include/asm/bootparam.h:145:2: error: unknown type name 'u32'
u32 tsc_khz;
/usr/include/asm/bootparam.h:146:2: error: unknown type name 'u32'
u32 apic_khz;
/usr/include/asm/bootparam.h:147:2: error: unknown type name 'u8'
u8 standard_ioapic;
/usr/include/asm/bootparam.h:148:2: error: unknown type name 'u8'
u8 cpu_ids[255];

Fixes 4a362601baa6 ("x86/jailhouse: Add infrastructure for running in non-root cell")
Cc <[email protected]> # v4.16
---
 arch/x86/include/uapi/asm/bootparam.h | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)
arch/x86/include/uapi/asm/bootparam.h +9 -9
index aebf60357758..a06cbf019744 100644
@@ -137,15 +137,15 @@ struct boot_e820_entry {
  * setup data structure.
  */
 struct jailhouse_setup_data {
-	u16	version;
-	u16	compatible_version;
-	u16	pm_timer_address;
-	u16	num_cpus;
-	u64	pci_mmconfig_base;
-	u32	tsc_khz;
-	u32	apic_khz;
-	u8	standard_ioapic;
-	u8	cpu_ids[255];
+	__u16	version;
+	__u16	compatible_version;
+	__u16	pm_timer_address;
+	__u16	num_cpus;
+	__u64	pci_mmconfig_base;
+	__u32	tsc_khz;
+	__u32	apic_khz;
+	__u8	standard_ioapic;
+	__u8	cpu_ids[255];
 } __attribute__((packed));
 
 /* The so-called "zeropage" */
Signature · 1 line
ldv
Acked-by on v1 1/1
#1 lore raw
Quoted 49 lines · Dmitry V. Levin

Consistently use types provided by <linux/types.h> to fix the following asm/bootparam.h userspace compilation errors:

/usr/include/asm/bootparam.h:140:2: error: unknown type name 'u16'
u16 version;
/usr/include/asm/bootparam.h:141:2: error: unknown type name 'u16'
u16 compatible_version;
/usr/include/asm/bootparam.h:142:2: error: unknown type name 'u16'
u16 pm_timer_address;
/usr/include/asm/bootparam.h:143:2: error: unknown type name 'u16'
u16 num_cpus;
/usr/include/asm/bootparam.h:144:2: error: unknown type name 'u64'
u64 pci_mmconfig_base;
/usr/include/asm/bootparam.h:145:2: error: unknown type name 'u32'
u32 tsc_khz;
/usr/include/asm/bootparam.h:146:2: error: unknown type name 'u32'
u32 apic_khz;
/usr/include/asm/bootparam.h:147:2: error: unknown type name 'u8'
u8 standard_ioapic;
/usr/include/asm/bootparam.h:148:2: error: unknown type name 'u8'
u8 cpu_ids[255];

Fixes 4a362601baa6 ("x86/jailhouse: Add infrastructure for running in non-root cell")
Cc <[email protected]> # v4.16
---
 arch/x86/include/uapi/asm/bootparam.h | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)
arch/x86/include/uapi/asm/bootparam.h +2 -9
index aebf60357758..a06cbf019744 100644
@@ -137,15 +137,15 @@ struct boot_e820_entry {
  * setup data structure.
  */
 struct jailhouse_setup_data {
-	u16	version;
-	u16	compatible_version;
-	u16	pm_timer_address;
-	u16	num_cpus;
-	u64	pci_mmconfig_base;
-	u32	tsc_khz;
-	u32	apic_khz;
-	u8	standard_ioapic;
-	u8	cpu_ids[255];
+	__u16	version;
+	__u16	compatible_version;

arch/x86/include/uapi/asm/bootparam.h struct boot_e820_entry { · line 151

Quoted 10 lines
arch/x86/include/uapi/asm/bootparam.h +7 -0
+	__u16	pm_timer_address;
+	__u16	num_cpus;
+	__u64	pci_mmconfig_base;
+	__u32	tsc_khz;
+	__u32	apic_khz;
+	__u8	standard_ioapic;
+	__u8	cpu_ids[255];
 } __attribute__((packed));
 
 /* The so-called "zeropage" */

But how did you trigger this?

Jan

Signature · 2 lines
Siemens AG, Corporate Technology, CT RDA IOT SES-DE
Corporate Competence Center Embedded Linux
#2 lore raw
Quoted 58 lines · Jan Kiszka
Quoted 57 lines · Dmitry V. Levin

Consistently use types provided by <linux/types.h> to fix the following asm/bootparam.h userspace compilation errors:

/usr/include/asm/bootparam.h:140:2: error: unknown type name 'u16'
u16 version;
/usr/include/asm/bootparam.h:141:2: error: unknown type name 'u16'
u16 compatible_version;
/usr/include/asm/bootparam.h:142:2: error: unknown type name 'u16'
u16 pm_timer_address;
/usr/include/asm/bootparam.h:143:2: error: unknown type name 'u16'
u16 num_cpus;
/usr/include/asm/bootparam.h:144:2: error: unknown type name 'u64'
u64 pci_mmconfig_base;
/usr/include/asm/bootparam.h:145:2: error: unknown type name 'u32'
u32 tsc_khz;
/usr/include/asm/bootparam.h:146:2: error: unknown type name 'u32'
u32 apic_khz;
/usr/include/asm/bootparam.h:147:2: error: unknown type name 'u8'
u8 standard_ioapic;
/usr/include/asm/bootparam.h:148:2: error: unknown type name 'u8'
u8 cpu_ids[255];

Fixes 4a362601baa6 ("x86/jailhouse: Add infrastructure for running in non-root cell")
Cc <[email protected]> # v4.16
---
 arch/x86/include/uapi/asm/bootparam.h | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)
arch/x86/include/uapi/asm/bootparam.h +9 -9
index aebf60357758..a06cbf019744 100644
@@ -137,15 +137,15 @@ struct boot_e820_entry {
  * setup data structure.
  */
 struct jailhouse_setup_data {
-	u16	version;
-	u16	compatible_version;
-	u16	pm_timer_address;
-	u16	num_cpus;
-	u64	pci_mmconfig_base;
-	u32	tsc_khz;
-	u32	apic_khz;
-	u8	standard_ioapic;
-	u8	cpu_ids[255];
+	__u16	version;
+	__u16	compatible_version;
+	__u16	pm_timer_address;
+	__u16	num_cpus;
+	__u64	pci_mmconfig_base;
+	__u32	tsc_khz;
+	__u32	apic_khz;
+	__u8	standard_ioapic;
+	__u8	cpu_ids[255];
 } __attribute__((packed));
 
Quoted 6 lines

arch/x86/include/uapi/asm/bootparam.h struct boot_e820_entry { · line 151

Quoted 2 lines
arch/x86/include/uapi/asm/bootparam.h +0 -0
 /* The so-called "zeropage" */

But how did you trigger this?

Our equivalent of glibc-kernheaders package contains a test for regressions of this kind.

Signature · 1 line
ldv
#3 lore raw

[tip:x86/pti] x86/uapi: Fix asm/bootparam.h userspace compilation errors

In reply to Dmitry V. Levin
x86/uapi: Fix asm/bootparam.h userspace compilation errors
Commit-ID:  9820e1c3376c641299624dd24646aed3167ad5b1
Gitweb:     https://git.kernel.org/tip/9820e1c3376c641299624dd24646aed3167ad5b1
Author:     Dmitry V. Levin <[email protected]>
AuthorDate: Thu, 5 Apr 2018 07:32:10 +0300
Committer:  Ingo Molnar <[email protected]>
CommitDate: Thu, 5 Apr 2018 10:05:21 +0200

x86/uapi: Fix asm/bootparam.h userspace compilation errors

Consistently use types provided by <linux/types.h> to fix the following asm/bootparam.h userspace compilation errors:

	/usr/include/asm/bootparam.h:140:2: error: unknown type name 'u16'
	  u16 version;
	/usr/include/asm/bootparam.h:141:2: error: unknown type name 'u16'
	  u16 compatible_version;
	/usr/include/asm/bootparam.h:142:2: error: unknown type name 'u16'
	  u16 pm_timer_address;
	/usr/include/asm/bootparam.h:143:2: error: unknown type name 'u16'
	  u16 num_cpus;
	/usr/include/asm/bootparam.h:144:2: error: unknown type name 'u64'
	  u64 pci_mmconfig_base;
	/usr/include/asm/bootparam.h:145:2: error: unknown type name 'u32'
	  u32 tsc_khz;
	/usr/include/asm/bootparam.h:146:2: error: unknown type name 'u32'
	  u32 apic_khz;
	/usr/include/asm/bootparam.h:147:2: error: unknown type name 'u8'
	  u8 standard_ioapic;
	/usr/include/asm/bootparam.h:148:2: error: unknown type name 'u8'
	  u8 cpu_ids[255];
Cc <[email protected]> # v4.16
Cc Linus Torvalds <[email protected]>
Cc Peter Zijlstra <[email protected]>
Cc Thomas Gleixner <[email protected]>
Fixes 4a362601baa6 ("x86/jailhouse: Add infrastructure for running in non-root cell")
---
 arch/x86/include/uapi/asm/bootparam.h | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)
arch/x86/include/uapi/asm/bootparam.h +9 -9
index aebf60357758..a06cbf019744 100644
@@ -137,15 +137,15 @@ struct boot_e820_entry {
  * setup data structure.
  */
 struct jailhouse_setup_data {
-	u16	version;
-	u16	compatible_version;
-	u16	pm_timer_address;
-	u16	num_cpus;
-	u64	pci_mmconfig_base;
-	u32	tsc_khz;
-	u32	apic_khz;
-	u8	standard_ioapic;
-	u8	cpu_ids[255];
+	__u16	version;
+	__u16	compatible_version;
+	__u16	pm_timer_address;
+	__u16	num_cpus;
+	__u64	pci_mmconfig_base;
+	__u32	tsc_khz;
+	__u32	apic_khz;
+	__u8	standard_ioapic;
+	__u8	cpu_ids[255];
 } __attribute__((packed));
 
 /* The so-called "zeropage" */
#4 lore raw
In reply to Dmitry V. Levin

Hi,

[This is an automated email]

This commit has been processed because it contains a "Fixes:" tag,
fixing commit: 4a362601baa6 x86/jailhouse: Add infrastructure for running in non-root cell.

The bot has also determined it's probably a bug fixing patch. (score: 96.8422)

The bot has tested the following trees: v4.16.

v4.16: Build OK!

--
Thanks,
Sasha