fix opening braces
Merge pull request #7 from bszcz/master

fix opening braces
Update README.
Update throughput figure.

Signed-off-by: Xiaofeng Lin <jerrylin.lxf@gmail.com>
Fix the compile error on CentOS7 with gcc 4.8.2

1. Export the CPP_VERS to fix the compatibility issue of gcc;
2. Use -m64 and -m32 instead of the -m elf_x86_64 and -m elf_i386 separately
   when the gcc version is higher than 4.6.
   Because gcc does not support the linker-style since 4.6
3. Comment out the duplicated sense_buffer in struct pmcraid_cmd

[jerrylin.lxf@gmail.com: merge related commits]
Signed-off-by: Xiaofeng Lin <jerrylin.lxf@gmail.com>
Add mailing list in README.

Signed-off-by: Xiaofeng Lin <jerrylin.lxf@gmail.com>
1. Add the .gitignore file.
2. Add -Wall compile flag for libfsocket.so.
3. Use the '/* ... */' instead of multile "//" to comment out the multiple macro lines.
   The latter one will causes compile warning.
4. Use table instead of space in the libsocket.c to keep the unified coding style.
Add instruction to subscribe to the mailing list

Signed-off-by: Xiaofeng Lin <jerrylin.lxf@gmail.com>
Enhance the fastsocket_init for robustness
1. Check whether the socket_cachep is valid after create the kmem_cache_create.
2. Use goto statement to avoid some duplicated error handler codes.
Merge branch 'master' of github.com:fastos/fastsocket
Eliminate the compile warning of demo codes
1. Remove the unused varaibles.
2. Use the right format symbol "llu" instead of "lu" for 64 bits integer.
3. Add the -Werror compile flag.
Use the macro PRIu64 as format symbol to print uint64.
It could work well on both 32 bits and 64 bits without any warning.
Enhance the fastsocket ioctl function
Use the unified copy_from_user intead of multiple duplicated copy_from_user codes in every ioctl cmd
Fix the demo crash when it fail to execute before init_workers.

The root reason is that the wdata is initialized in init_workers and there is no check of wdata in exit_cleanup.
So the program will crash if it fail to execute before init_workers.
Use cpumask_var_t instead of struct cpumask to avoid stack overflow with losts of CPUs

Because current kernel has already support thousands of CPUs, so it bring one new APIs for cpumask.
The new one is used to avoid stack overflow.
Use nr_cpu_ids instead of nr_cpumask_bits to check the return value of cpumask_next

It should be check the return value with nr_cpu_ids according to the
comments of both of the cpumask_first and cpumask_next.

Certainly the nr_cpumask_bits has same value as nr_cpu_ids by its definition.
But we should follow the rule of kernel, all of caller in kernel
always use the nr_cpu_ids, not nr_cpumask_bits.
Fix one possible mem leak in fsocket_accept

There is one possible memleak case in fsocket_accept. The out_fd error handler
does not free the newsock by fsock_free_sock.

So I add one new error goto label "out_newfd" to fix it.
Fix possible mem leak in fsocket_spawn_clone.

1. Add the lost fsock_free_sock in some error handlers in fsocket_spawn_clone.
2. Rollback the update bb4d2fec21fea6feeba2c6a3e36df0b5b4894aa7.
   Actually the __fsocket_filp_close will free the sock. So need not invoke fsock_free_sock again.
Fix some typos in README.md

According to this link: http://www.answers.com/Q/Should_it_be_an_8_or_a_8.
Merge pull request #13 from jesusjzp/master

Fix some typos in README.md