Updated to v4.4.1 kernel headers.

Small modifications needed to allow compilation with the new headers:

- Manually modify bionic/libc/kernel/uapi/asm-mips/asm/siginfo.h to
  remove the uapi from the include.
- PR_XXX defines are now available for mips, so remove the definition
  from linker_mips.cpp.

Bug: 23789423
Change-Id: I6dc8a03b012426d3a937db15cb24d3a50fab5a8c
diff --git a/libc/kernel/uapi/linux/can/bcm.h b/libc/kernel/uapi/linux/can/bcm.h
index 25d71e8..0a86166 100644
--- a/libc/kernel/uapi/linux/can/bcm.h
+++ b/libc/kernel/uapi/linux/can/bcm.h
@@ -21,12 +21,17 @@
 #include <linux/types.h>
 #include <linux/can.h>
 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+struct bcm_timeval {
+  long tv_sec;
+  long tv_usec;
+};
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 struct bcm_msg_head {
   __u32 opcode;
   __u32 flags;
   __u32 count;
 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
-  struct timeval ival1, ival2;
+  struct bcm_timeval ival1, ival2;
   canid_t can_id;
   __u32 nframes;
   struct can_frame frames[0];
diff --git a/libc/kernel/uapi/linux/can/error.h b/libc/kernel/uapi/linux/can/error.h
index 46af758..59f1285 100644
--- a/libc/kernel/uapi/linux/can/error.h
+++ b/libc/kernel/uapi/linux/can/error.h
@@ -41,53 +41,54 @@
 #define CAN_ERR_CRTL_RX_PASSIVE 0x10
 #define CAN_ERR_CRTL_TX_PASSIVE 0x20
 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define CAN_ERR_CRTL_ACTIVE 0x40
 #define CAN_ERR_PROT_UNSPEC 0x00
 #define CAN_ERR_PROT_BIT 0x01
 #define CAN_ERR_PROT_FORM 0x02
-#define CAN_ERR_PROT_STUFF 0x04
 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define CAN_ERR_PROT_STUFF 0x04
 #define CAN_ERR_PROT_BIT0 0x08
 #define CAN_ERR_PROT_BIT1 0x10
 #define CAN_ERR_PROT_OVERLOAD 0x20
-#define CAN_ERR_PROT_ACTIVE 0x40
 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define CAN_ERR_PROT_ACTIVE 0x40
 #define CAN_ERR_PROT_TX 0x80
 #define CAN_ERR_PROT_LOC_UNSPEC 0x00
 #define CAN_ERR_PROT_LOC_SOF 0x03
-#define CAN_ERR_PROT_LOC_ID28_21 0x02
 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define CAN_ERR_PROT_LOC_ID28_21 0x02
 #define CAN_ERR_PROT_LOC_ID20_18 0x06
 #define CAN_ERR_PROT_LOC_SRTR 0x04
 #define CAN_ERR_PROT_LOC_IDE 0x05
-#define CAN_ERR_PROT_LOC_ID17_13 0x07
 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define CAN_ERR_PROT_LOC_ID17_13 0x07
 #define CAN_ERR_PROT_LOC_ID12_05 0x0F
 #define CAN_ERR_PROT_LOC_ID04_00 0x0E
 #define CAN_ERR_PROT_LOC_RTR 0x0C
-#define CAN_ERR_PROT_LOC_RES1 0x0D
 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define CAN_ERR_PROT_LOC_RES1 0x0D
 #define CAN_ERR_PROT_LOC_RES0 0x09
 #define CAN_ERR_PROT_LOC_DLC 0x0B
 #define CAN_ERR_PROT_LOC_DATA 0x0A
-#define CAN_ERR_PROT_LOC_CRC_SEQ 0x08
 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define CAN_ERR_PROT_LOC_CRC_SEQ 0x08
 #define CAN_ERR_PROT_LOC_CRC_DEL 0x18
 #define CAN_ERR_PROT_LOC_ACK 0x19
 #define CAN_ERR_PROT_LOC_ACK_DEL 0x1B
-#define CAN_ERR_PROT_LOC_EOF 0x1A
 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define CAN_ERR_PROT_LOC_EOF 0x1A
 #define CAN_ERR_PROT_LOC_INTERM 0x12
 #define CAN_ERR_TRX_UNSPEC 0x00
 #define CAN_ERR_TRX_CANH_NO_WIRE 0x04
-#define CAN_ERR_TRX_CANH_SHORT_TO_BAT 0x05
 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define CAN_ERR_TRX_CANH_SHORT_TO_BAT 0x05
 #define CAN_ERR_TRX_CANH_SHORT_TO_VCC 0x06
 #define CAN_ERR_TRX_CANH_SHORT_TO_GND 0x07
 #define CAN_ERR_TRX_CANL_NO_WIRE 0x40
-#define CAN_ERR_TRX_CANL_SHORT_TO_BAT 0x50
 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define CAN_ERR_TRX_CANL_SHORT_TO_BAT 0x50
 #define CAN_ERR_TRX_CANL_SHORT_TO_VCC 0x60
 #define CAN_ERR_TRX_CANL_SHORT_TO_GND 0x70
 #define CAN_ERR_TRX_CANL_SHORT_TO_CANH 0x80
-#endif
 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#endif
diff --git a/libc/kernel/uapi/linux/can/gw.h b/libc/kernel/uapi/linux/can/gw.h
index 37703fe..a9fd293 100644
--- a/libc/kernel/uapi/linux/can/gw.h
+++ b/libc/kernel/uapi/linux/can/gw.h
@@ -53,58 +53,59 @@
 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
   CGW_DELETED,
   CGW_LIM_HOPS,
+  CGW_MOD_UID,
   __CGW_MAX
-};
 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+};
 #define CGW_MAX (__CGW_MAX - 1)
 #define CGW_FLAGS_CAN_ECHO 0x01
 #define CGW_FLAGS_CAN_SRC_TSTAMP 0x02
