summaryrefslogtreecommitdiffstats
path: root/winsup
Commit message (Collapse)AuthorAgeFilesLines
* * autoload.cc (GetSystemTimePreciseAsFileTime): Define.Corinna Vinschen2013-06-145-5/+34
| | | | | | | | | | * times.cc (GetSystemTimePreciseAsFileTime): Temporarily declare here to workaround missing definition in 32 bit w32api headers. (get_system_time): New always inline function to call either GetSystemTimePreciseAsFileTime or GetSystemTimeAsFileTime on a per OS basis. Call throughout instead of GetSystemTimeAsFileTime. * wincap.h (wincaps::has_precise_system_time): New element. * wincap.cc: Implement above element throughout.
* Streamline time/times functionality. Remove last remains of formerCorinna Vinschen2013-06-149-214/+141
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Windows 9x compatibility. * fhandler_disk_file.cc (fhandler_base::fstat_helper): Drop now unneeded casts in calls to_timestruc_t. (fhandler_base::utimens_fs): Ditto for timespec_to_filetime. * fhandler_proc.cc (format_proc_stat): Ditto for to_time_t. * hires.h (class hires_ms): Remove unused member initime_ns. Remove declarations for timeGetTime_ns and prime. (hires_ms::uptime): Remove. * posix_ipc.cc (ipc_cond_timedwait): Ditto for timespec_to_filetime. * fhandler_registry.cc (fhandler_registry::fstat): Add cast. * resource.cc (fill_rusage): Call NtQueryInformationProcess rather than GetProcessTimes to deal with LARGE_INTEGER rather than FILETIME. * times.cc: Simplify time handling. Throughout, use LARGE_INTEGER rather than FILETIME to simplify computations. Throughout use {u}int64_t rather than {unsigned} long long. Drop unneeded casts since NSPERSEC is 64 bit anyway. (systime_ns): Remove. (times): Call NtQuerySystemInformation to fetch boot time. Call NtQueryInformationProcess rather than GetProcessTimes to deal with LARGE_INTEGER rather than FILETIME. Call GetSystemTimeAsFileTime. (totimeval): Use constant 1000000 as in other functions. (time_t_to_filetime): Remove. (to_time_t): Change return type to time_t. (time_as_timestruc_t): Rename filetime to systime. (time): Ditto. Add cast. (hires_ns::nsecs): Fix return type cast. (hires_ms::timeGetTime_ns): Remove. (hires_ns::prime): Remove. (hires_ms::nsecs): Drop call to prime. Call GetSystemTimeAsFileTime directly. Subtract FACTOR here since it's the only function needing to do so. (minperiod): Cosmetically change to ULONG. (hires_ns::resolution): Fix return type cast. (hires_ms::resolution): Simplify, rely on NtQueryTimerResolution. * winsup.h: Align time related prototypes to above changes.
* * net.cc (gen_old_if_name): New function to generate short interfaceCorinna Vinschen2013-06-132-2/+58
| | | | | names for old pre-1.7 applications. (get_ifs): Call gen_old_if_name for said old applications.
* * posix.sgml (fcntl, flock, lockf): Point to implementation notes.Corinna Vinschen2013-06-132-3/+7
|
* * path.cc (normalize_posix_path): Fix long-standing problem whichCorinna Vinschen2013-06-123-0/+32
| | | | allows to access files via ".." using an invalid POSIX path.
* * winver.rc (FileDescription): Remove (R).Corinna Vinschen2013-06-112-1/+5
|
* * sec_auth.cc (get_user_groups): Don't handle ERROR_ACCESS_DENIED asCorinna Vinschen2013-06-102-2/+13
| | | | error. Explain why.
* clarify entryChristopher Faylor2013-06-081-1/+1
|
* * exceptions.cc (try_to_debug): Don't use yield() when waiting for anotherChristopher Faylor2013-06-082-2/+13
| | | | | | process. (sigpacket::setup_handler): Fix long-standing problem where loop could exit with lock held.
* * miscfuncs.cc (yield): Revert (after researching) to calling SleepEx with 0.Christopher Faylor2013-06-082-15/+16
| | | | We don't want to actually sleep when calling this function.
* revert accidentally checked in filesChristopher Faylor2013-06-082-6/+5
|
* * cygwait.cc (cygwait): Remove lock around sig retrieval since this code isChristopher Faylor2013-06-085-39/+35
| | | | | | essentially guarded by thread-specific signal_arrived. * exceptions.cc (_cygtls::handle_SIGCONT): Simplify. Eliminate lock/unlock since code is guarded by signal_arrived.
* * winver.rc (LegalCopyright): Belatedly bump to 2013.Corinna Vinschen2013-06-072-2/+6
|
* * exceptions.cc (_cygtls::handle_SIGCONT): Reinstate previous behavior but makeChristopher Faylor2013-06-072-10/+29
| | | | sure that yield() isn't called when signal stack is locked.
* * exceptions.cc (exception::handle): Add comment explaining si_addr behavior.Christopher Faylor2013-06-072-6/+14
|
* * DevNotes: Add entry cgf-000023.Christopher Faylor2013-06-073-15/+10
| | | | * sigproc.cc (exit_thread): Remove now-unneeded sleep code.
* * include/cygwin/version.h (CYGWIN_VERSION_DLL_MINOR): Bump to 21.Corinna Vinschen2013-06-072-1/+5
|
* * posix.sgml (std-notes): Fix typo.Corinna Vinschen2013-06-072-1/+5
|
* * fhandler_disk_file.cc (fhandler_disk_file::pread): Skip to non-atomicCorinna Vinschen2013-06-073-6/+37
| | | | | | code if mandatory locking is used on this descriptor. Explain why. (fhandler_disk_file::pwrite): Ditto. * posix.sgml (std-notes): Extend description of file locking.
* *** empty log message ***Corinna Vinschen2013-06-061-0/+9
|
* * exceptions.cc (_cygtls::handle_SIGCONT): Simplify loop waiting forCorinna Vinschen2013-06-063-23/+30
| | | | | | | sig_handle_tty_stop to wake up. Make sure to unlock before calling yield to avoid starvation of sig_handle_tty_stop. Add comments. * miscfuncs.cc (yield): Explain why yield should never be called under _cygtls::lock conditions. Call SleepEx with 1ms timeout. Explain why.
* * include/cygwin/version.h (CYGWIN_VERSION_DLL_MINOR): Bump to 20.Corinna Vinschen2013-06-052-1/+5
|
* * faq-copyright.xml: Fix link to license.Corinna Vinschen2013-06-054-4/+10
| | | | | * faq-using.xml: Ditto. * faq-what.xml: Ditto.
* * faq-programming.xml: Convert url to refer to new flat faq.html file.Corinna Vinschen2013-06-055-7/+14
| | | | | | * faq-setup.xml: Ditto. * faq-using.xml: Ditto. * highlights.xml: Ditto.
* * new-features.xml (ov-new1.7.19): Revert mandatory locking support toCorinna Vinschen2013-06-052-2/+7
| | | | "preliminary".
* *** empty log message ***Corinna Vinschen2013-06-051-2/+2
|
* * Makefile.in: Add rule to rebuild Makefile if Makefile.in changes.Corinna Vinschen2013-06-043-4/+18
| | | | | | | Include Makefile.dep last. (Makefile.dep): Run xidepend within source dir. Temporarily drop faq.xml from dependencies. * xidepend: Fix creating base filename to accommodate VPATH.
* * new-features.xml (ov-new1.7.19): Align mandatory locking text toCorinna Vinschen2013-06-042-3/+8
| | | | today's changes.
* * fhandler.cc (fhandler_base::lock): Move to flock.cc.Corinna Vinschen2013-06-046-22/+51
| | | | | | | | | | | | | | (fhandler_base::fixup_after_exec): Reset mandatory_locking. * fhandler.h (class fhandler_base): Add mandatory_locking status flag. Add mandatory_locking accessor methods. Accommodate change throughout. (fhandler_base::mand_lock): Declare. (class fhandler_disk_file): Drop in favor of new status flag. * (fhandler_disk_file::fcntl): Call need_fork_fixup if mandatory_locking flag gets set. * flock.cc (fhandler_base::lock): Define here. (flock): Handle mandatory_locking. (lockf): Ditto. (fhandler_base::mand_lock): Define.
* *** empty log message ***Corinna Vinschen2013-06-031-0/+3
|
* * sigproc.cc (exit_thread): Allow to exit the thread while runningCorinna Vinschen2013-06-032-1/+15
| | | | global dtors. Explain why.
* Fix typoCorinna Vinschen2013-06-021-1/+1
|
* * new-features.xml (ov-new1.7.19): Add mandatory locking.Corinna Vinschen2013-06-022-0/+9
|
* * autoload.cc (CancelSynchronousIo): Define.Corinna Vinschen2013-06-029-16/+289
| | | | | | | | | | | | | | | | | | | | | | | | * fcntl.cc (fcntl64): Drop handling of locking commands. * fhandler.h (class fhandler_disk_file): Add mandatory_locking. (fhandler_disk_file::fcntl): Declare. (fhandler_disk_file::mand_lock): Declare. * fhandler_disk_file.cc (fhandler_disk_file::fhandler_disk_file): Initialize mandatory_locking. (fhandler_disk_file::fcntl): New method. Handle F_LCK_MANDATORY and locking commands. (fhandler_disk_file::dup): Duplicate mandatory_locking. Fix a bug when duplicating prw_handle failed. (fhandler_disk_file::fixup_after_fork): Reset mandatory_locking. * flock.cc (fhandler_disk_file::lock): Add comment. (struct lock_parms): New struct to pass parameters to blocking_lock_thr thread function. (blocking_lock_thr): New thread function. (fhandler_disk_file::mand_lock): New methof implementing mandatory locking with Windows semantics. * ntdll.h (NtLockFile): Declare. (NtUnlockFile): Declare. * include/fcntl.h: Fix a comment. (F_LCK_MANDATORY): Define. Add lengthy comment to explain.
* * exceptions.cc (exception::handle): Resurrect accidentally lostCorinna Vinschen2013-06-022-1/+7
| | | | patch from 2009-07-22: Set si_addr according to POSIX for SIGSEGV.
* * include/sys/socket.h: Move SHUT_xx definitoins from here...Corinna Vinschen2013-05-313-9/+14
| | | | * include/cygwin/socket.h: ...to here.
* *** empty log message ***Corinna Vinschen2013-05-311-0/+3
|
* * include/cygwin/if.h: Include cygwin/socket.h rather than sys/socket.hCorinna Vinschen2013-05-312-2/+7
| | | | to avoid circular dependency resulting in bogus compile time warnings.
* * fhandler_procsys.cc (fhandler_procsys::read): Just callCorinna Vinschen2013-05-283-15/+10
| | | | | fhandler_base::raw_read from here. Drop comment. (fhandler_procsys::write): Drop comment.
* *** empty log message ***Corinna Vinschen2013-05-271-0/+4
|
* * dll_init.cc (dll_list::topsort): Fix early-return condition toCorinna Vinschen2013-05-273-5/+13
| | | | | | | accommodate process with all runtime loaded DLLs already dlclosed at fork time. * gendef (_sigfe_maybe): Fix code handling early return if we don't have a tls, broken on 2013-05-21.
* *** empty log message ***Corinna Vinschen2013-05-251-1/+5
|
* * Makefile.in (DEFS): Unused, remove.Corinna Vinschen2013-05-242-3/+10
| | | | | (COMPILE.cc): Move -mno-use-libstdc-wrappers flag from here... ($(TEST_DLL_NAME)): ...to here since it's a link time flag.
* * pinfo.cc (pinfo::status_exit): Enhance comment.Corinna Vinschen2013-05-242-3/+7
|
* * environ.cc (win_env::add_cache): Set the Windows environment variableCorinna Vinschen2013-05-244-6/+26
| | | | | | using wide chars to make sure native chars don't get scrambled. * environ.h (build_env): Fix formatting in declaration. * pinfo.cc (pinfo::status_exit): Handle STATUS_NO_MEMORY. Explain why.
* * fork.cc (frok::parent): Always set CREATE_UNICODE_ENVIRONMENT flag.Corinna Vinschen2013-05-242-0/+10
| | | | Explain why.
* * fork.cc (frok::parent): Call CreateProcessW with command line setCorinna Vinschen2013-05-233-2/+18
| | | | to the parent command line. Change comment to explain why.
* * dcrt0.cc (child_info_fork::alloc_stack_hard_way): Fix datatype ofCorinna Vinschen2013-05-233-18/+27
| | | | | | | | | stacksize to SIZE_T. Cast to SIZE_T in pointer arithmetic. Slightly enhance output in case of a fatal error. * fork.cc (frok::parent): Always set ch.stackaddr to DeallocationStack value of current thread to help stack reservation in child_info_fork::alloc_stack_hard_way along. Simplify subsequent code storing stack values in ch. Print guardsize in hex, too.
* .Warren Young2013-05-231-3/+0
|
* Created xidepend mechanismWarren Young2013-05-234-1/+49
|