Change struct ext_code to contain a union which allows to simply
assign the int_code instead of using a cast.
In order to keep the patch small the anonymous union is embedded
within the existing struct instead of changing the struct ext_code to
a union.
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
 }
 
 struct ext_code {
-       unsigned short subcode;
-       unsigned short code;
+       union {
+               struct {
+                       unsigned short subcode;
+                       unsigned short code;
+               };
+               unsigned int int_code;
+       };
 };
 
 typedef void (*ext_int_handler_t)(struct ext_code, unsigned int, unsigned long);
 
        struct ext_int_info *p;
        int index;
 
-       ext_code = *(struct ext_code *) ®s->int_code;
+       ext_code.int_code = regs->int_code;
        if (ext_code.code != EXT_IRQ_CLK_COMP)
                set_cpu_flag(CIF_NOHZ_DELAY);