Revert "IKC: separate IRQ between Master-channel and Regular-channel"

This reverts commit 3c98b9410966ceebe187ebae1038317b628fbb03.
This commit is contained in:
Ken Sato
2017-04-03 14:06:56 +09:00
committed by Balazs Gerofi
parent 4b964b8e0d
commit d66af42f7b
5 changed files with 13 additions and 8 deletions

View File

@ -977,7 +977,7 @@ void handle_interrupt(int vector, struct x86_user_context *regs)
else { else {
list_for_each_entry(h, &handlers[vector - 32], list) { list_for_each_entry(h, &handlers[vector - 32], list) {
if (h->func) { if (h->func) {
h->func(h->priv, vector); h->func(h->priv);
} }
} }
} }

View File

@ -216,6 +216,13 @@ static void mcctrl_ikc_init(ihk_os_t os, int cpu, unsigned long rphys, struct ih
static int connect_handler_ikc2linux(struct ihk_ikc_channel_info *param) static int connect_handler_ikc2linux(struct ihk_ikc_channel_info *param)
{ {
struct ihk_ikc_channel_desc *c;
int linux_cpu;
ihk_os_t os = param->channel->remote_os;
c = param->channel;
linux_cpu = c->recv.queue->read_cpu;
param->packet_handler = syscall_packet_handler; param->packet_handler = syscall_packet_handler;
return 0; return 0;

View File

@ -741,6 +741,6 @@ void init_host_ikc2mckernel(void)
} }
dkprintf("connected.\n"); dkprintf("connected.\n");
ihk_ikc_set_regular_channel(NULL, param.channel, ihk_ikc_get_processor_id()); ihk_ikc_set_intr_channel(NULL, param.channel, ihk_ikc_get_processor_id());
} }

View File

@ -717,7 +717,7 @@ static struct ihk_mc_pa_ops allocator = {
void sbox_write(int offset, unsigned int value); void sbox_write(int offset, unsigned int value);
static int page_hash_count_pages(void); static int page_hash_count_pages(void);
static void query_free_mem_interrupt_handler(void *priv, int vector) static void query_free_mem_interrupt_handler(void *priv)
{ {
int i, pages = 0; int i, pages = 0;

View File

@ -29,7 +29,7 @@ unsigned long cpu_disable_interrupt_save(void);
struct ihk_mc_interrupt_handler { struct ihk_mc_interrupt_handler {
struct list_head list; struct list_head list;
void (*func)(void *, int vector); void (*func)(void *);
void *priv; void *priv;
}; };
int ihk_mc_register_interrupt_handler(int vector, int ihk_mc_register_interrupt_handler(int vector,
@ -38,8 +38,7 @@ int ihk_mc_unregister_interrupt_handler(int vector,
struct ihk_mc_interrupt_handler *h); struct ihk_mc_interrupt_handler *h);
enum ihk_mc_gv_type { enum ihk_mc_gv_type {
IHK_GV_IKC_MASTER = 0, IHK_GV_IKC = 1,
IHK_GV_IKC_REGULAR = 1,
IHK_GV_QUERY_FREE_MEM = 2 IHK_GV_QUERY_FREE_MEM = 2
}; };
@ -111,8 +110,7 @@ enum ihk_asr_type {
int ihk_mc_arch_set_special_register(enum ihk_asr_type, unsigned long value); int ihk_mc_arch_set_special_register(enum ihk_asr_type, unsigned long value);
int ihk_mc_arch_get_special_register(enum ihk_asr_type, unsigned long *value); int ihk_mc_arch_get_special_register(enum ihk_asr_type, unsigned long *value);
extern unsigned int ihk_ikc_master_irq; extern unsigned int ihk_ikc_irq;
extern unsigned int ihk_ikc_regular_irq;
extern unsigned int ihk_ikc_irq_apicid; extern unsigned int ihk_ikc_irq_apicid;
extern int gettime_local_support; extern int gettime_local_support;