ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/libev/ev.c
(Generate patch)

Comparing libev/ev.c (file contents):
Revision 1.310 by root, Sun Jul 26 04:43:03 2009 UTC vs.
Revision 1.312 by root, Wed Aug 12 18:48:17 2009 UTC

386# include <stdint.h> 386# include <stdint.h>
387# ifndef EFD_NONBLOCK 387# ifndef EFD_NONBLOCK
388# define EFD_NONBLOCK O_NONBLOCK 388# define EFD_NONBLOCK O_NONBLOCK
389# endif 389# endif
390# ifndef EFD_CLOEXEC 390# ifndef EFD_CLOEXEC
391# ifdef O_CLOEXEC
391# define EFD_CLOEXEC O_CLOEXEC 392# define EFD_CLOEXEC O_CLOEXEC
393# else
394# define EFD_CLOEXEC 02000000
395# endif
392# endif 396# endif
393# ifdef __cplusplus 397# ifdef __cplusplus
394extern "C" { 398extern "C" {
395# endif 399# endif
396int eventfd (unsigned int initval, int flags); 400int eventfd (unsigned int initval, int flags);
2857 } 2861 }
2858 } 2862 }
2859 2863
2860 if (w->wd >= 0) 2864 if (w->wd >= 0)
2861 { 2865 {
2866 struct statfs sfs;
2867
2862 wlist_add (&fs_hash [w->wd & (EV_INOTIFY_HASHSIZE - 1)].head, (WL)w); 2868 wlist_add (&fs_hash [w->wd & (EV_INOTIFY_HASHSIZE - 1)].head, (WL)w);
2863 2869
2864 /* now local changes will be tracked by inotify, but remote changes won't */ 2870 /* now local changes will be tracked by inotify, but remote changes won't */
2865 /* unless the filesystem it known to be local, we therefore still poll */ 2871 /* unless the filesystem it known to be local, we therefore still poll */
2866 /* also do poll on <2.6.25, but with normal frequency */ 2872 /* also do poll on <2.6.25, but with normal frequency */
2867 struct statfs sfs;
2868 2873
2869 if (fs_2625 && !statfs (w->path, &sfs)) 2874 if (fs_2625 && !statfs (w->path, &sfs))
2870 if (sfs.f_type == 0x1373 /* devfs */ 2875 if (sfs.f_type == 0x1373 /* devfs */
2871 || sfs.f_type == 0xEF53 /* ext2/3 */ 2876 || sfs.f_type == 0xEF53 /* ext2/3 */
2872 || sfs.f_type == 0x3153464a /* jfs */ 2877 || sfs.f_type == 0x3153464a /* jfs */

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines