Author: adrian
Date: Wed Sep 17 17:33:22 2014
New Revision: 271712
URL: http://svnweb.freebsd.org/changeset/base/271712

Log:
  Migrate ie->ie_assign_cpu and associated code to use an int for CPU rather
  than u_char.
  
  Migrate post_filter to use an int for a CPU rather than u_char.
  
  Change intr_event_bind() to use an int for CPU rather than u_char.
  
  It touches the ppc, sparc64, arm and mips machdep code but it should
  (hah!) be a no-op.
  
  Tested:
  
  * i386, AMD64 laptops
  
  Reviewed by:  jhb

Modified:
  head/sys/kern/kern_intr.c
  head/sys/mips/cavium/ciu.c
  head/sys/powerpc/powerpc/intr_machdep.c
  head/sys/sparc64/sparc64/intr_machdep.c
  head/sys/sys/interrupt.h
  head/sys/x86/x86/intr_machdep.c

Modified: head/sys/kern/kern_intr.c
==============================================================================
--- head/sys/kern/kern_intr.c   Wed Sep 17 16:45:20 2014        (r271711)
+++ head/sys/kern/kern_intr.c   Wed Sep 17 17:33:22 2014        (r271712)
@@ -249,7 +249,7 @@ intr_event_update(struct intr_event *ie)
 int
 intr_event_create(struct intr_event **event, void *source, int flags, int irq,
     void (*pre_ithread)(void *), void (*post_ithread)(void *),
-    void (*post_filter)(void *), int (*assign_cpu)(void *, u_char),
+    void (*post_filter)(void *), int (*assign_cpu)(void *, int),
     const char *fmt, ...)
 {
        struct intr_event *ie;
@@ -292,7 +292,7 @@ intr_event_create(struct intr_event **ev
  * the interrupt event.
  */
 int
-intr_event_bind(struct intr_event *ie, u_char cpu)
+intr_event_bind(struct intr_event *ie, int cpu)
 {
        lwpid_t id;
        int error;
@@ -1078,7 +1078,7 @@ intr_event_schedule_thread(struct intr_e
  * a PIC.
  */
 static int
-swi_assign_cpu(void *arg, u_char cpu)
+swi_assign_cpu(void *arg, int cpu)
 {
 
        return (0);

Modified: head/sys/mips/cavium/ciu.c
==============================================================================
--- head/sys/mips/cavium/ciu.c  Wed Sep 17 16:45:20 2014        (r271711)
+++ head/sys/mips/cavium/ciu.c  Wed Sep 17 17:33:22 2014        (r271712)
@@ -91,13 +91,13 @@ static void         ciu_hinted_child(device_t, 
 static void            ciu_en0_intr_mask(void *);
 static void            ciu_en0_intr_unmask(void *);
 #ifdef SMP
-static int             ciu_en0_intr_bind(void *, u_char);
+static int             ciu_en0_intr_bind(void *, int);
 #endif
 
 static void            ciu_en1_intr_mask(void *);
 static void            ciu_en1_intr_unmask(void *);
 #ifdef SMP
-static int             ciu_en1_intr_bind(void *, u_char);
+static int             ciu_en1_intr_bind(void *, int);
 #endif
 
 static int             ciu_intr(void *);
@@ -208,7 +208,7 @@ ciu_setup_intr(device_t bus, device_t ch
        struct intr_event *event, **eventp;
        void (*mask_func)(void *);
        void (*unmask_func)(void *);
-       int (*bind_func)(void *, u_char);
+       int (*bind_func)(void *, int);
        mips_intrcnt_t intrcnt;
        int error;
        int irq;
@@ -343,7 +343,7 @@ ciu_en0_intr_unmask(void *arg)
 
 #ifdef SMP
 static int
-ciu_en0_intr_bind(void *arg, u_char target)
+ciu_en0_intr_bind(void *arg, int target)
 {
        uint64_t mask;
        int core;
@@ -389,7 +389,7 @@ ciu_en1_intr_unmask(void *arg)
 
 #ifdef SMP
 static int
-ciu_en1_intr_bind(void *arg, u_char target)
+ciu_en1_intr_bind(void *arg, int target)
 {
        uint64_t mask;
        int core;

Modified: head/sys/powerpc/powerpc/intr_machdep.c
==============================================================================
--- head/sys/powerpc/powerpc/intr_machdep.c     Wed Sep 17 16:45:20 2014        
(r271711)
+++ head/sys/powerpc/powerpc/intr_machdep.c     Wed Sep 17 17:33:22 2014        
(r271712)
@@ -293,7 +293,7 @@ powerpc_intr_post_ithread(void *arg)
 }
 
 static int
-powerpc_assign_intr_cpu(void *arg, u_char cpu)
+powerpc_assign_intr_cpu(void *arg, int cpu)
 {
 #ifdef SMP
        struct powerpc_intr *i = arg;

Modified: head/sys/sparc64/sparc64/intr_machdep.c
==============================================================================
--- head/sys/sparc64/sparc64/intr_machdep.c     Wed Sep 17 16:45:20 2014        
(r271711)
+++ head/sys/sparc64/sparc64/intr_machdep.c     Wed Sep 17 17:33:22 2014        
(r271712)
@@ -116,7 +116,7 @@ static void intr_assign_next_cpu(struct 
 static void intr_shuffle_irqs(void *arg __unused);
 #endif
 
-static int intr_assign_cpu(void *arg, u_char cpu);
+static int intr_assign_cpu(void *arg, int cpu);
 static void intr_execute_handlers(void *);
 static void intr_stray_level(struct trapframe *);
 static void intr_stray_vector(void *);
@@ -256,7 +256,7 @@ intr_init2()
 }
 
 static int
-intr_assign_cpu(void *arg, u_char cpu)
+intr_assign_cpu(void *arg, int cpu)
 {
 #ifdef SMP
        struct pcpu *pc;

Modified: head/sys/sys/interrupt.h
==============================================================================
--- head/sys/sys/interrupt.h    Wed Sep 17 16:45:20 2014        (r271711)
+++ head/sys/sys/interrupt.h    Wed Sep 17 17:33:22 2014        (r271712)
@@ -112,13 +112,13 @@ struct intr_event {
        void            (*ie_pre_ithread)(void *);
        void            (*ie_post_ithread)(void *);
        void            (*ie_post_filter)(void *);
-       int             (*ie_assign_cpu)(void *, u_char);
+       int             (*ie_assign_cpu)(void *, int);
        int             ie_flags;
        int             ie_count;       /* Loop counter. */
        int             ie_warncnt;     /* Rate-check interrupt storm warns. */
        struct timeval  ie_warntm;
        int             ie_irq;         /* Physical irq number if !SOFT. */
-       u_char          ie_cpu;         /* CPU this event is bound to. */
+       int             ie_cpu;         /* CPU this event is bound to. */
 };
 
 /* Interrupt event flags kept in ie_flags. */
@@ -161,11 +161,11 @@ u_char    intr_priority(enum intr_type flag
 int    intr_event_add_handler(struct intr_event *ie, const char *name,
            driver_filter_t filter, driver_intr_t handler, void *arg, 
            u_char pri, enum intr_type flags, void **cookiep);      
-int    intr_event_bind(struct intr_event *ie, u_char cpu);
+int    intr_event_bind(struct intr_event *ie, int cpu);
 int    intr_event_create(struct intr_event **event, void *source,
            int flags, int irq, void (*pre_ithread)(void *),
            void (*post_ithread)(void *), void (*post_filter)(void *),
-           int (*assign_cpu)(void *, u_char), const char *fmt, ...)
+           int (*assign_cpu)(void *, int), const char *fmt, ...)
            __printflike(9, 10);
 int    intr_event_describe_handler(struct intr_event *ie, void *cookie,
            const char *descr);

Modified: head/sys/x86/x86/intr_machdep.c
==============================================================================
--- head/sys/x86/x86/intr_machdep.c     Wed Sep 17 16:45:20 2014        
(r271711)
+++ head/sys/x86/x86/intr_machdep.c     Wed Sep 17 17:33:22 2014        
(r271712)
@@ -86,7 +86,7 @@ char intrnames[INTRCNT_COUNT * (MAXCOMLE
 size_t sintrcnt = sizeof(intrcnt);
 size_t sintrnames = sizeof(intrnames);
 
-static int     intr_assign_cpu(void *arg, u_char cpu);
+static int     intr_assign_cpu(void *arg, int cpu);
 static void    intr_disable_src(void *arg);
 static void    intr_init(void *__dummy);
 static int     intr_pic_registered(struct pic *pic);
@@ -305,7 +305,7 @@ intr_suspend(void)
 }
 
 static int
-intr_assign_cpu(void *arg, u_char cpu)
+intr_assign_cpu(void *arg, int cpu)
 {
 #ifdef SMP
        struct intsrc *isrc;
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to