Commit Graph

241 Commits

Author SHA1 Message Date
logwang 8238502f09
Merge pull request #194 from ouliuquan/patch-1
Update vnode_if.src
2018-04-27 18:08:14 +08:00
ouliuquan edb59aec69
Update vnode_if.src
Missing end-of-line ; in " IN struct task *task;   ".
2018-04-27 17:42:22 +08:00
logwang 90f6413391
Merge pull request #192 from chadwill/master
Update F-Stack_Nginx_APP_Guide.md
2018-04-26 15:36:42 +08:00
陈威 9b563dfe24
Update F-Stack_Nginx_APP_Guide.md
The context of `schedule_timeout` is `main`.
2018-04-26 14:35:04 +08:00
logwang 6e72bce389
Merge pull request #191 from jbwyatt4/patch-1
More grammar and sentence rewrites
2018-04-23 15:06:14 +08:00
jbwyatt4 e09daaff88
spelling error 2018-04-20 12:25:22 -07:00
jbwyatt4 bf11d8a164
More grammar and sentence rewrites 2018-04-20 10:58:32 -07:00
logwang a4612ce66c
Merge pull request #190 from jbwyatt4/master
Grammar and other fixes
2018-04-20 10:50:10 +08:00
jbwyatt4 457ddce291
Grammar and other fixes 2018-04-19 05:45:35 -07:00
logwang 205092b25b
Merge pull request #189 from chadwill/master
Nginx: fixbug, hijack `__recv_chk`.
2018-04-16 19:47:33 +08:00
chenwei 702a9cad2d Nginx: fixbug, hijack `__recv_chk`.
Nginx maybe call `__recv_chk` with https because of _FORTIFY_SOURCE.
Refer to #179.
See _FORTIFY_SOURCE (since glibc 2.3.4)
2018-04-16 18:52:58 +08:00
logwang 559f532025
Merge pull request #186 from chadwill/master
Nginx: bugfix, shouldnot pollute `socket type`
2018-04-10 19:18:33 +08:00
chenwei f2602fcff6 Nginx: bugfix, shouldnot pollute `socket type` 2018-04-10 17:28:10 +08:00
logwang 302113aba2
Merge pull request #183 from chadwill/master
Nginx: some logs are no longer needed on nginx-fstack.
2018-04-09 16:36:21 +08:00
chenwei 6ef175012c Nginx: some logs are no longer needed on nginx-fstack. 2018-04-09 15:42:21 +08:00
logwang a64ef10d72
Merge pull request #182 from chadwill/master
API: [BugFix] On success, `ff_sendmsg` return the number of chars sent.
2018-04-09 11:55:13 +08:00
chenwei 8ad1f163fa API: [BugFix] On success, `ff_sendmsg` return the number of chars sent. 2018-04-09 11:22:26 +08:00
logwang 575b547703
Merge pull request #171 from chadwill/master
Nginx :  a more friendly hint. Refer to #169.
2018-03-22 15:47:00 +08:00
陈威 778eaa4b45
Nginx : a more friendly hint
If the f-stack primary process hasn't been initialized successful, the nginx master gives a more friendly hint.
2018-03-22 15:41:17 +08:00
logwang 86b1f8131c
Merge pull request #170 from yangqiang71/master
🐛 ai->ai_addr should be (struct sockaddr *)(ai+1)
2018-03-19 11:29:23 +08:00
root d151f2e185 🐛 ai->ai_addr should be (struct sockaddr *)(ai+1) 2018-03-19 10:40:01 +08:00
logwang f1e85c1896
Merge pull request #169 from chadwill/master
Nginx: bugfix, secondary worker should be spawned after primary completing initialization of fstack(dpdk)
2018-03-12 19:46:23 +08:00
chenwei 7703b7e50a Nginx: bugfix, secondary worker should be spawned after primary worker completing initialization of fstack(dpdk)
When starting nginx with mutil-processes, secondary worker may be spawned before primary worker completing initialization of fstack(dpdk), so errors occurred, for one, in kni.
2018-03-12 17:13:02 +08:00
logwang 6b34d16078 Set the default configuration `kern.ncallout`(number of entries in
callwheel and size of timeout() preallocation).
2018-03-01 16:07:35 +08:00
logwang eba4f71434
Merge pull request #166 from chadwill/master
Nginx : bugfix, changing `listening socket type` may lead to errors.
2018-03-01 16:03:28 +08:00
chenwei 65c723a426 Nginx : bugfix, changing `listening socket type` in cycle may lead to errors.
Uses a temporaty variable to hold of potentially changing socket type but
does not modify `listening socket type` in cycle.
2018-03-01 15:39:33 +08:00
logwang 7b05e9bf4e
Merge pull request #161 from chadwill/master
Nginx : directive proxy_kernel_network_stack
2018-02-24 18:03:29 +08:00
chenwei 42f547056e Nginx: revise indent. 2018-02-24 17:08:59 +08:00
chenwei 76e16b226f Nginx : add a creation flag SOCK_FSTACK(create-fstack-socket) for socket()
1. `#define SOCK_FSTACK 0x1000`
2. when we want to create socket by fstack, we code like this :
`s = ngx_socket(domain, type | SOCK_FSTACK , protocol);`
2018-02-24 16:45:10 +08:00
陈威 edbcaf6eef
Update F-Stack_Nginx_APP_Guide.md 2018-02-09 20:09:05 +08:00
陈威 38120bf0aa
Merge pull request #1 from chadwill/develop
Nginx :directive ```proxy_kernel_network_stack```
2018-02-06 01:56:24 -06:00
logwang 80b2d7d52b
Merge pull request #159 from chadwill/master
Nginx :  ngx_configure_listening_sockets and hijack `recvmsg`
2018-02-06 15:22:14 +08:00
chenwei d1d95d5185 Nginx : directive proxy_kernel_network_stack
1. Add a new directive proxy_kernel_network_stack :
    Syntax: 	proxy_kernel_network_stack on | off;
    Default: 	proxy_kernel_network_stack off;
   Context: 	http, stream, mail, server
  This directive is available only when NGX_HAVE_FF_STACK is defined.
  Determines whether proxy should go throught kernel network stack or fstack.
