Errata
The errata list is a list of errors and their corrections that were found after the product was released. If the error was corrected in a later version or reprint the date of the correction will be displayed in the column titled "Date Corrected".
The following errata were submitted by our customers and approved as valid errors by the author or editor.
Color key: Serious technical mistake Minor technical mistake Language or formatting error Typo Question Note Update
Version | Location | Description | Submitted By | Date submitted | Date corrected |
---|---|---|---|---|---|
Page Chapter 13, section 13.2 6th paragraph |
In section "13.2 Determining OOM Status" in 2nd paragraph, under the "Figure 13.1: Call Graph: out_of_memory()", in second sentence there is a typo. Note from the Author or Editor: |
Pawel Suchanecki | Apr 26, 2022 | ||
Printed | Page 11 under the section "Kernel Architecture, second paragraph |
The sentence starting with "Moreover, ..." uses "easily" twice, when it should only be used once. Note from the Author or Editor: |
Anonymous | Nov 12, 2014 | |
Printed | Page 58 3rd paragraph |
"see Table 2-2" should be "see Table 2-4". Note from the Author or Editor: |
Sam Sandbote | Feb 06, 2009 | |
Other Digital Version | 63 table 2-7 pgd_offset |
in the description of pgd_offset(mm, addr), 'cw' should be 'mm' Note from the Author or Editor: |
mplus | Oct 10, 2014 | |
Printed, PDF | Page 65 Table 2-8, entry "pmd_alloc" |
At the end of the description for the entry "pmd_alloc(mm, pud, addr)", change the sentence |
Marco Cesati |
Oct 10, 2014 | |
Printed | Page 86 4th paragraph, 2rd line |
"the stack is stored starting at address 0x015fc000", should be "address 0x015fbfff. Note from the Author or Editor: |
Anonymous | Dec 28, 2009 | |
Printed | Page 118 7th paragraph(step c in step 5) |
I've checked the source code of wake_up_new_task function. Note from the Author or Editor: |
Anonymous | Oct 17, 2008 | |
Other Digital Version | 144 1st paragraph just below the Figure 4-3 |
... an interrupt handler must never block, that is, no process switch can take place __until__ an |
Anonymous | Jul 01, 2008 | |
Printed | Page 144 1st paragraph just below the Figure 4-3 |
... an interrupt handler must never block, that is, no process switch can take place __until__ an |
Anonymous | Aug 01, 2008 | |
157 17th line (except for tables) |
"if depth is equal to 0, the function disables the IRQ line" Note from the Author or Editor: |
Ilsoo Byun | May 30, 2013 | ||
Printed | Page 173 3rd paragraph, below table 4-9 |
A typo: softirq is spelled sofirq Note from the Author or Editor: |
Anonymous | Aug 10, 2008 | |
Page 178 In item 3 |
The text says "Sets the CW flag of cr0". I tried to find out more information what that flag is, and couldn't find any. It's not mentioned in the book at all. |
Marja Hölttä | Jun 18, 2022 | ||
Printed | Page 179 5th paragraph |
the following bullet item: Note from the Author or Editor: |
Anonymous | Sep 29, 2008 | |
Other Digital Version | 179 Your WEB site's errata has an erratum error re: paragraph 5 |
The erratum that shows up on the web, for page 179, paragraph 5 has an error. Note from the Author or Editor: |
Terry Wa5nti McCarty | Jan 19, 2015 | |
Printed, PDF | Page 184 Table 4-15 |
In the heading sentence of Table 4-15, "(continues)" is wrong because the table is not spllited among pages |
Marco Cesati |
Oct 10, 2014 | |
Printed | Page 191 sentence prior to Table 5-1 |
"prempt_count" should be "preempt_count" Note from the Author or Editor: |
David Sanderson | Jun 22, 2009 | |
Printed | Page 265 last paragraph, 2nd line |
The line reads "... from 1 (highest priority) to 99 (lowest priority)." Note from the Author or Editor: |
Kevin Quigley | Jun 30, 2011 | |
289 2nd paragraph (step 7) |
If the move_task() function failed Note from the Author or Editor: |
Namhyung Kim | Nov 14, 2009 | ||
312 last paragraph |
When kernel finds 256 page frames in the 1024-page-frame list, the "last" 512 of the remaining 768 page frames are inserted into the free list. Note from the Author or Editor: |
Namhyung Kim | Nov 17, 2009 | ||
321 last paragraph (step 4) |
"PF_MEMDIE" should be "TIF_MEMDIE" Note from the Author or Editor: |
Namhyung Kim | Nov 18, 2009 | ||
327 middle of page (description of "External slap descriptor") |
"cache_sizes" should be "malloc_sizes" Note from the Author or Editor: |
Namhyung Kim | Nov 18, 2009 | ||
327 3rd from the last paragraph |
"512MB" should be "512 (byte)" Note from the Author or Editor: |
Anonymous | Nov 18, 2009 | ||
Other Digital Version | 329 the third line to the last of the code piece following 3rd paragraph |
Replaced the two lines |
Anonymous | Jul 01, 2008 | |
Printed | Page 329 the third line to the last of the code piece following 3rd paragraph |
Replaced the two lines |
Anonymous | Aug 01, 2008 | |
331 1st item under the "Releasing a Slab from a Cache" |
'(see the later section "Releasing a Slab from a Cache")' should be removed or refer other section Note from the Author or Editor: |
Namhyung Kim | Nov 18, 2009 | ||
Printed | Page 335 Figure 8-6 |
(335): comment in figure 8-6 "num+osize" should be "num*osize". Note from the Author or Editor: |
Anonymous | Jul 04, 2008 | |
Other Digital Version | 335 Figure 8-6 |
"num+osize" should now read "num*osize" ('*' should be the multiplication cross operator) |
Anonymous | Jul 01, 2008 | |
Printed | Page 335 Figure 8-6 |
"num+osize" should now read "num*osize" ('*' should be the multiplication cross operator) |
Anonymous | Aug 01, 2008 | |
Other Digital Version | 336 1st line of last paragraph |
"also sport" should now read "also include" |
Anonymous | Jul 01, 2008 | |
Printed | Page 336 1st line of last paragraph |
"also sport" should now read "also include" |
Anonymous | Aug 01, 2008 | |
342 3rd last paragraph |
"if the __GFP_WAIT flag is not set" should be "if the __GFP_WAIT flag is set" Note from the Author or Editor: |
Namhyung Kim | Dec 05, 2009 | ||
345 middle of the vmalloc() code |
"if (!area_pages)" should be "if (!area->pages)" Note from the Author or Editor: |
Namhyung Kim | Nov 19, 2009 | ||
375 step 11.d |
"mm->anon_vma" should be "vma->anon_vma" Note from the Author or Editor: |
Namhyung Kim | Nov 23, 2009 | ||
379 2nd code snippet |
"if (!(error_code & 0x101))" should be "if (!(error_code & 5))" (or "0b101" if C syntax can support such a binary number) Note from the Author or Editor: |
Namhyung Kim | Nov 23, 2009 | ||
390 2nd code snippet |
"kunmap_atomic(vto, KM_USER0)" should be "kunmap_atomic(vto, KM_USER1)" Note from the Author or Editor: |
Namhyung Kim | Nov 23, 2009 | ||
404 1st paragraph |
"except TIF_POLLING_NRFLAG" should be "except TIF_POLLING_NRFLAG and TIF_MEMDIE" Note from the Author or Editor: |
Namhyung Kim | Nov 24, 2009 | ||
Printed | Page 411 2rd paragrah |
int sys_fork(struct pt_regs regs) Note from the Author or Editor: |
mplus | Oct 29, 2014 | |
419 middle of the code |
"-125" should be "-129" Note from the Author or Editor: |
Namhyung Kim | Nov 26, 2009 | ||
496 table 12-15 2nd field |
"struct vfs_mount" should be "struct vfsmount" Note from the Author or Editor: |
Namhyung Kim | Dec 01, 2009 | ||
512 last paragraph |
"lock_file" should be "file_lock" Note from the Author or Editor: |
Namhyung Kim | Dec 01, 2009 | ||
516 6th paragraph |
"F_GETBLK" should be "F_GETLK" Note from the Author or Editor: |
Namhyung Kim | Dec 02, 2009 | ||
543 last paragraph (code) |
"(foo_dev->intr= =1)" should be "(foo_dev->intr == 1)" Note from the Author or Editor: |
Namhyung Kim | Dec 05, 2009 | ||
543 last paragraph foo_read() function |
When put_user(foo_dev->data, buf) error,it shall call up(&foo_dev->sem) before return. Note from the Author or Editor: |
Anonymous | Dec 26, 2010 | ||
Printed | Page 571 step 4 |
in `bio->bi_bdev not equal to bio->bi_dev->bd_contains' Note from the Author or Editor: |
mplus | Nov 25, 2014 | |
654 middle of the page |
"The only diffence, of course, is in the second parameter" should be "... fourth parameter" Note from the Author or Editor: |
Namhyung Kim | Dec 08, 2009 | ||
659 2nd last paragraph |
"the memory region has never accessed the third page" should be "... second page" Note from the Author or Editor: |
Namhyung Kim | Dec 08, 2009 | ||
670 2nd paragraph (below code) |
"the iocb descriptor" should be "the kiocb descriptor" Note from the Author or Editor: |
Namhyung Kim | Dec 09, 2009 | ||
687 end of the 4th paragraph |
"common radix tree" should be "common radix index" Note from the Author or Editor: |
Namhyung Kim | Dec 11, 2009 | ||
732 last paragraph (step 2) |
"__add_to_page_cache" should be "__add_to_swap_cache" Note from the Author or Editor: |
Namhyung Kim | Nov 22, 2009 | ||
733 3rd paragraph |
"swapper_state" should be "swapper_space" Note from the Author or Editor: |
Namhyung Kim | Nov 22, 2009 | ||
735 step 5 |
"at most 2n pages" should be "at most 2^n pages" Note from the Author or Editor: |
Namhyung Kim | Dec 15, 2009 | ||
754 middle of the page |
"as a volume consisting of 1,412 blocks" should be "... 1,440 blocks" Note from the Author or Editor: |
Namhyung Kim | Dec 16, 2009 | ||
Printed | Page 799 6th |
The last sentence of the paragraph reads "As usual, however, the system administrator can tune these values by writing into the /proc/sys/kernel/msgmni, /proc/sys/kernel/msgmnb, and /proc/sys/kernel/msgmax files, respectively." Note from the Author or Editor: |
Ray Michaels | Oct 28, 2009 | |
800 1st paragraph |
"shmid_kernel" should be "msg_queue" Note from the Author or Editor: |
Namhyung Kim | Dec 18, 2009 |