mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2024-12-28 16:52:18 +00:00
um: always include kconfig.h and compiler-version.h
Since commit a95b37e20d
("kbuild: get <linux/compiler_types.h> out of
<linux/kconfig.h>") we can safely include these files in userspace code.
Doing so simplifies matters as options do not need to be exported via
asm-offsets.h anymore.
Signed-off-by: Benjamin Berg <benjamin.berg@intel.com>
Link: https://patch.msgid.link/20241103150506.1367695-2-benjamin@sipsolutions.net
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
parent
fce0128863
commit
2f278b5957
@ -71,7 +71,9 @@ KBUILD_AFLAGS += $(ARCH_INCLUDE)
|
||||
USER_CFLAGS = $(patsubst $(KERNEL_DEFINES),,$(patsubst -I%,,$(KBUILD_CFLAGS))) \
|
||||
$(ARCH_INCLUDE) $(MODE_INCLUDE) $(filter -I%,$(CFLAGS)) \
|
||||
-D_FILE_OFFSET_BITS=64 -idirafter $(srctree)/include \
|
||||
-idirafter $(objtree)/include -D__KERNEL__ -D__UM_HOST__
|
||||
-idirafter $(objtree)/include -D__KERNEL__ -D__UM_HOST__ \
|
||||
-include $(srctree)/include/linux/compiler-version.h \
|
||||
-include $(srctree)/include/linux/kconfig.h
|
||||
|
||||
#This will adjust *FLAGS accordingly to the platform.
|
||||
include $(srctree)/$(ARCH_DIR)/Makefile-os-Linux
|
||||
|
@ -15,21 +15,3 @@ DEFINE(UM_THREAD_SIZE, THREAD_SIZE);
|
||||
|
||||
DEFINE(UM_NSEC_PER_SEC, NSEC_PER_SEC);
|
||||
DEFINE(UM_NSEC_PER_USEC, NSEC_PER_USEC);
|
||||
|
||||
#ifdef CONFIG_PRINTK
|
||||
DEFINE(UML_CONFIG_PRINTK, CONFIG_PRINTK);
|
||||
#endif
|
||||
#ifdef CONFIG_UML_X86
|
||||
DEFINE(UML_CONFIG_UML_X86, CONFIG_UML_X86);
|
||||
#endif
|
||||
#ifdef CONFIG_64BIT
|
||||
DEFINE(UML_CONFIG_64BIT, CONFIG_64BIT);
|
||||
#endif
|
||||
#ifdef CONFIG_UML_TIME_TRAVEL_SUPPORT
|
||||
DEFINE(UML_CONFIG_UML_TIME_TRAVEL_SUPPORT, CONFIG_UML_TIME_TRAVEL_SUPPORT);
|
||||
#endif
|
||||
#ifdef CONFIG_UML_MAX_USERSPACE_ITERATIONS
|
||||
DEFINE(UML_CONFIG_UML_MAX_USERSPACE_ITERATIONS, CONFIG_UML_MAX_USERSPACE_ITERATIONS);
|
||||
#else
|
||||
DEFINE(UML_CONFIG_UML_MAX_USERSPACE_ITERATIONS, 0);
|
||||
#endif
|
||||
|
@ -12,14 +12,13 @@ enum time_travel_mode {
|
||||
TT_MODE_EXTERNAL,
|
||||
};
|
||||
|
||||
#if defined(UML_CONFIG_UML_TIME_TRAVEL_SUPPORT) || \
|
||||
defined(CONFIG_UML_TIME_TRAVEL_SUPPORT)
|
||||
#if IS_ENABLED(CONFIG_UML_TIME_TRAVEL_SUPPORT)
|
||||
extern enum time_travel_mode time_travel_mode;
|
||||
extern int time_travel_should_print_bc_msg;
|
||||
#else
|
||||
#define time_travel_mode TT_MODE_OFF
|
||||
#define time_travel_should_print_bc_msg 0
|
||||
#endif /* (UML_)CONFIG_UML_TIME_TRAVEL_SUPPORT */
|
||||
#endif /* CONFIG_UML_TIME_TRAVEL_SUPPORT */
|
||||
|
||||
void _time_travel_print_bc_msg(void);
|
||||
static inline void time_travel_print_bc_msg(void)
|
||||
|
@ -38,7 +38,7 @@ extern void panic(const char *fmt, ...)
|
||||
#define UM_KERN_DEBUG KERN_DEBUG
|
||||
#define UM_KERN_CONT KERN_CONT
|
||||
|
||||
#ifdef UML_CONFIG_PRINTK
|
||||
#if IS_ENABLED(CONFIG_PRINTK)
|
||||
#define printk(...) _printk(__VA_ARGS__)
|
||||
extern int _printk(const char *fmt, ...)
|
||||
__attribute__ ((format (printf, 1, 2)));
|
||||
|
@ -65,7 +65,7 @@ static void sig_handler_common(int sig, struct siginfo *si, mcontext_t *mc)
|
||||
#define SIGALRM_MASK (1 << SIGALRM_BIT)
|
||||
|
||||
int signals_enabled;
|
||||
#ifdef UML_CONFIG_UML_TIME_TRAVEL_SUPPORT
|
||||
#if IS_ENABLED(CONFIG_UML_TIME_TRAVEL_SUPPORT)
|
||||
static int signals_blocked, signals_blocked_pending;
|
||||
#endif
|
||||
static unsigned int signals_pending;
|
||||
@ -75,7 +75,7 @@ static void sig_handler(int sig, struct siginfo *si, mcontext_t *mc)
|
||||
{
|
||||
int enabled = signals_enabled;
|
||||
|
||||
#ifdef UML_CONFIG_UML_TIME_TRAVEL_SUPPORT
|
||||
#if IS_ENABLED(CONFIG_UML_TIME_TRAVEL_SUPPORT)
|
||||
if ((signals_blocked ||
|
||||
__atomic_load_n(&signals_blocked_pending, __ATOMIC_SEQ_CST)) &&
|
||||
(sig == SIGIO)) {
|
||||
@ -297,7 +297,7 @@ void unblock_signals(void)
|
||||
return;
|
||||
|
||||
signals_enabled = 1;
|
||||
#ifdef UML_CONFIG_UML_TIME_TRAVEL_SUPPORT
|
||||
#if IS_ENABLED(CONFIG_UML_TIME_TRAVEL_SUPPORT)
|
||||
deliver_time_travel_irqs();
|
||||
#endif
|
||||
|
||||
@ -389,7 +389,7 @@ int um_set_signals_trace(int enable)
|
||||
return ret;
|
||||
}
|
||||
|
||||
#ifdef UML_CONFIG_UML_TIME_TRAVEL_SUPPORT
|
||||
#if IS_ENABLED(CONFIG_UML_TIME_TRAVEL_SUPPORT)
|
||||
void mark_sigio_pending(void)
|
||||
{
|
||||
/*
|
||||
|
@ -413,12 +413,14 @@ void userspace(struct uml_pt_regs *regs)
|
||||
*/
|
||||
if (time_travel_mode == TT_MODE_INFCPU ||
|
||||
time_travel_mode == TT_MODE_EXTERNAL) {
|
||||
if (UML_CONFIG_UML_MAX_USERSPACE_ITERATIONS &&
|
||||
#ifdef CONFIG_UML_MAX_USERSPACE_ITERATIONS
|
||||
if (CONFIG_UML_MAX_USERSPACE_ITERATIONS &&
|
||||
unscheduled_userspace_iterations++ >
|
||||
UML_CONFIG_UML_MAX_USERSPACE_ITERATIONS) {
|
||||
CONFIG_UML_MAX_USERSPACE_ITERATIONS) {
|
||||
tt_extra_sched_jiffies += 1;
|
||||
unscheduled_userspace_iterations = 0;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
time_travel_print_bc_msg();
|
||||
|
@ -52,8 +52,8 @@ void setup_machinename(char *machine_out)
|
||||
struct utsname host;
|
||||
|
||||
uname(&host);
|
||||
#ifdef UML_CONFIG_UML_X86
|
||||
# ifndef UML_CONFIG_64BIT
|
||||
#if IS_ENABLED(CONFIG_UML_X86)
|
||||
# if !IS_ENABLED(CONFIG_64BIT)
|
||||
if (!strcmp(host.machine, "x86_64")) {
|
||||
strcpy(machine_out, "i686");
|
||||
return;
|
||||
|
Loading…
Reference in New Issue
Block a user