2.Update F-Stack_Nginx_APP_Guide.md
2018-02-05 15:55:20 +08:00
chenwei b60bba339e API : ff_sendmsg, use transient variables to avoid polluting user's data. 2018-02-02 17:58:17 +08:00
chenwei 26fa2bc45b API : fix bug of ff_sendmsg and ff_recvmsg
freebsd and linux have a different "struct sockaddr".
In ff_recvmsg and ff_recvmsg, ```msg->msg_name```,which can refer to address, can be expected to be converted .
2018-02-02 15:28:58 +08:00
chenwei 4e5f8d85e1 Nginx : replace macro with inline function to implement ```ngx_ff_skip_listening_socket``` 2018-02-01 16:30:46 +08:00
chenwei ab555adef4 Nginx: hijack `recvmsg`.
Since Nginx calls `recvmsg` in stream with udp, we must
hijack this function, so that the network IO can pass through
f-stack.
2018-01-31 13:47:44 +08:00
chenwei f6a681c496 Nginx : ngx_configure_listening_sockets
1. Nginx based on fstack delays setting up server on fstack until ngx_worker_process_init. ngx_configure_listening_sockets should as well.
2. FStack does not support IP_PKTINFO
2018-01-31 13:37:58 +08:00
logwang 6adaac3368
Merge pull request #158 from chadwill/master
Nginx : Fix Compile error with `--with-stream`
2018-01-31 12:45:26 +08:00
chenwei 0a6b81772e Nginx : Fix Compile error
Fix compile error when configure nginx with --with-stream
2018-01-31 09:02:25 +08:00
logwang cc7be195f4
Merge pull request #156 from chadwill/patch-1
Update F-Stack_Nginx_APP_Guide.md
2018-01-29 19:01:26 +08:00
logwang 17140315e7
Merge pull request #151 from chadwill/master
Nginx : Get rid of "ff_host" thread
2018-01-29 19:01:11 +08:00
chenwei dcfbe1ad39 Nginx: Restore ngx_get_connection and ngx_free_connection
The code that we used to preserve ngx_get_connection and ngx_free_connection thread safety , is not necessary now.
2018-01-29 16:41:35 +08:00
陈威 bb4234c89c
Update F-Stack_Nginx_APP_Guide.md
Add description of directive  ```kernel_network_stack```.
2018-01-26 21:44:05 +08:00
陈威 d918f1d3ae
Update F-Stack_Nginx_APP_Guide.md
Handle fstack in nginx ```work process cycle```. Refer to #151.
2018-01-26 17:44:47 +08:00
陈威 6484644fe3
Nginx: Cut out code about poll-kernel frequency
Cut out unreasonable code about poll-kernel frequency
2018-01-26 17:14:13 +08:00
logwang 9f78ac569c ff_kern_timeout: optimize the timecounter.
This timecounter implementation retrieves the current time and reports it
as the equivalent number of counts from a counter incrementing at 'hz'.
2018-01-19 21:03:20 +08:00
logwang 54e1dbca13 FreeBSD: initialize `mp_ncpus`.
Fix crash when executing `./sysctl -w kern.callout_stat=1`.
2018-01-18 21:08:22 +08:00
陈威 67b8d9710a
Nginx: Restore unexpected Comment 2018-01-17 17:33:01 -06:00
chenwei f4c5cf3972 Nginx : Get rid of "ff_host" thread, so single thread is used for both fstack and kernel. 2018-01-17 17:51:08 +08:00