1
0
mirror of https://github.com/0xAX/linux-insides.git synced 2024-12-21 22:28:08 +00:00
Commit Graph

1926 Commits

Author SHA1 Message Date
Sebastian Fricke
890101e412 Improve paragraph in Misc/linux-misc-1.md
Increase word variety, fix grammatical errors, place missing
punctuations and add missing articles.

Signed-off-by: Sebastian Fricke <sebastian.fricke.linux@gmail.com>
2020-06-10 18:00:12 +02:00
GIHOLee
e2ee5a7368
fix content
fix content:`SIGILL` for overflow exception -> `SIGILL` for the invalid opcode
2020-06-10 18:29:11 +08:00
0xAX
e0b57fef56
Merge pull request #719 from initBasti/update-links-v2
Gitbook Links: replace old links with new ones
2020-06-02 13:38:10 +06:00
Sebastian Fricke
2cff4abf08 Gitbook Links: replace old links with new ones
The old links didn't point to valid locations.
Replace the old links with the new links and test those changes with a
small script: https://github.com/initBasti/markdown_link_check .

______________________________________________________________

In order to find and replace the links, I used the following commands:

grep -rwohP '.' -e "\(https\:\/\/0xax.gitbooks.io\/\S*\)" > links.txt
(Find all links recursivly in the project directories and print out the
 only the matches links)

