| --- valgrind/coregrind/m_syswrap/syswrap-amd64-linux.c.orig 2006-08-02 16:51:51.000000000 -0600 |
| +++ valgrind/coregrind/m_syswrap/syswrap-amd64-linux.c 2006-08-02 16:53:19.000000000 -0600 |
| @@ -1124,7 +1124,7 @@ |
| GENXY(__NR_times, sys_times), // 100 |
| PLAXY(__NR_ptrace, sys_ptrace), // 101 |
| GENX_(__NR_getuid, sys_getuid), // 102 |
| - // (__NR_syslog, sys_syslog), // 103 |
| + LINXY(__NR_syslog, sys_syslog), // 103 |
| GENX_(__NR_getgid, sys_getgid), // 104 |
| |
| GENX_(__NR_setuid, sys_setuid), // 105 |
| --- valgrind/include/vki-linux.h.orig 2006-08-02 18:22:21.000000000 -0600 |
| +++ valgrind/include/vki-linux.h 2006-08-02 18:38:02.000000000 -0600 |
| @@ -1556,7 +1556,9 @@ |
| |
| #define VKI_BLKROSET _VKI_IO(0x12,93) /* set device read-only (0 = read-write) */ |
| #define VKI_BLKROGET _VKI_IO(0x12,94) /* get read-only status (0 = read_write) */ |
| +#define VKI_BLKRRPART _VKI_IO(0x12,95) /* re-read partition table */ |
| #define VKI_BLKGETSIZE _VKI_IO(0x12,96) /* return device size /512 (long *arg) */ |
| +#define VKI_BLKFLSBUF _VKI_IO(0x12,97) /* flush buffer cache */ |
| #define VKI_BLKRASET _VKI_IO(0x12,98) /* set read ahead for block device */ |
| #define VKI_BLKRAGET _VKI_IO(0x12,99) /* get current read ahead setting */ |
| #define VKI_BLKFRASET _VKI_IO(0x12,100)/* set filesystem (mm/filemap.c) read-ahead */ |
| @@ -1631,6 +1633,54 @@ |
| //#define SG_GET_COMMAND_Q 0x2270 /* Yields 0 (queuing off) or 1 (on) */ |
| #define VKI_SG_SET_COMMAND_Q 0x2271 /* Change queuing state with 0 or 1 */ |
| |
| + |
| +typedef struct vki_scsi_idlun |
| +{ |
| + int mux4; |
| + int host_unique_id; |
| + |
| +} vki_scsi_idlun_t; |
| +#define VKI_SCSI_IOCTL_GET_IDLUN 0x5382 /* Gets a struct vki_scsi_idlun */ |
| +#define VKI_SCSI_IOCTL_PROBE_HOST 0x5385 /* Gets an arrary describing the SCSI host */ |
| +#define VKI_SCSI_IOCTL_GET_BUS_NUMBER 0x5386 /* Get the bus number for a device */ |
| + |
| +//---------------------------------------------------------------------- |
| +// From linux-2.6.8.1/include/linux/fd.h |
| +//---------------------------------------------------------------------- |
| +#define VKI_FDRESET 0x254 /* Takes an int by value */ |
| +#define VKI_FDGETDRVTYP 0x20f /* Returns char floppy_drive_name[16] */ |
| +typedef struct vki_floppy_drive_struct { |
| + unsigned long flags; |
| + unsigned long spinup_date; |
| + unsigned long select_date; |
| + unsigned long first_read_date; |
| + short probed_format; |
| + short track; |
| + short maxblock; |
| + short maxtrack; |
| + int generation; |
| + int keep_data; |
| + int fd_ref; |
| + int fd_device; |
| + unsigned long last_checked; |
| + char *dmabuf; |
| + int bufblocks; |
| +} vki_floppy_drive_struct_t; |
| +#define VKI_FDPOLLDRVSTAT 0x213 /* returns a struct floppy_drive_struct */ |
| +typedef struct vki_floppy_struct { |
| + unsigned int size; |
| + unsigned int sect; |
| + unsigned int head; |
| + unsigned int track; |
| + unsigned int stretch; |
| + unsigned char gap; |
| + unsigned char rate; |
| + unsigned char spec1; |
| + unsigned char fmt_gap; |
| + const char * name; |
| +} vki_floppy_struct_t; |
| +#define VKI_FDGETPRM 0x204 /* returns a struct floppy_struct */ |
| + |
| //---------------------------------------------------------------------- |
| // From linux-2.6.8.1/include/linux/cdrom.h |
| //---------------------------------------------------------------------- |
| @@ -1640,6 +1690,7 @@ |
| (struct cdrom_tochdr) */ |
| #define VKI_CDROMREADTOCENTRY 0x5306 /* Read TOC entry |
| (struct cdrom_tocentry) */ |
| +#define VKI_CDROMEJECT 0x5309 /* Eject cdrom media */ |
| #define VKI_CDROMSUBCHNL 0x530b /* Read subchannel data |
| (struct cdrom_subchnl) */ |
| #define VKI_CDROMREADMODE2 0x530c /* Read CDROM mode 2 data (2336 Bytes) |
| --- valgrind/coregrind/m_syswrap/syswrap-generic.c.orig 2006-08-02 18:22:13.000000000 -0600 |
| +++ valgrind/coregrind/m_syswrap/syswrap-generic.c 2006-08-02 18:43:49.000000000 -0600 |
| @@ -3227,6 +3227,33 @@ |
| case VKI_SG_GET_SG_TABLESIZE: /* 0x227f */ |
| PRE_MEM_WRITE( "ioctl(SG_GET_SG_TABLESIZE)", ARG3, sizeof(int) ); |
| break; |
| + case VKI_SCSI_IOCTL_GET_IDLUN: |
| + PRE_MEM_WRITE( "ioctl(SCSI_IOCTL_GET_IDLUN)", ARG3, sizeof(vki_scsi_idlun_t) ); |
| + break; |
| + case VKI_SCSI_IOCTL_PROBE_HOST: |
| + { |
| + int arraylen; |
| + char *array = (char*)ARG3; |
| + PRE_MEM_READ("ioctl(SCSI_IOCTL_PROBE_HOST)", ARG3, sizeof(char)*4 ); |
| + arraylen = array[0] + (array[1]<<8) + (array[2]<<16) + (array[3]<<24); |
| + PRE_MEM_WRITE( "ioctl(SCSI_IOCTL_PROBE_HOST)", ARG3, sizeof(char)*arraylen ); |
| + } |
| + break; |
| + case VKI_SCSI_IOCTL_GET_BUS_NUMBER: |
| + PRE_MEM_WRITE( "ioctl(SCSI_IOCTL_GET_BUS_NUMBER)", ARG3, sizeof(int) ); |
| + break; |
| + |
| + case VKI_FDRESET: |
| + break; |
| + case VKI_FDGETDRVTYP: |
| + PRE_MEM_WRITE( "ioctl(FDGETDRVTYP)", ARG3, sizeof(char)*16 ); |
| + break; |
| + case VKI_FDPOLLDRVSTAT: |
| + PRE_MEM_WRITE( "ioctl(FDPOLLDRVSTAT)", ARG3, sizeof(vki_floppy_drive_struct_t) ); |
| + break; |
| + case VKI_FDGETPRM: |
| + PRE_MEM_WRITE( "ioctl(FDGETPRM)", ARG3, sizeof(vki_floppy_struct_t) ); |
| + break; |
| |
| case VKI_IIOCGETCPS: |
| PRE_MEM_WRITE( "ioctl(IIOCGETCPS)", ARG3, |
| @@ -3550,6 +3578,8 @@ |
| case VKI_BLKROGET: |
| PRE_MEM_WRITE( "ioctl(BLKROGET)", ARG3, sizeof(int)); |
| break; |
| + case VKI_BLKRRPART: |
| + break; |
| case VKI_BLKGETSIZE: |
| PRE_MEM_WRITE( "ioctl(BLKGETSIZE)", ARG3, sizeof(unsigned long)); |
| break; |
| @@ -3558,6 +3588,8 @@ |
| case VKI_BLKRAGET: |
| PRE_MEM_WRITE( "ioctl(BLKRAGET)", ARG3, sizeof(long)); |
| break; |
| + case VKI_BLKFLSBUF: |
| + break; |
| case VKI_BLKFRASET: |
| break; |
| case VKI_BLKFRAGET: |
| @@ -3624,6 +3656,8 @@ |
| PRE_MEM_WRITE( "ioctl(CDROMREADTOCENTRY)", ARG3, |
| sizeof(struct vki_cdrom_tocentry)); |
| break; |
| + case VKI_CDROMEJECT: |
| + break; |
| case VKI_CDROMMULTISESSION: /* 0x5310 */ |
| PRE_MEM_WRITE( "ioctl(CDROMMULTISESSION)", ARG3, |
| sizeof(struct vki_cdrom_multisession)); |
| @@ -4042,6 +4076,28 @@ |
| case VKI_SG_GET_SG_TABLESIZE: |
| POST_MEM_WRITE(ARG3, sizeof(int)); |
| break; |
| + case VKI_SCSI_IOCTL_GET_IDLUN: |
| + POST_MEM_WRITE(ARG3, sizeof(vki_scsi_idlun_t)); |
| + break; |
| + case VKI_SCSI_IOCTL_PROBE_HOST: |
| + if (RES > 0 && ARG3 ) |
| + POST_MEM_WRITE(ARG3, sizeof(char)*RES); |
| + break; |
| + case VKI_SCSI_IOCTL_GET_BUS_NUMBER: |
| + POST_MEM_WRITE(ARG3, sizeof(int)); |
| + break; |
| + |
| + case VKI_FDRESET: |
| + break; |
| + case VKI_FDGETDRVTYP: |
| + POST_MEM_WRITE( ARG3, sizeof(char)*16 ); |
| + break; |
| + case VKI_FDPOLLDRVSTAT: |
| + POST_MEM_WRITE( ARG3, sizeof(vki_floppy_drive_struct_t) ); |
| + break; |
| + case VKI_FDGETPRM: |
| + POST_MEM_WRITE( ARG3, sizeof(vki_floppy_struct_t) ); |
| + break; |
| |
| case VKI_IIOCGETCPS: |
| POST_MEM_WRITE( ARG3, VKI_ISDN_MAX_CHANNELS * 2 * sizeof(unsigned long) ); |
| @@ -4260,6 +4317,8 @@ |
| case VKI_BLKROGET: |
| POST_MEM_WRITE(ARG3, sizeof(int)); |
| break; |
| + case VKI_BLKRRPART: |
| + break; |
| case VKI_BLKGETSIZE: |
| POST_MEM_WRITE(ARG3, sizeof(unsigned long)); |
| break; |
| @@ -4268,6 +4327,8 @@ |
| case VKI_BLKRAGET: |
| POST_MEM_WRITE(ARG3, sizeof(long)); |
| break; |
| + case VKI_BLKFLSBUF: |
| + break; |
| case VKI_BLKFRASET: |
| break; |
| case VKI_BLKFRAGET: |
| @@ -4309,6 +4370,8 @@ |
| case VKI_CDROMREADTOCENTRY: |
| POST_MEM_WRITE(ARG3, sizeof(struct vki_cdrom_tocentry)); |
| break; |
| + case VKI_CDROMEJECT: |
| + break; |
| case VKI_CDROMMULTISESSION: |
| POST_MEM_WRITE(ARG3, sizeof(struct vki_cdrom_multisession)); |
| break; |