diff --git a/README.txt b/README.txt index 4dfd513a7f..719fe60d17 100644 --- a/README.txt +++ b/README.txt @@ -1422,6 +1422,22 @@ Installing GNUWin32 CYGWIN BUILD PROBLEMS ^^^^^^^^^^^^^^^^^^^^^ +Performance +----------- + + Build performance under Cygwin is really not so bad, certainly not as good + as a Linux build. However, often you will find that the performance is + not just bad but terrible. If you are seeing awful performance.. like two + or three compilations per second.. the culprit is usually your Windows + Anti-Virus protection interfering with the build tool program execution. + + I use Cygwin quite often and I use Windows Defender. In order to get good + build performance, I routinely keep the Windows Defender "Virus & Threat + Protections Settings" screen up: I disable "Real-Time Protection" just + before entering 'make' then turn "Real-Time Protection" back on when the + build completes. With this additional nuisance step, I find that build + performance under Cygwin is completely acceptable. + Strange Path Problems --------------------- @@ -1475,6 +1491,7 @@ Window Native Toolchain Issues if you are using a native Windows toolchain. That bring us to #3: General Pre-built Toolchain Issues +---------------------------------- To continue with the list of "Window Native Toolchain Issues" we can add the following. These, however, are really just issues that you will have @@ -1528,6 +1545,7 @@ General Pre-built Toolchain Issues binutils and possibly different ABIs. Building Original Linux Boards in Cygwin +---------------------------------------- Some default board configurations are set to build under Linux and others to build under Windows with Cygwin. Various default toolchains may also @@ -1546,6 +1564,7 @@ Building Original Linux Boards in Cygwin ("Run As" option, right button) you find errors like "Permission denied". Recovering from Bad Configurations +---------------------------------- Many people make the mistake of configuring NuttX with the "canned" configuration and then just typing 'make' with disastrous consequences; diff --git a/sched/sched/sched_sporadic.c b/sched/sched/sched_sporadic.c index 35984b7242..90206c486e 100644 --- a/sched/sched/sched_sporadic.c +++ b/sched/sched/sched_sporadic.c @@ -138,10 +138,10 @@ static int sporadic_set_lowpriority(FAR struct tcb_s *tcb) * than the low priority (but less than the hi_priority), the new * sched_priority should be set to that priority, not to the lo_priority * - * In order to do this we would need a list of all semaphores held by - * the thread. We would need to select the highest priority from among - * all tasks waiting for the semaphores. Unfortunately, at present we - * know nothing about the semaphores held by the sporadic thread. + * In order to do this we would need to know the highest priority from + * among all tasks waiting for the all semaphores held by the sporadic + * task. Perhaps that information could be retained by the priority + * inheritance logic for use here? */ if (tcb->sched_priority > tcb->base_priority)