Within links.txt:
Remove the '(' & ')' => :%s/\(//g  and :%s/\)//g
Remove duplicates => :sort u

Test if the links work with:
python3 md_link_check.py --pattern 0xax.gitbook --output-file bad.txt
(https://github.com/initBasti/markdown_link_check)

Create replace commands:
:%s/.*/grep -rl & '.' | xargs sed -i 's#&##g'
Enter replacement URL between the 2nd & 3rd '#'
Execute commands: :w !sh

Signed-off-by: Sebastian Fricke <sebastian.fricke.linux@gmail.com>
2020-05-31 17:23:17 +02:00
Alexander Kuleshov
09642cab4e fix calculation of 8086 available memory range
Thanks to @rodggerbr
2020-05-31 13:15:40 +06:00
Sebastian Fricke
4058f2418a linux-interrupts-2: Improve text block
Remove redundant 'the'
s/Now as we jumped on the startup_32 from the/Now as we jumped into `startup_32` from/

Remove redundant 'the', ensure a varied choice of words
s/we will not find anything related to the interrupt handling here/
  we will not encounter anything related to interrupt handling here/

Improve sentence structure
s/The startup_32 contains code that makes preparations before the transition into long mode and directly jumps in to it/
The code inside of `startup_32` makes necessary preparations, before transitioning into the long mode with a direct jump/

Improve sentence structure and ensure a varied choice of words.
s/it makes preparations before the kernel decompression that occurs in the decompress_kernel from the/
it makes arrangements for the kernel decompression that occurs in the `decompress_kernel` function inside of ../

Remove redundant 'the', vary the choice of words
s/we jump on the startup_64 from the/we jump into `startup_64` defined at/

Reduce repetition, improve sentence structure
s/we start to build identity-mapped pages. After we have built identity-mapped pages, checked the NX bit, setup the Extended Feature Enable Register (see in links), and updated the early Global Descriptor Table with the lgdt instruction, we need to setup gs register/

Signed-off-by: Sebastian Fricke <sebastian.fricke.linux@gmail.com>
2020-05-13 18:52:59 +02:00
Sebastian Fricke
55ebd12262 linux-interrupts-2: Reduce word repetion
Reduce the repetion of words and set missing punctuation.

Signed-off-by: Sebastian Fricke <sebastian.fricke.linux@gmail.com>
2020-05-13 18:01:36 +02:00
Sebastian Fricke
f9c54129a3 linux-interrupts-2: Deprecated Makefile assignment
Replace a deprecated Makefile assignment with the current version.
Change was introduced with the following commit:
https://lkml.org/lkml/2019/10/24/377

Signed-off-by: Sebastian Fricke <sebastian.fricke.linux@gmail.com>
2020-05-13 17:55:44 +02:00
0xAX
f87effa3dc
Merge pull request #715 from initBasti/linux-interrupts-2-update
Linux interrupts 2 update Part 1
2020-05-09 19:25:04 +06:00
0xAX
e58c06bfca
Merge pull request #712 from initBasti/linux-interrupts-1-update
Linux interrupts 1 update
2020-05-09 19:22:43 +06:00
Sebastian Fricke
a327d7237b linux-interrupts-2: rework pm jump part
Shorten the sentence to reduce repetition, as the correlation with the boot chapter
is already explained in the previous sentence.
Add 'function' to `protected_mode_jump`

s/We already know from the earliest parts that entry to protected mode is located
  in the `boot_params.hdr.code32_start` and you can see that we pass the entry of
  the protected mode and `boot_params` to the `protected_mode_jump`
 /The entry to protected mode is located in the `boot_params.hdr.code32_start`
  and passed together with the `boot_params` to the `protected_mode_jump` function/

Correct grammatical errors:
s/in the end of the/at the end of/

Improve word choices:
s/gets these two parameters in the/receives these two parameters within the/

Add missing punctuation and add filling words for a more fluent reading.

This commit introduced a new way of annotating functions: (https://lkml.org/lkml/2019/1/30/374)
s/GLOBAL(protected_mode_jump)/SYM_FUNC_START_NOALIGN(protected_mode_jump)/
s/ENDPROC(protected_mode_jump)/SYM_FUNC_END(protected_mode_jump)/
s/GLOBAL(in_pm32)/SYM_FUNC_START_LOCAL_NOALIGN(.Lin_pm32)/
s/ENDPROC(in_pm32)/SYM_FUNC_END(.Lin_pm32)/

This commit made in_pm32 local: (https://lkml.org/lkml/2019/10/11/192)
s/2:     .long   in_pm32/2:     .long   .Lin_pm32/

Signed-off-by: Sebastian Fricke <sebastian.fricke.linux@gmail.com>
2020-05-02 11:20:09 +02:00
Sebastian Fricke
d383e52ef7 linux-interrupts-2:missing punctuation,improve wording
s/So, as you can understand there is no sense to have two similar structures which differ only by name./
It would make no sense to create two structures that only differ in their names./

Set missing punctuation.

Signed-off-by: Sebastian Fricke <sebastian.fricke.linux@gmail.com>
2020-05-02 11:20:09 +02:00
Sebastian Fricke
83ab97a7b1 linux-interrupts-2: Remove wrong 's' @ end of a word
s/the `NULL` interrupts descriptor table/the `NULL` interrupt descriptor table/

Signed-off-by: Sebastian Fricke <sebastian.fricke.linux@gmail.com>
2020-05-02 11:20:09 +02:00
Sebastian Fricke
a03aff1a0f linux-interrupts-2: Improve sentence structure
s/in the `go_to_protected_mode` function by the call of the `setup_idt`/
  in the `go_to_protected_mode` function by calling `setup_idt`/

Signed-off-by: Sebastian Fricke <sebastian.fricke.linux@gmail.com>
2020-05-02 11:20:09 +02:00
Sebastian Fricke
256b27ef79 Improve wording and remove repetitions
Remove repetitive statements and improve wording choices.

Signed-off-by: Sebastian Fricke <sebastian.fricke.linux@gmail.com>
2020-05-02 11:20:09 +02:00
Sebastian Fricke
2dcb99f7f7 Update gate-descriptor initialization 2/2
Removed backslashes in links in front of underscores as they are
unnecessary.
Fixes problems of commit: 350c9715ee
2020-04-23 17:26:36 +02:00
0xAX
d87766cd88
Merge pull request #706 from andi8086/andreas-fix1
Fix description of 'rep stosl' in bootstrap-4
2020-04-22 14:43:58 +06:00
0xAX
dfae85322d
Merge pull request #710 from initBasti/fix-typo
Word order & word choice improvements
2020-04-22 14:41:52 +06:00
Sebastian Fricke
350c9715ee Update gate-descriptor initialization
The initialization of gate descriptors was changed from using
set_intr_gate_ist() to idt_setup_from_table, which initalizes the
struct idt_data def_idts[] array.
Commit: https://lkml.org/lkml/2017/8/25/732

Update the entry point definition to contain the new read_cr2 attribute
Commit: https://lkml.org/lkml/2019/7/4/656

Update ENTRY and END macro to the new SYM_CODE_START & SYM_CODE_END
Commit: https://lkml.org/lkml/2019/10/11/344

Update the description of the code passages accordingly.
2020-04-21 19:47:26 +02:00
Sebastian Fricke
d9df431572 Update wrmsr description
Replace irq_stack_union with fixed_percpu_data
Add missing punctuation

Improve sentence structure:
s/the ability to switch to a new stack for events non-maskable interrupt
interrupt/the ability to switch to a new stack for events like a non-maskable interrupt/
2020-04-21 19:38:25 +02:00
Sebastian Fricke
4aef3bfbdb Update gs register initialization
Replace irq_stack_union with fixed_percpu_data
Update load_percpu_segment as documented in these commits:
https://lkml.org/lkml/2018/3/13/1126 & https://lkml.org/lkml/2016/4/29/276
2020-04-21 18:47:12 +02:00
Sebastian Fricke
8976544271 remove accidental corruptions 2020-04-18 11:51:40 +02:00
Sebastian Fricke
991f171c6d Initialization/linux-initialization-8.md: Fix grammatical errors & improve wording
s/as if a single task/as if they were a single task/
s/The least unit which scheduler operates is an individual task or thread. But a process is not only one type of entities of which the scheduller may operate./
The smallest unit that the scheduler works with is an individual task or thread. However, a process is not the only type of entity that the scheduler can operate with./
s/these options provides support/these options provide support/
s/The first one option provides support for group scheduling with `completely fair scheduler` policies and the second with `real-time` policies respectively./
The first option provides support for group scheduling with the `completely fair scheduler` policies and the second with the `real-time` policies respectively./
s/It means that it supports/That means it supports/
2020-04-18 07:11:09 +02:00
Sebastian Fricke
caa200e708 Interrupts/linux-interrupts-2.md: Improve wording
s/more about its implementation you can read/you can read more about its implementation/
s/For now we come to/For now, we have reached/
s/Of course you already can know that we will/You probably already know, that we will/
2020-04-18 06:29:10 +02:00
Sebastian Fricke
74a281cccc SyncPrim/linux-sync-1 improve wording
Improve wording of multiple sentences in the introduction.
Correct grammar mistakes.
No semantic changes.
2020-04-17 07:05:09 +02:00
Sebastian Fricke
a40a3d1be3 Fix typo at the description of IDT entries
s/special mechanism in the x86_64, will see it later;/
  special mechanism in the x86_64, which is described below;/
2020-04-15 07:27:23 +02:00
Sebastian Fricke
781a2d12f1 Missing commas
Commas after the words: Finally, Also at the beginning of sentences
and before a which within a sentence.
2020-04-15 06:40:41 +02:00
Sebastian Fricke
f294553e43 Fix typo in Interrupts-1
s/..allows the interrupted program to be resume/
  ..allows the interrupted program to resume/
2020-04-15 06:31:54 +02:00
Arnaud BOIVIN
aa2ccb403f Booting/linux-bootstrap-4.md: fix typo 2020-04-05 23:32:10 +02:00
0xAX
9e1318f3ec
Merge pull request #705 from manbing/master
Cgroups/linux-cgroups-1.md: Fix typo
2020-04-05 23:27:17 +06:00
0xAX
39b3353715
Merge pull request #707 from initBasti/linux-interrupts-1-fix
Linux interrupts 1 fix
2020-04-05 23:27:00 +06:00
Sebastian Fricke
4a7f812014 Update irq_stack initialization II
Replace the removed initialization within setup_percpu.c with the
initialization for X86_64 defined within irq_64.c
Change the description accordingly.
2020-04-05 09:54:15 +02:00
Sebastian Fricke
c96791d527 Update irq_stack initialization
Replace irq_stack_union with fixed_percpu_data
Update to the current system map
Update description of initialization process
Replace DECLARE macros with the current implementation
2020-04-05 07:10:37 +02:00
Sebastian Fricke
64a9777ca7 Replace deprecated initial_gs initialization
Within /arch/x86/kernel/head_64.S the implementation of the
initialization was changed.
Update the passage accordingly.
b1bd27b9ad (diff-a136f03867893e5d01eeadaba59c2dff)

Also fix a typo from a previous commit.
2020-04-04 09:09:02 +02:00
Sebastian Fricke
7a3f099c76 Replace irq_stack_union with new implementation
The irq_stack is no longer within a irq_stack_union
but separated into the irq_stack struct and the fixed_percpu_data struct
This change was made with the following series of commits:
e6401c1309 (diff-7db868ab08485b2578c9f97e45fb7d00)
2020-04-04 09:03:02 +02:00
Sebastian Fricke
e3711a1ac3 Add correct location & link to the definition
Add link to the github file location and the path
within the source directory to gate_struct definiton
2020-04-01 07:34:48 +02:00
Sebastian Fricke
1bf6ed1ec9 replace gate_struct64 with unified gate_struct
As described in this:
https://lore.kernel.org/lkml/20170828064957.861974317@linutronix.de/
mail from the lkml.
And changed within this commit:
64b163fab6 (diff-35bcd00365a749ba6cfa246a7dc86a68)

The gate_struct was unified for 32 and 64bit machines.
Replaced gate_struct64 definition with that of gate_struct.
2020-04-01 07:21:50 +02:00
Sebastian Fricke
73fd0ad5e1 add Sebastian Fricke to the contributer list 2020-03-27 07:01:38 +01:00
Sebastian Fricke
db72e924c1 correct the source code file as reference
the function void set_system_intr_gate doesn't exists anymore
the function set_intr_gate is now located in arch/x86/kernel/idt.c
2020-03-27 06:55:13 +01:00
Andreas J. Reichel
8be1e44662 Correct description of btsl $_EFER_LME, %eax
The btsl not only tests the bit, it tests the bit
by transfering it into the carry flag and then sets
it as well. Otherwise the wrmsr would not make sense.

Signed-off-by: Andreas J. Reichel <webmaster@6th-dimension.com>
2020-03-25 13:09:19 +01:00
Andreas J. Reichel
e0cb85d230 Fix description of 'rep stosl' in bootstrap-4
rep stosl does not modify 'edi' but the memory, where 'edi' points to.

Signed-off-by: Andreas J. Reichel <webmaster@6th-dimension.com>
2020-03-25 13:09:13 +01:00
Manbing
659a9be536 Cgroups/linux-cgroups-1.md: Fix typo
Modify "cp_cgrp_subsys" to "cpu_cgrp_subsys".

Signed-off-by: Manbing <manbing3@gmail.com>
2020-03-12 09:04:39 +08:00
Radoslaw Smigielski
646a47cd43 Minor README rewording 2020-03-03 06:30:42 +00:00
Radoslaw Smigielski
67096998a7 Remove unnecessary '\' from one of example commands 2020-03-03 06:28:03 +00:00
Radoslaw Smigielski
7873a715d1 How to create and run gitbook server in local container 2020-03-03 06:24:14 +00:00
0xAX
9fa85802fe
Merge pull request #703 from sodrooome/master
Fix syntax highlighting in clocksource framework
2020-03-01 13:57:25 +06:00
Ryan Febriansyah
2e52bcc4e9
Update linux-timers-2.md 2020-03-01 10:11:26 +07:00
0xAX
053f4b50ac
Merge pull request #702 from bmeneguele/initcalls-fix
concepts/initcalls: typos and new content
2020-02-22 14:25:46 +06:00
Bruno Meneguele
cdbc603fbd concepts/initcalls: add module_init macro information
While reading about initcalls around the web and kernel source code I found
that the information of what happens to __init functions not explicitly set to
any initcall list pretty useful. With this patch such information is added.

Signed-off-by: Bruno Meneguele <bmeneguele@gmail.com>
2020-02-21 17:03:12 -03:00
Bruno Meneguele
cbc004adde concepts/initcalls: rewording and typo corrections
This patch handle different typos present in the initcall section of the book.
It also reword some paragraphs in order to get it clearer to the reader.
Some example codes were also added in order to help the reader to understand
smaller concepts, like the way initcalls callbacks are named in the object
file.

Signed-off-by: Bruno Meneguele <bmeneguele@gmail.com>
2020-02-21 16:12:43 -03:00