Fixed up return value for sys_serial_write on both kern/user
authorKevin Klues <klueska@cs.berkeley.edu>
Thu, 28 May 2009 13:37:05 +0000 (06:37 -0700)
committerKevin Klues <klueska@cs.berkeley.edu>
Fri, 5 Jun 2009 01:00:40 +0000 (18:00 -0700)
kern/src/syscall.c
user/parlib/inc/parlib.h
user/parlib/src/syscall.c

index a755c29..b4f1724 100644 (file)
@@ -36,12 +36,12 @@ static void sys_null(void)
 }
 
 //Write a buffer over the serial port
-static error_t sys_serial_write(env_t* e, const char *DANGEROUS buf, uint16_t len) 
+static uint16_t sys_serial_write(env_t* e, const char *DANGEROUS buf, uint16_t len) 
 {
        char *COUNT(len) _buf = user_mem_assert(e, buf, len, PTE_U);
        for(int i =0; i<len; i++)
                serial_send_byte(buf[i]);       
-       return 0;
+       return len;
 }
 
 //Read a buffer over the serial port
index 19bb1ab..449fbf2 100644 (file)
@@ -21,7 +21,7 @@ extern volatile uint8_t (COUNT(PGSIZE * UINFO_PAGES) procinfo)[];
 extern volatile uint8_t (COUNT(PGSIZE * UDATA_PAGES) procdata)[];
 
 error_t        sys_cputs(const char *s, size_t len);
-error_t        sys_serial_write(void* buf, uint16_t len); 
+uint16_t       sys_serial_write(void* buf, uint16_t len); 
 uint16_t       sys_serial_read(void* buf, uint16_t len);
 envid_t                sys_getenvid(void);
 uint32_t       sys_getcpuid(void);
index cad283c..33c1a96 100644 (file)
@@ -97,7 +97,7 @@ error_t sys_cputs(const char *s, size_t len)
 }
 
 //Write a buffer over the serial port
-error_t sys_serial_write(void* buf, uint16_t len) 
+uint16_t sys_serial_write(void* buf, uint16_t len) 
 {
        return syscall(SYS_serial_write, (uint32_t)buf, len, 0, 0, 0);
 }