arch/um/os-Linux/sys-i386/task_size.c: improve a bit
authorWANG Cong <xiyou.wangcong@gmail.com>
Mon, 28 Apr 2008 09:13:57 +0000 (02:13 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Mon, 28 Apr 2008 15:58:28 +0000 (08:58 -0700)
Improve this code a bit: check sigaction's return value and remove a useless
fflush().

Acked-by: Jeff Dike <jdike@addtoit.com>
Signed-off-by: WANG Cong <wangcong@zeuux.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
arch/um/os-Linux/sys-i386/task_size.c

index 48d211b..ccb49b0 100644 (file)
@@ -88,7 +88,10 @@ unsigned long os_get_task_size(void)
        sa.sa_handler = segfault;
        sigemptyset(&sa.sa_mask);
        sa.sa_flags = SA_NODEFER;
-       sigaction(SIGSEGV, &sa, &old);
+       if (sigaction(SIGSEGV, &sa, &old)) {
+               perror("os_get_task_size");
+               exit(1);
+       }
 
        if (!page_ok(bottom)) {
                fprintf(stderr, "Address 0x%x no good?\n",
@@ -110,11 +113,12 @@ unsigned long os_get_task_size(void)
 
 out:
        /* Restore the old SIGSEGV handling */
-       sigaction(SIGSEGV, &old, NULL);
-
+       if (sigaction(SIGSEGV, &old, NULL)) {
+               perror("os_get_task_size");
+               exit(1);
+       }
        top <<= UM_KERN_PAGE_SHIFT;
        printf("0x%x\n", top);
-       fflush(stdout);
 
        return top;
 }