4
0
mirror of git://sourceware.org/git/newlib-cygwin.git synced 2025-01-18 12:29:32 +08:00

* exceptions.cc (set_signal_mask): Remove useless debugging output.

* fhandler.cc (fhandler_base::write): Ditto.
(fhandler_base_overlapped::close): Cancel any ongoing I/O before closing.
* syscalls.cc (write): Default to always reporting all writes in strace output
via syscall_printf.
* wait.cc (wait4): Fix debugging output.  Use standard syscall leaver output.
This commit is contained in:
Christopher Faylor 2011-12-17 07:01:21 +00:00
parent 60cd6a7798
commit ce3318344c
5 changed files with 22 additions and 17 deletions

View File

@ -1,3 +1,15 @@
2011-12-17 Christopher Faylor <me.cygwin2011@cgf.cx>
* exceptions.cc (set_signal_mask): Remove useless debugging output.
* fhandler.cc (fhandler_base::write): Ditto.
(fhandler_base_overlapped::close): Cancel any ongoing I/O before
closing.
* syscalls.cc (write): Default to always reporting all writes in strace
output via syscall_printf.
* wait.cc (wait4): Fix debugging output. Use standard syscall leaver
output.
2011-12-16 Christopher Faylor <me.cygwin2011@cgf.cx>
Implement fhandler reference counting.

View File

@ -1144,8 +1144,6 @@ set_signal_mask (sigset_t newmask, sigset_t& oldmask)
oldmask = newmask;
if (mask_bits)
sig_dispatch_pending (true);
else
sigproc_printf ("not calling sig_dispatch_pending");
mask_sync.release ();
}

View File

@ -839,16 +839,13 @@ fhandler_base::write (const void *ptr, size_t len)
NTSTATUS status;
status = NtFsControlFile (get_output_handle (), NULL, NULL, NULL,
&io, FSCTL_SET_SPARSE, NULL, 0, NULL, 0);
syscall_printf ("%p = NtFsControlFile(%S, FSCTL_SET_SPARSE)",
status, pc.get_nt_native_path ());
debug_printf ("%p = NtFsControlFile(%S, FSCTL_SET_SPARSE)",
status, pc.get_nt_native_path ());
}
}
if (wbinary ())
{
debug_printf ("binary write");
res = raw_write (ptr, len);
}
res = raw_write (ptr, len);
else
{
debug_printf ("text write");
@ -1222,6 +1219,10 @@ fhandler_base_overlapped::close ()
}
else
{
/* Cancelling seems to be necessary for cases where a reader is
still executing either in another thread or when a signal handler
performs a close. */
CancelIo (get_io_handle ());
destroy_overlapped ();
res = fhandler_base::close ();
}

View File

@ -1170,10 +1170,7 @@ write (int fd, const void *ptr, size_t len)
res = cfd->write (ptr, len);
done:
if (fd == 1 || fd == 2)
paranoid_printf ("%R = write(%d, %p, %d)", res, fd, ptr, len);
else
syscall_printf ("%R = write(%d, %p, %d)", res, fd, ptr, len);
syscall_printf ("%R = write(%d, %p, %d)", res, fd, ptr, len);
MALLOC_CHECK;
return res;

View File

@ -81,7 +81,7 @@ wait4 (int intpid, int *status, int options, struct rusage *r)
res = cancelable_wait (waitfor);
sigproc_printf ("%d = WaitForSingleObject (...)", res);
sigproc_printf ("%d = cancelable_wait (...)", res);
if (w->ev == NULL)
{
@ -109,10 +109,7 @@ wait4 (int intpid, int *status, int options, struct rusage *r)
break;
}
sigproc_printf ("intpid %d, status %p, w->status %d, options %d, res %d",
intpid, status, w->status, options, res);
syscall_printf ("%R = wait4(%d, %p, %d, %p)", res, intpid, w->status, options, r);
w->status = -1;
if (res < 0)
sigproc_printf ("*** errno %d", get_errno ());
return res;
}