]> git.neil.brown.name Git - history.git/commitdiff
Import 2.4.0-test4pre4 2.4.0-test4pre4
authorLinus Torvalds <torvalds@linuxfoundation.org>
Fri, 23 Nov 2007 20:36:39 +0000 (15:36 -0500)
committerLinus Torvalds <torvalds@linuxfoundation.org>
Fri, 23 Nov 2007 20:36:39 +0000 (15:36 -0500)
26 files changed:
CREDITS
MAINTAINERS
arch/alpha/boot/tools/objstrip.c
arch/ia64/boot/bootloader.c
arch/mips64/kernel/binfmt_elf32.c
arch/sparc/defconfig
arch/sparc/kernel/process.c
arch/sparc/kernel/sparc_ksyms.c
arch/sparc64/defconfig
arch/sparc64/kernel/binfmt_elf32.c
arch/sparc64/solaris/timod.c
drivers/char/pcmcia/Config.in
drivers/usb/bluetooth.c
fs/ncpfs/sock.c
fs/select.c
include/asm-ia64/ia32.h
include/asm-s390/elf.h
include/asm-sparc/asm_offsets.h
include/asm-sparc/elf.h
include/asm-sparc64/asm_offsets.h
include/linux/poll.h
kernel/ksyms.c
mm/memory.c
net/core/netfilter.c
net/ipv6/reassembly.c
net/sched/sch_cbq.c

diff --git a/CREDITS b/CREDITS
index a7beebcd70e975b78c3a305d221c3c33d70a66ff..af6c3d6d47086be8a783a011cd033661df719f41 100644 (file)
--- a/CREDITS
+++ b/CREDITS
@@ -1387,6 +1387,7 @@ E: greg@kroah.com
 W: http://www.kroah.com/linux-usb/
 D: USB Serial Converter driver framework, USB Handspring Visor driver
 D: ConnectTech WHITEHeat USB driver, Generic USB Serial driver
+D: USB Bluetooth driver
 D: bits and pieces of USB core code.
 
 N: Russell Kroll
index a2140268a030da5fde29a4c06ecee16797c4769f..3cec9bac7f3ae2384cc4f93d79a87fd1327be96d 100644 (file)
@@ -1159,6 +1159,13 @@ M:       vojtech@suse.cz
 L:     linux-usb@suse.com
 S:     Supported
 
+USB BLUETOOTH DRIVER
+P:     Greg Kroah-Hartman
+M:     greg@kroah.com
+L:     linux-usb@suse.com
+S:     Maintained
+W:     http://www.kroah.com/linux-usb/
+
 USB HID/HIDBP/INPUT DRIVERS
 P:     Vojtech Pavlik
 M:     vojtech@suse.cz
index 765e68f2e3a5d4e9ef93fee84c6ddd65a2f52989..5694960614ac673a419ff234e6bede9899266343 100644 (file)
@@ -150,7 +150,7 @@ main (int argc, char *argv[])
                    prog_name, inname);
            exit(1);
        }
