Eclipse is one of the good IDEs for C/C++ projects with its great source code indexer. It is common the source code version is controlled by some tools like Git for software projects. It is convenient if the IDE can show the current changes compared to the committed code version. In this post, we will
Read more
Tag: C
Linux Kernel: Add support for using a MAX3421E chip as a host driver
Posted onThis change “Add support for using a MAX3421E chip as a host driver.” (commit 2d53139) in Linux kernel is authored by David Mosberger <davidm [at] egauge.net> on Mon Apr 28 22:14:07 2014 -0600. Description of “Add support for using a MAX3421E chip as a host driver.” The change “Add support for using a MAX3421E chip
Read more
Converting Int to String in C++
Posted onIt is common to convert an integer (int) to a string (std::string) in C++ programs. Because of the long history of C++ which has several versions with extended libraries and supports almost all C standard library functions, there are many ways to convert an int to string in C++. This post introduces how to convert
Read more
Installing R and RStudio Server in Ubuntu Linux
Posted onR is a language and environment for statistical computing and graphics, providing a wide variety of statistical and graphical techniques. The R environment is open source software under GPL. R has rich software packages and is widely used for statistical analysis. RStudio Server is an R integrated development environment (IDE) that provides many useful features
Read more
Linux Kernel: drm/i915/guc: Don’t enable GuC/HuC in auto mode on pre-Gen11
Posted onThis change “drm/i915/guc: Don’t enable GuC/HuC in auto mode on pre-Gen11” (commit 87d855e) in Linux kernel is authored by Michal Wajdeczko <michal.wajdeczko [at] intel.com> on Fri Jul 12 11:14:44 2019 +0000. Description of “drm/i915/guc: Don’t enable GuC/HuC in auto mode on pre-Gen11” The change “drm/i915/guc: Don’t enable GuC/HuC in auto mode on pre-Gen11” introduces changes
Read more
Linux Kernel: PM / clk: Fix clock error check in __pm_clk_add()
Posted onThis change “PM / clk: Fix clock error check in __pm_clk_add()” (commit 3fc3a0b) in Linux kernel is authored by Geert Uytterhoeven <geert+renesas [at] glider.be> on Fri May 8 10:47:43 2015 +0200. Description of “PM / clk: Fix clock error check in __pm_clk_add()” The change “PM / clk: Fix clock error check in __pm_clk_add()” introduces changes
Read more
Linux Kernel: netpoll: fix netconsole IPv6 setup
Posted onThis change “netpoll: fix netconsole IPv6 setup” (commit 00fe11b) in Linux kernel is authored by Sabrina Dubroca <sd [at] queasysnail.net> on Thu Feb 6 18:34:12 2014 +0100. Description of “netpoll: fix netconsole IPv6 setup” The change “netpoll: fix netconsole IPv6 setup” introduces changes as follows. netpoll: fix netconsole IPv6 setup Currently, to make netconsole start
Read more
Linux Kernel: cifs: release auth_key.response for reconnect
Posted onThis change “cifs: release auth_key.response for reconnect.” (commit f5c4ba8) in Linux kernel is authored by Shu Wang <shuwang [at] redhat.com> on Fri Sep 8 18:48:33 2017 +0800. Description of “cifs: release auth_key.response for reconnect.” The change “cifs: release auth_key.response for reconnect.” introduces changes as follows. cifs: release auth_key.response for reconnect. There is a race that
Read more
Linux Kernel 4.19.70 Release
Posted onThis post summarizes new features, bugfixes and changes in Linux kernel release 4.19.70. Linux 4.19.70 Release contains 95 changes, patches or new features. In total, there are 101,521 lines of Linux source code changed/added in Linux 4.19.70 release compared to Linux 4.19 release. To view the source code of Linux 4.19.70 kernel release online, please
Read more
Linux Kernel: ALSA: hda/realtek – Fix Headphone Mic doesn’t recording for ALC256
Posted onThis change “ALSA: hda/realtek – Fix Headphone Mic doesn’t recording for ALC256” (commit d32b666) in Linux kernel is authored by Kailang Yang <kailang [at] realtek.com> on Thu Apr 23 15:10:53 2015 +0800. Description of “ALSA: hda/realtek – Fix Headphone Mic doesn’t recording for ALC256” The change “ALSA: hda/realtek – Fix Headphone Mic doesn’t recording for
Read more
Linux Kernel: fs: handle SEEK_HOLE/SEEK_DATA properly in all fs’s that define their own llseek
Posted onThis change “fs: handle SEEK_HOLE/SEEK_DATA properly in all fs’s that define their own llseek” (commit 06222e4) in Linux kernel is authored by Josef Bacik <josef [at] redhat.com> on Mon Jul 18 13:21:38 2011 -0400. Description of “fs: handle SEEK_HOLE/SEEK_DATA properly in all fs’s that define their own llseek” The change “fs: handle SEEK_HOLE/SEEK_DATA properly in
Read more
Linux User Group Management and Operations
Posted onLinux allows more than one users to log into the system to run processes/programs at the same time. In order to make this multi-user system work properly, Linux provides ways to isolate and protect users from each other and manage the permissions efficiently. One of the mechanism is user groups. Linux users may be grouped
Read more
Change Another Process’ Environment Variables in Linux
Posted onEach process has its environment variables in Linux. But is it possible to change another process’ environment variable from another process in Linux? If it is possible to do so, how to do it? There is a trick which can work for some scenarios. First, find out the process ID, then start gdb and attach
Read more
Redirect Feed Links to follow.it using .htaccess
Posted onFeedburner used to a powerful tool for RSS feeds publishing and subscriber management. However, feedburner will unlikely leave its maintenance mode because there has been no new features yet less features for quite some years. But RSS feed is still an important part of the Web supported by many software such as WordPress. follow.it is
Read more
How to Query Transaction By ID in Hyperledger Fabric 2.0
Posted onQuerying transaction content out from a blockchain network is a common practice used by common scenarios like exploring the blockchain history or verifying the blockchain transaction content from a known ID. In Hyperledger Fabric, the transaction can be queried using a special system chaincode QSCC (Query System Chaincode) which is for ledger and other Fabric-related
Read more
How to Install Hyperledger Fabric 2.0 in Ubuntu 18.04
Posted onHyperledger Fabric is a consortium blockchain system. It’s performance is relatively good and its modular architecture enables it to be usable in many scenarios. Hyperledger Fabric itself has rich documents and samples of test networks. For beginners, deploying a new network for trying and testing still consumes quite some time. In this post, we will
Read more
GCC May “Save” You Some Recursive Functions Calls: an Analysis of a Function Call Stack Length Example
Posted onWe know compilers like gcc can do lots smart optimization to make the program run faster. Regarding functions call optimization, gcc can do tail-call elimination to save the cost of allocating a new stack frame, and tail recursion elimination to turn a recursive function to non-recursive iterative one. gcc can even transform some recursive functions
Read more
How to Convert Integers to Strings and Strings to Integers in PHP
Posted onConversion from integer to string and from string to integer are common operations in most applications such as C++. PHP has its uniqueness in language and standard library design. In this post, we will check methods to convert integers to strings and vice versa. Convert string to int in PHP You can cast a string
Read more
A StoneWall Solution in C++
Posted onStoneWall is an interesting problem that requires some brain cycles yet not too complex. It is good software engineer interview question. Here is a C++ solution whose complexity is O(N). #include <stack> int solution(std::vector<int> &H) { int stones = 0; std::stack<int> heights; for (auto h: H) { while (!heights.empty() && h < heights.top()) { heights.pop();
Read more
How to Statically Link OCaml Programs
Posted onStatic linking is preferred for some cases although it has its own various problems. Static building/linking is not always possible for some languages on some platform. For OCaml, the answer to this question is yes. In this post, we will introduce 2 methods to statically linking OCaml: static linking with runtime glibc required and static
Read more