view src/os/unix/ngx_freebsd.h @ 9202:e88cdaa0f1ff

AIO operations now add timers (ticket #2162). Each AIO (thread IO) operation being run is now accompanied with 1-minute timer. This timer prevents unexpected shutdown of the worker process while an AIO operation is running, and logs an alert if the operation is running for too long. This fixes "open socket left" alerts during worker processes shutdown due to pending AIO (or thread IO) operations while corresponding requests have no timers. In particular, such errors were observed while reading cache headers (ticket #2162), and with worker_shutdown_timeout.
author Maxim Dounin <mdounin@mdounin.ru>
date Mon, 29 Jan 2024 10:31:37 +0300
parents d620f497c50f
children
line wrap: on
line source


/*
 * Copyright (C) Igor Sysoev
 * Copyright (C) Nginx, Inc.
 */


#ifndef _NGX_FREEBSD_H_INCLUDED_
#define _NGX_FREEBSD_H_INCLUDED_


void ngx_debug_init(void);
ngx_chain_t *ngx_freebsd_sendfile_chain(ngx_connection_t *c, ngx_chain_t *in,
    off_t limit);

extern int         ngx_freebsd_kern_osreldate;
extern int         ngx_freebsd_hw_ncpu;
extern u_long      ngx_freebsd_net_inet_tcp_sendspace;

extern ngx_uint_t  ngx_freebsd_sendfile_nbytes_bug;
extern ngx_uint_t  ngx_freebsd_use_tcp_nopush;
extern ngx_uint_t  ngx_debug_malloc;


#endif /* _NGX_FREEBSD_H_INCLUDED_ */