Subversion Repositories HelenOS

Compare Revisions

Ignore whitespace Rev 1228 → Rev 1229

/kernel/trunk/doc/TODO
File deleted
/kernel/trunk/genarch/src/mm/page_pt.c
49,8 → 49,8
 
/** Map page to frame using hierarchical page tables.
*
* Map virtual address 'page' to physical address 'frame'
* using 'flags'.
* Map virtual address @page to physical address @frame
* using @flags.
*
* The page table must be locked and interrupts must be disabled.
*
107,7 → 107,7
*
* The page table must be locked and interrupts must be disabled.
*
* @param as Address space to wich page belongs.
* @param as Address space to wich @page belongs.
* @param page Virtual address of the page to be demapped.
*/
void pt_mapping_remove(as_t *as, __address page)
227,7 → 227,7
*
* The page table must be locked and interrupts must be disabled.
*
* @param as Address space to which page belongs.
* @param as Address space to which @page belongs.
* @param page Virtual page.
*
* @return NULL if there is no such mapping; entry from PTL3 describing the mapping otherwise.
/kernel/trunk/genarch/src/mm/page_ht.c
154,12 → 154,12
 
/** Map page to frame using page hash table.
*
* Map virtual address 'page' to physical address 'frame'
* using 'flags'.
* Map virtual address @page to physical address @frame
* using @flags.
*
* The page table must be locked and interrupts must be disabled.
*
* @param as Address space to which page belongs.
* @param as Address space to which @page belongs.
* @param page Virtual address of the page to be mapped.
* @param frame Physical address of memory frame to which the mapping is done.
* @param flags Flags to be used for mapping.
190,7 → 190,7
 
/** Remove mapping of page from page hash table.
*
* Remove any mapping of 'page' within address space 'as'.
* Remove any mapping of @page within address space @as.
* TLB shootdown should follow in order to make effects of
* this call visible.
*
217,7 → 217,7
*
* The page table must be locked and interrupts must be disabled.
*
* @param as Address space to wich page belongs.
* @param as Address space to wich @page belongs.
* @param page Virtual page.
*
* @return NULL if there is no such mapping; requested mapping otherwise.
/kernel/trunk/generic/include/mm/buddy.h
41,8 → 41,8
link_t *(* coalesce)(buddy_system_t *, link_t *, link_t *); /**< Coalesce two buddies into a bigger block. */
void (*set_order)(buddy_system_t *, link_t *, __u8); /**< Set order of block passed as argument. */
__u8 (*get_order)(buddy_system_t *, link_t *); /**< Return order of block passed as argument. */
void (*mark_busy)(buddy_system_t *, link_t *); /**< Mark block as busy */
void (*mark_available)(buddy_system_t *, link_t *); /**< Mark block as busy */
void (*mark_busy)(buddy_system_t *, link_t *); /**< Mark block as busy. */
void (*mark_available)(buddy_system_t *, link_t *); /**< Mark block as available. */
/** Find parent of block that has given order */
link_t *(* find_block)(buddy_system_t *, link_t *, __u8);
void (* print_id)(buddy_system_t *, link_t *);
/kernel/trunk/generic/src/synch/rwlock.c
91,7 → 91,7
* @param trylock Switches between blocking and non-blocking mode.
*
* For exact description of possible combinations of
* 'usec' and 'trylock', see comment for waitq_sleep_timeout().
* @usec and @trylock, see comment for waitq_sleep_timeout().
*
* @return See comment for waitq_sleep_timeout().
*/
145,7 → 145,7
* @param trylock Switches between blocking and non-blocking mode.
*
* For exact description of possible combinations of
* 'usec' and 'trylock', see comment for waitq_sleep_timeout().
* @usec and @trylock, see comment for waitq_sleep_timeout().
*
* @return See comment for waitq_sleep_timeout().
*/
/kernel/trunk/generic/src/synch/mutex.c
51,7 → 51,7
* @param trylock Switches between blocking and non-blocking mode.
*
* For exact description of possible combinations of
* 'usec' and 'trylock', see comment for waitq_sleep_timeout().
* @usec and @trylock, see comment for waitq_sleep_timeout().
*
* @return See comment for waitq_sleep_timeout().
*/
/kernel/trunk/generic/src/synch/semaphore.c
65,7 → 65,7
* @param trydown Switches between blocking and non-blocking mode.
*
* For exact description of possible combinations of
* 'usec' and 'trydown', see comment for waitq_sleep_timeout().
* @usec and @trydown, see comment for waitq_sleep_timeout().
*
* @return See comment for waitq_sleep_timeout().
*/
/kernel/trunk/generic/src/synch/waitq.c
160,13 → 160,13
* @param usec Timeout in microseconds.
* @param nonblocking Blocking vs. non-blocking operation mode switch.
*
* If usec is greater than zero, regardless of the value of nonblocking,
* If @usec is greater than zero, regardless of the value of @nonblocking,
* the call will not return until either timeout or wakeup comes.
*
* If usec is zero and nonblocking is zero (false), the call
* If @usec is zero and @nonblocking is zero (false), the call
* will not return until wakeup comes.
*
* If usec is zero and nonblocking is non-zero (true), the call will
* If @usec is zero and @nonblocking is non-zero (true), the call will
* immediately return, reporting either success or failure.
*
* @return Returns one of: ESYNCH_WOULD_BLOCK, ESYNCH_TIMEOUT,
/kernel/trunk/generic/src/synch/futex.c
93,7 → 93,7
*
* @param uaddr Userspace address of the futex counter.
* @param usec If non-zero, number of microseconds this thread is willing to sleep.
* @param trydown If usec is zero and trydown is non-zero, conditional operation will be attempted.
* @param trydown If @usec is zero and trydown is non-zero, conditional operation will be attempted.
*
* @return One of ESYNCH_TIMEOUT, ESYNCH_OK_ATOMIC and ESYNCH_OK_BLOCKED. See synch.h.
* If there is no physical mapping for uaddr ENOENT is returned.
218,7 → 218,7
 