-#define CGW_FLAGS_CAN_IIF_TX_OK 0x04
 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define CGW_FLAGS_CAN_IIF_TX_OK 0x04
 #define CGW_MOD_FUNCS 4
 #define CGW_MOD_ID 0x01
 #define CGW_MOD_DLC 0x02
-#define CGW_MOD_DATA 0x04
 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define CGW_MOD_DATA 0x04
 #define CGW_FRAME_MODS 3
 #define MAX_MODFUNCTIONS (CGW_MOD_FUNCS * CGW_FRAME_MODS)
 struct cgw_frame_mod {
-  struct can_frame cf;
 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+  struct can_frame cf;
   __u8 modtype;
 } __attribute__((packed));
 #define CGW_MODATTR_LEN sizeof(struct cgw_frame_mod)
-struct cgw_csum_xor {
 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+struct cgw_csum_xor {
   __s8 from_idx;
   __s8 to_idx;
   __s8 result_idx;
-  __u8 init_xor_val;
 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+  __u8 init_xor_val;
 } __attribute__((packed));
 struct cgw_csum_crc8 {
   __s8 from_idx;
-  __s8 to_idx;
 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+  __s8 to_idx;
   __s8 result_idx;
   __u8 init_crc_val;
   __u8 final_xor_val;
-  __u8 crctab[256];
 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+  __u8 crctab[256];
   __u8 profile;
   __u8 profile_data[20];
 } __attribute__((packed));
-#define CGW_CS_XOR_LEN sizeof(struct cgw_csum_xor)
 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#define CGW_CS_XOR_LEN sizeof(struct cgw_csum_xor)
 #define CGW_CS_CRC8_LEN sizeof(struct cgw_csum_crc8)
 enum {
   CGW_CRC8PRF_UNSPEC,
-  CGW_CRC8PRF_1U8,
 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+  CGW_CRC8PRF_1U8,
   CGW_CRC8PRF_16U8,
   CGW_CRC8PRF_SFFID_XOR,
   __CGW_CRC8PRF_MAX
-};
 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+};
 #define CGW_CRC8PRF_MAX (__CGW_CRC8PRF_MAX - 1)
 #endif
diff --git a/libc/kernel/uapi/linux/can/raw.h b/libc/kernel/uapi/linux/can/raw.h
index a70d881..0a19352 100644
--- a/libc/kernel/uapi/linux/can/raw.h
+++ b/libc/kernel/uapi/linux/can/raw.h
@@ -28,6 +28,7 @@
 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
   CAN_RAW_RECV_OWN_MSGS,
   CAN_RAW_FD_FRAMES,
+  CAN_RAW_JOIN_FILTERS,
 };
-#endif
 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
+#endif