Skip to content

Conversation

@raress04
Copy link

@raress04 raress04 commented Oct 7, 2025

Added async-server checker

@raress04 raress04 requested a review from teodutu October 7, 2025 22:16
@raress04 raress04 force-pushed the private branch 4 times, most recently from fd4fe68 to 0f7ef6c Compare October 10, 2025 16:30
@teodutu teodutu linked an issue Oct 11, 2025 that may be closed by this pull request
Copy link

@teodutu teodutu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The checker for client-server is good. Now do the following so we can merge this PR:

  • Address my inline comments about the checker for async-server
  • Squash your commits into a single one so checkpatch can pass
  • Fuck checkpatch's complaints about the SPDX license in scripts. It's retarded regarding this.
  • Add instructions about the lab archive in each task. Draw inspiration from this PR #185.

PID_LIST=$(lsof -ti tcp:$PORT)
if [ -n "$PID_LIST" ]; then
echo "Killing previous server processes on port $PORT: $PID_LIST"
kill -9 "$PID_LIST"
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
kill -9 "$PID_LIST"
kill -9 "$PID_LIST"

PID_LIST is a newline-separated string. This means only the first process is killed. The way I'd do it is simply: lsof -ti tcp:5000 | xargs kill -9 (xargs passes the output of lsof as arguments not as stdin to kill)

@raress04 raress04 force-pushed the private branch 3 times, most recently from ad583ab to bbb2ff7 Compare October 14, 2025 13:17
Copy link

@teodutu teodutu left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The changes are mostly good. Apply my inline changes as well as those below to merge this:

  • Add a file called lab11.md where you tell students to use the zip archive or work from the repo. Include that in config.yaml as well. Use PR #185 as a guide.
  • Add the needs-rendering label so you can see the rendered lab once the website is built for this PR.
  • Squash your commits to get rid of some of the checkpatch errors:
  1. git rebase -i main
  2. This will open your default editor and you'll see all commits from your branch listed. Replace the word "pick" at the beginning of each of them other than the first one with "s" (from "squash"), then save and exit.
  3. You shouldn't run into conflicts. Then your default editor will open once more. Here you'll see all your commit messages concatenated. Edit those to something more sensible like:
labs/lab-11: Add checkers and fix wording

<Add a detailed description of your changes>

<Add your signature here>
  1. git push -f. Then you'll see you'll only have one commit in your local branch (check this with git log) and also in your remote one (this PR).

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Remove the outputs from this PR and add them to a .gitignore file in the tests/ folder.

@raress04 raress04 added the needs-rendering The PR makes changes to the website that need to be rendered label Nov 10, 2025
@github-actions
Copy link

The instructions numbering in README was only 1s, oddly looking

Signed-off-by: Rares Balcan <[email protected]>

io/optimizations/drills/tasks/multiplexed-client-server Update README

The instructions numbering in README was only 1s, oddly looking

Signed-off-by: Rares Balcan <[email protected]>

io/optimizations Add checker for async-server

Added a checker for async-server. Added `make check` rule to the Makefile. Updated README.md with checker instructions.
Modified the `test-file` size that is being sent from 1GB to 100MB, so the checker can run in a shorter time.

Signed-off-by: Rares Balcan <[email protected]>

io/optimizations: Add checker for async-server

Added a checker for async-server.
Added `make check` rule to the Makefile.
Updated README.md with checker instructions.
Modified the `test-file` size that is being sent from
1GB to 100MB, so the checker can run in a shorter time.

Signed-off-by: Rares Balcan <[email protected]>

io/ipc: Add checker for client-server

Added checker(s) for client-server, one for the
client, another one for the server.
Added instructions in README upon using the checker
and a Makefile rule for it.
Added a script for resetting connection, in case
the port is blocked.

Signed-off-by: Rares Balcan <[email protected]>

labs/lab-11: Add checkers and fix wording

Added checkers for async-server and client-server.
Added 'make check' rules to the Makefile.
Updated README.md with checker and arhchive instructions.
Added lab11.md in overview/reading.

Signed-off-by: Rares Balcan <[email protected]>

Update chapters/io/ipc/drills/tasks/client-server/README.md

Co-authored-by: Teodor Dutu <[email protected]>

Update chapters/io/optimizations/drills/tasks/async-server/tests/check_server.sh

Co-authored-by: Teodor Dutu <[email protected]>

Update chapters/io/ipc/drills/tasks/client-server/tests/check_server.sh

Co-authored-by: Teodor Dutu <[email protected]>

Update chapters/io/ipc/drills/tasks/client-server/tests/check_client.sh

Co-authored-by: Teodor Dutu <[email protected]>

Update chapters/io/optimizations/drills/tasks/async-server/tests/check_server.sh

Co-authored-by: Teodor Dutu <[email protected]>

Update chapters/io/ipc/drills/tasks/client-server/solution/Makefile

Co-authored-by: Teodor Dutu <[email protected]>

Update chapters/io/optimizations/drills/tasks/async-server/solution/Makefile

