陈威
bb4234c89c
Update F-Stack_Nginx_APP_Guide.md
...
Add description of directive ```kernel_network_stack```.
2018-01-26 21:44:05 +08:00
陈威
8461d8a70b
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
陈威
684588066b
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
陈威
5eaa396dce
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
39be5a505f
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
logwang
e272b945ad
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
陈威
3fc9d4594d
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
chenwei
57f062150d
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
logwang
e340d433ea
Nginx: fix crash when server configuration item [`kernel_network_stack`] is on and uses `proxy_pass`.
...
When nginx is configured like this:
```
server {
listen 8000;
kernel_network_stack on;
location / {
proxy_pass http://127.0.0.1:8080/ ;
}
}
```
nginx will crash, becasue kernel network stack is handled in a single thread, but we have hijacked all the socket apis, it causes that all apis enter to f-stack's path which is in main thread.
2018-01-11 18:20:41 +08:00
logwang
a20feca0fb
Nginx: fix crash when server configuration item [`kernel_network_stack`] is on and uses `proxy_pass`.
...
When nginx is configured like this:
```
server {
listen 8000;
kernel_network_stack on;
location / {
proxy_pass http://127.0.0.1:8080/ ;
}
}
```
nginx will crash, becasue kernel network stack is handled in a single thread, but we have hijacked all the socket apis, it causes that all apis enter to f-stack's path which is in main thread.
2018-01-11 18:20:41 +08:00
logwang
e9cbb9895c
Ipfw: fix "invalid argument" when using `divert`.
...
Note that this only fix the error, `divert` is still not usable, refer to #136 .
If you want to use NAT, you can just use the built-in `ipfw nat`
instead.
2018-01-08 21:53:39 +08:00
logwang
62a0d71654
Ipfw: fix "invalid argument" when using `divert`.
...
Note that this only fix the error, `divert` is still not usable, refer to #136 .
If you want to use NAT, you can just use the built-in `ipfw nat`
instead.
2018-01-08 21:53:39 +08:00
logwang
73ef8c4ddb
Merge pull request #138 from shivansh/fix/build_kernel-4.12
...
DPDK: Fix build with kernel 4.12
2018-01-05 14:47:47 +08:00
logwang
58b4906b20
Merge pull request #138 from shivansh/fix/build_kernel-4.12
...
DPDK: Fix build with kernel 4.12
2018-01-05 14:47:47 +08:00
Shivansh Rai
0d76c9d0a5
Fix build with kernel 4.12
...
Corresponding upstream patches -
* http://dpdk.org/dev/patchwork/patch/24076/
* http://dpdk.org/dev/patchwork/patch/22003/
Tested on "4.12.4-custom".
2018-01-05 11:32:34 +05:30
Shivansh Rai
45438af0a6
Fix build with kernel 4.12
...
Corresponding upstream patches -
* http://dpdk.org/dev/patchwork/patch/24076/
* http://dpdk.org/dev/patchwork/patch/22003/
Tested on "4.12.4-custom".
2018-01-05 11:32:34 +05:30
logwang
403263ffc6
Merge pull request #134 from shivansh/fix/tautological_compare
...
Fix tautological comparison
2018-01-03 14:56:07 +08:00
logwang
909e1fd62d
Merge pull request #134 from shivansh/fix/tautological_compare
...
Fix tautological comparison
2018-01-03 14:56:07 +08:00
Shivansh Rai
d7c22d3751
Fix tautological comparison
...
Corresponding upstream changeset: https://github.com/freebsd/freebsd/commit/d45a807e
2018-01-02 23:11:52 +05:30
Shivansh Rai
4f4a430529
Fix tautological comparison
...
Corresponding upstream changeset: https://github.com/freebsd/freebsd/commit/d45a807e
2018-01-02 23:11:52 +05:30
logwang
b844e8f80a
Misc: add "extern C" in public header files.
2018-01-02 18:22:40 +08:00
logwang
7f4229ea8b
Misc: add "extern C" in public header files.
2018-01-02 18:22:40 +08:00
logwang
23742d21d9
Remove the unusable api `ff_socketpair`.
...
Since F-Stack doesn't support AF_UNIX. ff_socketpair couldn't work and
should be removed.
2017-12-27 14:59:15 +08:00
logwang
8740605f9d
Remove the unusable api `ff_socketpair`.
...
Since F-Stack doesn't support AF_UNIX. ff_socketpair couldn't work and
should be removed.
2017-12-27 14:59:15 +08:00
logwang
2e360cf2b8
Merge pull request #125 from daovanhuy/patch-1
...
Fix #124 : set/get user data in epoll
2017-12-27 14:43:22 +08:00
logwang
24079ba65a
Merge pull request #125 from daovanhuy/patch-1
...
Fix #124 : set/get user data in epoll
2017-12-27 14:43:22 +08:00
daovanhuy
8d6a4447df
Fix #124
...
Fix #124 : set/get user data in epoll
2017-12-27 11:28:49 +07:00
daovanhuy
b77f6ee6a0
Fix #124
...
Fix #124 : set/get user data in epoll
2017-12-27 11:28:49 +07:00
logwang
b2dbf8fd04
Example: fix listen queue overflow.
...
According to the FreeBSD Manual Page:
- When kevent() returns and if `flags` is EVFILT_READ, sockets which have previously been passed to listen() return when there is an incoming connection pending. `data` contains the size of the listen backlog.
So if an EVFILT_READ event reaches and it is the listen socket, we must accept `event->data` times. And for `ff_epoll` interface, we should continue to accept until it fails.
In the previous version, we only accept once when event reaches, it will cause listen queue overflow.
2017-12-21 23:23:33 +08:00
logwang
b9e91cfd6a
Example: fix listen queue overflow.
...
According to the FreeBSD Manual Page:
- When kevent() returns and if `flags` is EVFILT_READ, sockets which have previously been passed to listen() return when there is an incoming connection pending. `data` contains the size of the listen backlog.
So if an EVFILT_READ event reaches and it is the listen socket, we must accept `event->data` times. And for `ff_epoll` interface, we should continue to accept until it fails.
In the previous version, we only accept once when event reaches, it will cause listen queue overflow.
2017-12-21 23:23:33 +08:00
logwang
c4e752fc00
Merge pull request #117 from chadwill/master
...
Nginx: support kernel network stack
2017-12-15 17:36:07 +08:00
logwang
b9d9ead050
Merge pull request #117 from chadwill/master
...
Nginx: support kernel network stack
2017-12-15 17:36:07 +08:00
chenwei
2b31b4e34c
Nginx : The I/O functions with glue code may be called before ngx_max_sockets is initialized, fix this error.
2017-12-14 15:07:30 +08:00
chenwei
65074cf4f4
Nginx : The I/O functions with glue code may be called before ngx_max_sockets is initialized, fix this error.
2017-12-14 15:07:30 +08:00
chenwei
df18ef7de7
Nginx : Follow nginx programming convention - indent.
2017-12-14 14:55:36 +08:00
chenwei
fb8ab126f5
Nginx : Follow nginx programming convention - indent.
2017-12-14 14:55:36 +08:00
logwang
df9cc249f2
Add tool: arp.
...
The arp utility displays and modifies the Internet-to-Ethernet address translation tables used by the address resolution protocol.
2017-12-13 17:05:48 +08:00
logwang
fa74a859d0
Add tool: arp.
...
The arp utility displays and modifies the Internet-to-Ethernet address translation tables used by the address resolution protocol.
2017-12-13 17:05:48 +08:00
chenwei
acc0462acd
rename "timers" and "events_posted"
2017-12-09 15:24:58 +08:00
chenwei
03e8baeb66
rename "timers" and "events_posted"
2017-12-09 15:24:58 +08:00
chenwei
590bcd338b
rename ngx_event_actions_dy to ngx_ff_host_event_actions
2017-12-09 15:02:13 +08:00
chenwei
a7886ec8af
rename ngx_event_actions_dy to ngx_ff_host_event_actions
2017-12-09 15:02:13 +08:00
chenwei
142257e3b6
rename module module ff_channel to ff_host_event
2017-12-09 14:55:48 +08:00
chenwei
6b647d46a9
rename module module ff_channel to ff_host_event
2017-12-09 14:55:48 +08:00