/** Compute hash index into futex hash table.
*
* @param key Address where the key (i.e. physical address of futex counter) is stored.
* @param key Address where the @key (i.e. physical address of futex counter) is stored.
*
* @return Index into futex hash table.
*/
231,7 → 231,7
*
* @param key Address where the key (i.e. physical address of futex counter) is stored.
*
* @return True if the item matches the key. False otherwise.
* @return True if the item matches the @key. False otherwise.
*/
bool futex_ht_compare(__native *key, count_t keys, link_t *item)
{
/kernel/trunk/generic/src/synch/condvar.c
76,7 → 76,7
* @param trywait Blocking versus non-blocking operation mode switch.
*
* For exact description of possible combinations of
* 'usec' and 'trywait', see comment for waitq_sleep_timeout().
* @usec and @trywait, see comment for waitq_sleep_timeout().
*
* @return See comment for waitq_sleep_timeout().
*/
/kernel/trunk/generic/src/main/main.c
95,7 → 95,7
 
#define CONFIG_STACK_SIZE ((1<<STACK_FRAMES)*STACK_SIZE)
 
/** Bootstrap CPU main kernel routine
/** Main kernel routine for bootstrap CPU.
*
* Initializes the kernel by bootstrap CPU.
* This function passes control directly to
137,7 → 137,7
}
 
 
/** Bootstrap CPU main kernel routine stack wrapper
/** Main kernel routine for bootstrap CPU using new stack.
*
* Second part of main_bsp().
*
224,7 → 224,7
 
 
#ifdef CONFIG_SMP
/** Application CPUs main kernel routine
/** Main kernel routine for application CPUs.
*
* Executed by application processors, temporary stack
* is at ctx.sp which was set during BP boot.
275,7 → 275,7
}
 
 
/** Application CPUs main kernel routine stack wrapper
/** Main kernel routine for application CPUs using new stack.
*
* Second part of main_ap().
*
/kernel/trunk/generic/src/debug/print.c
80,9 → 80,9
return counter;
}
 
/** Print one string without appending '\n' to the end
/** Print one string without appending '\n' to the end.
*
* Dont use this function directly - printflock is not locked here
* Do not use this function directly - printflock is not locked here.
*
*/
static int putstr(const char *str)
98,8 → 98,12
return count;
}
 
