diff options
author | Johannes Berg <johannes.berg@intel.com> | 2020-12-02 12:59:55 +0100 |
---|---|---|
committer | Richard Weinberger <richard@nod.at> | 2020-12-13 22:22:29 +0100 |
commit | 2fccfcc0c742625c01e6a3913f4fc2d330541fbb (patch) | |
tree | acc1b9f10c17e1a5e25afd13985deecf53219cfc /arch/um/kernel | |
parent | 0737402f42d3cdc7b7ef27e8cc7caf1e9ba2a2bc (diff) |
um: Remove IRQ_NONE type
We don't actually use this in um_request_irq(), so it can
never be assigned. It's also not clear what that would be
useful for, so just remove it.
This results in quite a number of cleanups, all the way to
removing the "SIGIO on close" startup check, since the data
it assigns (pty_close_sigio) is not used anymore.
While at it, also make this an enum so we get a minimum of
type checking, and remove the IRQ_NONE hack in virtio since
we now no longer have the name twice.
Acked-By: Anton Ivanov <anton.ivanov@cambridgegreys.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Acked-By: Anton Ivanov <anton.ivanov@cambridgegreys.com>
Signed-off-by: Richard Weinberger <richard@nod.at>
Diffstat (limited to 'arch/um/kernel')
-rw-r--r-- | arch/um/kernel/irq.c | 15 |
1 files changed, 7 insertions, 8 deletions
diff --git a/arch/um/kernel/irq.c b/arch/um/kernel/irq.c index 93eb742ecafe..9e8f776bb43a 100644 --- a/arch/um/kernel/irq.c +++ b/arch/um/kernel/irq.c @@ -32,7 +32,7 @@ extern void free_irqs(void); struct irq_reg { void *id; - int type; + enum um_irq_type type; int irq; int events; bool active; @@ -96,7 +96,7 @@ void sigio_handler(int sig, struct siginfo *unused_si, struct uml_pt_regs *regs) } for (i = 0; i < n ; i++) { - /* Epoll back reference is the entry with 3 irq_reg + /* Epoll back reference is the entry with 2 irq_reg * leaves - one for each irq type. */ irq_entry = (struct irq_entry *) @@ -139,7 +139,7 @@ static int assign_epoll_events_to_irq(struct irq_entry *irq_entry) -static int activate_fd(int irq, int fd, int type, void *dev_id) +static int activate_fd(int irq, int fd, enum um_irq_type type, void *dev_id) { struct irq_reg *new_fd; struct irq_entry *irq_entry; @@ -217,7 +217,7 @@ static int activate_fd(int irq, int fd, int type, void *dev_id) /* Turn back IO on with the correct (new) IO event mask */ assign_epoll_events_to_irq(irq_entry); spin_unlock_irqrestore(&irq_lock, flags); - maybe_sigio_broken(fd, (type != IRQ_NONE)); + maybe_sigio_broken(fd); return 0; out_unlock: @@ -444,10 +444,9 @@ void um_free_irq(int irq, void *dev) } EXPORT_SYMBOL(um_free_irq); -int um_request_irq(int irq, int fd, int type, - irq_handler_t handler, - unsigned long irqflags, const char * devname, - void *dev_id) +int um_request_irq(int irq, int fd, enum um_irq_type type, + irq_handler_t handler, unsigned long irqflags, + const char *devname, void *dev_id) { int err; |