diff --git a/libc/kernel/arch-arm/asm/termbits.h b/libc/kernel/arch-arm/asm/termbits.h
index 640bd27..4aa14d9 100644
--- a/libc/kernel/arch-arm/asm/termbits.h
+++ b/libc/kernel/arch-arm/asm/termbits.h
@@ -7,168 +7,202 @@
  ***   structures, and macros generated from the original header, and thus,
  ***   contains no copyrightable information.
  ***
+ ***   To edit the content of this header, modify the corresponding
+ ***   source file (e.g. under external/kernel-headers/original/) then
+ ***   run bionic/libc/kernel/tools/update_all.py
+ ***
+ ***   Any manual change here will be lost the next time this script will
+ ***   be run. You've been warned!
+ ***
  ****************************************************************************
  ****************************************************************************/
 #ifndef __ASM_ARM_TERMBITS_H
 #define __ASM_ARM_TERMBITS_H
-
 typedef unsigned char cc_t;
 typedef unsigned int speed_t;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 typedef unsigned int tcflag_t;
-
 #define NCCS 19
 struct termios {
  tcflag_t c_iflag;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
  tcflag_t c_oflag;
  tcflag_t c_cflag;
  tcflag_t c_lflag;
  cc_t c_line;
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
  cc_t c_cc[NCCS];
 };
-
 #define VINTR 0
 #define VQUIT 1
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define VERASE 2
 #define VKILL 3
 #define VEOF 4
 #define VTIME 5
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define VMIN 6
 #define VSWTC 7
 #define VSTART 8
 #define VSTOP 9
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define VSUSP 10
 #define VEOL 11
 #define VREPRINT 12
 #define VDISCARD 13
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define VWERASE 14
 #define VLNEXT 15
 #define VEOL2 16
-
 #define IGNBRK 0000001
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define BRKINT 0000002
 #define IGNPAR 0000004
 #define PARMRK 0000010
 #define INPCK 0000020
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define ISTRIP 0000040
 #define INLCR 0000100
 #define IGNCR 0000200
 #define ICRNL 0000400
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define IUCLC 0001000
 #define IXON 0002000
 #define IXANY 0004000
 #define IXOFF 0010000
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define IMAXBEL 0020000
 #define IUTF8 0040000
-
 #define OPOST 0000001
 #define OLCUC 0000002
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define ONLCR 0000004
 #define OCRNL 0000010
 #define ONOCR 0000020
 #define ONLRET 0000040
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define OFILL 0000100
 #define OFDEL 0000200
 #define NLDLY 0000400
 #define NL0 0000000
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define NL1 0000400
 #define CRDLY 0003000
 #define CR0 0000000
 #define CR1 0001000
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define CR2 0002000
 #define CR3 0003000
 #define TABDLY 0014000
 #define TAB0 0000000
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define TAB1 0004000
 #define TAB2 0010000
 #define TAB3 0014000
 #define XTABS 0014000
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define BSDLY 0020000
 #define BS0 0000000
 #define BS1 0020000
 #define VTDLY 0040000
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define VT0 0000000
 #define VT1 0040000
 #define FFDLY 0100000
 #define FF0 0000000
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define FF1 0100000
-
 #define CBAUD 0010017
 #define B0 0000000  
 #define B50 0000001
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define B75 0000002
 #define B110 0000003
 #define B134 0000004
 #define B150 0000005
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define B200 0000006
 #define B300 0000007
 #define B600 0000010
 #define B1200 0000011
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define B1800 0000012
 #define B2400 0000013
 #define B4800 0000014
 #define B9600 0000015
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define B19200 0000016
 #define B38400 0000017
 #define EXTA B19200
 #define EXTB B38400
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define CSIZE 0000060
 #define CS5 0000000
 #define CS6 0000020
 #define CS7 0000040
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define CS8 0000060
 #define CSTOPB 0000100
 #define CREAD 0000200
 #define PARENB 0000400
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define PARODD 0001000
 #define HUPCL 0002000
 #define CLOCAL 0004000
 #define CBAUDEX 0010000
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define B57600 0010001
 #define B115200 0010002
 #define B230400 0010003
 #define B460800 0010004
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define B500000 0010005
 #define B576000 0010006
 #define B921600 0010007
 #define B1000000 0010010
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define B1152000 0010011
 #define B1500000 0010012
 #define B2000000 0010013
 #define B2500000 0010014
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define B3000000 0010015
 #define B3500000 0010016
 #define B4000000 0010017
 #define CIBAUD 002003600000  
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define CMSPAR 010000000000  
 #define CRTSCTS 020000000000  
-
 #define ISIG 0000001
 #define ICANON 0000002
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define XCASE 0000004
 #define ECHO 0000010
 #define ECHOE 0000020
 #define ECHOK 0000040
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define ECHONL 0000100
 #define NOFLSH 0000200
 #define TOSTOP 0000400
 #define ECHOCTL 0001000
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define ECHOPRT 0002000
 #define ECHOKE 0004000
 #define FLUSHO 0010000
 #define PENDIN 0040000
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define IEXTEN 0100000
-
 #define TCOOFF 0
 #define TCOON 1
 #define TCIOFF 2
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define TCION 3
-
 #define TCIFLUSH 0
 #define TCOFLUSH 1
 #define TCIOFLUSH 2
-
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
 #define TCSANOW 0
 #define TCSADRAIN 1
 #define TCSAFLUSH 2
-
 #endif
+/* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