Co-authored-by: Teodor Dutu <[email protected]>

Update chapters/io/optimizations/drills/tasks/async-server/solution/Makefile

Co-authored-by: Teodor Dutu <[email protected]>

software-stack/system-calls: Fix minor bugs in lab01

- Fix SPDX license comment to use asm comment style
- Fix `syscall-wrapper/support/` directory structure
- Fix no. of skipped lines when generating `main.c`

Signed-off-by: Vlad Grigore <[email protected]>

assignments/elf-loader: Add ELF Loader assignment

Add a new PIE statically linked ELF Loader assignment.

Signed-off-by: Stefan Jumarea <[email protected]>

data/memory-security: Fix typo in `buffer-overflow-leak` guide

Replace "don" with "don't".

Signed-off-by: Mihnea Firoiu <[email protected]>

software-stack/high-level-languages: Fix typo in `high-level-lang` task

Replace `spport/` with `support/`.

Signed-off-by: Sorin Birchi <[email protected]>

data/working-with-memory: Fix inconsistencies in lab 3

- `make skels` would generate the src file which had random
brace symbols scattered throughout and made compiling the
code impossible.
- Replaced C Syntax code (scanf, printf) with dlang equivalent
(readf, write/writeln). Pass `in_bits` array by ref in the
`to_bits` function so the code actually does what it is supposed
to. Minor additional spacing.
- Made the read-only variable `ro` a global variable instead of a
local one to be added to the .rodata section. Keeping
it as a local variable stopped executing but still permitted
writing via `do_write()` function.

Signed-off-by: dariusica2 <[email protected]>

compute/synchronization: Add link to the lab 8 archives and fix typos

- Add links to the lab archive and change directory references.
- Fix typo in `tls-on-demand` TODO.

Signed-off-by: Vlad Hosu <[email protected]>

io/ipc: Add link to lab 10 archive and review lab 10

- Add links to the lab archive and change directory references.
- Add man links and additional explanations in the text.
- Correct some comments.

Signed-off-by: Laura Ruse <[email protected]>

data/guides: Created dedicated guide folder for support files

Created `static-dynamic` guide folder and moved assosiated files to it.
Modified references to it in `.md` files.

Signed-off-by: Cristian-Stefan Lazar <[email protected]>

Modified generate_skels.py from Lab2 (cs-pub-ro#195)

Added go files when generating skels

Signed-off-by: Sorin Birchi <[email protected]>

software-stack/libc: Fix minor bugs in lab02

- Fix SPDX license comment to use asm comment style
- Remove redundant calls to 'os_string' functions in task 'libc' (probably a leftover from the other task)
- Change 'putchar_buffer_len' from 'char' to 'int' to hold 1024 characters (had a student ask why the length was stored in a char, it shouldn't)

Signed-off-by: Vlad Grigore <[email protected]>

Update lab archive generator workflow

Remove `.zip` from gitignore, this is needed because the workflow will
overwrite the changes to the archive if the file is ignored by git.
Create a commit for removing the outdated archives, since `git
stash pop` will generate a merge conflict otherwise.
Check if the name of the task contains `drills`. If it does not, do not
add it to the archive.

Signed-off-by: Stefan Jumarea <[email protected]>

labs/lab6: Review and fix typos

Fix cs-pub-ro#176

Signed-off-by: Mihai-Carol Bazga <[email protected]>

/data/working-with-memory: Update `static-dynamic` Makefile for proper static and dynamic linking

The previous Makefile did not provide both dynamic and static executables.

Signed-off-by: Oprea Stefan Antoniu <[email protected]>

data/tasks/copy: Add a rule to generate in.dat (cs-pub-ro#204)

Added new `input` rule to create `in.dat`
containing "Hello, world!". Updated the `all` target
to include `input`, ensuring the file is generated
automatically during the build.

Fixes cs-pub-ro#203

Signed-off-by: Andreia Ocanoaia <[email protected]>

software-stack/drills: Remove the `support/` folder for the `libc` task.

This folder is generated by `make skels`.

Signed-off-by: Andrei Lungu <[email protected]>

exec-shellcode/Makefile: Fix Makefile

Fix: Utils directory is from now on being copied to output.

Signed-off-by: Mihnea Firoiu <[email protected]>

software-stack/system-calls: Fix typo and rephrase

Fix a typo in drills/questions/syscall-numbers.md

Signed-off-by: nicolasdumitru <[email protected]>

io/file-descriptors: Add testing suggestion for each task.

Suggested students to test manually each task before using
'tests/checher.sh', for a better understanding of the concept.

Added `lab9.md` that instructs students to download the arhive
or use GitHub.

Changed config.yaml to add `lab9.md` to the archive.

Added guidance to tasks directories.

Signed-off-by: Matei Stanuca <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs-rendering The PR makes changes to the website that need to be rendered

Projects

None yet

Development

Successfully merging this pull request may close these issues.

labs/lab11: Verify lab

2 participants