Hallo,
Ik ben bezig met het maken van een character driver voor het aansturen van leds op de printerpoort onder linux. Nou dacht ik dat het probleem in mijn code zat maar na het downloaden van een enorm simpele module had ik nog steeds het zelfde probleem.
Eerst de code:
Deze code is van het simpele voorbeeld.
Als ik deze module laad en een cat uitvoer op de devfile dan krijg ik niet 1 keer "yo" zoals ik verwacht, maar een oneindig aantal keer "yo". en dit wil ik natuurlijk niet. Wat doe ik hier dan fout?
Kan het met search en google niet echt vinden
Weet ook niet zeker of dit topic in programming of dit forum.
Alvast bedankt!
Ik ben bezig met het maken van een character driver voor het aansturen van leds op de printerpoort onder linux. Nou dacht ik dat het probleem in mijn code zat maar na het downloaden van een enorm simpele module had ik nog steeds het zelfde probleem.
Eerst de code:
code:
1
2
3
4
5
6
7
8
9
| ssize_t my_read(struct file *filep,char *buff,size_t count,loff_t *offp )
{
char my_data[10] = "yo";
/* function to copy kernel space buffer to user space*/
if ( copy_to_user(buff,my_data,strlen(my_data)) != 0 )
printk( "Kernel -> userspace copy failed!\n" );
return strlen(my_data);
} |
Deze code is van het simpele voorbeeld.
Als ik deze module laad en een cat uitvoer op de devfile dan krijg ik niet 1 keer "yo" zoals ik verwacht, maar een oneindig aantal keer "yo". en dit wil ik natuurlijk niet. Wat doe ik hier dan fout?
Kan het met search en google niet echt vinden
Weet ook niet zeker of dit topic in programming of dit forum.
Alvast bedankt!