/** Print count characters from buffer to output
/** Print count characters from buffer to output.
*
* @param buffer Address of the buffer with charaters to be printed.
* @param count Number of characters to be printed.
*
* @return Number of characters printed.
*/
static int putnchars(const char *buffer, __native count)
{
118,10 → 122,10
 
/** Print one formatted character
*
* @param c character to print
* @param c Character to print.
* @param width
* @param flags
* @return number of printed characters or EOF
* @return Number of printed characters or EOF.
*/
static int print_char(char c, int width, __u64 flags)
{
349,9 → 353,9
return written;
}
 
/** General formatted text print
/** Print formatted string.
*
* Print string formatted according to the fmt parameter
* Print string formatted according to the @fmt parameter
* and variadic arguments. Each formatting directive
* must have the following form:
* % [ flags ] [ width ] [ .precision ] [ type ] conversion
361,14 → 365,14
* For conversion %o the prefix is 0, for %x and %X prefixes are 0x and 0X and for conversion %b the prefix is 0b.
* - Align to left.
* + Print positive sign just as negative.
* (space) If printed number is positive and '+' flag is not set, print space in place of sign.
* 0 Print 0 as padding instead of spaces. Zeroes are placed between sign and the rest of number.
* (space) If the printed number is positive and '+' flag is not set, print space in place of sign.
* 0 Print 0 as padding instead of spaces. Zeroes are placed between sign and the rest of the number.
* This flag is ignored if '-' flag is specified.
*
* WIDTH:
* Specify minimal width of printed argument. If it is bigger, width is ignored.
* If width is specified with a '*' character instead of number, width is taken from parameter list.
* Int parameter expected before parameter for processed conversion specification.
* And integer parameter is expected before parameter for processed conversion specification.
* If this value is negative its absolute value is taken and the '-' flag is set.
*
* PRECISION:
390,7 → 394,7
*
* CONVERSIONS:
*
* % Print percentage character.
* % Print percentage character itself.
*
* c Print single character.
*
397,7 → 401,7
* s Print zero terminated string. If a NULL value is passed as value, "(NULL)" is printed instead.
*
* P, p Print value of a pointer. Void * value is expected and it is printed in hexadecimal notation with prefix
* ( as with %#X or %#x for 32bit or %#X / %#x for 64bit long pointers).
* (as with %#X or %#x for 32bit or %#X / %#x for 64bit long pointers).
*
* b Print value as unsigned binary number. Prefix is not printed by default. (Nonstandard extension.)
*
407,13 → 411,13
*
* u Print unsigned decimal number.
*
* X, x Print hexadecimal number with upper- or lower-case. Prefix is not printed by default.
* X, x Print hexadecimal number with upper- or lower-case. Prefix is not printed by default.
*
* All other characters from fmt except the formatting directives
* All other characters from @fmt except the formatting directives
* are printed in verbatim.
*
* @param fmt Formatting NULL terminated string.
* @return count of printed characters or negative value on fail.
* @return Number of printed characters or negative value on failure.
*/
int printf(const char *fmt, ...)
{
/kernel/trunk/generic/src/proc/scheduler.c
239,7 → 239,7
*
* When the function decides to relink rq's, it reconnects
* respective pointers so that in result threads with 'pri'
* greater or equal 'start' are moved to a higher-priority queue.
* greater or equal @start are moved to a higher-priority queue.
*
* @param start Threshold priority.
*
/kernel/trunk/generic/src/proc/task.c
115,7 → 115,7
* @param programe_addr Address of program executable image.
* @param name Program name.
*
* @return Task of the running program or NULL on error
* @return Task of the running program or NULL on error.
*/
task_t * task_run_program(void *program_addr, char *name)
{
225,5 → 225,4
 
spinlock_unlock(&tasks_lock);
interrupts_restore(ipl);
}
/kernel/trunk/generic/src/mm/buddy.c
45,7 → 45,7
*
* Allocate memory for and initialize new buddy system.
*
* @param b Preallocated buddy system control data
* @param b Preallocated buddy system control data.
* @param max_order The biggest allocable size will be 2^max_order.
* @param op Operations for new buddy system.
* @param data Pointer to be used by implementation.
/kernel/trunk/generic/src/mm/page.c
73,8 → 73,8
 
/** Insert mapping of page to frame.
*
* Map virtual address 'page' to physical address 'frame'
* using 'flags'. Allocate and setup any missing page tables.
* Map virtual address @page to physical address @frame
* using @flags. Allocate and setup any missing page tables.
*
* The page table must be locked and interrupts must be disabled.
*
93,7 → 93,7
 
/** Remove mapping of page.
*
* Remove any mapping of 'page' within address space 'as'.
* Remove any mapping of @page within address space @as.
* TLB shootdown should follow in order to make effects of
* this call visible.
*