[so2] [Tema 1] Bug checker
Alexandru Juncu
alexj at rosedu.org
Tue Mar 6 15:21:54 EET 2012
2012/3/6 Cristian Chilipirea <cristian.chilipirea at cti.pub.ro>:
> Problema este eroarea care trebuie intoarsa in urmatoarea situatie:
>
> Se cere monitorizare pe 5 (interceptarea inceputa de root cu success)
> User non-root != 0
> pid == 0
Nu am înțeles... cererea se face de câtre root sau non-root?
>
> Eroarea pe care o asteapta checkerul -EPERM (eroare de permisiuni)
>
> Problema: pid == 0 doesn't really exist... e idle care e tratat diferit si
> find_vpid pe el intoarce null;
> ergo pid 0 nu ar trebui cumva tratat ca -EINVAL dupa cum spune si enuntul?
Citez: "Monitorizarea se poate face pentru un proces (pid primește un
PID) sau pentru toate procesele (pid primește 0)."
>
> "
> verificări de consistență [eroare: parametru nevalid]:
>
> numărul apelului de sistem (se consideră nevalid apelul MY_SYSCALL_NO sau
> __NR_exit_group)
> PID-ul procesului
>
> "
> sau tratam special pid 0
>
> Eroarea este in test.c linia 150
> do_start(syscall, 0, -EPERM);
> do_stop(syscall, 0, -EPERM);
>
> As I write this oberv ca stop este si mai gresit el ar trebui deasemenea sa
> aiba -EINVAL (aici e chiar mai evident)
> din enunt:
> "
> verificări de consistență [eroare: parametru nevalid]:
> monitorizarea pentru un proces/apel de sistem nu poate fi oprită dacă, în
> prealabil, nu a fost pornită
> "
Ai putea, te rog, să reformulezi nelămurirea ta, pentru că am citit de
vreo 3 ori și nu am înțeles exact ce întrebi...
More information about the so2
mailing list