-       if (!elf_check_arch(elf->e_machine)) {
+       if (!elf_check_arch(elf)) {
            fprintf(stderr, "%s: is not for this processor (e_machine=%d)\n",
                    prog_name, elf->e_machine);
            exit(1);
index cb6fc1f967331f56a6fa09bcc97f809383df049b..b73f396dcbcab2fbfdf3139cfe4345fbbc9f992d 100644 (file)
@@ -157,7 +157,7 @@ _start (void)
                cons_write("not an ELF executable\n");
                return;
        }
-       if (!elf_check_arch(elf->e_machine)) {
+       if (!elf_check_arch(elf)) {
                cons_write("kernel not for this processor\n");
                return;
        }
index a199839a64048ba28c2d01ef54697f1d0a97fa83..6d59c35d2eb643bd74b269a5ef1f2033ef5ee65a 100644 (file)
@@ -28,7 +28,7 @@ typedef elf_greg_t elf_gregset_t[ELF_NGREG];
 typedef double elf_fpreg_t;
 typedef elf_fpreg_t elf_fpregset_t[ELF_NFPREG];
 
-#define elf_check_arch(x)      ((x) == EM_MIPS || (x) == EM_MIPS_RS4_BE)
+#define elf_check_arch(x)      ((x)->e_machine == EM_MIPS || (x)->e_machine == EM_MIPS_RS4_BE)
 
 #define TASK32_SIZE            0x80000000UL
 #undef ELF_ET_DYN_BASE
index 0813c9501323e24ce9471eb103b6440d8ca1f2f3..b4b50975d932eee153d10543f1eca18a504cede5 100644 (file)
@@ -300,7 +300,7 @@ CONFIG_NFSD=m
 CONFIG_SUNRPC=y
 CONFIG_LOCKD=y
 CONFIG_SMB_FS=m
-CONFIG_NCP_FS=m
+# CONFIG_NCP_FS is not set
 # CONFIG_NCPFS_PACKET_SIGNING is not set
 # CONFIG_NCPFS_IOCTL_LOCKING is not set
 # CONFIG_NCPFS_STRONG is not set
index 857658391527d8ee05551f7fcf37e71387958711..f119c59ac2576a96a5d92581c39d6cbfd63c4531 100644 (file)
@@ -1,4 +1,4 @@
-/*  $Id: process.c,v 1.150 2000/07/11 18:49:22 anton Exp $
+/*  $Id: process.c,v 1.151 2000/07/11 23:22:17 davem Exp $
  *  linux/arch/sparc/kernel/process.c
  *
  *  Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
index 4d1a8db1cc137408a43f1dbcfa9dbf5bd0b855ce..a51995713a9195eb081600fcaf5f8da945aea102 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: sparc_ksyms.c,v 1.100 2000/07/07 07:49:08 anton Exp $
+/* $Id: sparc_ksyms.c,v 1.101 2000/07/12 00:25:32 anton Exp $
  * arch/sparc/kernel/ksyms.c: Sparc specific ksyms support.
  *
  * Copyright (C) 1996 David S. Miller (davem@caip.rutgers.edu)
@@ -19,6 +19,9 @@
 #include <linux/in6.h>
 #include <linux/spinlock.h>
 #include <linux/mm.h>
+#ifdef CONFIG_PCI
+#include <linux/pci.h>
+#endif
 
 #include <asm/oplib.h>
 #include <asm/delay.h>
@@ -42,9 +45,6 @@
 #include <asm/sbus.h>
 #include <asm/dma.h>
 #endif
-#ifdef CONFIG_PCI
-#include <asm/pci.h>
-#endif
 #include <asm/a.out.h>
 #include <asm/io-unit.h>
 
index 3cf68e2b5baf75ec8f5a7b05bd5c0a6237c58069..55e8516c60878cf02d23adf4036dcc6366257529 100644 (file)
@@ -437,17 +437,17 @@ CONFIG_SUNRPC=y
 CONFIG_LOCKD=y
 CONFIG_LOCKD_V4=y
 CONFIG_SMB_FS=m
-CONFIG_NCP_FS=m
-CONFIG_NCPFS_PACKET_SIGNING=y
-CONFIG_NCPFS_IOCTL_LOCKING=y
-CONFIG_NCPFS_STRONG=y
-CONFIG_NCPFS_NFS_NS=y
-CONFIG_NCPFS_OS2_NS=y
-CONFIG_NCPFS_SMALLDOS=y
-CONFIG_NCPFS_MOUNT_SUBDIR=y
-CONFIG_NCPFS_NDS_DOMAINS=y
-CONFIG_NCPFS_NLS=y
-CONFIG_NCPFS_EXTRAS=y
+# CONFIG_NCP_FS is not set
+# CONFIG_NCPFS_PACKET_SIGNING is not set
+# CONFIG_NCPFS_IOCTL_LOCKING is not set
+# CONFIG_NCPFS_STRONG is not set
+# CONFIG_NCPFS_NFS_NS is not set
+# CONFIG_NCPFS_OS2_NS is not set
+# CONFIG_NCPFS_SMALLDOS is not set
+# CONFIG_NCPFS_MOUNT_SUBDIR is not set
+# CONFIG_NCPFS_NDS_DOMAINS is not set
+# CONFIG_NCPFS_NLS is not set
+# CONFIG_NCPFS_EXTRAS is not set
 
 #
 # Partition Types
index 59b48600d84560a6a9ca36b40a32df2558bd8a90..6d9e291d4552d95328f5554ec3c6cdbab3a891a2 100644 (file)
@@ -79,7 +79,7 @@ typedef struct {
        } pr_un;
 } elf_xregset_t;
 
-#define elf_check_arch(x)      (((x) == EM_SPARC) || ((x) == EM_SPARC32PLUS))
+#define elf_check_arch(x)      (((x)->e_machine == EM_SPARC) || ((x)->e_machine == EM_SPARC32PLUS))
 
 #define ELF_ET_DYN_BASE         0x08000000
 
index 37f38c75bd56d95206f3da1f49e0d63e47628173..aedb0f17d7c68d83c12941a5882748271b8782cd 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: timod.c,v 1.7 2000/06/09 07:35:30 davem Exp $
+/* $Id: timod.c,v 1.8 2000/07/12 00:51:06 davem Exp $
  * timod.c: timod emulation.
  *
  * Copyright (C) 1998 Patrik Rak (prak3264@ss1000.ms.mff.cuni.cz)
@@ -15,6 +15,7 @@
 #include <linux/smp_lock.h>
 #include <linux/ioctl.h>
 #include <linux/fs.h>
+#include <linux/file.h>
 #include <linux/netdevice.h>
 #include <linux/poll.h>
 
@@ -619,22 +620,6 @@ int timod_putmsg(unsigned int fd, char *ctl_buf, int ctl_len,
        return -EINVAL;
 }
 
-/* copied directly from fs/select.c */
-
-static void free_wait(poll_table * p)
-{
-       struct poll_table_entry * entry = p->entry + p->nr;
-
-       SOLD("entry");
-       while (p->nr > 0) {
-               p->nr--;
-               entry--;
-               remove_wait_queue(entry->wait_address,&entry->wait);
-       }
-       SOLD("done");
-}
-
-
 int timod_getmsg(unsigned int fd, char *ctl_buf, int ctl_maxlen, s32 *ctl_len,
                        char *data_buf, int data_maxlen, s32 *data_len, int *flags_p)
 {
@@ -670,14 +655,8 @@ int timod_getmsg(unsigned int fd, char *ctl_buf, int ctl_maxlen, s32 *ctl_len,
        }
        if (!(filp->f_flags & O_NONBLOCK)) {
                poll_table wait_table, *wait;
-               struct poll_table_entry *entry;
-               SOLD("getting poll_table");
-               entry = (struct poll_table_entry *)__get_free_page(GFP_KERNEL);
-               if (!entry)
-                       return -ENOMEM;
-               SOLD("got one");
-               wait_table.nr = 0;
-               wait_table.entry = entry;
+
+               poll_initwait(&wait_table);
                wait = &wait_table;
                for(;;) {
                        SOLD("loop");
@@ -705,13 +684,17 @@ int timod_getmsg(unsigned int fd, char *ctl_buf, int ctl_maxlen, s32 *ctl_len,
                                SOLD("avoiding lockup");
                                break ;
                        }
+                       if(wait_table.error) {
+                               SOLD("wait-table error");
+                               poll_freewait(&wait_table);
+                               return wait_table.error;
+                       }
                        SOLD("scheduling");
                        schedule();
                }
                SOLD("loop done");
                current->state = TASK_RUNNING;
-               free_wait(&wait_table);
-               free_page((unsigned long)entry);
+               poll_freewait(&wait_table);
                if (signal_pending(current)) {
                        SOLD("signal pending");
                        return -EINTR;
index 766fdd1d008882b99b82e6b261d2cb69e4a1f92e..8baf1932e4b6644aee6c30e8f811a03a5fdf38be 100644 (file)
@@ -3,12 +3,12 @@
 #
 
 if [ "$CONFIG_SERIAL" = "n" ]; then
-   define_bool CONFIG_PCMCIA_SERIAL n
+   define_tristate CONFIG_PCMCIA_SERIAL n
 else
    if [ "$CONFIG_SERIAL" = "m" -o "$CONFIG_PCMCIA" = "m" ]; then
-      define_bool CONFIG_PCMCIA_SERIAL m
+      define_tristate CONFIG_PCMCIA_SERIAL m
    else
-      define_bool CONFIG_PCMCIA_SERIAL y
+      define_tristate CONFIG_PCMCIA_SERIAL y
    fi
 fi
 
index aaea67a4cb388b497c40f39f56bdf48bc2c11193..bd7be69e893d03530a126b0d84fe40f6027a9ba8 100644 (file)
@@ -1,11 +1,15 @@
 /*
- * bluetooth.c   Version 0.1
+ * bluetooth.c   Version 0.2
  *
  * Copyright (c) 2000 Greg Kroah-Hartman       <greg@kroah.com>
  *
  * USB Bluetooth driver, based on the Bluetooth Spec version 1.0B
  *
  *
+ * (07/11/2000) Version 0.2 gkh
+ *     Fixed a small bug found by Nils Faerber in the usb_bluetooth_probe 
+ *     function.
+ *
  * (07/09/2000) Version 0.1 gkh
  *     Initial release. Has support for sending ACL data (which is really just
  *     a HCI frame.) Raw HCI commands and HCI events are not supported.
@@ -619,6 +623,7 @@ static void * usb_bluetooth_probe(struct usb_device *dev, unsigned int ifnum)
        
        memset(bluetooth, 0, sizeof(struct usb_bluetooth));
        
+       bluetooth->magic = USB_BLUETOOTH_MAGIC;
        bluetooth->dev = dev;
        bluetooth->minor = minor;
        bluetooth->tqueue.routine = bluetooth_softint;
@@ -676,6 +681,8 @@ static void * usb_bluetooth_probe(struct usb_device *dev, unsigned int ifnum)
        tty_register_devfs (&bluetooth_tty_driver, 0, minor);
        info("Bluetooth converter now attached to ttyBLUE%d (or usb/ttblue/%d for devfs)", minor, minor);
        
+       bluetooth_table[minor] = bluetooth;
+       
        return bluetooth; /* success */
 
 probe_error:
index c5923a78e90cb623db004b6f2e81835c67e62c83..171f0cb515e18f3ab29aab4edbbaf5e9e3fdd72c 100644 (file)
@@ -87,7 +87,6 @@ static int do_ncp_rpc_call(struct ncp_server *server, int size,
        int result;
        char *start = server->packet;
        poll_table wait_table;
-       struct poll_table_entry entry;
        int init_timeout, max_timeout;
        int timeout;
        int retrans;
@@ -136,8 +135,7 @@ static int do_ncp_rpc_call(struct ncp_server *server, int size,
                        break;
                }
              re_select:
-               wait_table.nr = 0;
-               wait_table.entry = &entry;
+               poll_initwait(&wait_table);
                /* mb() is not necessary because ->poll() will serialize
                   instructions adding the wait_table waitqueues in the
                   waitqueue-head before going to calculate the mask-retval. */
@@ -154,13 +152,16 @@ static int do_ncp_rpc_call(struct ncp_server *server, int size,
                                timeout = max_timeout;
                        }
                        timed_out = !schedule_timeout(timeout);
-                       remove_wait_queue(entry.wait_address, &entry.wait);
-                       fput(file);
+                       poll_freewait(&wait_table);
                        current->state = TASK_RUNNING;
                        if (signal_pending(current)) {
                                result = -ERESTARTSYS;
                                break;
                        }
+                       if(wait_table.error) {
+                               result = wait_table.error;
+                               break;
+                       }
                        if (timed_out) {
                                if (n < retrans)
                                        continue;
@@ -179,9 +180,8 @@ static int do_ncp_rpc_call(struct ncp_server *server, int size,
                                major_timeout_seen = 1;
                                continue;
                        }
-               } else if (wait_table.nr) {
-                       remove_wait_queue(entry.wait_address, &entry.wait);
-                       fput(file);
+               } else {
+                       poll_freewait(&wait_table);
                }
                current->state = TASK_RUNNING;
 
@@ -262,7 +262,6 @@ static int do_ncp_rpc_call(struct ncp_server *server, int size,
 
 static int do_tcp_rcv(struct ncp_server *server, void *buffer, size_t len) {
        poll_table wait_table;
-       struct poll_table_entry entry;
        struct file *file;
        struct socket *sock;
        int init_timeout;
@@ -281,16 +280,14 @@ static int do_tcp_rcv(struct ncp_server *server, void *buffer, size_t len) {
                init_timeout = 0x7FFF0000;
 
        while (len) {
-               wait_table.nr = 0;
-               wait_table.entry = &entry;
+               poll_initwait(&wait_table);
                /* mb() is not necessary because ->poll() will serialize
                   instructions adding the wait_table waitqueues in the
                   waitqueue-head before going to calculate the mask-retval. */
                __set_current_state(TASK_INTERRUPTIBLE);
                if (!(sock->ops->poll(file, sock, &wait_table) & POLLIN)) {
                        init_timeout = schedule_timeout(init_timeout);
-                       remove_wait_queue(entry.wait_address, &entry.wait);
-                       fput(file);
+                       poll_freewait(&wait_table);
                        current->state = TASK_RUNNING;
                        if (signal_pending(current)) {
                                return -ERESTARTSYS;
@@ -298,9 +295,11 @@ static int do_tcp_rcv(struct ncp_server *server, void *buffer, size_t len) {
                        if (!init_timeout) {
                                return -EIO;
                        }
-               } else if (wait_table.nr) {
-                       remove_wait_queue(entry.wait_address, &entry.wait);
-                       fput(file);
+                       if(wait_table.error) {
+                               return wait_table.error;
+                       }
+               } else {
+                       poll_freewait(&wait_table);
                }
                current->state = TASK_RUNNING;
 
index a9fd61953ee611889d8d94f6539573583ef76136..427e7f0f77271d548f15bb4ac12b66cf21d195b0 100644 (file)
  * understand what I'm doing here, then you understand how the linux
  * sleep/wakeup mechanism works.
  *
- * Two very simple procedures, poll_wait() and free_wait() make all the
+ * Two very simple procedures, poll_wait() and poll_freewait() make all the
  * work.  poll_wait() is an inline-function defined in <linux/poll.h>,
  * as all select/poll functions have to call it to add an entry to the
  * poll table.
  */
 
-static void free_wait(struct poll_table_page * p)
+void poll_freewait(poll_table* pt)
 {
+       struct poll_table_page * p = pt->table;
        while (p) {
                struct poll_table_entry * entry;
                struct poll_table_page *old;
@@ -66,6 +67,7 @@ void __pollwait(struct file * filp, wait_queue_head_t * wait_address, poll_table
                new_table = (struct poll_table_page *) __get_free_page(GFP_KERNEL);
                if (!new_table) {
                        p->error = -ENOMEM;
+                       __set_current_state(TASK_RUNNING);
                        return;
                }
                new_table->nr = 0;
@@ -160,8 +162,7 @@ int do_select(int n, fd_set_bits *fds, long *timeout)
                return retval;
        n = retval;
 
-       table.error = 0;
-       table.table = NULL;
+       poll_initwait(&table);
        wait = &table;
        retval = 0;
        for (;;) {
@@ -201,11 +202,15 @@ int do_select(int n, fd_set_bits *fds, long *timeout)
                wait = NULL;
                if (retval || !__timeout || signal_pending(current))
                        break;
+               if(table.error) {
+                       retval = table.error;
+                       break;
+               }
                __timeout = schedule_timeout(__timeout);
        }
        current->state = TASK_RUNNING;
 
-       free_wait(table.table);
+       poll_freewait(&table);
 
        /*
         * Up-to-date the caller timeout.
@@ -354,18 +359,22 @@ static int do_poll(unsigned int nfds, unsigned int nchunks, unsigned int nleft,
        struct pollfd *fds[], poll_table *wait, long timeout)
 {
        int count = 0;
+       poll_table* pt = wait;
 
        for (;;) {
                unsigned int i;
 
                set_current_state(TASK_INTERRUPTIBLE);
                for (i=0; i < nchunks; i++)
-                       do_pollfd(POLLFD_PER_PAGE, fds[i], &wait, &count);
+                       do_pollfd(POLLFD_PER_PAGE, fds[i], &pt, &count);
                if (nleft)
-                       do_pollfd(nleft, fds[nchunks], &wait, &count);
-               wait = NULL;
+                       do_pollfd(nleft, fds[nchunks], &pt, &count);
+               pt = NULL;
                if (count || !timeout || signal_pending(current))
                        break;
+               if(wait->error) {
+                       return wait->error;
+               }
                timeout = schedule_timeout(timeout);
        }
        current->state = TASK_RUNNING;
@@ -391,8 +400,7 @@ asmlinkage long sys_poll(struct pollfd * ufds, unsigned int nfds, long timeout)
                        timeout = MAX_SCHEDULE_TIMEOUT;
        }
 
-       table.error = 0;
-       table.table = NULL;
+       poll_initwait(&table);
        err = -ENOMEM;
 
        fds = NULL;
@@ -452,6 +460,6 @@ out_fds:
        if (nfds != 0)
                kfree(fds);
 out:
-       free_wait(table.table);
+       poll_freewait(&table);
        return err;
 }
index 884f1314ac8d08900ab9be491ae91d50949e261e..e5de07a4f634d727ea30e38ea0ca56a3e153f74b 100644 (file)
@@ -229,7 +229,7 @@ typedef struct siginfo32 {
 /*
  * This is used to ensure we don't load something for the wrong architecture.
  */
-#define elf_check_arch(x) ((x) == EM_386)
+#define elf_check_arch(x) ((x)->e_machine == EM_386)
 
 /*
  * These are used to set parameters in the core dumps.
index eea4560fc2246be9f8bf04f6126d2de12a2c5a99..28c5e47db570b01a941e0f8d6c3edb6003e20efe 100644 (file)
@@ -22,7 +22,7 @@ typedef s390_regs elf_gregset_t;
 /*
  * This is used to ensure we don't load something for the wrong architecture.
  */
-#define elf_check_arch(x) ((x)->elf_machine == EM_S390) 
+#define elf_check_arch(x) ((x)->e_machine == EM_S390) 
 
 /*
  * These are used to set parameters in the core dumps.
index d6c868ff097aeebc36e6776e9c4d66b4bc367228..3c2d94ff62babd442650e803814b8a480628dc0d 100644 (file)
 #define AOFF_task_pidhash_pprev        0x00000094
 #define ASIZ_task_pidhash_pprev        0x00000004
 #define AOFF_task_wait_chldexit        0x00000098
-#define ASIZ_task_wait_chldexit        0x00000014
-#define AOFF_task_vfork_sem    0x000000ac
+#define ASIZ_task_wait_chldexit        0x0000000c
+#define AOFF_task_vfork_sem    0x000000a4
 #define ASIZ_task_vfork_sem    0x00000004
-#define AOFF_task_rt_priority  0x000000b0
+#define AOFF_task_rt_priority  0x000000a8
 #define ASIZ_task_rt_priority  0x00000004
-#define AOFF_task_it_real_value        0x000000b4
+#define AOFF_task_it_real_value        0x000000ac
 #define ASIZ_task_it_real_value        0x00000004
-#define AOFF_task_it_prof_value        0x000000b8
+#define AOFF_task_it_prof_value        0x000000b0
 #define ASIZ_task_it_prof_value        0x00000004
-#define AOFF_task_it_virt_value        0x000000bc
+#define AOFF_task_it_virt_value        0x000000b4
 #define ASIZ_task_it_virt_value        0x00000004
-#define AOFF_task_it_real_incr 0x000000c0
+#define AOFF_task_it_real_incr 0x000000b8
 #define ASIZ_task_it_real_incr 0x00000004
-#define AOFF_task_it_prof_incr 0x000000c4
+#define AOFF_task_it_prof_incr 0x000000bc
 #define ASIZ_task_it_prof_incr 0x00000004
-#define AOFF_task_it_virt_incr 0x000000c8
+#define AOFF_task_it_virt_incr 0x000000c0
 #define ASIZ_task_it_virt_incr 0x00000004
-#define AOFF_task_real_timer   0x000000cc
+#define AOFF_task_real_timer   0x000000c4
 #define ASIZ_task_real_timer   0x00000014
-#define AOFF_task_times        0x000000e0
+#define AOFF_task_times        0x000000d8
 #define ASIZ_task_times        0x00000010
-#define AOFF_task_start_time   0x000000f0
+#define AOFF_task_start_time   0x000000e8
 #define ASIZ_task_start_time   0x00000004
-#define AOFF_task_per_cpu_utime        0x000000f4
+#define AOFF_task_per_cpu_utime        0x000000ec
 #define ASIZ_task_per_cpu_utime        0x00000004
-#define AOFF_task_min_flt      0x000000fc
+#define AOFF_task_min_flt      0x000000f4
 #define ASIZ_task_min_flt      0x00000004
-#define AOFF_task_maj_flt      0x00000100
+#define AOFF_task_maj_flt      0x000000f8
 #define ASIZ_task_maj_flt      0x00000004
-#define AOFF_task_nswap        0x00000104
+#define AOFF_task_nswap        0x000000fc
 #define ASIZ_task_nswap        0x00000004
-#define AOFF_task_cmin_flt     0x00000108
+#define AOFF_task_cmin_flt     0x00000100
 #define ASIZ_task_cmin_flt     0x00000004
-#define AOFF_task_cmaj_flt     0x0000010c
+#define AOFF_task_cmaj_flt     0x00000104
 #define ASIZ_task_cmaj_flt     0x00000004
-#define AOFF_task_cnswap       0x00000110
+#define AOFF_task_cnswap       0x00000108
 #define ASIZ_task_cnswap       0x00000004
-#define AOFF_task_uid  0x00000118
+#define AOFF_task_uid  0x00000110
 #define ASIZ_task_uid  0x00000004
-#define AOFF_task_euid 0x0000011c
+#define AOFF_task_euid 0x00000114
 #define ASIZ_task_euid 0x00000004
-#define AOFF_task_suid 0x00000120
+#define AOFF_task_suid 0x00000118
 #define ASIZ_task_suid 0x00000004
-#define AOFF_task_fsuid        0x00000124
+#define AOFF_task_fsuid        0x0000011c
 #define ASIZ_task_fsuid        0x00000004
-#define AOFF_task_gid  0x00000128
+#define AOFF_task_gid  0x00000120
 #define ASIZ_task_gid  0x00000004
-#define AOFF_task_egid 0x0000012c
+#define AOFF_task_egid 0x00000124
 #define ASIZ_task_egid 0x00000004
-#define AOFF_task_sgid 0x00000130
+#define AOFF_task_sgid 0x00000128
 #define ASIZ_task_sgid 0x00000004
-#define AOFF_task_fsgid        0x00000134
+#define AOFF_task_fsgid        0x0000012c
 #define ASIZ_task_fsgid        0x00000004
-#define AOFF_task_ngroups      0x00000138
+#define AOFF_task_ngroups      0x00000130
 #define ASIZ_task_ngroups      0x00000004
-#define AOFF_task_groups       0x0000013c
+#define AOFF_task_groups       0x00000134
 #define ASIZ_task_groups       0x00000080
-#define AOFF_task_cap_effective        0x000001bc
+#define AOFF_task_cap_effective        0x000001b4
 #define ASIZ_task_cap_effective        0x00000004
-#define AOFF_task_cap_inheritable      0x000001c0
+#define AOFF_task_cap_inheritable      0x000001b8
 #define ASIZ_task_cap_inheritable      0x00000004
-#define AOFF_task_cap_permitted        0x000001c4
+#define AOFF_task_cap_permitted        0x000001bc
 #define ASIZ_task_cap_permitted        0x00000004
-#define AOFF_task_user 0x000001cc
+#define AOFF_task_user 0x000001c4
 #define ASIZ_task_user 0x00000004
-#define AOFF_task_rlim 0x000001d0
+#define AOFF_task_rlim 0x000001c8
 #define ASIZ_task_rlim 0x00000050
-#define AOFF_task_used_math    0x00000220
+#define AOFF_task_used_math    0x00000218
 #define ASIZ_task_used_math    0x00000002
-#define AOFF_task_comm 0x00000222
+#define AOFF_task_comm 0x0000021a
 #define ASIZ_task_comm 0x00000010
-#define AOFF_task_link_count   0x00000234
+#define AOFF_task_link_count   0x0000022c
 #define ASIZ_task_link_count   0x00000004
-#define AOFF_task_tty  0x00000238
+#define AOFF_task_tty  0x00000230
 #define ASIZ_task_tty  0x00000004
-#define AOFF_task_semundo      0x0000023c
+#define AOFF_task_semundo      0x00000234
 #define ASIZ_task_semundo      0x00000004
-#define AOFF_task_semsleeping  0x00000240
+#define AOFF_task_semsleeping  0x00000238
 #define ASIZ_task_semsleeping  0x00000004
-#define AOFF_task_thread       0x00000248
+#define AOFF_task_thread       0x00000240
 #define ASIZ_task_thread       0x00000380
-#define AOFF_task_fs   0x000005c8
+#define AOFF_task_fs   0x000005c0
 #define ASIZ_task_fs   0x00000004
-#define AOFF_task_files        0x000005cc
+#define AOFF_task_files        0x000005c4
 #define ASIZ_task_files        0x00000004
-#define AOFF_task_sigmask_lock 0x000005d0
+#define AOFF_task_sigmask_lock 0x000005c8
 #define ASIZ_task_sigmask_lock 0x00000004
-#define AOFF_task_sig  0x000005d4
+#define AOFF_task_sig  0x000005cc
 #define ASIZ_task_sig  0x00000004
-#define AOFF_task_signal       0x000005d8
+#define AOFF_task_signal       0x000005d0
 #define ASIZ_task_signal       0x00000008
-#define AOFF_task_blocked      0x000005e0
+#define AOFF_task_blocked      0x000005d8
 #define ASIZ_task_blocked      0x00000008
-#define AOFF_task_sigqueue     0x000005e8
+#define AOFF_task_sigqueue     0x000005e0
 #define ASIZ_task_sigqueue     0x00000004
-#define AOFF_task_sigqueue_tail        0x000005ec
+#define AOFF_task_sigqueue_tail        0x000005e4
 #define ASIZ_task_sigqueue_tail        0x00000004
-#define AOFF_task_sas_ss_sp    0x000005f0
+#define AOFF_task_sas_ss_sp    0x000005e8
 #define ASIZ_task_sas_ss_sp    0x00000004
-#define AOFF_task_sas_ss_size  0x000005f4
+#define AOFF_task_sas_ss_size  0x000005ec
 #define ASIZ_task_sas_ss_size  0x00000004
-#define AOFF_task_parent_exec_id       0x000005f8
+#define AOFF_task_parent_exec_id       0x000005f0
 #define ASIZ_task_parent_exec_id       0x00000004
-#define AOFF_task_self_exec_id 0x000005fc
+#define AOFF_task_self_exec_id 0x000005f4
 #define ASIZ_task_self_exec_id 0x00000004
-#define AOFF_task_alloc_lock   0x00000600
+#define AOFF_task_alloc_lock   0x000005f8
 #define ASIZ_task_alloc_lock   0x00000004
 #define AOFF_mm_mmap   0x00000000
 #define ASIZ_mm_mmap   0x00000004
 #define AOFF_mm_map_count      0x00000018
 #define ASIZ_mm_map_count      0x00000004
 #define AOFF_mm_mmap_sem       0x0000001c
-#define ASIZ_mm_mmap_sem       0x00000020
-#define AOFF_mm_page_table_lock        0x0000003c
+#define ASIZ_mm_mmap_sem       0x00000014
+#define AOFF_mm_page_table_lock        0x00000030
 #define ASIZ_mm_page_table_lock        0x00000004
-#define AOFF_mm_context        0x00000040
+#define AOFF_mm_context        0x00000034
 #define ASIZ_mm_context        0x00000004
-#define AOFF_mm_start_code     0x00000044
+#define AOFF_mm_start_code     0x00000038
 #define ASIZ_mm_start_code     0x00000004
-#define AOFF_mm_end_code       0x00000048
+#define AOFF_mm_end_code       0x0000003c
 #define ASIZ_mm_end_code       0x00000004
-#define AOFF_mm_start_data     0x0000004c
+#define AOFF_mm_start_data     0x00000040
 #define ASIZ_mm_start_data     0x00000004
-#define AOFF_mm_end_data       0x00000050
+#define AOFF_mm_end_data       0x00000044
 #define ASIZ_mm_end_data       0x00000004
-#define AOFF_mm_start_brk      0x00000054
+#define AOFF_mm_start_brk      0x00000048
 #define ASIZ_mm_start_brk      0x00000004
-#define AOFF_mm_brk    0x00000058
+#define AOFF_mm_brk    0x0000004c
 #define ASIZ_mm_brk    0x00000004
-#define AOFF_mm_start_stack    0x0000005c
+#define AOFF_mm_start_stack    0x00000050
 #define ASIZ_mm_start_stack    0x00000004
-#define AOFF_mm_arg_start      0x00000060
+#define AOFF_mm_arg_start      0x00000054
 #define ASIZ_mm_arg_start      0x00000004
-#define AOFF_mm_arg_end        0x00000064
+#define AOFF_mm_arg_end        0x00000058
 #define ASIZ_mm_arg_end        0x00000004
-#define AOFF_mm_env_start      0x00000068
+#define AOFF_mm_env_start      0x0000005c
 #define ASIZ_mm_env_start      0x00000004
-#define AOFF_mm_env_end        0x0000006c
+#define AOFF_mm_env_end        0x00000060
 #define ASIZ_mm_env_end        0x00000004
-#define AOFF_mm_rss    0x00000070
+#define AOFF_mm_rss    0x00000064
 #define ASIZ_mm_rss    0x00000004
-#define AOFF_mm_total_vm       0x00000074
+#define AOFF_mm_total_vm       0x00000068
 #define ASIZ_mm_total_vm       0x00000004
-#define AOFF_mm_locked_vm      0x00000078
+#define AOFF_mm_locked_vm      0x0000006c
 #define ASIZ_mm_locked_vm      0x00000004
-#define AOFF_mm_def_flags      0x0000007c
+#define AOFF_mm_def_flags      0x00000070
 #define ASIZ_mm_def_flags      0x00000004
-#define AOFF_mm_cpu_vm_mask    0x00000080
+#define AOFF_mm_cpu_vm_mask    0x00000074
 #define ASIZ_mm_cpu_vm_mask    0x00000004
-#define AOFF_mm_swap_cnt       0x00000084
+#define AOFF_mm_swap_cnt       0x00000078
 #define ASIZ_mm_swap_cnt       0x00000004
-#define AOFF_mm_swap_address   0x00000088
+#define AOFF_mm_swap_address   0x0000007c
 #define ASIZ_mm_swap_address   0x00000004
-#define AOFF_mm_segments       0x0000008c
+#define AOFF_mm_segments       0x00000080
 #define ASIZ_mm_segments       0x00000004
 #define AOFF_thread_uwinmask   0x00000000
 #define ASIZ_thread_uwinmask   0x00000004
 #define AOFF_task_pidhash_pprev        0x00000094
 #define ASIZ_task_pidhash_pprev        0x00000004
 #define AOFF_task_wait_chldexit        0x00000098
-#define ASIZ_task_wait_chldexit        0x00000018
-#define AOFF_task_vfork_sem    0x000000b0
+#define ASIZ_task_wait_chldexit        0x00000010
+#define AOFF_task_vfork_sem    0x000000a8
 #define ASIZ_task_vfork_sem    0x00000004
-#define AOFF_task_rt_priority  0x000000b4
+#define AOFF_task_rt_priority  0x000000ac
 #define ASIZ_task_rt_priority  0x00000004
-#define AOFF_task_it_real_value        0x000000b8
+#define AOFF_task_it_real_value        0x000000b0
 #define ASIZ_task_it_real_value        0x00000004
-#define AOFF_task_it_prof_value        0x000000bc
+#define AOFF_task_it_prof_value        0x000000b4
 #define ASIZ_task_it_prof_value        0x00000004
-#define AOFF_task_it_virt_value        0x000000c0
+#define AOFF_task_it_virt_value        0x000000b8
 #define ASIZ_task_it_virt_value        0x00000004
-#define AOFF_task_it_real_incr 0x000000c4
+#define AOFF_task_it_real_incr 0x000000bc
 #define ASIZ_task_it_real_incr 0x00000004
-#define AOFF_task_it_prof_incr 0x000000c8
+#define AOFF_task_it_prof_incr 0x000000c0
 #define ASIZ_task_it_prof_incr 0x00000004
-#define AOFF_task_it_virt_incr 0x000000cc
+#define AOFF_task_it_virt_incr 0x000000c4
 #define ASIZ_task_it_virt_incr 0x00000004
-#define AOFF_task_real_timer   0x000000d0
+#define AOFF_task_real_timer   0x000000c8
 #define ASIZ_task_real_timer   0x00000014
-#define AOFF_task_times        0x000000e4
+#define AOFF_task_times        0x000000dc
 #define ASIZ_task_times        0x00000010
-#define AOFF_task_start_time   0x000000f4
+#define AOFF_task_start_time   0x000000ec
 #define ASIZ_task_start_time   0x00000004
-#define AOFF_task_per_cpu_utime        0x000000f8
+#define AOFF_task_per_cpu_utime        0x000000f0
 #define ASIZ_task_per_cpu_utime        0x00000080
-#define AOFF_task_min_flt      0x000001f8
+#define AOFF_task_min_flt      0x000001f0
 #define ASIZ_task_min_flt      0x00000004
-#define AOFF_task_maj_flt      0x000001fc
+#define AOFF_task_maj_flt      0x000001f4
 #define ASIZ_task_maj_flt      0x00000004
-#define AOFF_task_nswap        0x00000200
+#define AOFF_task_nswap        0x000001f8
 #define ASIZ_task_nswap        0x00000004
-#define AOFF_task_cmin_flt     0x00000204
+#define AOFF_task_cmin_flt     0x000001fc
 #define ASIZ_task_cmin_flt     0x00000004
-#define AOFF_task_cmaj_flt     0x00000208
+#define AOFF_task_cmaj_flt     0x00000200
 #define ASIZ_task_cmaj_flt     0x00000004
-#define AOFF_task_cnswap       0x0000020c
+#define AOFF_task_cnswap       0x00000204
 #define ASIZ_task_cnswap       0x00000004
-#define AOFF_task_uid  0x00000214
+#define AOFF_task_uid  0x0000020c
 #define ASIZ_task_uid  0x00000004
-#define AOFF_task_euid 0x00000218
+#define AOFF_task_euid 0x00000210
 #define ASIZ_task_euid 0x00000004
-#define AOFF_task_suid 0x0000021c
+#define AOFF_task_suid 0x00000214
 #define ASIZ_task_suid 0x00000004
-#define AOFF_task_fsuid        0x00000220
+#define AOFF_task_fsuid        0x00000218
 #define ASIZ_task_fsuid        0x00000004
-#define AOFF_task_gid  0x00000224
+#define AOFF_task_gid  0x0000021c
 #define ASIZ_task_gid  0x00000004
-#define AOFF_task_egid 0x00000228
+#define AOFF_task_egid 0x00000220
 #define ASIZ_task_egid 0x00000004
-#define AOFF_task_sgid 0x0000022c
+#define AOFF_task_sgid 0x00000224
 #define ASIZ_task_sgid 0x00000004
-#define AOFF_task_fsgid        0x00000230
+#define AOFF_task_fsgid        0x00000228
 #define ASIZ_task_fsgid        0x00000004
-#define AOFF_task_ngroups      0x00000234
+#define AOFF_task_ngroups      0x0000022c
 #define ASIZ_task_ngroups      0x00000004
-#define AOFF_task_groups       0x00000238
+#define AOFF_task_groups       0x00000230
 #define ASIZ_task_groups       0x00000080
-#define AOFF_task_cap_effective        0x000002b8
+#define AOFF_task_cap_effective        0x000002b0
 #define ASIZ_task_cap_effective        0x00000004
-#define AOFF_task_cap_inheritable      0x000002bc
+#define AOFF_task_cap_inheritable      0x000002b4
 #define ASIZ_task_cap_inheritable      0x00000004
-#define AOFF_task_cap_permitted        0x000002c0
+#define AOFF_task_cap_permitted        0x000002b8
 #define ASIZ_task_cap_permitted        0x00000004
-#define AOFF_task_user 0x000002c8
+#define AOFF_task_user 0x000002c0
 #define ASIZ_task_user 0x00000004
-#define AOFF_task_rlim 0x000002cc
+#define AOFF_task_rlim 0x000002c4
 #define ASIZ_task_rlim 0x00000050
-#define AOFF_task_used_math    0x0000031c
+#define AOFF_task_used_math    0x00000314
 #define ASIZ_task_used_math    0x00000002
-#define AOFF_task_comm 0x0000031e
+#define AOFF_task_comm 0x00000316
 #define ASIZ_task_comm 0x00000010
-#define AOFF_task_link_count   0x00000330
+#define AOFF_task_link_count   0x00000328
 #define ASIZ_task_link_count   0x00000004
-#define AOFF_task_tty  0x00000334
+#define AOFF_task_tty  0x0000032c
 #define ASIZ_task_tty  0x00000004
-#define AOFF_task_semundo      0x00000338
+#define AOFF_task_semundo      0x00000330
 #define ASIZ_task_semundo      0x00000004
-#define AOFF_task_semsleeping  0x0000033c
+#define AOFF_task_semsleeping  0x00000334
 #define ASIZ_task_semsleeping  0x00000004
-#define AOFF_task_thread       0x00000340
+#define AOFF_task_thread       0x00000338
 #define ASIZ_task_thread       0x00000380
-#define AOFF_task_fs   0x000006c0
+#define AOFF_task_fs   0x000006b8
 #define ASIZ_task_fs   0x00000004
-#define AOFF_task_files        0x000006c4
+#define AOFF_task_files        0x000006bc
 #define ASIZ_task_files        0x00000004
-#define AOFF_task_sigmask_lock 0x000006c8
+#define AOFF_task_sigmask_lock 0x000006c0
 #define ASIZ_task_sigmask_lock 0x00000008
-#define AOFF_task_sig  0x000006d0
+#define AOFF_task_sig  0x000006c8
 #define ASIZ_task_sig  0x00000004
-#define AOFF_task_signal       0x000006d4
+#define AOFF_task_signal       0x000006cc
 #define ASIZ_task_signal       0x00000008
-#define AOFF_task_blocked      0x000006dc
+#define AOFF_task_blocked      0x000006d4
 #define ASIZ_task_blocked      0x00000008
-#define AOFF_task_sigqueue     0x000006e4
+#define AOFF_task_sigqueue     0x000006dc
 #define ASIZ_task_sigqueue     0x00000004
-#define AOFF_task_sigqueue_tail        0x000006e8
+#define AOFF_task_sigqueue_tail        0x000006e0
 #define ASIZ_task_sigqueue_tail        0x00000004
-#define AOFF_task_sas_ss_sp    0x000006ec
+#define AOFF_task_sas_ss_sp    0x000006e4
 #define ASIZ_task_sas_ss_sp    0x00000004
-#define AOFF_task_sas_ss_size  0x000006f0
+#define AOFF_task_sas_ss_size  0x000006e8
 #define ASIZ_task_sas_ss_size  0x00000004
-#define AOFF_task_parent_exec_id       0x000006f4
+#define AOFF_task_parent_exec_id       0x000006ec
 #define ASIZ_task_parent_exec_id       0x00000004
-#define AOFF_task_self_exec_id 0x000006f8
+#define AOFF_task_self_exec_id 0x000006f0
 #define ASIZ_task_self_exec_id 0x00000004
-#define AOFF_task_alloc_lock   0x000006fc
+#define AOFF_task_alloc_lock   0x000006f4
 #define ASIZ_task_alloc_lock   0x00000008
 #define AOFF_mm_mmap   0x00000000
 #define ASIZ_mm_mmap   0x00000004
 #define AOFF_mm_map_count      0x00000018
 #define ASIZ_mm_map_count      0x00000004
 #define AOFF_mm_mmap_sem       0x0000001c
-#define ASIZ_mm_mmap_sem       0x00000024
-#define AOFF_mm_page_table_lock        0x00000040
+#define ASIZ_mm_mmap_sem       0x00000018
+#define AOFF_mm_page_table_lock        0x00000034
 #define ASIZ_mm_page_table_lock        0x00000008
-#define AOFF_mm_context        0x00000048
+#define AOFF_mm_context        0x0000003c
 #define ASIZ_mm_context        0x00000004
-#define AOFF_mm_start_code     0x0000004c
+#define AOFF_mm_start_code     0x00000040
 #define ASIZ_mm_start_code     0x00000004
-#define AOFF_mm_end_code       0x00000050
+#define AOFF_mm_end_code       0x00000044
 #define ASIZ_mm_end_code       0x00000004
-#define AOFF_mm_start_data     0x00000054
+#define AOFF_mm_start_data     0x00000048
 #define ASIZ_mm_start_data     0x00000004
-#define AOFF_mm_end_data       0x00000058
+#define AOFF_mm_end_data       0x0000004c
 #define ASIZ_mm_end_data       0x00000004
-#define AOFF_mm_start_brk      0x0000005c
+#define AOFF_mm_start_brk      0x00000050
 #define ASIZ_mm_start_brk      0x00000004
-#define AOFF_mm_brk    0x00000060
+#define AOFF_mm_brk    0x00000054
 #define ASIZ_mm_brk    0x00000004
-#define AOFF_mm_start_stack    0x00000064
+#define AOFF_mm_start_stack    0x00000058
 #define ASIZ_mm_start_stack    0x00000004
-#define AOFF_mm_arg_start      0x00000068
+#define AOFF_mm_arg_start      0x0000005c
 #define ASIZ_mm_arg_start      0x00000004
-#define AOFF_mm_arg_end        0x0000006c
+#define AOFF_mm_arg_end        0x00000060
 #define ASIZ_mm_arg_end        0x00000004
-#define AOFF_mm_env_start      0x00000070
+#define AOFF_mm_env_start      0x00000064
 #define ASIZ_mm_env_start      0x00000004
-#define AOFF_mm_env_end        0x00000074
+#define AOFF_mm_env_end        0x00000068
 #define ASIZ_mm_env_end        0x00000004
-#define AOFF_mm_rss    0x00000078
+#define AOFF_mm_rss    0x0000006c
 #define ASIZ_mm_rss    0x00000004
-#define AOFF_mm_total_vm       0x0000007c
+#define AOFF_mm_total_vm       0x00000070
 #define ASIZ_mm_total_vm       0x00000004
-#define AOFF_mm_locked_vm      0x00000080
+#define AOFF_mm_locked_vm      0x00000074
 #define ASIZ_mm_locked_vm      0x00000004
-#define AOFF_mm_def_flags      0x00000084
+#define AOFF_mm_def_flags      0x00000078
 #define ASIZ_mm_def_flags      0x00000004
-#define AOFF_mm_cpu_vm_mask    0x00000088
+#define AOFF_mm_cpu_vm_mask    0x0000007c
 #define ASIZ_mm_cpu_vm_mask    0x00000004
-#define AOFF_mm_swap_cnt       0x0000008c
+#define AOFF_mm_swap_cnt       0x00000080
 #define ASIZ_mm_swap_cnt       0x00000004
-#define AOFF_mm_swap_address   0x00000090
+#define AOFF_mm_swap_address   0x00000084
 #define ASIZ_mm_swap_address   0x00000004
-#define AOFF_mm_segments       0x00000094
+#define AOFF_mm_segments       0x00000088
 #define ASIZ_mm_segments       0x00000004
 #define AOFF_thread_uwinmask   0x00000000
 #define ASIZ_thread_uwinmask   0x00000004
index fbeaebf2ea37290147f6db9d8a23b8f9e0dcff7c..436d1a9ad56b7abb57660b0fb60700fe5d0d7156 100644 (file)
@@ -1,4 +1,4 @@
-/* $Id: elf.h,v 1.21 2000/04/14 09:59:04 davem Exp $ */
+/* $Id: elf.h,v 1.22 2000/07/12 01:27:08 davem Exp $ */
 #ifndef __ASMSPARC_ELF_H
 #define __ASMSPARC_ELF_H
 
index 4218148633ad3669ccbd3847cc22e2c32390ac56..e191ef259b9b9dd9c3446b3439261b57e6d9ed35 100644 (file)
 #define AOFF_task_pidhash_pprev        0x000000f8
 #define ASIZ_task_pidhash_pprev        0x00000008
 #define AOFF_task_wait_chldexit        0x00000100
-#define ASIZ_task_wait_chldexit        0x00000028
-#define AOFF_task_vfork_sem    0x00000128
+#define ASIZ_task_wait_chldexit        0x00000018
+#define AOFF_task_vfork_sem    0x00000118
 #define ASIZ_task_vfork_sem    0x00000008
-#define AOFF_task_rt_priority  0x00000130
+#define AOFF_task_rt_priority  0x00000120
 #define ASIZ_task_rt_priority  0x00000008
-#define AOFF_task_it_real_value        0x00000138
+#define AOFF_task_it_real_value        0x00000128
 #define ASIZ_task_it_real_value        0x00000008
-#define AOFF_task_it_prof_value        0x00000140
+#define AOFF_task_it_prof_value        0x00000130
 #define ASIZ_task_it_prof_value        0x00000008
-#define AOFF_task_it_virt_value        0x00000148
+#define AOFF_task_it_virt_value        0x00000138
 #define ASIZ_task_it_virt_value        0x00000008
-#define AOFF_task_it_real_incr 0x00000150
+#define AOFF_task_it_real_incr 0x00000140
 #define ASIZ_task_it_real_incr 0x00000008
-#define AOFF_task_it_prof_incr 0x00000158
+#define AOFF_task_it_prof_incr 0x00000148
 #define ASIZ_task_it_prof_incr 0x00000008
-#define AOFF_task_it_virt_incr 0x00000160
+#define AOFF_task_it_virt_incr 0x00000150
 #define ASIZ_task_it_virt_incr 0x00000008
-#define AOFF_task_real_timer   0x00000168
+#define AOFF_task_real_timer   0x00000158
 #define ASIZ_task_real_timer   0x00000028
-#define AOFF_task_times        0x00000190
+#define AOFF_task_times        0x00000180
 #define ASIZ_task_times        0x00000020
-#define AOFF_task_start_time   0x000001b0
+#define AOFF_task_start_time   0x000001a0
 #define ASIZ_task_start_time   0x00000008
-#define AOFF_task_per_cpu_utime        0x000001b8
+#define AOFF_task_per_cpu_utime        0x000001a8
 #define ASIZ_task_per_cpu_utime        0x00000008
-#define AOFF_task_min_flt      0x000001c8
+#define AOFF_task_min_flt      0x000001b8
 #define ASIZ_task_min_flt      0x00000008
-#define AOFF_task_maj_flt      0x000001d0
+#define AOFF_task_maj_flt      0x000001c0
 #define ASIZ_task_maj_flt      0x00000008
-#define AOFF_task_nswap        0x000001d8
+#define AOFF_task_nswap        0x000001c8
 #define ASIZ_task_nswap        0x00000008
-#define AOFF_task_cmin_flt     0x000001e0
+#define AOFF_task_cmin_flt     0x000001d0
 #define ASIZ_task_cmin_flt     0x00000008
-#define AOFF_task_cmaj_flt     0x000001e8
+#define AOFF_task_cmaj_flt     0x000001d8
 #define ASIZ_task_cmaj_flt     0x00000008
-#define AOFF_task_cnswap       0x000001f0
+#define AOFF_task_cnswap       0x000001e0
 #define ASIZ_task_cnswap       0x00000008
-#define AOFF_task_uid  0x000001fc
+#define AOFF_task_uid  0x000001ec
 #define ASIZ_task_uid  0x00000004
-#define AOFF_task_euid 0x00000200
+#define AOFF_task_euid 0x000001f0
 #define ASIZ_task_euid 0x00000004
-#define AOFF_task_suid 0x00000204
+#define AOFF_task_suid 0x000001f4
 #define ASIZ_task_suid 0x00000004
-#define AOFF_task_fsuid        0x00000208
+#define AOFF_task_fsuid        0x000001f8
 #define ASIZ_task_fsuid        0x00000004
-#define AOFF_task_gid  0x0000020c
+#define AOFF_task_gid  0x000001fc
 #define ASIZ_task_gid  0x00000004
-#define AOFF_task_egid 0x00000210
+#define AOFF_task_egid 0x00000200
 #define ASIZ_task_egid 0x00000004
-#define AOFF_task_sgid 0x00000214
+#define AOFF_task_sgid 0x00000204
 #define ASIZ_task_sgid 0x00000004
-#define AOFF_task_fsgid        0x00000218
+#define AOFF_task_fsgid        0x00000208
 #define ASIZ_task_fsgid        0x00000004
-#define AOFF_task_ngroups      0x0000021c
+#define AOFF_task_ngroups      0x0000020c
 #define ASIZ_task_ngroups      0x00000004
-#define AOFF_task_groups       0x00000220
+#define AOFF_task_groups       0x00000210
 #define ASIZ_task_groups       0x00000080
-#define AOFF_task_cap_effective        0x000002a0
+#define AOFF_task_cap_effective        0x00000290
 #define ASIZ_task_cap_effective        0x00000004
-#define AOFF_task_cap_inheritable      0x000002a4
+#define AOFF_task_cap_inheritable      0x00000294
 #define ASIZ_task_cap_inheritable      0x00000004
-#define AOFF_task_cap_permitted        0x000002a8
+#define AOFF_task_cap_permitted        0x00000298
 #define ASIZ_task_cap_permitted        0x00000004
-#define AOFF_task_user 0x000002b0
+#define AOFF_task_user 0x000002a0
 #define ASIZ_task_user 0x00000008
-#define AOFF_task_rlim 0x000002b8
+#define AOFF_task_rlim 0x000002a8
 #define ASIZ_task_rlim 0x000000a0
-#define AOFF_task_used_math    0x00000358
+#define AOFF_task_used_math    0x00000348
 #define ASIZ_task_used_math    0x00000002
-#define AOFF_task_comm 0x0000035a
+#define AOFF_task_comm 0x0000034a
 #define ASIZ_task_comm 0x00000010
-#define AOFF_task_link_count   0x0000036c
+#define AOFF_task_link_count   0x0000035c
 #define ASIZ_task_link_count   0x00000004
-#define AOFF_task_tty  0x00000370
+#define AOFF_task_tty  0x00000360
 #define ASIZ_task_tty  0x00000008
-#define AOFF_task_semundo      0x00000378
+#define AOFF_task_semundo      0x00000368
 #define ASIZ_task_semundo      0x00000008
-#define AOFF_task_semsleeping  0x00000380
+#define AOFF_task_semsleeping  0x00000370
 #define ASIZ_task_semsleeping  0x00000008
-#define AOFF_task_thread       0x00000390
+#define AOFF_task_thread       0x00000380
 #define ASIZ_task_thread       0x00000450
-#define AOFF_task_fs   0x000007e0
+#define AOFF_task_fs   0x000007d0
 #define ASIZ_task_fs   0x00000008
-#define AOFF_task_files        0x000007e8
+#define AOFF_task_files        0x000007d8
 #define ASIZ_task_files        0x00000008
-#define AOFF_task_sigmask_lock 0x000007f0
+#define AOFF_task_sigmask_lock 0x000007e0
 #define ASIZ_task_sigmask_lock 0x00000004
-#define AOFF_task_sig  0x000007f8
+#define AOFF_task_sig  0x000007e8
 #define ASIZ_task_sig  0x00000008
-#define AOFF_task_signal       0x00000800
+#define AOFF_task_signal       0x000007f0
 #define ASIZ_task_signal       0x00000008
-#define AOFF_task_blocked      0x00000808
+#define AOFF_task_blocked      0x000007f8
 #define ASIZ_task_blocked      0x00000008
-#define AOFF_task_sigqueue     0x00000810
+#define AOFF_task_sigqueue     0x00000800
 #define ASIZ_task_sigqueue     0x00000008
-#define AOFF_task_sigqueue_tail        0x00000818
+#define AOFF_task_sigqueue_tail        0x00000808
 #define ASIZ_task_sigqueue_tail        0x00000008
-#define AOFF_task_sas_ss_sp    0x00000820
+#define AOFF_task_sas_ss_sp    0x00000810
 #define ASIZ_task_sas_ss_sp    0x00000008
-#define AOFF_task_sas_ss_size  0x00000828
+#define AOFF_task_sas_ss_size  0x00000818
 #define ASIZ_task_sas_ss_size  0x00000008
-#define AOFF_task_parent_exec_id       0x00000830
+#define AOFF_task_parent_exec_id       0x00000820
 #define ASIZ_task_parent_exec_id       0x00000004
-#define AOFF_task_self_exec_id 0x00000834
+#define AOFF_task_self_exec_id 0x00000824
 #define ASIZ_task_self_exec_id 0x00000004
-#define AOFF_task_alloc_lock   0x00000838
+#define AOFF_task_alloc_lock   0x00000828
 #define ASIZ_task_alloc_lock   0x00000004
-#define ASIZ_task      0x00000840
+#define ASIZ_task      0x00000830
 #define AOFF_mm_mmap   0x00000000
 #define ASIZ_mm_mmap   0x00000008
 #define AOFF_mm_mmap_avl       0x00000008
 #define AOFF_mm_map_count      0x00000028
 #define ASIZ_mm_map_count      0x00000004
 #define AOFF_mm_mmap_sem       0x00000030
-#define ASIZ_mm_mmap_sem       0x00000038
-#define AOFF_mm_page_table_lock        0x00000068
+#define ASIZ_mm_mmap_sem       0x00000020
+#define AOFF_mm_page_table_lock        0x00000050
 #define ASIZ_mm_page_table_lock        0x00000004
-#define AOFF_mm_context        0x00000070
+#define AOFF_mm_context        0x00000058
 #define ASIZ_mm_context        0x00000008
-#define AOFF_mm_start_code     0x00000078
+#define AOFF_mm_start_code     0x00000060
 #define ASIZ_mm_start_code     0x00000008
-#define AOFF_mm_end_code       0x00000080
+#define AOFF_mm_end_code       0x00000068
 #define ASIZ_mm_end_code       0x00000008
-#define AOFF_mm_start_data     0x00000088
+#define AOFF_mm_start_data     0x00000070
 #define ASIZ_mm_start_data     0x00000008
-#define AOFF_mm_end_data       0x00000090
+#define AOFF_mm_end_data       0x00000078
 #define ASIZ_mm_end_data       0x00000008
-#define AOFF_mm_start_brk      0x00000098
+#define AOFF_mm_start_brk      0x00000080
 #define ASIZ_mm_start_brk      0x00000008
-#define AOFF_mm_brk    0x000000a0
+#define AOFF_mm_brk    0x00000088
 #define ASIZ_mm_brk    0x00000008
-#define AOFF_mm_start_stack    0x000000a8
+#define AOFF_mm_start_stack    0x00000090
 #define ASIZ_mm_start_stack    0x00000008
-#define AOFF_mm_arg_start      0x000000b0
+#define AOFF_mm_arg_start      0x00000098
 #define ASIZ_mm_arg_start      0x00000008
-#define AOFF_mm_arg_end        0x000000b8
+#define AOFF_mm_arg_end        0x000000a0
 #define ASIZ_mm_arg_end        0x00000008
-#define AOFF_mm_env_start      0x000000c0
+#define AOFF_mm_env_start      0x000000a8
 #define ASIZ_mm_env_start      0x00000008
-#define AOFF_mm_env_end        0x000000c8
+#define AOFF_mm_env_end        0x000000b0
 #define ASIZ_mm_env_end        0x00000008
-#define AOFF_mm_rss    0x000000d0
+#define AOFF_mm_rss    0x000000b8
 #define ASIZ_mm_rss    0x00000008
-#define AOFF_mm_total_vm       0x000000d8
+#define AOFF_mm_total_vm       0x000000c0
 #define ASIZ_mm_total_vm       0x00000008
-#define AOFF_mm_locked_vm      0x000000e0
+#define AOFF_mm_locked_vm      0x000000c8
 #define ASIZ_mm_locked_vm      0x00000008
-#define AOFF_mm_def_flags      0x000000e8
+#define AOFF_mm_def_flags      0x000000d0
 #define ASIZ_mm_def_flags      0x00000008
-#define AOFF_mm_cpu_vm_mask    0x000000f0
+#define AOFF_mm_cpu_vm_mask    0x000000d8
 #define ASIZ_mm_cpu_vm_mask    0x00000008
-#define AOFF_mm_swap_cnt       0x000000f8
+#define AOFF_mm_swap_cnt       0x000000e0
 #define ASIZ_mm_swap_cnt       0x00000008
-#define AOFF_mm_swap_address   0x00000100
+#define AOFF_mm_swap_address   0x000000e8
 #define ASIZ_mm_swap_address   0x00000008
-#define AOFF_mm_segments       0x00000108
+#define AOFF_mm_segments       0x000000f0
 #define ASIZ_mm_segments       0x00000008
-#define ASIZ_mm        0x00000110
+#define ASIZ_mm        0x000000f8
 #define AOFF_thread_ksp        0x00000000
 #define ASIZ_thread_ksp        0x00000008
 #define AOFF_thread_wstate     0x00000008
 #define AOFF_task_pidhash_pprev        0x000000f8
 #define ASIZ_task_pidhash_pprev        0x00000008
 #define AOFF_task_wait_chldexit        0x00000100
-#define ASIZ_task_wait_chldexit        0x00000028
-#define AOFF_task_vfork_sem    0x00000128
+#define ASIZ_task_wait_chldexit        0x00000018
+#define AOFF_task_vfork_sem    0x00000118
 #define ASIZ_task_vfork_sem    0x00000008
-#define AOFF_task_rt_priority  0x00000130
+#define AOFF_task_rt_priority  0x00000120
 #define ASIZ_task_rt_priority  0x00000008
-#define AOFF_task_it_real_value        0x00000138
+#define AOFF_task_it_real_value        0x00000128
 #define ASIZ_task_it_real_value        0x00000008
-#define AOFF_task_it_prof_value        0x00000140
+#define AOFF_task_it_prof_value        0x00000130
 #define ASIZ_task_it_prof_value        0x00000008
-#define AOFF_task_it_virt_value        0x00000148
+#define AOFF_task_it_virt_value        0x00000138
 #define ASIZ_task_it_virt_value        0x00000008
-#define AOFF_task_it_real_incr 0x00000150
+#define AOFF_task_it_real_incr 0x00000140
 #define ASIZ_task_it_real_incr 0x00000008
-#define AOFF_task_it_prof_incr 0x00000158
+#define AOFF_task_it_prof_incr 0x00000148
 #define ASIZ_task_it_prof_incr 0x00000008
-#define AOFF_task_it_virt_incr 0x00000160
+#define AOFF_task_it_virt_incr 0x00000150
 #define ASIZ_task_it_virt_incr 0x00000008
-#define AOFF_task_real_timer   0x00000168
+#define AOFF_task_real_timer   0x00000158
 #define ASIZ_task_real_timer   0x00000028
-#define AOFF_task_times        0x00000190
+#define AOFF_task_times        0x00000180
 #define ASIZ_task_times        0x00000020
-#define AOFF_task_start_time   0x000001b0
+#define AOFF_task_start_time   0x000001a0
 #define ASIZ_task_start_time   0x00000008
-#define AOFF_task_per_cpu_utime        0x000001b8
+#define AOFF_task_per_cpu_utime        0x000001a8
 #define ASIZ_task_per_cpu_utime        0x00000100
-#define AOFF_task_min_flt      0x000003b8
+#define AOFF_task_min_flt      0x000003a8
 #define ASIZ_task_min_flt      0x00000008
-#define AOFF_task_maj_flt      0x000003c0
+#define AOFF_task_maj_flt      0x000003b0
 #define ASIZ_task_maj_flt      0x00000008
-#define AOFF_task_nswap        0x000003c8
+#define AOFF_task_nswap        0x000003b8
 #define ASIZ_task_nswap        0x00000008
-#define AOFF_task_cmin_flt     0x000003d0
+#define AOFF_task_cmin_flt     0x000003c0
 #define ASIZ_task_cmin_flt     0x00000008
-#define AOFF_task_cmaj_flt     0x000003d8
+#define AOFF_task_cmaj_flt     0x000003c8
 #define ASIZ_task_cmaj_flt     0x00000008
-#define AOFF_task_cnswap       0x000003e0
+#define AOFF_task_cnswap       0x000003d0
 #define ASIZ_task_cnswap       0x00000008
-#define AOFF_task_uid  0x000003ec
+#define AOFF_task_uid  0x000003dc
 #define ASIZ_task_uid  0x00000004
-#define AOFF_task_euid 0x000003f0
+#define AOFF_task_euid 0x000003e0
 #define ASIZ_task_euid 0x00000004
-#define AOFF_task_suid 0x000003f4
+#define AOFF_task_suid 0x000003e4
 #define ASIZ_task_suid 0x00000004
-#define AOFF_task_fsuid        0x000003f8
+#define AOFF_task_fsuid        0x000003e8
 #define ASIZ_task_fsuid        0x00000004
-#define AOFF_task_gid  0x000003fc
+#define AOFF_task_gid  0x000003ec
 #define ASIZ_task_gid  0x00000004
-#define AOFF_task_egid 0x00000400
+#define AOFF_task_egid 0x000003f0
 #define ASIZ_task_egid 0x00000004
-#define AOFF_task_sgid 0x00000404
+#define AOFF_task_sgid 0x000003f4
 #define ASIZ_task_sgid 0x00000004
-#define AOFF_task_fsgid        0x00000408
+#define AOFF_task_fsgid        0x000003f8
 #define ASIZ_task_fsgid        0x00000004
-#define AOFF_task_ngroups      0x0000040c
+#define AOFF_task_ngroups      0x000003fc
 #define ASIZ_task_ngroups      0x00000004
-#define AOFF_task_groups       0x00000410
+#define AOFF_task_groups       0x00000400
 #define ASIZ_task_groups       0x00000080
-#define AOFF_task_cap_effective        0x00000490
+#define AOFF_task_cap_effective        0x00000480
 #define ASIZ_task_cap_effective        0x00000004
-#define AOFF_task_cap_inheritable      0x00000494
+#define AOFF_task_cap_inheritable      0x00000484
 #define ASIZ_task_cap_inheritable      0x00000004
-#define AOFF_task_cap_permitted        0x00000498
+#define AOFF_task_cap_permitted        0x00000488
 #define ASIZ_task_cap_permitted        0x00000004
-#define AOFF_task_user 0x000004a0
+#define AOFF_task_user 0x00000490
 #define ASIZ_task_user 0x00000008
-#define AOFF_task_rlim 0x000004a8
+#define AOFF_task_rlim 0x00000498
 #define ASIZ_task_rlim 0x000000a0
-#define AOFF_task_used_math    0x00000548
+#define AOFF_task_used_math    0x00000538
 #define ASIZ_task_used_math    0x00000002
-#define AOFF_task_comm 0x0000054a
+#define AOFF_task_comm 0x0000053a
 #define ASIZ_task_comm 0x00000010
-#define AOFF_task_link_count   0x0000055c
+#define AOFF_task_link_count   0x0000054c
 #define ASIZ_task_link_count   0x00000004
-#define AOFF_task_tty  0x00000560
+#define AOFF_task_tty  0x00000550
 #define ASIZ_task_tty  0x00000008
-#define AOFF_task_semundo      0x00000568
+#define AOFF_task_semundo      0x00000558
 #define ASIZ_task_semundo      0x00000008
-#define AOFF_task_semsleeping  0x00000570
+#define AOFF_task_semsleeping  0x00000560
 #define ASIZ_task_semsleeping  0x00000008
-#define AOFF_task_thread       0x00000580
+#define AOFF_task_thread       0x00000570
 #define ASIZ_task_thread       0x00000450
-#define AOFF_task_fs   0x000009d0
+#define AOFF_task_fs   0x000009c0
 #define ASIZ_task_fs   0x00000008
-#define AOFF_task_files        0x000009d8
+#define AOFF_task_files        0x000009c8
 #define ASIZ_task_files        0x00000008
-#define AOFF_task_sigmask_lock 0x000009e0
+#define AOFF_task_sigmask_lock 0x000009d0
 #define ASIZ_task_sigmask_lock 0x00000001
-#define AOFF_task_sig  0x000009e8
+#define AOFF_task_sig  0x000009d8
 #define ASIZ_task_sig  0x00000008
-#define AOFF_task_signal       0x000009f0
+#define AOFF_task_signal       0x000009e0
 #define ASIZ_task_signal       0x00000008
-#define AOFF_task_blocked      0x000009f8
+#define AOFF_task_blocked      0x000009e8
 #define ASIZ_task_blocked      0x00000008
-#define AOFF_task_sigqueue     0x00000a00
+#define AOFF_task_sigqueue     0x000009f0
 #define ASIZ_task_sigqueue     0x00000008
-#define AOFF_task_sigqueue_tail        0x00000a08
+#define AOFF_task_sigqueue_tail        0x000009f8
 #define ASIZ_task_sigqueue_tail        0x00000008
-#define AOFF_task_sas_ss_sp    0x00000a10
+#define AOFF_task_sas_ss_sp    0x00000a00
 #define ASIZ_task_sas_ss_sp    0x00000008
-#define AOFF_task_sas_ss_size  0x00000a18
+#define AOFF_task_sas_ss_size  0x00000a08
 #define ASIZ_task_sas_ss_size  0x00000008
-#define AOFF_task_parent_exec_id       0x00000a20
+#define AOFF_task_parent_exec_id       0x00000a10
 #define ASIZ_task_parent_exec_id       0x00000004
-#define AOFF_task_self_exec_id 0x00000a24
+#define AOFF_task_self_exec_id 0x00000a14
 #define ASIZ_task_self_exec_id 0x00000004
-#define AOFF_task_alloc_lock   0x00000a28
+#define AOFF_task_alloc_lock   0x00000a18
 #define ASIZ_task_alloc_lock   0x00000001
-#define ASIZ_task      0x00000a30
+#define ASIZ_task      0x00000a20
 #define AOFF_mm_mmap   0x00000000
 #define ASIZ_mm_mmap   0x00000008
 #define AOFF_mm_mmap_avl       0x00000008
 #define AOFF_mm_map_count      0x00000028
 #define ASIZ_mm_map_count      0x00000004
 #define AOFF_mm_mmap_sem       0x00000030
-#define ASIZ_mm_mmap_sem       0x00000038
-#define AOFF_mm_page_table_lock        0x00000068
+#define ASIZ_mm_mmap_sem       0x00000020
+#define AOFF_mm_page_table_lock        0x00000050
 #define ASIZ_mm_page_table_lock        0x00000001
-#define AOFF_mm_context        0x00000070
+#define AOFF_mm_context        0x00000058
 #define ASIZ_mm_context        0x00000008
-#define AOFF_mm_start_code     0x00000078
+#define AOFF_mm_start_code     0x00000060
 #define ASIZ_mm_start_code     0x00000008
-#define AOFF_mm_end_code       0x00000080
+#define AOFF_mm_end_code       0x00000068
 #define ASIZ_mm_end_code       0x00000008
-#define AOFF_mm_start_data     0x00000088
+#define AOFF_mm_start_data     0x00000070
 #define ASIZ_mm_start_data     0x00000008
-#define AOFF_mm_end_data       0x00000090
+#define AOFF_mm_end_data       0x00000078
 #define ASIZ_mm_end_data       0x00000008
-#define AOFF_mm_start_brk      0x00000098
+#define AOFF_mm_start_brk      0x00000080
 #define ASIZ_mm_start_brk      0x00000008
-#define AOFF_mm_brk    0x000000a0
+#define AOFF_mm_brk    0x00000088
 #define ASIZ_mm_brk    0x00000008
-#define AOFF_mm_start_stack    0x000000a8
+#define AOFF_mm_start_stack    0x00000090
 #define ASIZ_mm_start_stack    0x00000008
-#define AOFF_mm_arg_start      0x000000b0
+#define AOFF_mm_arg_start      0x00000098
 #define ASIZ_mm_arg_start      0x00000008
-#define AOFF_mm_arg_end        0x000000b8
+#define AOFF_mm_arg_end        0x000000a0
 #define ASIZ_mm_arg_end        0x00000008
-#define AOFF_mm_env_start      0x000000c0
+#define AOFF_mm_env_start      0x000000a8
 #define ASIZ_mm_env_start      0x00000008
-#define AOFF_mm_env_end        0x000000c8
+#define AOFF_mm_env_end        0x000000b0
 #define ASIZ_mm_env_end        0x00000008
-#define AOFF_mm_rss    0x000000d0
+#define AOFF_mm_rss    0x000000b8
 #define ASIZ_mm_rss    0x00000008
-#define AOFF_mm_total_vm       0x000000d8
+#define AOFF_mm_total_vm       0x000000c0
 #define ASIZ_mm_total_vm       0x00000008
-#define AOFF_mm_locked_vm      0x000000e0
+#define AOFF_mm_locked_vm      0x000000c8
 #define ASIZ_mm_locked_vm      0x00000008
-#define AOFF_mm_def_flags      0x000000e8
+#define AOFF_mm_def_flags      0x000000d0
 #define ASIZ_mm_def_flags      0x00000008
-#define AOFF_mm_cpu_vm_mask    0x000000f0
+#define AOFF_mm_cpu_vm_mask    0x000000d8
 #define ASIZ_mm_cpu_vm_mask    0x00000008
-#define AOFF_mm_swap_cnt       0x000000f8
+#define AOFF_mm_swap_cnt       0x000000e0
 #define ASIZ_mm_swap_cnt       0x00000008
-#define AOFF_mm_swap_address   0x00000100
+#define AOFF_mm_swap_address   0x000000e8
 #define ASIZ_mm_swap_address   0x00000008
-#define AOFF_mm_segments       0x00000108
+#define AOFF_mm_segments       0x000000f0
 #define ASIZ_mm_segments       0x00000008
-#define ASIZ_mm        0x00000110
+#define ASIZ_mm        0x000000f8
 #define AOFF_thread_ksp        0x00000000
 #define ASIZ_thread_ksp        0x00000008
 #define AOFF_thread_wstate     0x00000008
 #define AOFF_task_pidhash_pprev        0x000000f8
 #define ASIZ_task_pidhash_pprev        0x00000008
 #define AOFF_task_wait_chldexit        0x00000100
-#define ASIZ_task_wait_chldexit        0x00000030
-#define AOFF_task_vfork_sem    0x00000130
+#define ASIZ_task_wait_chldexit        0x00000020
+#define AOFF_task_vfork_sem    0x00000120
 #define ASIZ_task_vfork_sem    0x00000008
-#define AOFF_task_rt_priority  0x00000138
+#define AOFF_task_rt_priority  0x00000128
 #define ASIZ_task_rt_priority  0x00000008
-#define AOFF_task_it_real_value        0x00000140
+#define AOFF_task_it_real_value        0x00000130
 #define ASIZ_task_it_real_value        0x00000008
-#define AOFF_task_it_prof_value        0x00000148
+#define AOFF_task_it_prof_value        0x00000138
 #define ASIZ_task_it_prof_value        0x00000008
-#define AOFF_task_it_virt_value        0x00000150
+#define AOFF_task_it_virt_value        0x00000140
 #define ASIZ_task_it_virt_value        0x00000008
-#define AOFF_task_it_real_incr 0x00000158
+#define AOFF_task_it_real_incr 0x00000148
 #define ASIZ_task_it_real_incr 0x00000008
-#define AOFF_task_it_prof_incr 0x00000160
+#define AOFF_task_it_prof_incr 0x00000150
 #define ASIZ_task_it_prof_incr 0x00000008
-#define AOFF_task_it_virt_incr 0x00000168
+#define AOFF_task_it_virt_incr 0x00000158
 #define ASIZ_task_it_virt_incr 0x00000008
-#define AOFF_task_real_timer   0x00000170
+#define AOFF_task_real_timer   0x00000160
 #define ASIZ_task_real_timer   0x00000028
-#define AOFF_task_times        0x00000198
+#define AOFF_task_times        0x00000188
 #define ASIZ_task_times        0x00000020
-#define AOFF_task_start_time   0x000001b8
+#define AOFF_task_start_time   0x000001a8
 #define ASIZ_task_start_time   0x00000008
-#define AOFF_task_per_cpu_utime        0x000001c0
+#define AOFF_task_per_cpu_utime        0x000001b0
 #define ASIZ_task_per_cpu_utime        0x00000100
-#define AOFF_task_min_flt      0x000003c0
+#define AOFF_task_min_flt      0x000003b0
 #define ASIZ_task_min_flt      0x00000008
-#define AOFF_task_maj_flt      0x000003c8
+#define AOFF_task_maj_flt      0x000003b8
 #define ASIZ_task_maj_flt      0x00000008
-#define AOFF_task_nswap        0x000003d0
+#define AOFF_task_nswap        0x000003c0
 #define ASIZ_task_nswap        0x00000008
-#define AOFF_task_cmin_flt     0x000003d8
+#define AOFF_task_cmin_flt     0x000003c8
 #define ASIZ_task_cmin_flt     0x00000008
-#define AOFF_task_cmaj_flt     0x000003e0
+#define AOFF_task_cmaj_flt     0x000003d0
 #define ASIZ_task_cmaj_flt     0x00000008
-#define AOFF_task_cnswap       0x000003e8
+#define AOFF_task_cnswap       0x000003d8
 #define ASIZ_task_cnswap       0x00000008
-#define AOFF_task_uid  0x000003f4
+#define AOFF_task_uid  0x000003e4
 #define ASIZ_task_uid  0x00000004
-#define AOFF_task_euid 0x000003f8
+#define AOFF_task_euid 0x000003e8
 #define ASIZ_task_euid 0x00000004
-#define AOFF_task_suid 0x000003fc
+#define AOFF_task_suid 0x000003ec
 #define ASIZ_task_suid 0x00000004
-#define AOFF_task_fsuid        0x00000400
+#define AOFF_task_fsuid        0x000003f0
 #define ASIZ_task_fsuid        0x00000004
-#define AOFF_task_gid  0x00000404
+#define AOFF_task_gid  0x000003f4
 #define ASIZ_task_gid  0x00000004
-#define AOFF_task_egid 0x00000408
+#define AOFF_task_egid 0x000003f8
 #define ASIZ_task_egid 0x00000004
-#define AOFF_task_sgid 0x0000040c
+#define AOFF_task_sgid 0x000003fc
 #define ASIZ_task_sgid 0x00000004
-#define AOFF_task_fsgid        0x00000410
+#define AOFF_task_fsgid        0x00000400
 #define ASIZ_task_fsgid        0x00000004
-#define AOFF_task_ngroups      0x00000414
+#define AOFF_task_ngroups      0x00000404
 #define ASIZ_task_ngroups      0x00000004
-#define AOFF_task_groups       0x00000418
+#define AOFF_task_groups       0x00000408
 #define ASIZ_task_groups       0x00000080
-#define AOFF_task_cap_effective        0x00000498
+#define AOFF_task_cap_effective        0x00000488
 #define ASIZ_task_cap_effective        0x00000004
-#define AOFF_task_cap_inheritable      0x0000049c
+#define AOFF_task_cap_inheritable      0x0000048c
 #define ASIZ_task_cap_inheritable      0x00000004
-#define AOFF_task_cap_permitted        0x000004a0
+#define AOFF_task_cap_permitted        0x00000490
 #define ASIZ_task_cap_permitted        0x00000004
-#define AOFF_task_user 0x000004a8
+#define AOFF_task_user 0x00000498
 #define ASIZ_task_user 0x00000008
-#define AOFF_task_rlim 0x000004b0
+#define AOFF_task_rlim 0x000004a0
 #define ASIZ_task_rlim 0x000000a0
-#define AOFF_task_used_math    0x00000550
+#define AOFF_task_used_math    0x00000540
 #define ASIZ_task_used_math    0x00000002
-#define AOFF_task_comm 0x00000552
+#define AOFF_task_comm 0x00000542
 #define ASIZ_task_comm 0x00000010
-#define AOFF_task_link_count   0x00000564
+#define AOFF_task_link_count   0x00000554
 #define ASIZ_task_link_count   0x00000004
-#define AOFF_task_tty  0x00000568
+#define AOFF_task_tty  0x00000558
 #define ASIZ_task_tty  0x00000008
-#define AOFF_task_semundo      0x00000570
+#define AOFF_task_semundo      0x00000560
 #define ASIZ_task_semundo      0x00000008
-#define AOFF_task_semsleeping  0x00000578
+#define AOFF_task_semsleeping  0x00000568
 #define ASIZ_task_semsleeping  0x00000008
-#define AOFF_task_thread       0x00000580
+#define AOFF_task_thread       0x00000570
 #define ASIZ_task_thread       0x00000450
-#define AOFF_task_fs   0x000009d0
+#define AOFF_task_fs   0x000009c0
 #define ASIZ_task_fs   0x00000008
-#define AOFF_task_files        0x000009d8
+#define AOFF_task_files        0x000009c8
 #define ASIZ_task_files        0x00000008
-#define AOFF_task_sigmask_lock 0x000009e0
+#define AOFF_task_sigmask_lock 0x000009d0
 #define ASIZ_task_sigmask_lock 0x0000000c
-#define AOFF_task_sig  0x000009f0
+#define AOFF_task_sig  0x000009e0
 #define ASIZ_task_sig  0x00000008
-#define AOFF_task_signal       0x000009f8
+#define AOFF_task_signal       0x000009e8
 #define ASIZ_task_signal       0x00000008
-#define AOFF_task_blocked      0x00000a00
+#define AOFF_task_blocked      0x000009f0
 #define ASIZ_task_blocked      0x00000008
-#define AOFF_task_sigqueue     0x00000a08
+#define AOFF_task_sigqueue     0x000009f8
 #define ASIZ_task_sigqueue     0x00000008
-#define AOFF_task_sigqueue_tail        0x00000a10
+#define AOFF_task_sigqueue_tail        0x00000a00
 #define ASIZ_task_sigqueue_tail        0x00000008
-#define AOFF_task_sas_ss_sp    0x00000a18
+#define AOFF_task_sas_ss_sp    0x00000a08
 #define ASIZ_task_sas_ss_sp    0x00000008
-#define AOFF_task_sas_ss_size  0x00000a20
+#define AOFF_task_sas_ss_size  0x00000a10
 #define ASIZ_task_sas_ss_size  0x00000008
-#define AOFF_task_parent_exec_id       0x00000a28
+#define AOFF_task_parent_exec_id       0x00000a18
 #define ASIZ_task_parent_exec_id       0x00000004
-#define AOFF_task_self_exec_id 0x00000a2c
+#define AOFF_task_self_exec_id 0x00000a1c
 #define ASIZ_task_self_exec_id 0x00000004
-#define AOFF_task_alloc_lock   0x00000a30
+#define AOFF_task_alloc_lock   0x00000a20
 #define ASIZ_task_alloc_lock   0x0000000c
-#define ASIZ_task      0x00000a40
+#define ASIZ_task      0x00000a30
 #define AOFF_mm_mmap   0x00000000
 #define ASIZ_mm_mmap   0x00000008
 #define AOFF_mm_mmap_avl       0x00000008
 #define AOFF_mm_map_count      0x00000028
 #define ASIZ_mm_map_count      0x00000004
 #define AOFF_mm_mmap_sem       0x00000030
-#define ASIZ_mm_mmap_sem       0x00000040
-#define AOFF_mm_page_table_lock        0x00000070
+#define ASIZ_mm_mmap_sem       0x00000028
+#define AOFF_mm_page_table_lock        0x00000058
 #define ASIZ_mm_page_table_lock        0x0000000c
-#define AOFF_mm_context        0x00000080
+#define AOFF_mm_context        0x00000068
 #define ASIZ_mm_context        0x00000008
-#define AOFF_mm_start_code     0x00000088
+#define AOFF_mm_start_code     0x00000070
 #define ASIZ_mm_start_code     0x00000008
-#define AOFF_mm_end_code       0x00000090
+#define AOFF_mm_end_code       0x00000078
 #define ASIZ_mm_end_code       0x00000008
-#define AOFF_mm_start_data     0x00000098
+#define AOFF_mm_start_data     0x00000080
 #define ASIZ_mm_start_data     0x00000008
-#define AOFF_mm_end_data       0x000000a0
+#define AOFF_mm_end_data       0x00000088
 #define ASIZ_mm_end_data       0x00000008
-#define AOFF_mm_start_brk      0x000000a8
+#define AOFF_mm_start_brk      0x00000090
 #define ASIZ_mm_start_brk      0x00000008
-#define AOFF_mm_brk    0x000000b0
+#define AOFF_mm_brk    0x00000098
 #define ASIZ_mm_brk    0x00000008
-#define AOFF_mm_start_stack    0x000000b8
+#define AOFF_mm_start_stack    0x000000a0
 #define ASIZ_mm_start_stack    0x00000008
-#define AOFF_mm_arg_start      0x000000c0
+#define AOFF_mm_arg_start      0x000000a8
 #define ASIZ_mm_arg_start      0x00000008
-#define AOFF_mm_arg_end        0x000000c8
+#define AOFF_mm_arg_end        0x000000b0
 #define ASIZ_mm_arg_end        0x00000008
-#define AOFF_mm_env_start      0x000000d0
+#define AOFF_mm_env_start      0x000000b8
 #define ASIZ_mm_env_start      0x00000008
-#define AOFF_mm_env_end        0x000000d8
+#define AOFF_mm_env_end        0x000000c0
 #define ASIZ_mm_env_end        0x00000008
-#define AOFF_mm_rss    0x000000e0
+#define AOFF_mm_rss    0x000000c8
 #define ASIZ_mm_rss    0x00000008
-#define AOFF_mm_total_vm       0x000000e8
+#define AOFF_mm_total_vm       0x000000d0
 #define ASIZ_mm_total_vm       0x00000008
-#define AOFF_mm_locked_vm      0x000000f0
+#define AOFF_mm_locked_vm      0x000000d8
 #define ASIZ_mm_locked_vm      0x00000008
-#define AOFF_mm_def_flags      0x000000f8
+#define AOFF_mm_def_flags      0x000000e0
 #define ASIZ_mm_def_flags      0x00000008
-#define AOFF_mm_cpu_vm_mask    0x00000100
+#define AOFF_mm_cpu_vm_mask    0x000000e8
 #define ASIZ_mm_cpu_vm_mask    0x00000008
-#define AOFF_mm_swap_cnt       0x00000108
+#define AOFF_mm_swap_cnt       0x000000f0
 #define ASIZ_mm_swap_cnt       0x00000008
-#define AOFF_mm_swap_address   0x00000110
+#define AOFF_mm_swap_address   0x000000f8
 #define ASIZ_mm_swap_address   0x00000008
-#define AOFF_mm_segments       0x00000118
+#define AOFF_mm_segments       0x00000100
 #define ASIZ_mm_segments       0x00000008
-#define ASIZ_mm        0x00000120
+#define ASIZ_mm        0x00000108
 #define AOFF_thread_ksp        0x00000000
 #define ASIZ_thread_ksp        0x00000008
 #define AOFF_thread_wstate     0x00000008
index bc0fcde22bc3cfdca546f02a42b32f9a1a685fd7..64b5df671fbb216c3a639daa6b948e0b3d561deb 100644 (file)
@@ -38,22 +38,13 @@ extern inline void poll_wait(struct file * filp, wait_queue_head_t * wait_addres
                __pollwait(filp, wait_address, p);
 }
 
-/*
- * For the kernel fd_set we use a fixed set-size for allocation purposes.
- * This set-size doesn't necessarily bear any relation to the size the user
- * uses, but should preferably obviously be larger than any possible user
- * size (NR_OPEN bits).
- *
- * We need 6 bitmaps (in/out/ex for both incoming and outgoing), and we
- * allocate one page for all the bitmaps. Thus we have 8*PAGE_SIZE bits,
- * to be divided by 6. And we'd better make sure we round to a full
- * long-word (in fact, we'll round to 64 bytes).
- */
-
+static inline void poll_initwait(poll_table* pt)
+{
+       pt->error = 0;
+       pt->table = NULL;
+}
+extern void poll_freewait(poll_table* pt);
 
-#define KFDS_64BLOCK ((PAGE_SIZE/(6*64))*64)
-#define KFDS_NR (KFDS_64BLOCK*8 > NR_OPEN ? NR_OPEN : KFDS_64BLOCK*8)
-typedef unsigned long kernel_fd_set[KFDS_NR/__NFDBITS];
 
 /*
  * Scaleable version of the fd_set.
index 63595484daa4716a73a8062eca3f59a3f8acc2ea..32e5483154293deba03f1b5b124625762fc240f0 100644 (file)
@@ -235,6 +235,7 @@ EXPORT_SYMBOL(vfs_rename);
 EXPORT_SYMBOL(vfs_statfs);
 EXPORT_SYMBOL(generic_read_dir);
 EXPORT_SYMBOL(__pollwait);
+EXPORT_SYMBOL(poll_freewait);
 EXPORT_SYMBOL(ROOT_DEV);
 EXPORT_SYMBOL(__find_get_page);
 EXPORT_SYMBOL(__find_lock_page);
index de7dc07f8c91d1ff5da065fabc5d6dabc5382596..83f1586d4bfa184e38f3f64ac8124606f17e46da 100644 (file)
@@ -373,12 +373,12 @@ void zap_page_range(struct mm_struct *mm, unsigned long address, unsigned long s
        spin_unlock(&mm->page_table_lock);
        /*
         * Update rss for the mm_struct (not necessarily current->mm)
+        * Notice that rss is an unsigned long.
         */
-       if (mm->rss > 0) {
+       if (mm->rss > freed)
                mm->rss -= freed;
-               if (mm->rss < 0)
-                       mm->rss = 0;
-       }
+       else
+               mm->rss = 0;
 }
 
 
index 7f9b9e82b6f8f32a12042d0ca3b593726a2f1083..b1f8a9fe8083185d0fc20669e8e4521fdcc22169 100644 (file)
@@ -512,7 +512,6 @@ void nf_reinject(struct sk_buff *skb, struct nf_info *info,
                                     info->indev, info->outdev, &elem,
                                     info->okfn);
        }
-       br_read_unlock_bh(BR_NETPROTO_LOCK);
 
        switch (verdict) {
        case NF_ACCEPT:
@@ -527,6 +526,7 @@ void nf_reinject(struct sk_buff *skb, struct nf_info *info,
                kfree_skb(skb);
                break;
        }
+       br_read_unlock_bh(BR_NETPROTO_LOCK);
 
        /* Release those devices we held, or Alexey will kill me. */
        if (info->indev) dev_put(info->indev);
index 190551d79c09d27913e60a24ab5c1fbca44033b7..01000f86237fd09979b740b7bcbe994d7336d557 100644 (file)
@@ -5,7 +5,7 @@
  *     Authors:
  *     Pedro Roque             <roque@di.fc.ul.pt>     
  *
- *     $Id: reassembly.c,v 1.18 2000/07/07 22:29:42 davem Exp $
+ *     $Id: reassembly.c,v 1.19 2000/07/11 22:35:24 davem Exp $
  *
  *     Based on: net/ipv4/ip_fragment.c
  *
index bb6b3a291611ee48df89c913e4e609431563dfb8..dc9f11aa7ddd1d49ddd9c3484d2b6056d9aa2c5b 100644 (file)
@@ -1751,11 +1751,12 @@ cbq_destroy(struct Qdisc* sch)
 
 static void cbq_put(struct Qdisc *sch, unsigned long arg)
 {
-       struct cbq_sched_data *q = (struct cbq_sched_data *)sch->data;
        struct cbq_class *cl = (struct cbq_class*)arg;
 
        if (--cl->refcnt == 0) {
 #ifdef CONFIG_NET_CLS_POLICE
+               struct cbq_sched_data *q = (struct cbq_sched_data *)sch->data;
+
                spin_lock_bh(&sch->dev->queue_lock);
                if (q->rx_class == cl)
                        q->rx_class = NULL;